diff --git a/.github/workflows/node.js.yml b/.github/workflows/node.js.yml index 4561a0a..6c4829f 100644 --- a/.github/workflows/node.js.yml +++ b/.github/workflows/node.js.yml @@ -13,7 +13,7 @@ jobs: strategy: matrix: - node-version: [12.x, 14.x] + node-version: [12.x] # See supported Node.js release schedule at https://nodejs.org/en/about/releases/ steps: @@ -22,7 +22,13 @@ jobs: uses: actions/setup-node@v2 with: node-version: ${{ matrix.node-version }} + persist-credentials: false + + - name: Reconfigure git to use HTTP authentication + run: > + git config --global url."https://github.com/".insteadOf + ssh://git@github.com/ - run: npm ci - run: npm run lint - run: npm run coverage - - run: cat coverage/lcov.info | coveralls \ No newline at end of file + - run: cat coverage/lcov.info | coveralls diff --git a/.gitignore b/.gitignore index c296647..077f8e5 100644 --- a/.gitignore +++ b/.gitignore @@ -32,7 +32,7 @@ solidity/build/Test* /rbtcwrapperproxy/private-key /rbtcwrapperproxy/build -workspace.code-workspace +*.code-workspace .env yarn.lock diff --git a/package-lock.json b/package-lock.json index 485d9c9..3c4ba2e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,8 +1,34429 @@ { "name": "@bancor/contracts-solidity", "version": "0.6.10", - "lockfileVersion": 1, + "lockfileVersion": 2, "requires": true, + "packages": { + "": { + "name": "@bancor/contracts-solidity", + "version": "0.6.10", + "license": "SEE LICENSE IN LICENSE", + "dependencies": { + "@truffle/hdwallet-provider": "^1.2.6" + }, + "devDependencies": { + "@nomiclabs/hardhat-ethers": "^2.0.2", + "@nomiclabs/hardhat-ganache": "^2.0.0", + "@nomiclabs/hardhat-truffle5": "^2.0.0", + "@nomiclabs/hardhat-web3": "^2.0.0", + "@openzeppelin/test-helpers": "^0.5.6", + "@truffle/contract": "^4.2.14", + "bignumber.js": "^9.0.0", + "bn.js": "^5.1.2", + "chai": "^4.2.0", + "chai-as-promised": "^7.1.1", + "chai-bn": "^0.2.1", + "chai-string": "^1.5.0", + "coveralls": "^3.1.0", + "decimal.js": "10.2.0", + "dirty-chai": "^2.0.1", + "eslint": "^7.5.0", + "eslint-config-prettier": "^8.1.0", + "eslint-config-standard": "^14.1.1", + "eslint-plugin-import": "^2.22.0", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-promise": "^4.2.1", + "eslint-plugin-standard": "^4.0.1", + "ganache-core": "^2.13.2", + "hardhat": "^2.2.1", + "hardhat-contract-sizer": "^2.0.3", + "hardhat-deploy": "^0.7.5", + "hardhat-docgen": "^1.1.1", + "hardhat-log-remover": "^2.0.1", + "husky": "^4.2.5", + "prettier": "^2.2.1", + "prettier-plugin-solidity": "^1.0.0-beta.2", + "snyk": "^1.369.0", + "solhint": "^3.1.0", + "solidity-coverage": "^0.7.20", + "truffle": "5.1.49", + "truffle-flattener": "1.4.4", + "web3": "1.2.11" + }, + "engines": { + "npm": "^3.0.0" + } + }, + "node_modules/@arcanis/slice-ansi": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@arcanis/slice-ansi/-/slice-ansi-1.0.2.tgz", + "integrity": "sha512-lDL63z0W/L/WTgqrwVOuNyMAsTv+pvjybd21z9SWdStmQoXT59E/iVWwat3gYjcdTNBf6oHAMoyFm8dtjpXEYw==", + "dev": true, + "dependencies": { + "grapheme-splitter": "^1.0.4" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.10.3", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.3.tgz", + "integrity": "sha512-fDx9eNW0qz0WkUeqL6tXEXzVlPh6Y5aCDEZesl0xBGA8ndRukX91Uk44ZqnkECp01NAZUdCAl+aiQNGi0k88Eg==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.10.3" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.13.15", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.13.15.tgz", + "integrity": "sha512-ltnibHKR1VnrU4ymHyQ/CXtNXI6yZC0oJThyW78Hft8XndANwi+9H+UIklBDraIjFEJzw8wmcM427oDd9KS5wA==" + }, + "node_modules/@babel/generator": { + "version": "7.13.16", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.13.16.tgz", + "integrity": "sha512-grBBR75UnKOcUWMp8WoDxNsWCFl//XCK6HWTrBQKTr5SV9f5g0pNOjdyzi/DTBv12S9GnYPInIXQBTky7OXEMg==", + "dependencies": { + "@babel/types": "^7.13.16", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + } + }, + "node_modules/@babel/generator/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.13.16", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.16.tgz", + "integrity": "sha512-3gmkYIrpqsLlieFwjkGgLaSHmhnvlAYzZLlYVjlW+QwI+1zE17kGxuJGmIqDQdYp56XdmGeD+Bswx0UTyG18xA==", + "dependencies": { + "@babel/compat-data": "^7.13.15", + "@babel/helper-validator-option": "^7.12.17", + "browserslist": "^4.14.5", + "semver": "^6.3.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.2.0.tgz", + "integrity": "sha512-JT8tHuFjKBo8NnaUbblz7mIu1nnvUDiHVjXXkulZULyidvo/7P6TY7+YqpV37IfF+KUFxmlK04elKtGKXaiVgw==", + "dependencies": { + "@babel/helper-compilation-targets": "^7.13.0", + "@babel/helper-module-imports": "^7.12.13", + "@babel/helper-plugin-utils": "^7.13.0", + "@babel/traverse": "^7.13.0", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0-0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider/node_modules/debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@babel/helper-define-polyfill-provider/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/@babel/helper-function-name": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz", + "integrity": "sha512-TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA==", + "dependencies": { + "@babel/helper-get-function-arity": "^7.12.13", + "@babel/template": "^7.12.13", + "@babel/types": "^7.12.13" + } + }, + "node_modules/@babel/helper-get-function-arity": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz", + "integrity": "sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg==", + "dependencies": { + "@babel/types": "^7.12.13" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.13.12.tgz", + "integrity": "sha512-4cVvR2/1B693IuOvSI20xqqa/+bl7lqAMR59R4iu39R9aOX8/JoYY1sFaNvUMyMBGnHdwvJgUrzNLoUZxXypxA==", + "dependencies": { + "@babel/types": "^7.13.12" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.13.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.13.0.tgz", + "integrity": "sha512-ZPafIPSwzUlAoWT8DKs1W2VyF2gOWthGd5NGFMsBcMMol+ZhK+EQY/e6V96poa6PA/Bh+C9plWN0hXO1uB8AfQ==" + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz", + "integrity": "sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg==", + "dependencies": { + "@babel/types": "^7.12.13" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.10.3", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.3.tgz", + "integrity": "sha512-bU8JvtlYpJSBPuj1VUmKpFGaDZuLxASky3LhaKj3bmpSTY6VWooSM8msk+Z0CZoErFye2tlABF6yDkT3FOPAXw==", + "dev": true + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.12.17", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.12.17.tgz", + "integrity": "sha512-TopkMDmLzq8ngChwRlyjR6raKD6gMSae4JdYDB8bByKreQgG0RBTuKe9LRxW3wFtUnjxOPRKBDwEH6Mg5KeDfw==" + }, + "node_modules/@babel/highlight": { + "version": "7.10.3", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.3.tgz", + "integrity": "sha512-Ih9B/u7AtgEnySE2L2F0Xm0GaM729XqqLfHkalTsbjXGyqmf/6M0Cu0WpvqueUlW+xk88BHw9Nkpj49naU+vWw==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.10.3", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.13.16", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.16.tgz", + "integrity": "sha512-6bAg36mCwuqLO0hbR+z7PHuqWiCeP7Dzg73OpQwsAB1Eb8HnGEz5xYBzCfbu+YjoaJsJs+qheDxVAuqbt3ILEw==", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-transform-runtime": { + "version": "7.13.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.13.15.tgz", + "integrity": "sha512-d+ezl76gx6Jal08XngJUkXM4lFXK/5Ikl9Mh4HKDxSfGJXmZ9xG64XT2oivBzfxb/eQ62VfvoMkaCZUKJMVrBA==", + "dependencies": { + "@babel/helper-module-imports": "^7.13.12", + "@babel/helper-plugin-utils": "^7.13.0", + "babel-plugin-polyfill-corejs2": "^0.2.0", + "babel-plugin-polyfill-corejs3": "^0.2.0", + "babel-plugin-polyfill-regenerator": "^0.2.0", + "semver": "^6.3.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.13.17", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.13.17.tgz", + "integrity": "sha512-NCdgJEelPTSh+FEFylhnP1ylq848l1z9t9N0j1Lfbcw0+KXGjsTvUmkxy+voLLXB5SOKMbLLx4jxYliGrYQseA==", + "dependencies": { + "regenerator-runtime": "^0.13.4" + } + }, + "node_modules/@babel/template": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.13.tgz", + "integrity": "sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA==", + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@babel/parser": "^7.12.13", + "@babel/types": "^7.12.13" + } + }, + "node_modules/@babel/template/node_modules/@babel/code-frame": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz", + "integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==", + "dependencies": { + "@babel/highlight": "^7.12.13" + } + }, + "node_modules/@babel/template/node_modules/@babel/helper-validator-identifier": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", + "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" + }, + "node_modules/@babel/template/node_modules/@babel/highlight": { + "version": "7.13.10", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.13.10.tgz", + "integrity": "sha512-5aPpe5XQPzflQrFwL1/QoeHkP2MsA4JCntcXHRhEsdsfPVkvPi2w7Qix4iV7t5S/oC9OodGrggd8aco1g3SZFg==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.12.11", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.13.17", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.13.17.tgz", + "integrity": "sha512-BMnZn0R+X6ayqm3C3To7o1j7Q020gWdqdyP50KEoVqaCO2c/Im7sYZSmVgvefp8TTMQ+9CtwuBp0Z1CZ8V3Pvg==", + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@babel/generator": "^7.13.16", + "@babel/helper-function-name": "^7.12.13", + "@babel/helper-split-export-declaration": "^7.12.13", + "@babel/parser": "^7.13.16", + "@babel/types": "^7.13.17", + "debug": "^4.1.0", + "globals": "^11.1.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/code-frame": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz", + "integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==", + "dependencies": { + "@babel/highlight": "^7.12.13" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/helper-validator-identifier": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", + "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" + }, + "node_modules/@babel/traverse/node_modules/@babel/highlight": { + "version": "7.13.10", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.13.10.tgz", + "integrity": "sha512-5aPpe5XQPzflQrFwL1/QoeHkP2MsA4JCntcXHRhEsdsfPVkvPi2w7Qix4iV7t5S/oC9OodGrggd8aco1g3SZFg==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.12.11", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + } + }, + "node_modules/@babel/traverse/node_modules/debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/traverse/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/@babel/types": { + "version": "7.13.17", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.17.tgz", + "integrity": "sha512-RawydLgxbOPDlTLJNtoIypwdmAy//uQIzlKt2+iBiJaRlVuI6QLUxVAyWGNfOzp8Yu4L4lLIacoCyTNtpb4wiA==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.12.11", + "to-fast-properties": "^2.0.0" + } + }, + "node_modules/@babel/types/node_modules/@babel/helper-validator-identifier": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", + "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" + }, + "node_modules/@ethereumjs/block": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/@ethereumjs/block/-/block-3.2.1.tgz", + "integrity": "sha512-FCxo5KwwULne2A2Yuae4iaGGqSsRjwzXOlDhGalOFiBbLfP3hE04RHaHGw4c8vh1PfOrLauwi0dQNUBkOG3zIA==", + "dev": true, + "dependencies": { + "@ethereumjs/common": "^2.2.0", + "@ethereumjs/tx": "^3.1.3", + "ethereumjs-util": "^7.0.10", + "merkle-patricia-tree": "^4.1.0" + } + }, + "node_modules/@ethereumjs/block/node_modules/@types/bn.js": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.0.tgz", + "integrity": "sha512-QSSVYj7pYFN49kW77o2s9xTCwZ8F2xLbjLLSEVh8D2F4JUhZtPAGOFLTD+ffqksBx/u4cE/KImFjyhqCjn/LIA==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@ethereumjs/block/node_modules/ethereumjs-util": { + "version": "7.0.10", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.0.10.tgz", + "integrity": "sha512-c/xThw6A+EAnej5Xk5kOzFzyoSnw0WX0tSlZ6pAsfGVvQj3TItaDg9b1+Fz1RJXA+y2YksKwQnuzgt1eY6LKzw==", + "dev": true, + "dependencies": { + "@types/bn.js": "^5.1.0", + "bn.js": "^5.1.2", + "create-hash": "^1.1.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "0.1.6", + "rlp": "^2.2.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@ethereumjs/block/node_modules/level-ws": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/level-ws/-/level-ws-2.0.0.tgz", + "integrity": "sha512-1iv7VXx0G9ec1isqQZ7y5LmoZo/ewAsyDHNA8EFDW5hqH2Kqovm33nSFkSdnLLAK+I5FlT+lo5Cw9itGe+CpQA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "readable-stream": "^3.1.0", + "xtend": "^4.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ethereumjs/block/node_modules/merkle-patricia-tree": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/merkle-patricia-tree/-/merkle-patricia-tree-4.2.1.tgz", + "integrity": "sha512-25reMgrT8PhJy0Ba0U7fMZD2oobS1FPWB9vQa0uBpJYIQYYuFXEHoqEkTqA/UzX+s9br3pmUVVY/TOsFt/x0oQ==", + "dev": true, + "dependencies": { + "@types/levelup": "^4.3.0", + "ethereumjs-util": "^7.1.0", + "level-mem": "^5.0.1", + "level-ws": "^2.0.0", + "readable-stream": "^3.6.0", + "rlp": "^2.2.4", + "semaphore-async-await": "^1.5.1" + } + }, + "node_modules/@ethereumjs/block/node_modules/merkle-patricia-tree/node_modules/ethereumjs-util": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.0.tgz", + "integrity": "sha512-kR+vhu++mUDARrsMMhsjjzPduRVAeundLGXucGRHF3B4oEltOUspfgCVco4kckucj3FMlLaZHUl9n7/kdmr6Tw==", + "dev": true, + "dependencies": { + "@types/bn.js": "^5.1.0", + "bn.js": "^5.1.2", + "create-hash": "^1.1.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "0.1.6", + "rlp": "^2.2.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@ethereumjs/block/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@ethereumjs/blockchain": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@ethereumjs/blockchain/-/blockchain-5.2.1.tgz", + "integrity": "sha512-+hshP2qSOOFsiYvZCbaDQFG7jYTWafE8sfBi+pAsdhAHfP7BN7VLyob7qoQISgwS1s7NTR4c4+2t/woU9ahItw==", + "dev": true, + "dependencies": { + "@ethereumjs/block": "^3.2.0", + "@ethereumjs/common": "^2.2.0", + "@ethereumjs/ethash": "^1.0.0", + "debug": "^2.2.0", + "ethereumjs-util": "^7.0.9", + "level-mem": "^5.0.1", + "lru-cache": "^5.1.1", + "rlp": "^2.2.4", + "semaphore-async-await": "^1.5.1" + } + }, + "node_modules/@ethereumjs/blockchain/node_modules/@types/bn.js": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.0.tgz", + "integrity": "sha512-QSSVYj7pYFN49kW77o2s9xTCwZ8F2xLbjLLSEVh8D2F4JUhZtPAGOFLTD+ffqksBx/u4cE/KImFjyhqCjn/LIA==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@ethereumjs/blockchain/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/@ethereumjs/blockchain/node_modules/ethereumjs-util": { + "version": "7.0.10", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.0.10.tgz", + "integrity": "sha512-c/xThw6A+EAnej5Xk5kOzFzyoSnw0WX0tSlZ6pAsfGVvQj3TItaDg9b1+Fz1RJXA+y2YksKwQnuzgt1eY6LKzw==", + "dev": true, + "dependencies": { + "@types/bn.js": "^5.1.0", + "bn.js": "^5.1.2", + "create-hash": "^1.1.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "0.1.6", + "rlp": "^2.2.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@ethereumjs/common": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ethereumjs/common/-/common-2.2.0.tgz", + "integrity": "sha512-PyQiTG00MJtBRkJmv46ChZL8u2XWxNBeAthznAUIUiefxPAXjbkuiCZOuncgJS34/XkMbNc9zMt/PlgKRBElig==", + "dev": true, + "dependencies": { + "crc-32": "^1.2.0", + "ethereumjs-util": "^7.0.9" + } + }, + "node_modules/@ethereumjs/common/node_modules/@types/bn.js": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.0.tgz", + "integrity": "sha512-QSSVYj7pYFN49kW77o2s9xTCwZ8F2xLbjLLSEVh8D2F4JUhZtPAGOFLTD+ffqksBx/u4cE/KImFjyhqCjn/LIA==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@ethereumjs/common/node_modules/ethereumjs-util": { + "version": "7.0.10", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.0.10.tgz", + "integrity": "sha512-c/xThw6A+EAnej5Xk5kOzFzyoSnw0WX0tSlZ6pAsfGVvQj3TItaDg9b1+Fz1RJXA+y2YksKwQnuzgt1eY6LKzw==", + "dev": true, + "dependencies": { + "@types/bn.js": "^5.1.0", + "bn.js": "^5.1.2", + "create-hash": "^1.1.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "0.1.6", + "rlp": "^2.2.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@ethereumjs/ethash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@ethereumjs/ethash/-/ethash-1.0.0.tgz", + "integrity": "sha512-iIqnGG6NMKesyOxv2YctB2guOVX18qMAWlj3QlZyrc+GqfzLqoihti+cVNQnyNxr7eYuPdqwLQOFuPe6g/uKjw==", + "dev": true, + "dependencies": { + "@types/levelup": "^4.3.0", + "buffer-xor": "^2.0.1", + "ethereumjs-util": "^7.0.7", + "miller-rabin": "^4.0.0" + } + }, + "node_modules/@ethereumjs/ethash/node_modules/@types/bn.js": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.0.tgz", + "integrity": "sha512-QSSVYj7pYFN49kW77o2s9xTCwZ8F2xLbjLLSEVh8D2F4JUhZtPAGOFLTD+ffqksBx/u4cE/KImFjyhqCjn/LIA==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@ethereumjs/ethash/node_modules/buffer-xor": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-2.0.2.tgz", + "integrity": "sha512-eHslX0bin3GB+Lx2p7lEYRShRewuNZL3fUl4qlVJGGiwoPGftmt8JQgk2Y9Ji5/01TnVDo33E5b5O3vUB1HdqQ==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.1.1" + } + }, + "node_modules/@ethereumjs/ethash/node_modules/ethereumjs-util": { + "version": "7.0.10", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.0.10.tgz", + "integrity": "sha512-c/xThw6A+EAnej5Xk5kOzFzyoSnw0WX0tSlZ6pAsfGVvQj3TItaDg9b1+Fz1RJXA+y2YksKwQnuzgt1eY6LKzw==", + "dev": true, + "dependencies": { + "@types/bn.js": "^5.1.0", + "bn.js": "^5.1.2", + "create-hash": "^1.1.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "0.1.6", + "rlp": "^2.2.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@ethereumjs/tx": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/@ethereumjs/tx/-/tx-3.1.4.tgz", + "integrity": "sha512-6cJpmmjCpG5ZVN9NJYtWvmrEQcevw9DIR8hj2ca2PszD2fxbIFXky3Z37gpf8S6u0Npv09kG8It+G4xjydZVLg==", + "dev": true, + "dependencies": { + "@ethereumjs/common": "^2.2.0", + "ethereumjs-util": "^7.0.10" + } + }, + "node_modules/@ethereumjs/tx/node_modules/@types/bn.js": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.0.tgz", + "integrity": "sha512-QSSVYj7pYFN49kW77o2s9xTCwZ8F2xLbjLLSEVh8D2F4JUhZtPAGOFLTD+ffqksBx/u4cE/KImFjyhqCjn/LIA==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@ethereumjs/tx/node_modules/ethereumjs-util": { + "version": "7.0.10", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.0.10.tgz", + "integrity": "sha512-c/xThw6A+EAnej5Xk5kOzFzyoSnw0WX0tSlZ6pAsfGVvQj3TItaDg9b1+Fz1RJXA+y2YksKwQnuzgt1eY6LKzw==", + "dev": true, + "dependencies": { + "@types/bn.js": "^5.1.0", + "bn.js": "^5.1.2", + "create-hash": "^1.1.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "0.1.6", + "rlp": "^2.2.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@ethereumjs/vm": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/@ethereumjs/vm/-/vm-5.3.2.tgz", + "integrity": "sha512-QmCUQrW6xbhgEbQh9njue4kAJdM056C+ytBFUTF/kDYa3kNDm4Qxp9HUyTlt1OCSXvDhws0qqlh8+q+pmXpN7g==", + "dev": true, + "dependencies": { + "@ethereumjs/block": "^3.2.1", + "@ethereumjs/blockchain": "^5.2.1", + "@ethereumjs/common": "^2.2.0", + "@ethereumjs/tx": "^3.1.3", + "async-eventemitter": "^0.2.4", + "core-js-pure": "^3.0.1", + "debug": "^2.2.0", + "ethereumjs-util": "^7.0.10", + "functional-red-black-tree": "^1.0.1", + "mcl-wasm": "^0.7.1", + "merkle-patricia-tree": "^4.1.0", + "rustbn.js": "~0.2.0", + "util.promisify": "^1.0.1" + } + }, + "node_modules/@ethereumjs/vm/node_modules/@types/bn.js": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.0.tgz", + "integrity": "sha512-QSSVYj7pYFN49kW77o2s9xTCwZ8F2xLbjLLSEVh8D2F4JUhZtPAGOFLTD+ffqksBx/u4cE/KImFjyhqCjn/LIA==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@ethereumjs/vm/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/@ethereumjs/vm/node_modules/ethereumjs-util": { + "version": "7.0.10", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.0.10.tgz", + "integrity": "sha512-c/xThw6A+EAnej5Xk5kOzFzyoSnw0WX0tSlZ6pAsfGVvQj3TItaDg9b1+Fz1RJXA+y2YksKwQnuzgt1eY6LKzw==", + "dev": true, + "dependencies": { + "@types/bn.js": "^5.1.0", + "bn.js": "^5.1.2", + "create-hash": "^1.1.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "0.1.6", + "rlp": "^2.2.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@ethereumjs/vm/node_modules/level-ws": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/level-ws/-/level-ws-2.0.0.tgz", + "integrity": "sha512-1iv7VXx0G9ec1isqQZ7y5LmoZo/ewAsyDHNA8EFDW5hqH2Kqovm33nSFkSdnLLAK+I5FlT+lo5Cw9itGe+CpQA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "readable-stream": "^3.1.0", + "xtend": "^4.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ethereumjs/vm/node_modules/merkle-patricia-tree": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/merkle-patricia-tree/-/merkle-patricia-tree-4.2.1.tgz", + "integrity": "sha512-25reMgrT8PhJy0Ba0U7fMZD2oobS1FPWB9vQa0uBpJYIQYYuFXEHoqEkTqA/UzX+s9br3pmUVVY/TOsFt/x0oQ==", + "dev": true, + "dependencies": { + "@types/levelup": "^4.3.0", + "ethereumjs-util": "^7.1.0", + "level-mem": "^5.0.1", + "level-ws": "^2.0.0", + "readable-stream": "^3.6.0", + "rlp": "^2.2.4", + "semaphore-async-await": "^1.5.1" + } + }, + "node_modules/@ethereumjs/vm/node_modules/merkle-patricia-tree/node_modules/ethereumjs-util": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.0.tgz", + "integrity": "sha512-kR+vhu++mUDARrsMMhsjjzPduRVAeundLGXucGRHF3B4oEltOUspfgCVco4kckucj3FMlLaZHUl9n7/kdmr6Tw==", + "dev": true, + "dependencies": { + "@types/bn.js": "^5.1.0", + "bn.js": "^5.1.2", + "create-hash": "^1.1.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "0.1.6", + "rlp": "^2.2.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@ethereumjs/vm/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@ethersproject/abi": { + "version": "5.0.0-beta.153", + "resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.0.0-beta.153.tgz", + "integrity": "sha512-aXweZ1Z7vMNzJdLpR1CZUAIgnwjrZeUSvN9syCwlBaEBUFJmFY+HHnfuTI5vIhVs/mRkfJVrbEyl51JZQqyjAg==", + "dev": true, + "dependencies": { + "@ethersproject/address": ">=5.0.0-beta.128", + "@ethersproject/bignumber": ">=5.0.0-beta.130", + "@ethersproject/bytes": ">=5.0.0-beta.129", + "@ethersproject/constants": ">=5.0.0-beta.128", + "@ethersproject/hash": ">=5.0.0-beta.128", + "@ethersproject/keccak256": ">=5.0.0-beta.127", + "@ethersproject/logger": ">=5.0.0-beta.129", + "@ethersproject/properties": ">=5.0.0-beta.131", + "@ethersproject/strings": ">=5.0.0-beta.130" + } + }, + "node_modules/@ethersproject/abstract-provider": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@ethersproject/abstract-provider/-/abstract-provider-5.1.0.tgz", + "integrity": "sha512-8dJUnT8VNvPwWhYIau4dwp7qe1g+KgdRm4XTWvjkI9gAT2zZa90WF5ApdZ3vl1r6NDmnn6vUVvyphClRZRteTQ==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bignumber": "^5.1.0", + "@ethersproject/bytes": "^5.1.0", + "@ethersproject/logger": "^5.1.0", + "@ethersproject/networks": "^5.1.0", + "@ethersproject/properties": "^5.1.0", + "@ethersproject/transactions": "^5.1.0", + "@ethersproject/web": "^5.1.0" + } + }, + "node_modules/@ethersproject/abstract-signer": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@ethersproject/abstract-signer/-/abstract-signer-5.1.0.tgz", + "integrity": "sha512-qQDMkjGZSSJSKl6AnfTgmz9FSnzq3iEoEbHTYwjDlEAv+LNP7zd4ixCcVWlWyk+2siud856M5CRhAmPdupeN9w==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abstract-provider": "^5.1.0", + "@ethersproject/bignumber": "^5.1.0", + "@ethersproject/bytes": "^5.1.0", + "@ethersproject/logger": "^5.1.0", + "@ethersproject/properties": "^5.1.0" + } + }, + "node_modules/@ethersproject/address": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@ethersproject/address/-/address-5.1.0.tgz", + "integrity": "sha512-rfWQR12eHn2cpstCFS4RF7oGjfbkZb0oqep+BfrT+gWEGWG2IowJvIsacPOvzyS1jhNF4MQ4BS59B04Mbovteg==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bignumber": "^5.1.0", + "@ethersproject/bytes": "^5.1.0", + "@ethersproject/keccak256": "^5.1.0", + "@ethersproject/logger": "^5.1.0", + "@ethersproject/rlp": "^5.1.0" + } + }, + "node_modules/@ethersproject/base64": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@ethersproject/base64/-/base64-5.1.0.tgz", + "integrity": "sha512-npD1bLvK4Bcxz+m4EMkx+F8Rd7CnqS9DYnhNu0/GlQBXhWjvfoAZzk5HJ0f1qeyp8d+A86PTuzLOGOXf4/CN8g==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.1.0" + } + }, + "node_modules/@ethersproject/basex": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@ethersproject/basex/-/basex-5.1.0.tgz", + "integrity": "sha512-vBKr39bum7DDbOvkr1Sj19bRMEPA4FnST6Utt6xhDzI7o7L6QNkDn2yrCfP+hnvJGhZFKtLygWwqlTBZoBXYLg==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.1.0", + "@ethersproject/properties": "^5.1.0" + } + }, + "node_modules/@ethersproject/bignumber": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@ethersproject/bignumber/-/bignumber-5.1.1.tgz", + "integrity": "sha512-AVz5iqz7+70RIqoQTznsdJ6DOVBYciNlvO+AlQmPTB6ofCvoihI9bQdr6wljsX+d5W7Yc4nyvQvP4JMzg0Agig==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.1.0", + "@ethersproject/logger": "^5.1.0", + "bn.js": "^4.4.0" + } + }, + "node_modules/@ethersproject/bignumber/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/@ethersproject/bytes": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.1.0.tgz", + "integrity": "sha512-sGTxb+LVjFxJcJeUswAIK6ncgOrh3D8c192iEJd7mLr95V6du119rRfYT/b87WPkZ5I3gRBUYIYXtdgCWACe8g==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/logger": "^5.1.0" + } + }, + "node_modules/@ethersproject/constants": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@ethersproject/constants/-/constants-5.1.0.tgz", + "integrity": "sha512-0/SuHrxc8R8k+JiLmJymxHJbojUDWBQqO+b+XFdwaP0jGzqC09YDy/CAlSZB6qHsBifY8X3I89HcK/oMqxRdBw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bignumber": "^5.1.0" + } + }, + "node_modules/@ethersproject/contracts": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@ethersproject/contracts/-/contracts-5.1.1.tgz", + "integrity": "sha512-6WwktLJ0DFWU8pDkgH4IGttQHhQN4SnwKFu9h+QYVe48VGWtbDu4W8/q/7QA1u/HWlWMrKxqawPiZUJj0UMvOw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abi": "^5.1.0", + "@ethersproject/abstract-provider": "^5.1.0", + "@ethersproject/abstract-signer": "^5.1.0", + "@ethersproject/address": "^5.1.0", + "@ethersproject/bignumber": "^5.1.0", + "@ethersproject/bytes": "^5.1.0", + "@ethersproject/constants": "^5.1.0", + "@ethersproject/logger": "^5.1.0", + "@ethersproject/properties": "^5.1.0", + "@ethersproject/transactions": "^5.1.0" + } + }, + "node_modules/@ethersproject/contracts/node_modules/@ethersproject/abi": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.1.2.tgz", + "integrity": "sha512-uMhoQVPX0UtfzTpekYQSEUcJGDgsJ25ifz+SV6PDETWaUFhcR8RNgb1QPTASP13inW8r6iy0/Xdq9D5hK2pNvA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/address": "^5.1.0", + "@ethersproject/bignumber": "^5.1.0", + "@ethersproject/bytes": "^5.1.0", + "@ethersproject/constants": "^5.1.0", + "@ethersproject/hash": "^5.1.0", + "@ethersproject/keccak256": "^5.1.0", + "@ethersproject/logger": "^5.1.0", + "@ethersproject/properties": "^5.1.0", + "@ethersproject/strings": "^5.1.0" + } + }, + "node_modules/@ethersproject/hash": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@ethersproject/hash/-/hash-5.1.0.tgz", + "integrity": "sha512-fNwry20yLLPpnRRwm3fBL+2ksgO+KMadxM44WJmRIoTKzy4269+rbq9KFoe2LTqq2CXJM2CE70beGaNrpuqflQ==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abstract-signer": "^5.1.0", + "@ethersproject/address": "^5.1.0", + "@ethersproject/bignumber": "^5.1.0", + "@ethersproject/bytes": "^5.1.0", + "@ethersproject/keccak256": "^5.1.0", + "@ethersproject/logger": "^5.1.0", + "@ethersproject/properties": "^5.1.0", + "@ethersproject/strings": "^5.1.0" + } + }, + "node_modules/@ethersproject/hdnode": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@ethersproject/hdnode/-/hdnode-5.1.0.tgz", + "integrity": "sha512-obIWdlujloExPHWJGmhJO/sETOOo7SEb6qemV4f8kyFoXg+cJK+Ta9SvBrj7hsUK85n3LZeZJZRjjM7oez3Clg==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abstract-signer": "^5.1.0", + "@ethersproject/basex": "^5.1.0", + "@ethersproject/bignumber": "^5.1.0", + "@ethersproject/bytes": "^5.1.0", + "@ethersproject/logger": "^5.1.0", + "@ethersproject/pbkdf2": "^5.1.0", + "@ethersproject/properties": "^5.1.0", + "@ethersproject/sha2": "^5.1.0", + "@ethersproject/signing-key": "^5.1.0", + "@ethersproject/strings": "^5.1.0", + "@ethersproject/transactions": "^5.1.0", + "@ethersproject/wordlists": "^5.1.0" + } + }, + "node_modules/@ethersproject/json-wallets": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@ethersproject/json-wallets/-/json-wallets-5.1.0.tgz", + "integrity": "sha512-00n2iBy27w8zrGZSiU762UOVuzCQZxUZxopsZC47++js6xUFuI74DHcJ5K/2pddlF1YBskvmMuboEu1geK8mnA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abstract-signer": "^5.1.0", + "@ethersproject/address": "^5.1.0", + "@ethersproject/bytes": "^5.1.0", + "@ethersproject/hdnode": "^5.1.0", + "@ethersproject/keccak256": "^5.1.0", + "@ethersproject/logger": "^5.1.0", + "@ethersproject/pbkdf2": "^5.1.0", + "@ethersproject/properties": "^5.1.0", + "@ethersproject/random": "^5.1.0", + "@ethersproject/strings": "^5.1.0", + "@ethersproject/transactions": "^5.1.0", + "aes-js": "3.0.0", + "scrypt-js": "3.0.1" + } + }, + "node_modules/@ethersproject/json-wallets/node_modules/scrypt-js": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz", + "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==", + "dev": true + }, + "node_modules/@ethersproject/keccak256": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.1.0.tgz", + "integrity": "sha512-vrTB1W6AEYoadww5c9UyVJ2YcSiyIUTNDRccZIgwTmFFoSHwBtcvG1hqy9RzJ1T0bMdATbM9Hfx2mJ6H0i7Hig==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.1.0", + "js-sha3": "0.5.7" + } + }, + "node_modules/@ethersproject/keccak256/node_modules/js-sha3": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.5.7.tgz", + "integrity": "sha1-DU/9gALVMzqrr0oj7tL2N0yfKOc=", + "dev": true + }, + "node_modules/@ethersproject/logger": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.1.0.tgz", + "integrity": "sha512-wtUaD1lBX10HBXjjKV9VHCBnTdUaKQnQ2XSET1ezglqLdPdllNOIlLfhyCRqXm5xwcjExVI5ETokOYfjPtaAlw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ] + }, + "node_modules/@ethersproject/networks": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@ethersproject/networks/-/networks-5.1.0.tgz", + "integrity": "sha512-A/NIrIED/G/IgU1XUukOA3WcFRxn2I4O5GxsYGA5nFlIi+UZWdGojs85I1VXkR1gX9eFnDXzjE6OtbgZHjFhIA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/logger": "^5.1.0" + } + }, + "node_modules/@ethersproject/pbkdf2": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@ethersproject/pbkdf2/-/pbkdf2-5.1.0.tgz", + "integrity": "sha512-B8cUbHHTgs8OtgJIafrRcz/YPDobVd5Ru8gTnShOiM9EBuFpYHQpq3+8iQJ6pyczDu6HP/oc/njAsIBhwFZYew==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.1.0", + "@ethersproject/sha2": "^5.1.0" + } + }, + "node_modules/@ethersproject/properties": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@ethersproject/properties/-/properties-5.1.0.tgz", + "integrity": "sha512-519KKTwgmH42AQL3+GFV3SX6khYEfHsvI6v8HYejlkigSDuqttdgVygFTDsGlofNFchhDwuclrxQnD5B0YLNMg==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/logger": "^5.1.0" + } + }, + "node_modules/@ethersproject/providers": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.1.2.tgz", + "integrity": "sha512-GqsS8rd+eyd4eNkcNgzZ4l9IRULBPUZa7JPnv22k4MHflMobUseyhfbVnmoN5bVNNkOxjV1IPTw9i0sV1hwdpg==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abstract-provider": "^5.1.0", + "@ethersproject/abstract-signer": "^5.1.0", + "@ethersproject/address": "^5.1.0", + "@ethersproject/basex": "^5.1.0", + "@ethersproject/bignumber": "^5.1.0", + "@ethersproject/bytes": "^5.1.0", + "@ethersproject/constants": "^5.1.0", + "@ethersproject/hash": "^5.1.0", + "@ethersproject/logger": "^5.1.0", + "@ethersproject/networks": "^5.1.0", + "@ethersproject/properties": "^5.1.0", + "@ethersproject/random": "^5.1.0", + "@ethersproject/rlp": "^5.1.0", + "@ethersproject/sha2": "^5.1.0", + "@ethersproject/strings": "^5.1.0", + "@ethersproject/transactions": "^5.1.0", + "@ethersproject/web": "^5.1.0", + "bech32": "1.1.4", + "ws": "7.2.3" + } + }, + "node_modules/@ethersproject/providers/node_modules/ws": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.2.3.tgz", + "integrity": "sha512-HTDl9G9hbkNDk98naoR/cHDws7+EyYMOdL1BmjsZXRUjf7d+MficC4B7HLUPlSiho0vg+CWKrGIt/VJBd1xunQ==", + "dev": true, + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/@ethersproject/random": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@ethersproject/random/-/random-5.1.0.tgz", + "integrity": "sha512-+uuczLQZ4+no9cP6TCoCktXx0u2YbNaRT7lRkSt12d8263e702f0u+4JnnRO8Qmv5nylWJebnqCHzyxP+6mLqw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.1.0", + "@ethersproject/logger": "^5.1.0" + } + }, + "node_modules/@ethersproject/rlp": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.1.0.tgz", + "integrity": "sha512-vDTyHIwNPrecy55gKGZ47eJZhBm8LLBxihzi5ou+zrSvYTpkSTWRcKUlXFDFQVwfWB+P5PGyERAdiDEI76clxw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.1.0", + "@ethersproject/logger": "^5.1.0" + } + }, + "node_modules/@ethersproject/sha2": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@ethersproject/sha2/-/sha2-5.1.0.tgz", + "integrity": "sha512-+fNSeZRstOpdRJpdGUkRONFCaiAqWkc91zXgg76Nlp5ndBQE25Kk5yK8gCPG1aGnCrbariiPr5j9DmrYH78JCA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.1.0", + "@ethersproject/logger": "^5.1.0", + "hash.js": "1.1.3" + } + }, + "node_modules/@ethersproject/sha2/node_modules/hash.js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz", + "integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/@ethersproject/signing-key": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@ethersproject/signing-key/-/signing-key-5.1.0.tgz", + "integrity": "sha512-tE5LFlbmdObG8bY04NpuwPWSRPgEswfxweAI1sH7TbP0ml1elNfqcq7ii/3AvIN05i5U0Pkm3Tf8bramt8MmLw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.1.0", + "@ethersproject/logger": "^5.1.0", + "@ethersproject/properties": "^5.1.0", + "bn.js": "^4.4.0", + "elliptic": "6.5.4" + } + }, + "node_modules/@ethersproject/signing-key/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/@ethersproject/solidity": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@ethersproject/solidity/-/solidity-5.1.0.tgz", + "integrity": "sha512-kPodsGyo9zg1g9XSXp1lGhFaezBAUUsAUB1Vf6OkppE5Wksg4Et+x3kG4m7J/uShDMP2upkJtHNsIBK2XkVpKQ==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bignumber": "^5.1.0", + "@ethersproject/bytes": "^5.1.0", + "@ethersproject/keccak256": "^5.1.0", + "@ethersproject/sha2": "^5.1.0", + "@ethersproject/strings": "^5.1.0" + } + }, + "node_modules/@ethersproject/strings": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@ethersproject/strings/-/strings-5.1.0.tgz", + "integrity": "sha512-perBZy0RrmmL0ejiFGUOlBVjMsUceqLut3OBP3zP96LhiJWWbS8u1NqQVgN4/Gyrbziuda66DxiQocXhsvx+Sw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.1.0", + "@ethersproject/constants": "^5.1.0", + "@ethersproject/logger": "^5.1.0" + } + }, + "node_modules/@ethersproject/transactions": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@ethersproject/transactions/-/transactions-5.1.1.tgz", + "integrity": "sha512-Nwgbp09ttIVN0OoUBatCXaHxR7grWPHbozJN8v7AXDLrl6nnOIBEMDh+yJTnosSQlFhcyjfTGGN+Mx6R8HdvMw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/address": "^5.1.0", + "@ethersproject/bignumber": "^5.1.0", + "@ethersproject/bytes": "^5.1.0", + "@ethersproject/constants": "^5.1.0", + "@ethersproject/keccak256": "^5.1.0", + "@ethersproject/logger": "^5.1.0", + "@ethersproject/properties": "^5.1.0", + "@ethersproject/rlp": "^5.1.0", + "@ethersproject/signing-key": "^5.1.0" + } + }, + "node_modules/@ethersproject/wallet": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@ethersproject/wallet/-/wallet-5.1.0.tgz", + "integrity": "sha512-ULmUtiYQLTUS+y3DgkLzRhFEK10zMwmjOthnjiZxee3Q/MVwr3rnmuAnXIUZrPjna6hvUPnyRIdW5XuF0Ld0YQ==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abstract-provider": "^5.1.0", + "@ethersproject/abstract-signer": "^5.1.0", + "@ethersproject/address": "^5.1.0", + "@ethersproject/bignumber": "^5.1.0", + "@ethersproject/bytes": "^5.1.0", + "@ethersproject/hash": "^5.1.0", + "@ethersproject/hdnode": "^5.1.0", + "@ethersproject/json-wallets": "^5.1.0", + "@ethersproject/keccak256": "^5.1.0", + "@ethersproject/logger": "^5.1.0", + "@ethersproject/properties": "^5.1.0", + "@ethersproject/random": "^5.1.0", + "@ethersproject/signing-key": "^5.1.0", + "@ethersproject/transactions": "^5.1.0", + "@ethersproject/wordlists": "^5.1.0" + } + }, + "node_modules/@ethersproject/web": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@ethersproject/web/-/web-5.1.0.tgz", + "integrity": "sha512-LTeluWgTq04+RNqAkVhpydPcRZK/kKxD2Vy7PYGrAD27ABO9kTqTBKwiOuzTyAHKUQHfnvZbXmxBXJAGViSDcA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/base64": "^5.1.0", + "@ethersproject/bytes": "^5.1.0", + "@ethersproject/logger": "^5.1.0", + "@ethersproject/properties": "^5.1.0", + "@ethersproject/strings": "^5.1.0" + } + }, + "node_modules/@ethersproject/wordlists": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@ethersproject/wordlists/-/wordlists-5.1.0.tgz", + "integrity": "sha512-NsUCi/TpBb+oTFvMSccUkJGtp5o/84eOyqp5q5aBeiNBSLkYyw21znRn9mAmxZgySpxgruVgKbaapnYPgvctPQ==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.1.0", + "@ethersproject/hash": "^5.1.0", + "@ethersproject/logger": "^5.1.0", + "@ethersproject/properties": "^5.1.0", + "@ethersproject/strings": "^5.1.0" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz", + "integrity": "sha512-eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.3", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz", + "integrity": "sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz", + "integrity": "sha512-1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.3", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nomiclabs/hardhat-ethers": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@nomiclabs/hardhat-ethers/-/hardhat-ethers-2.0.2.tgz", + "integrity": "sha512-6quxWe8wwS4X5v3Au8q1jOvXYEPkS1Fh+cME5u6AwNdnI4uERvPlVjlgRWzpnb+Rrt1l/cEqiNRH9GlsBMSDQg==", + "dev": true, + "peerDependencies": { + "ethers": "^5.0.0", + "hardhat": "^2.0.0" + } + }, + "node_modules/@nomiclabs/hardhat-ganache": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@nomiclabs/hardhat-ganache/-/hardhat-ganache-2.0.0.tgz", + "integrity": "sha512-JJI4+5bHZUoeuIZL42usxp+0i/krYnoApzzA2Xii1P7DwrZHwFBa2OCtR1sUq5z3VTSTvQKrJ1d2/Y6CoQGTKQ==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "ganache-core": "^2.7.0", + "ts-interface-checker": "^0.1.9" + }, + "peerDependencies": { + "hardhat": "^2.0.0" + } + }, + "node_modules/@nomiclabs/hardhat-ganache/node_modules/debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@nomiclabs/hardhat-ganache/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/@nomiclabs/hardhat-truffle5": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@nomiclabs/hardhat-truffle5/-/hardhat-truffle5-2.0.0.tgz", + "integrity": "sha512-JLjyfeXTiSqa0oLHcN3i8kD4coJa4Gx6uAXybGv3aBiliEbHddLSzmBWx0EU69a1/Ad5YDdGSqVnjB8mkUCr/g==", + "dev": true, + "dependencies": { + "@nomiclabs/truffle-contract": "^4.2.23", + "@types/chai": "^4.2.0", + "chai": "^4.2.0", + "ethereumjs-util": "^6.1.0", + "fs-extra": "^7.0.1" + }, + "peerDependencies": { + "@nomiclabs/hardhat-web3": "^2.0.0", + "hardhat": "^2.0.0", + "web3": "^1.0.0-beta.36" + } + }, + "node_modules/@nomiclabs/hardhat-truffle5/node_modules/fs-extra": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", + "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/@nomiclabs/hardhat-web3": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@nomiclabs/hardhat-web3/-/hardhat-web3-2.0.0.tgz", + "integrity": "sha512-zt4xN+D+fKl3wW2YlTX3k9APR3XZgPkxJYf36AcliJn3oujnKEVRZaHu0PhgLjO+gR+F/kiYayo9fgd2L8970Q==", + "dev": true, + "dependencies": { + "@types/bignumber.js": "^5.0.0" + }, + "peerDependencies": { + "hardhat": "^2.0.0", + "web3": "^1.0.0-beta.36" + } + }, + "node_modules/@nomiclabs/truffle-contract": { + "version": "4.2.23", + "resolved": "https://registry.npmjs.org/@nomiclabs/truffle-contract/-/truffle-contract-4.2.23.tgz", + "integrity": "sha512-Khj/Ts9r0LqEpGYhISbc+8WTOd6qJ4aFnDR+Ew+neqcjGnhwrIvuihNwPFWU6hDepW3Xod6Y+rTo90N8sLRDjw==", + "dev": true, + "dependencies": { + "@truffle/blockchain-utils": "^0.0.25", + "@truffle/contract-schema": "^3.2.5", + "@truffle/debug-utils": "^4.2.9", + "@truffle/error": "^0.0.11", + "@truffle/interface-adapter": "^0.4.16", + "bignumber.js": "^7.2.1", + "ethereum-ens": "^0.8.0", + "ethers": "^4.0.0-beta.1", + "source-map-support": "^0.5.19" + }, + "peerDependencies": { + "web3": "^1.2.1", + "web3-core-helpers": "^1.2.1", + "web3-core-promievent": "^1.2.1", + "web3-eth-abi": "^1.2.1", + "web3-utils": "^1.2.1" + } + }, + "node_modules/@nomiclabs/truffle-contract/node_modules/@truffle/blockchain-utils": { + "version": "0.0.25", + "resolved": "https://registry.npmjs.org/@truffle/blockchain-utils/-/blockchain-utils-0.0.25.tgz", + "integrity": "sha512-XA5m0BfAWtysy5ChHyiAf1fXbJxJXphKk+eZ9Rb9Twi6fn3Jg4gnHNwYXJacYFEydqT5vr2s4Ou812JHlautpw==", + "dev": true, + "dependencies": { + "source-map-support": "^0.5.19" + } + }, + "node_modules/@nomiclabs/truffle-contract/node_modules/@truffle/error": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/@truffle/error/-/error-0.0.11.tgz", + "integrity": "sha512-ju6TucjlJkfYMmdraYY/IBJaFb+Sa+huhYtOoyOJ+G29KcgytUVnDzKGwC7Kgk6IsxQMm62Mc1E0GZzFbGGipw==", + "dev": true + }, + "node_modules/@nomiclabs/truffle-contract/node_modules/bignumber.js": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-7.2.1.tgz", + "integrity": "sha512-S4XzBk5sMB+Rcb/LNcpzXr57VRTxgAvaAEDAl1AwRx27j00hT84O6OkteE7u8UB3NuaaygCRrEpqox4uDOrbdQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/@nomiclabs/truffle-contract/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/@nomiclabs/truffle-contract/node_modules/elliptic": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz", + "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==", + "dev": true, + "dependencies": { + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.0" + } + }, + "node_modules/@nomiclabs/truffle-contract/node_modules/ethers": { + "version": "4.0.48", + "resolved": "https://registry.npmjs.org/ethers/-/ethers-4.0.48.tgz", + "integrity": "sha512-sZD5K8H28dOrcidzx9f8KYh8083n5BexIO3+SbE4jK83L85FxtpXZBCQdXb8gkg+7sBqomcLhhkU7UHL+F7I2g==", + "dev": true, + "dependencies": { + "aes-js": "3.0.0", + "bn.js": "^4.4.0", + "elliptic": "6.5.3", + "hash.js": "1.1.3", + "js-sha3": "0.5.7", + "scrypt-js": "2.0.4", + "setimmediate": "1.0.4", + "uuid": "2.0.1", + "xmlhttprequest": "1.8.0" + } + }, + "node_modules/@nomiclabs/truffle-contract/node_modules/hash.js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz", + "integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/@nomiclabs/truffle-contract/node_modules/js-sha3": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.5.7.tgz", + "integrity": "sha1-DU/9gALVMzqrr0oj7tL2N0yfKOc=", + "dev": true + }, + "node_modules/@nomiclabs/truffle-contract/node_modules/scrypt-js": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-2.0.4.tgz", + "integrity": "sha512-4KsaGcPnuhtCZQCxFxN3GVYIhKFPTdLd8PLC552XwbMndtD0cjRFAhDuuydXQ0h08ZfPgzqe6EKHozpuH74iDw==", + "dev": true + }, + "node_modules/@nomiclabs/truffle-contract/node_modules/setimmediate": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.4.tgz", + "integrity": "sha1-IOgd5iLUoCWIzgyNqJc8vPHTE48=", + "dev": true + }, + "node_modules/@nomiclabs/truffle-contract/node_modules/uuid": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.1.tgz", + "integrity": "sha1-wqMN7bPlNdcsz4LjQ5QaULqFM6w=", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "dev": true + }, + "node_modules/@openzeppelin/contract-loader": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@openzeppelin/contract-loader/-/contract-loader-0.4.0.tgz", + "integrity": "sha512-K+Pl4tn0FbxMSP0H9sgi61ayCbecpqhQmuBshelC7A3q2MlpcqWRJan0xijpwdtv6TORNd5oZNe/+f3l+GD6tw==", + "dev": true, + "dependencies": { + "find-up": "^4.1.0", + "fs-extra": "^8.1.0", + "try-require": "^1.2.1" + } + }, + "node_modules/@openzeppelin/contract-loader/node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/@openzeppelin/test-helpers": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/@openzeppelin/test-helpers/-/test-helpers-0.5.6.tgz", + "integrity": "sha512-8U4sR4ed4cFmc6UKj7akUxZzQJKU9P3p/3RbF+urQuRLLhBaB8zSya1m9VB7/anYEZnBmTDk8LuVgAmYaCPs9A==", + "dev": true, + "dependencies": { + "@openzeppelin/contract-loader": "^0.4.0", + "@truffle/contract": "^4.0.35 <4.2.2", + "ansi-colors": "^3.2.3", + "chai": "^4.2.0", + "chai-bn": "^0.2.1", + "ethjs-abi": "^0.2.1", + "lodash.flatten": "^4.4.0", + "semver": "^5.6.0", + "web3": "^1.2.1", + "web3-utils": "^1.2.1" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/@truffle/blockchain-utils": { + "version": "0.0.18", + "resolved": "https://registry.npmjs.org/@truffle/blockchain-utils/-/blockchain-utils-0.0.18.tgz", + "integrity": "sha512-XnRu5p1QO9krJizOeBY5WfzPDvEOmCnOT5u6qF8uN3Kkq9vcH3ZqW4XTuzz9ERZNpZfWb3UJx4PUosgeHLs5vw==", + "dev": true, + "dependencies": { + "source-map-support": "^0.5.16" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/@truffle/contract": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@truffle/contract/-/contract-4.2.1.tgz", + "integrity": "sha512-af1rUyU/W75GYHt/i7r+NwHozwaCma7V/q/+SRZ3Cw2MFaGOQ0dA/ZGhH8P1F0fmDiUe1DBEIbKxXWai0PWFYg==", + "dev": true, + "dependencies": { + "@truffle/blockchain-utils": "^0.0.18", + "@truffle/contract-schema": "^3.1.0", + "@truffle/error": "^0.0.8", + "@truffle/interface-adapter": "^0.4.6", + "bignumber.js": "^7.2.1", + "ethereum-ens": "^0.8.0", + "ethers": "^4.0.0-beta.1", + "exorcist": "^1.0.1", + "source-map-support": "^0.5.16", + "web3": "1.2.1", + "web3-core-promievent": "1.2.1", + "web3-eth-abi": "1.2.1", + "web3-utils": "1.2.1" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/@truffle/contract/node_modules/web3": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3/-/web3-1.2.1.tgz", + "integrity": "sha512-nNMzeCK0agb5i/oTWNdQ1aGtwYfXzHottFP2Dz0oGIzavPMGSKyVlr8ibVb1yK5sJBjrWVnTdGaOC2zKDFuFRw==", + "dev": true, + "dependencies": { + "web3-bzz": "1.2.1", + "web3-core": "1.2.1", + "web3-eth": "1.2.1", + "web3-eth-personal": "1.2.1", + "web3-net": "1.2.1", + "web3-shh": "1.2.1", + "web3-utils": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/bignumber.js": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-7.2.1.tgz", + "integrity": "sha512-S4XzBk5sMB+Rcb/LNcpzXr57VRTxgAvaAEDAl1AwRx27j00hT84O6OkteE7u8UB3NuaaygCRrEpqox4uDOrbdQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/@openzeppelin/test-helpers/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/elliptic": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz", + "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==", + "dev": true, + "dependencies": { + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.0" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/ethers": { + "version": "4.0.48", + "resolved": "https://registry.npmjs.org/ethers/-/ethers-4.0.48.tgz", + "integrity": "sha512-sZD5K8H28dOrcidzx9f8KYh8083n5BexIO3+SbE4jK83L85FxtpXZBCQdXb8gkg+7sBqomcLhhkU7UHL+F7I2g==", + "dev": true, + "dependencies": { + "aes-js": "3.0.0", + "bn.js": "^4.4.0", + "elliptic": "6.5.3", + "hash.js": "1.1.3", + "js-sha3": "0.5.7", + "scrypt-js": "2.0.4", + "setimmediate": "1.0.4", + "uuid": "2.0.1", + "xmlhttprequest": "1.8.0" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/ethers/node_modules/setimmediate": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.4.tgz", + "integrity": "sha1-IOgd5iLUoCWIzgyNqJc8vPHTE48=", + "dev": true + }, + "node_modules/@openzeppelin/test-helpers/node_modules/ethers/node_modules/uuid": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.1.tgz", + "integrity": "sha1-wqMN7bPlNdcsz4LjQ5QaULqFM6w=", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "dev": true + }, + "node_modules/@openzeppelin/test-helpers/node_modules/hash.js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz", + "integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/js-sha3": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.5.7.tgz", + "integrity": "sha1-DU/9gALVMzqrr0oj7tL2N0yfKOc=", + "dev": true + }, + "node_modules/@openzeppelin/test-helpers/node_modules/p-cancelable": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz", + "integrity": "sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/scrypt-js": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-2.0.4.tgz", + "integrity": "sha512-4KsaGcPnuhtCZQCxFxN3GVYIhKFPTdLd8PLC552XwbMndtD0cjRFAhDuuydXQ0h08ZfPgzqe6EKHozpuH74iDw==", + "dev": true + }, + "node_modules/@openzeppelin/test-helpers/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/swarm-js": { + "version": "0.1.39", + "resolved": "https://registry.npmjs.org/swarm-js/-/swarm-js-0.1.39.tgz", + "integrity": "sha512-QLMqL2rzF6n5s50BptyD6Oi0R1aWlJC5Y17SRIVXRj6OR1DRIPM7nepvrxxkjA1zNzFz6mUOMjfeqeDaWB7OOg==", + "dev": true, + "dependencies": { + "bluebird": "^3.5.0", + "buffer": "^5.0.5", + "decompress": "^4.0.0", + "eth-lib": "^0.1.26", + "fs-extra": "^4.0.2", + "got": "^7.1.0", + "mime-types": "^2.1.16", + "mkdirp-promise": "^5.0.1", + "mock-fs": "^4.1.0", + "setimmediate": "^1.0.5", + "tar": "^4.0.2", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/swarm-js/node_modules/got": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/got/-/got-7.1.0.tgz", + "integrity": "sha512-Y5WMo7xKKq1muPsxD+KmrR8DH5auG7fBdDVueZwETwV6VytKyU9OX/ddpq2/1hp1vIPvVb4T81dKQz3BivkNLw==", + "dev": true, + "dependencies": { + "decompress-response": "^3.2.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "is-plain-obj": "^1.1.0", + "is-retry-allowed": "^1.0.0", + "is-stream": "^1.0.0", + "isurl": "^1.0.0-alpha5", + "lowercase-keys": "^1.0.0", + "p-cancelable": "^0.3.0", + "p-timeout": "^1.1.1", + "safe-buffer": "^5.0.1", + "timed-out": "^4.0.0", + "url-parse-lax": "^1.0.0", + "url-to-options": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "node_modules/@openzeppelin/test-helpers/node_modules/url-parse-lax": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", + "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "dev": true, + "dependencies": { + "prepend-http": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/web3-bzz": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-bzz/-/web3-bzz-1.2.1.tgz", + "integrity": "sha512-LdOO44TuYbGIPfL4ilkuS89GQovxUpmLz6C1UC7VYVVRILeZS740FVB3j9V4P4FHUk1RenaDfKhcntqgVCHtjw==", + "dev": true, + "dependencies": { + "got": "9.6.0", + "swarm-js": "0.1.39", + "underscore": "1.9.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/web3-core": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-core/-/web3-core-1.2.1.tgz", + "integrity": "sha512-5ODwIqgl8oIg/0+Ai4jsLxkKFWJYE0uLuE1yUKHNVCL4zL6n3rFjRMpKPokd6id6nJCNgeA64KdWQ4XfpnjdMg==", + "dev": true, + "dependencies": { + "web3-core-helpers": "1.2.1", + "web3-core-method": "1.2.1", + "web3-core-requestmanager": "1.2.1", + "web3-utils": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/web3-core-method": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-core-method/-/web3-core-method-1.2.1.tgz", + "integrity": "sha512-Ghg2WS23qi6Xj8Od3VCzaImLHseEA7/usvnOItluiIc5cKs00WYWsNy2YRStzU9a2+z8lwQywPYp0nTzR/QXdQ==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-core-helpers": "1.2.1", + "web3-core-promievent": "1.2.1", + "web3-core-subscriptions": "1.2.1", + "web3-utils": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/web3-core-requestmanager": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-core-requestmanager/-/web3-core-requestmanager-1.2.1.tgz", + "integrity": "sha512-xfknTC69RfYmLKC+83Jz73IC3/sS2ZLhGtX33D4Q5nQ8yc39ElyAolxr9sJQS8kihOcM6u4J+8gyGMqsLcpIBg==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-core-helpers": "1.2.1", + "web3-providers-http": "1.2.1", + "web3-providers-ipc": "1.2.1", + "web3-providers-ws": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/web3-core-subscriptions": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-core-subscriptions/-/web3-core-subscriptions-1.2.1.tgz", + "integrity": "sha512-nmOwe3NsB8V8UFsY1r+sW6KjdOS68h8nuh7NzlWxBQT/19QSUGiERRTaZXWu5BYvo1EoZRMxCKyCQpSSXLc08g==", + "dev": true, + "dependencies": { + "eventemitter3": "3.1.2", + "underscore": "1.9.1", + "web3-core-helpers": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/web3-eth": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-eth/-/web3-eth-1.2.1.tgz", + "integrity": "sha512-/2xly4Yry5FW1i+uygPjhfvgUP/MS/Dk+PDqmzp5M88tS86A+j8BzKc23GrlA8sgGs0645cpZK/999LpEF5UdA==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-core": "1.2.1", + "web3-core-helpers": "1.2.1", + "web3-core-method": "1.2.1", + "web3-core-subscriptions": "1.2.1", + "web3-eth-abi": "1.2.1", + "web3-eth-accounts": "1.2.1", + "web3-eth-contract": "1.2.1", + "web3-eth-ens": "1.2.1", + "web3-eth-iban": "1.2.1", + "web3-eth-personal": "1.2.1", + "web3-net": "1.2.1", + "web3-utils": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/web3-eth-accounts": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-eth-accounts/-/web3-eth-accounts-1.2.1.tgz", + "integrity": "sha512-26I4qq42STQ8IeKUyur3MdQ1NzrzCqPsmzqpux0j6X/XBD7EjZ+Cs0lhGNkSKH5dI3V8CJasnQ5T1mNKeWB7nQ==", + "dev": true, + "dependencies": { + "any-promise": "1.3.0", + "crypto-browserify": "3.12.0", + "eth-lib": "0.2.7", + "scryptsy": "2.1.0", + "semver": "6.2.0", + "underscore": "1.9.1", + "uuid": "3.3.2", + "web3-core": "1.2.1", + "web3-core-helpers": "1.2.1", + "web3-core-method": "1.2.1", + "web3-utils": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/web3-eth-accounts/node_modules/eth-lib": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.7.tgz", + "integrity": "sha1-L5Pxex4jrsN1nNSj/iDBKGo/wco=", + "dev": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/web3-eth-accounts/node_modules/semver": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.2.0.tgz", + "integrity": "sha512-jdFC1VdUGT/2Scgbimf7FSx9iJLXoqfglSF+gJeuNWVpiE37OIbc1jywR/GJyFdz3mnkz2/id0L0J/cr0izR5A==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/web3-eth-contract": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-eth-contract/-/web3-eth-contract-1.2.1.tgz", + "integrity": "sha512-kYFESbQ3boC9bl2rYVghj7O8UKMiuKaiMkxvRH5cEDHil8V7MGEGZNH0slSdoyeftZVlaWSMqkRP/chfnKND0g==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-core": "1.2.1", + "web3-core-helpers": "1.2.1", + "web3-core-method": "1.2.1", + "web3-core-promievent": "1.2.1", + "web3-core-subscriptions": "1.2.1", + "web3-eth-abi": "1.2.1", + "web3-utils": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/web3-eth-ens": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-eth-ens/-/web3-eth-ens-1.2.1.tgz", + "integrity": "sha512-lhP1kFhqZr2nnbu3CGIFFrAnNxk2veXpOXBY48Tub37RtobDyHijHgrj+xTh+mFiPokyrapVjpFsbGa+Xzye4Q==", + "dev": true, + "dependencies": { + "eth-ens-namehash": "2.0.8", + "underscore": "1.9.1", + "web3-core": "1.2.1", + "web3-core-helpers": "1.2.1", + "web3-core-promievent": "1.2.1", + "web3-eth-abi": "1.2.1", + "web3-eth-contract": "1.2.1", + "web3-utils": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/web3-eth-personal": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-eth-personal/-/web3-eth-personal-1.2.1.tgz", + "integrity": "sha512-RNDVSiaSoY4aIp8+Hc7z+X72H7lMb3fmAChuSBADoEc7DsJrY/d0R5qQDK9g9t2BO8oxgLrLNyBP/9ub2Hc6Bg==", + "dev": true, + "dependencies": { + "web3-core": "1.2.1", + "web3-core-helpers": "1.2.1", + "web3-core-method": "1.2.1", + "web3-net": "1.2.1", + "web3-utils": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/web3-net": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-net/-/web3-net-1.2.1.tgz", + "integrity": "sha512-Yt1Bs7WgnLESPe0rri/ZoPWzSy55ovioaP35w1KZydrNtQ5Yq4WcrAdhBzcOW7vAkIwrsLQsvA+hrOCy7mNauw==", + "dev": true, + "dependencies": { + "web3-core": "1.2.1", + "web3-core-method": "1.2.1", + "web3-utils": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/web3-providers-http": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-providers-http/-/web3-providers-http-1.2.1.tgz", + "integrity": "sha512-BDtVUVolT9b3CAzeGVA/np1hhn7RPUZ6YYGB/sYky+GjeO311Yoq8SRDUSezU92x8yImSC2B+SMReGhd1zL+bQ==", + "dev": true, + "dependencies": { + "web3-core-helpers": "1.2.1", + "xhr2-cookies": "1.1.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/web3-providers-ipc": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-providers-ipc/-/web3-providers-ipc-1.2.1.tgz", + "integrity": "sha512-oPEuOCwxVx8L4CPD0TUdnlOUZwGBSRKScCz/Ws2YHdr9Ium+whm+0NLmOZjkjQp5wovQbyBzNa6zJz1noFRvFA==", + "dev": true, + "dependencies": { + "oboe": "2.1.4", + "underscore": "1.9.1", + "web3-core-helpers": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/web3-providers-ws": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-providers-ws/-/web3-providers-ws-1.2.1.tgz", + "integrity": "sha512-oqsQXzu+ejJACVHy864WwIyw+oB21nw/pI65/sD95Zi98+/HQzFfNcIFneF1NC4bVF3VNX4YHTNq2I2o97LAiA==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-core-helpers": "1.2.1", + "websocket": "github:web3-js/WebSocket-Node#polyfill/globalThis" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/web3-shh": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-shh/-/web3-shh-1.2.1.tgz", + "integrity": "sha512-/3Cl04nza5kuFn25bV3FJWa0s3Vafr5BlT933h26xovQ6HIIz61LmvNQlvX1AhFL+SNJOTcQmK1SM59vcyC8bA==", + "dev": true, + "dependencies": { + "web3-core": "1.2.1", + "web3-core-method": "1.2.1", + "web3-core-subscriptions": "1.2.1", + "web3-net": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@openzeppelin/test-helpers/node_modules/websocket": { + "version": "1.0.29", + "resolved": "git+ssh://git@github.com/web3-js/WebSocket-Node.git#ef5ea2f41daf4a2113b80c9223df884b4d56c400", + "integrity": "sha512-fS64f2anyRmFjuEVoqTbtgtV4Ay1dQ6kP078yM1RxnF0+9hNYk4iirrtII6FIoNoNgmhhIqzQaadEU6ZRpGoEw==", + "dev": true, + "hasInstallScript": true, + "license": "Apache-2.0", + "dependencies": { + "debug": "^2.2.0", + "es5-ext": "^0.10.50", + "nan": "^2.14.0", + "typedarray-to-buffer": "^3.1.5", + "yaeti": "^0.0.6" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@resolver-engine/core": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@resolver-engine/core/-/core-0.2.1.tgz", + "integrity": "sha512-nsLQHmPJ77QuifqsIvqjaF5B9aHnDzJjp73Q1z6apY3e9nqYrx4Dtowhpsf7Jwftg/XzVDEMQC+OzUBNTS+S1A==", + "dev": true, + "dependencies": { + "debug": "^3.1.0", + "request": "^2.85.0" + } + }, + "node_modules/@resolver-engine/fs": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@resolver-engine/fs/-/fs-0.2.1.tgz", + "integrity": "sha512-7kJInM1Qo2LJcKyDhuYzh9ZWd+mal/fynfL9BNjWOiTcOpX+jNfqb/UmGUqros5pceBITlWGqS4lU709yHFUbg==", + "dev": true, + "dependencies": { + "@resolver-engine/core": "^0.2.1", + "debug": "^3.1.0" + } + }, + "node_modules/@resolver-engine/imports": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@resolver-engine/imports/-/imports-0.2.2.tgz", + "integrity": "sha512-u5/HUkvo8q34AA+hnxxqqXGfby5swnH0Myw91o3Sm2TETJlNKXibFGSKBavAH+wvWdBi4Z5gS2Odu0PowgVOUg==", + "dev": true, + "dependencies": { + "@resolver-engine/core": "^0.2.1", + "debug": "^3.1.0", + "hosted-git-info": "^2.6.0" + } + }, + "node_modules/@resolver-engine/imports-fs": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@resolver-engine/imports-fs/-/imports-fs-0.2.2.tgz", + "integrity": "sha512-gFCgMvCwyppjwq0UzIjde/WI+yDs3oatJhozG9xdjJdewwtd7LiF0T5i9lrHAUtqrQbqoFE4E+ZMRVHWpWHpKQ==", + "dev": true, + "dependencies": { + "@resolver-engine/fs": "^0.2.1", + "@resolver-engine/imports": "^0.2.2", + "debug": "^3.1.0" + } + }, + "node_modules/@sentry/core": { + "version": "5.30.0", + "resolved": "https://registry.npmjs.org/@sentry/core/-/core-5.30.0.tgz", + "integrity": "sha512-TmfrII8w1PQZSZgPpUESqjB+jC6MvZJZdLtE/0hZ+SrnKhW3x5WlYLvTXZpcWePYBku7rl2wn1RZu6uT0qCTeg==", + "dev": true, + "dependencies": { + "@sentry/hub": "5.30.0", + "@sentry/minimal": "5.30.0", + "@sentry/types": "5.30.0", + "@sentry/utils": "5.30.0", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sentry/hub": { + "version": "5.30.0", + "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-5.30.0.tgz", + "integrity": "sha512-2tYrGnzb1gKz2EkMDQcfLrDTvmGcQPuWxLnJKXJvYTQDGLlEvi2tWz1VIHjunmOvJrB5aIQLhm+dcMRwFZDCqQ==", + "dev": true, + "dependencies": { + "@sentry/types": "5.30.0", + "@sentry/utils": "5.30.0", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sentry/minimal": { + "version": "5.30.0", + "resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-5.30.0.tgz", + "integrity": "sha512-BwWb/owZKtkDX+Sc4zCSTNcvZUq7YcH3uAVlmh/gtR9rmUvbzAA3ewLuB3myi4wWRAMEtny6+J/FN/x+2wn9Xw==", + "dev": true, + "dependencies": { + "@sentry/hub": "5.30.0", + "@sentry/types": "5.30.0", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sentry/node": { + "version": "5.30.0", + "resolved": "https://registry.npmjs.org/@sentry/node/-/node-5.30.0.tgz", + "integrity": "sha512-Br5oyVBF0fZo6ZS9bxbJZG4ApAjRqAnqFFurMVJJdunNb80brh7a5Qva2kjhm+U6r9NJAB5OmDyPkA1Qnt+QVg==", + "dev": true, + "dependencies": { + "@sentry/core": "5.30.0", + "@sentry/hub": "5.30.0", + "@sentry/tracing": "5.30.0", + "@sentry/types": "5.30.0", + "@sentry/utils": "5.30.0", + "cookie": "^0.4.1", + "https-proxy-agent": "^5.0.0", + "lru_map": "^0.3.3", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sentry/node/node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/@sentry/node/node_modules/cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/@sentry/node/node_modules/debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@sentry/node/node_modules/https-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", + "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", + "dev": true, + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@sentry/node/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/@sentry/tracing": { + "version": "5.30.0", + "resolved": "https://registry.npmjs.org/@sentry/tracing/-/tracing-5.30.0.tgz", + "integrity": "sha512-dUFowCr0AIMwiLD7Fs314Mdzcug+gBVo/+NCMyDw8tFxJkwWAKl7Qa2OZxLQ0ZHjakcj1hNKfCQJ9rhyfOl4Aw==", + "dev": true, + "dependencies": { + "@sentry/hub": "5.30.0", + "@sentry/minimal": "5.30.0", + "@sentry/types": "5.30.0", + "@sentry/utils": "5.30.0", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sentry/types": { + "version": "5.30.0", + "resolved": "https://registry.npmjs.org/@sentry/types/-/types-5.30.0.tgz", + "integrity": "sha512-R8xOqlSTZ+htqrfteCWU5Nk0CDN5ApUTvrlvBuiH1DyP6czDZ4ktbZB0hAgBlVcK0U+qpD3ag3Tqqpa5Q67rPw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sentry/utils": { + "version": "5.30.0", + "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-5.30.0.tgz", + "integrity": "sha512-zaYmoH0NWWtvnJjC9/CBseXMtKHm/tm40sz3YfJRxeQjyzRqNQPgivpd9R/oDJCYj999mzdW382p/qi2ypjLww==", + "dev": true, + "dependencies": { + "@sentry/types": "5.30.0", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@snyk/cli-interface": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/@snyk/cli-interface/-/cli-interface-2.8.1.tgz", + "integrity": "sha512-pALcfgoY0hAavy/pBlDIqEu+FFC5m+D4bMnCwlQ26mObL/zzxp2+Ohx+HykCIom62u2J94SzAtRLFdm/2TgoOw==", + "dev": true, + "dependencies": { + "@snyk/dep-graph": "1.19.0", + "@snyk/graphlib": "2.1.9-patch", + "tslib": "^1.9.3" + } + }, + "node_modules/@snyk/cli-interface/node_modules/@snyk/dep-graph": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/@snyk/dep-graph/-/dep-graph-1.19.0.tgz", + "integrity": "sha512-/0phOICMk4hkX2KtZgi+4KNd5G9oYDIlxQDQk+ui2xl4gonPvK6Q5MFzHP7Xet1YY/XoU33ox41i+IO48qZ+zQ==", + "dev": true, + "dependencies": { + "@snyk/graphlib": "2.1.9-patch", + "lodash.isequal": "^4.5.0", + "object-hash": "^2.0.3", + "semver": "^6.0.0", + "source-map-support": "^0.5.19", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@snyk/cli-interface/node_modules/@snyk/dep-graph/node_modules/tslib": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.0.0.tgz", + "integrity": "sha512-lTqkx847PI7xEDYJntxZH89L2/aXInsyF2luSafe/+0fHOMjlBNXdH6th7f70qxLDhul7KZK0zC8V5ZIyHl0/g==", + "dev": true + }, + "node_modules/@snyk/cocoapods-lockfile-parser": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/@snyk/cocoapods-lockfile-parser/-/cocoapods-lockfile-parser-3.4.0.tgz", + "integrity": "sha512-mAWgKIHFv0QEGpRvocVMxLAdJx7BmXtVOyQN/VtsGBoGFKqhO0jbtKUUVJC4b0jyKfVmEF2puo94i+1Uqz5q6A==", + "dev": true, + "dependencies": { + "@snyk/dep-graph": "1.18.4", + "@snyk/ruby-semver": "^2.0.4", + "@types/js-yaml": "^3.12.1", + "js-yaml": "^3.13.1", + "source-map-support": "^0.5.7", + "tslib": "^1.10.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@snyk/cocoapods-lockfile-parser/node_modules/@snyk/dep-graph": { + "version": "1.18.4", + "resolved": "https://registry.npmjs.org/@snyk/dep-graph/-/dep-graph-1.18.4.tgz", + "integrity": "sha512-SePWsDyD7qrLxFifIieEl4GqyOODfOnP0hmUweTG5YcMroAV5nARGAUcjxREGzbXMcUpPfZhAaqFjYgzUDH8dQ==", + "dev": true, + "dependencies": { + "@snyk/graphlib": "2.1.9-patch", + "@snyk/lodash": "4.17.15-patch", + "object-hash": "^2.0.3", + "semver": "^7.3.2", + "source-map-support": "^0.5.19", + "tslib": "^1.11.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@snyk/cocoapods-lockfile-parser/node_modules/semver": { + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", + "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@snyk/composer-lockfile-parser": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@snyk/composer-lockfile-parser/-/composer-lockfile-parser-1.4.0.tgz", + "integrity": "sha512-ga4YTRjJUuP0Ufr+t1IucwVjEFAv66JSBB/zVHP2zy/jmfA3l3ZjlGQSjsRC6Me9P2Z0esQ83AYNZvmIf9pq2w==", + "dev": true, + "dependencies": { + "@snyk/lodash": "^4.17.15-patch" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@snyk/dep-graph": { + "version": "1.18.3", + "resolved": "https://registry.npmjs.org/@snyk/dep-graph/-/dep-graph-1.18.3.tgz", + "integrity": "sha512-7qWRTIJdZuc5VzDjdV2+03AHElyAZmhq7eV9BRu+jqrYjo9ohWBGEZgYslrTdvfqfJ8rkdrG3j0/0Aa25IxJcg==", + "dev": true, + "dependencies": { + "@snyk/graphlib": "2.1.9-patch", + "@snyk/lodash": "4.17.15-patch", + "object-hash": "^2.0.3", + "semver": "^7.3.2", + "source-map-support": "^0.5.19", + "tslib": "^1.11.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@snyk/dep-graph/node_modules/semver": { + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", + "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@snyk/docker-registry-v2-client": { + "version": "1.13.5", + "resolved": "https://registry.npmjs.org/@snyk/docker-registry-v2-client/-/docker-registry-v2-client-1.13.5.tgz", + "integrity": "sha512-lgJiC071abCpFVLp47OnykU8MMrhdQe386Wt6QaDmjI0s2DQn/S58NfdLrPU7s6l4zoGT7UwRW9+7paozRgFTA==", + "dev": true, + "dependencies": { + "needle": "^2.5.0", + "parse-link-header": "^1.0.1", + "tslib": "^1.10.0" + } + }, + "node_modules/@snyk/gemfile": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@snyk/gemfile/-/gemfile-1.2.0.tgz", + "integrity": "sha512-nI7ELxukf7pT4/VraL4iabtNNMz8mUo7EXlqCFld8O5z6mIMLX9llps24iPpaIZOwArkY3FWA+4t+ixyvtTSIA==", + "dev": true, + "engines": { + "node": ">= 4.2.4" + } + }, + "node_modules/@snyk/graphlib": { + "version": "2.1.9-patch", + "resolved": "https://registry.npmjs.org/@snyk/graphlib/-/graphlib-2.1.9-patch.tgz", + "integrity": "sha512-uFO/pNMm3pN15QB+hVMU7uaQXhsBNwEA8lOET/VDcdOzLptODhXzkJqSHqt0tZlpdAz6/6Uaj8jY00UvPFgFMA==", + "dev": true, + "dependencies": { + "@snyk/lodash": "4.17.15-patch" + } + }, + "node_modules/@snyk/inquirer": { + "version": "6.2.2-patch", + "resolved": "https://registry.npmjs.org/@snyk/inquirer/-/inquirer-6.2.2-patch.tgz", + "integrity": "sha512-IUq5bHRL0vtVKtfvd4GOccAIaLYHbcertug2UVZzk5+yY6R/CxfYsnFUTho1h4BdkfNdin2tPjE/5jRF4SKSrw==", + "dev": true, + "dependencies": { + "@snyk/lodash": "4.17.15-patch", + "ansi-escapes": "^3.2.0", + "chalk": "^2.4.2", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^3.0.3", + "figures": "^2.0.0", + "mute-stream": "0.0.7", + "run-async": "^2.2.0", + "rxjs": "^6.4.0", + "string-width": "^2.1.0", + "strip-ansi": "^5.0.0", + "through": "^2.3.6" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@snyk/inquirer/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@snyk/inquirer/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@snyk/java-call-graph-builder": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@snyk/java-call-graph-builder/-/java-call-graph-builder-1.12.1.tgz", + "integrity": "sha512-thaLaqwXYkvVKs1gqmCAB5aFvwp2cz84rFlODr93smG6E8s7U+KNMiiiWq1KjSvbRe3AN8YUENYGyUoGRu9m1w==", + "dev": true, + "dependencies": { + "@snyk/graphlib": "2.1.9-patch", + "ci-info": "^2.0.0", + "debug": "^4.1.1", + "glob": "^7.1.6", + "jszip": "^3.2.2", + "needle": "^2.3.3", + "progress": "^2.0.3", + "snyk-config": "^3.0.0", + "source-map-support": "^0.5.7", + "temp-dir": "^2.0.0", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@snyk/java-call-graph-builder/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/@snyk/java-call-graph-builder/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/@snyk/lodash": { + "version": "4.17.15-patch", + "resolved": "https://registry.npmjs.org/@snyk/lodash/-/lodash-4.17.15-patch.tgz", + "integrity": "sha512-e4+t34bGyjjRnwXwI14hqye9J/nRbG9iwaqTgXWHskm5qC+iK0UrjgYdWXiHJCf3Plbpr+1rpW+4LPzZnCGMhQ==", + "dev": true, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/@snyk/rpm-parser": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@snyk/rpm-parser/-/rpm-parser-2.0.0.tgz", + "integrity": "sha512-bWjQY5Xk3TcfVpeo8M5BhhSUEdPr2P19AWW13CHPu6sFZkckLWEcjQycnBsVD6RBmxGXecJ1YNui8dq6soHoYQ==", + "dev": true, + "dependencies": { + "event-loop-spinner": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@snyk/ruby-semver": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@snyk/ruby-semver/-/ruby-semver-2.2.0.tgz", + "integrity": "sha512-FqUayoVjcyCsQFYPm3DcaCKdFR4xmapUkCGY+bcNBs3jqCUw687PoP9CPQ1Jvtaw5YpfBNl/62jyntsWCeciuA==", + "dev": true, + "dependencies": { + "@snyk/lodash": "4.17.15-patch" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@snyk/snyk-cocoapods-plugin": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@snyk/snyk-cocoapods-plugin/-/snyk-cocoapods-plugin-2.3.0.tgz", + "integrity": "sha512-4V1xJMqsK6J3jHu9UufKySorzA8O1vNLRIK1JgJf5KcXQCP44SJI5dk9Xr9iFGXXtGo8iI9gmokQcHlGpkPSJg==", + "dev": true, + "dependencies": { + "@snyk/cli-interface": "1.5.0", + "@snyk/cocoapods-lockfile-parser": "3.4.0", + "@snyk/dep-graph": "^1.18.2", + "source-map-support": "^0.5.7", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@snyk/snyk-cocoapods-plugin/node_modules/@snyk/cli-interface": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@snyk/cli-interface/-/cli-interface-1.5.0.tgz", + "integrity": "sha512-+Qo+IO3YOXWgazlo+CKxOuWFLQQdaNCJ9cSfhFQd687/FuesaIxWdInaAdfpsLScq0c6M1ieZslXgiZELSzxbg==", + "dev": true, + "dependencies": { + "tslib": "^1.9.3" + } + }, + "node_modules/@snyk/snyk-cocoapods-plugin/node_modules/@snyk/cli-interface/node_modules/tslib": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", + "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==", + "dev": true + }, + "node_modules/@snyk/snyk-cocoapods-plugin/node_modules/tslib": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.0.0.tgz", + "integrity": "sha512-lTqkx847PI7xEDYJntxZH89L2/aXInsyF2luSafe/+0fHOMjlBNXdH6th7f70qxLDhul7KZK0zC8V5ZIyHl0/g==", + "dev": true + }, + "node_modules/@snyk/snyk-docker-pull": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@snyk/snyk-docker-pull/-/snyk-docker-pull-3.2.0.tgz", + "integrity": "sha512-uWKtjh29I/d0mfmfBN7w6RwwNBQxQVKrauF5ND/gqb0PVsKV22GIpkI+viWjI7KNKso6/B0tMmsv7TX2tsNcLQ==", + "dev": true, + "dependencies": { + "@snyk/docker-registry-v2-client": "^1.13.5", + "child-process": "^1.0.2", + "tar-stream": "^2.1.2", + "tmp": "^0.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@snyk/snyk-docker-pull/node_modules/bl": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.0.2.tgz", + "integrity": "sha512-j4OH8f6Qg2bGuWfRiltT2HYGx0e1QcBTrK9KAHNMwMZdQnDZFk0ZSYIpADjYCB3U12nicC5tVJwSIhwOWjb4RQ==", + "dev": true, + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/@snyk/snyk-docker-pull/node_modules/bl/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/@snyk/snyk-docker-pull/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@snyk/snyk-docker-pull/node_modules/tar-stream": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.1.3.tgz", + "integrity": "sha512-Z9yri56Dih8IaK8gncVPx4Wqt86NDmQTSh49XLZgjWpGZL9GK9HKParS2scqHCC4w6X9Gh2jwaU45V47XTKwVA==", + "dev": true, + "dependencies": { + "bl": "^4.0.1", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@snyk/snyk-docker-pull/node_modules/tmp": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.1.0.tgz", + "integrity": "sha512-J7Z2K08jbGcdA1kkQpJSqLF6T0tdQqpR2pnSUXsIchbPdTI9v3e85cLW0d6WDhwuAleOV71j2xWs8qMPfK7nKw==", + "dev": true, + "dependencies": { + "rimraf": "^2.6.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@solidity-parser/parser": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.6.2.tgz", + "integrity": "sha512-kUVUvrqttndeprLoXjI5arWHeiP3uh4XODAKbG+ZaWHCVQeelxCbnXBeWxZ2BPHdXgH0xR9dU1b916JhDhbgAA==", + "dev": true + }, + "node_modules/@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "dev": true, + "dependencies": { + "defer-to-connect": "^1.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@truffle/blockchain-utils": { + "version": "0.0.22", + "resolved": "https://registry.npmjs.org/@truffle/blockchain-utils/-/blockchain-utils-0.0.22.tgz", + "integrity": "sha512-YyIQPMjFn/Ch8gARX+m8NJAlQecPkFRjHv0oHpZi1LlNGZ52vEt21z0ZelAu5ti6nQJ2Us6mE4BNyywfrqgiAA==", + "dev": true, + "dependencies": { + "source-map-support": "^0.5.19" + } + }, + "node_modules/@truffle/codec": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/@truffle/codec/-/codec-0.7.1.tgz", + "integrity": "sha512-mNd6KnW6J0UB1zafGBXDlTEbCMvWpmPAJmzv7aF/nAIaN/F8UePSCiQ1OTQP39Rprj6GFiCCaWVnBAwum6UGSg==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "bn.js": "^4.11.8", + "borc": "^2.1.2", + "debug": "^4.1.0", + "lodash.clonedeep": "^4.5.0", + "lodash.escaperegexp": "^4.1.2", + "lodash.partition": "^4.6.0", + "lodash.sum": "^4.0.2", + "semver": "^6.3.0", + "source-map-support": "^0.5.19", + "utf8": "^3.0.0", + "web3-utils": "1.2.9" + } + }, + "node_modules/@truffle/codec/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/@truffle/codec/node_modules/debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@truffle/codec/node_modules/eth-lib": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.7.tgz", + "integrity": "sha1-L5Pxex4jrsN1nNSj/iDBKGo/wco=", + "dev": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/@truffle/codec/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/@truffle/codec/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "node_modules/@truffle/codec/node_modules/web3-utils": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.2.9.tgz", + "integrity": "sha512-9hcpuis3n/LxFzEVjwnVgvJzTirS2S9/MiNAa7l4WOEoywY+BSNwnRX4MuHnjkh9NY25B6QOjuNG6FNnSjTw1w==", + "dev": true, + "dependencies": { + "bn.js": "4.11.8", + "eth-lib": "0.2.7", + "ethereum-bloom-filters": "^1.0.6", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "underscore": "1.9.1", + "utf8": "3.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/codec/node_modules/web3-utils/node_modules/bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", + "dev": true + }, + "node_modules/@truffle/contract": { + "version": "4.2.14", + "resolved": "https://registry.npmjs.org/@truffle/contract/-/contract-4.2.14.tgz", + "integrity": "sha512-LGkfFXIjTNUZuf59Kh1V8bYR7nIQXPTDqzv3ew3bkP15mQWbL0xp9fSjLE1ZrC8MXzmXYXPDGSzlHAv8Fjkaxg==", + "dev": true, + "dependencies": { + "@truffle/blockchain-utils": "^0.0.22", + "@truffle/contract-schema": "^3.2.3", + "@truffle/debug-utils": "^4.2.1", + "@truffle/error": "^0.0.8", + "@truffle/interface-adapter": "^0.4.13", + "bignumber.js": "^7.2.1", + "ethereum-ens": "^0.8.0", + "ethers": "^4.0.0-beta.1", + "source-map-support": "^0.5.19", + "web3": "1.2.1", + "web3-core-helpers": "1.2.1", + "web3-core-promievent": "1.2.1", + "web3-eth-abi": "1.2.1", + "web3-utils": "1.2.1" + } + }, + "node_modules/@truffle/contract-schema": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/@truffle/contract-schema/-/contract-schema-3.4.1.tgz", + "integrity": "sha512-2gvu6gxJtbbI67H2Bwh2rBuej+1uCV3z4zKFzQZP00hjNoL+QfybrmBcOVB88PflBeEB+oUXuwQfDoKX3TXlnQ==", + "dev": true, + "dependencies": { + "ajv": "^6.10.0", + "crypto-js": "^3.1.9-1", + "debug": "^4.3.1" + } + }, + "node_modules/@truffle/contract-schema/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/@truffle/contract-schema/node_modules/debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@truffle/contract-schema/node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/@truffle/contract-schema/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/@truffle/contract/node_modules/bignumber.js": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-7.2.1.tgz", + "integrity": "sha512-S4XzBk5sMB+Rcb/LNcpzXr57VRTxgAvaAEDAl1AwRx27j00hT84O6OkteE7u8UB3NuaaygCRrEpqox4uDOrbdQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/@truffle/contract/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/@truffle/contract/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/@truffle/contract/node_modules/elliptic": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz", + "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==", + "dev": true, + "dependencies": { + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.0" + } + }, + "node_modules/@truffle/contract/node_modules/ethers": { + "version": "4.0.48", + "resolved": "https://registry.npmjs.org/ethers/-/ethers-4.0.48.tgz", + "integrity": "sha512-sZD5K8H28dOrcidzx9f8KYh8083n5BexIO3+SbE4jK83L85FxtpXZBCQdXb8gkg+7sBqomcLhhkU7UHL+F7I2g==", + "dev": true, + "dependencies": { + "aes-js": "3.0.0", + "bn.js": "^4.4.0", + "elliptic": "6.5.3", + "hash.js": "1.1.3", + "js-sha3": "0.5.7", + "scrypt-js": "2.0.4", + "setimmediate": "1.0.4", + "uuid": "2.0.1", + "xmlhttprequest": "1.8.0" + } + }, + "node_modules/@truffle/contract/node_modules/ethers/node_modules/hash.js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz", + "integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/@truffle/contract/node_modules/ethers/node_modules/setimmediate": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.4.tgz", + "integrity": "sha1-IOgd5iLUoCWIzgyNqJc8vPHTE48=", + "dev": true + }, + "node_modules/@truffle/contract/node_modules/js-sha3": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.5.7.tgz", + "integrity": "sha1-DU/9gALVMzqrr0oj7tL2N0yfKOc=", + "dev": true + }, + "node_modules/@truffle/contract/node_modules/p-cancelable": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz", + "integrity": "sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@truffle/contract/node_modules/prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@truffle/contract/node_modules/scrypt-js": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-2.0.4.tgz", + "integrity": "sha512-4KsaGcPnuhtCZQCxFxN3GVYIhKFPTdLd8PLC552XwbMndtD0cjRFAhDuuydXQ0h08ZfPgzqe6EKHozpuH74iDw==", + "dev": true + }, + "node_modules/@truffle/contract/node_modules/semver": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.2.0.tgz", + "integrity": "sha512-jdFC1VdUGT/2Scgbimf7FSx9iJLXoqfglSF+gJeuNWVpiE37OIbc1jywR/GJyFdz3mnkz2/id0L0J/cr0izR5A==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@truffle/contract/node_modules/swarm-js": { + "version": "0.1.39", + "resolved": "https://registry.npmjs.org/swarm-js/-/swarm-js-0.1.39.tgz", + "integrity": "sha512-QLMqL2rzF6n5s50BptyD6Oi0R1aWlJC5Y17SRIVXRj6OR1DRIPM7nepvrxxkjA1zNzFz6mUOMjfeqeDaWB7OOg==", + "dev": true, + "dependencies": { + "bluebird": "^3.5.0", + "buffer": "^5.0.5", + "decompress": "^4.0.0", + "eth-lib": "^0.1.26", + "fs-extra": "^4.0.2", + "got": "^7.1.0", + "mime-types": "^2.1.16", + "mkdirp-promise": "^5.0.1", + "mock-fs": "^4.1.0", + "setimmediate": "^1.0.5", + "tar": "^4.0.2", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/@truffle/contract/node_modules/swarm-js/node_modules/got": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/got/-/got-7.1.0.tgz", + "integrity": "sha512-Y5WMo7xKKq1muPsxD+KmrR8DH5auG7fBdDVueZwETwV6VytKyU9OX/ddpq2/1hp1vIPvVb4T81dKQz3BivkNLw==", + "dev": true, + "dependencies": { + "decompress-response": "^3.2.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "is-plain-obj": "^1.1.0", + "is-retry-allowed": "^1.0.0", + "is-stream": "^1.0.0", + "isurl": "^1.0.0-alpha5", + "lowercase-keys": "^1.0.0", + "p-cancelable": "^0.3.0", + "p-timeout": "^1.1.1", + "safe-buffer": "^5.0.1", + "timed-out": "^4.0.0", + "url-parse-lax": "^1.0.0", + "url-to-options": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@truffle/contract/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "node_modules/@truffle/contract/node_modules/url-parse-lax": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", + "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "dev": true, + "dependencies": { + "prepend-http": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@truffle/contract/node_modules/uuid": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.1.tgz", + "integrity": "sha1-wqMN7bPlNdcsz4LjQ5QaULqFM6w=", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "dev": true + }, + "node_modules/@truffle/contract/node_modules/web3": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3/-/web3-1.2.1.tgz", + "integrity": "sha512-nNMzeCK0agb5i/oTWNdQ1aGtwYfXzHottFP2Dz0oGIzavPMGSKyVlr8ibVb1yK5sJBjrWVnTdGaOC2zKDFuFRw==", + "dev": true, + "dependencies": { + "web3-bzz": "1.2.1", + "web3-core": "1.2.1", + "web3-eth": "1.2.1", + "web3-eth-personal": "1.2.1", + "web3-net": "1.2.1", + "web3-shh": "1.2.1", + "web3-utils": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/contract/node_modules/web3-bzz": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-bzz/-/web3-bzz-1.2.1.tgz", + "integrity": "sha512-LdOO44TuYbGIPfL4ilkuS89GQovxUpmLz6C1UC7VYVVRILeZS740FVB3j9V4P4FHUk1RenaDfKhcntqgVCHtjw==", + "dev": true, + "dependencies": { + "got": "9.6.0", + "swarm-js": "0.1.39", + "underscore": "1.9.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/contract/node_modules/web3-core": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-core/-/web3-core-1.2.1.tgz", + "integrity": "sha512-5ODwIqgl8oIg/0+Ai4jsLxkKFWJYE0uLuE1yUKHNVCL4zL6n3rFjRMpKPokd6id6nJCNgeA64KdWQ4XfpnjdMg==", + "dev": true, + "dependencies": { + "web3-core-helpers": "1.2.1", + "web3-core-method": "1.2.1", + "web3-core-requestmanager": "1.2.1", + "web3-utils": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/contract/node_modules/web3-core-method": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-core-method/-/web3-core-method-1.2.1.tgz", + "integrity": "sha512-Ghg2WS23qi6Xj8Od3VCzaImLHseEA7/usvnOItluiIc5cKs00WYWsNy2YRStzU9a2+z8lwQywPYp0nTzR/QXdQ==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-core-helpers": "1.2.1", + "web3-core-promievent": "1.2.1", + "web3-core-subscriptions": "1.2.1", + "web3-utils": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/contract/node_modules/web3-core-requestmanager": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-core-requestmanager/-/web3-core-requestmanager-1.2.1.tgz", + "integrity": "sha512-xfknTC69RfYmLKC+83Jz73IC3/sS2ZLhGtX33D4Q5nQ8yc39ElyAolxr9sJQS8kihOcM6u4J+8gyGMqsLcpIBg==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-core-helpers": "1.2.1", + "web3-providers-http": "1.2.1", + "web3-providers-ipc": "1.2.1", + "web3-providers-ws": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/contract/node_modules/web3-core-subscriptions": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-core-subscriptions/-/web3-core-subscriptions-1.2.1.tgz", + "integrity": "sha512-nmOwe3NsB8V8UFsY1r+sW6KjdOS68h8nuh7NzlWxBQT/19QSUGiERRTaZXWu5BYvo1EoZRMxCKyCQpSSXLc08g==", + "dev": true, + "dependencies": { + "eventemitter3": "3.1.2", + "underscore": "1.9.1", + "web3-core-helpers": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/contract/node_modules/web3-eth": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-eth/-/web3-eth-1.2.1.tgz", + "integrity": "sha512-/2xly4Yry5FW1i+uygPjhfvgUP/MS/Dk+PDqmzp5M88tS86A+j8BzKc23GrlA8sgGs0645cpZK/999LpEF5UdA==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-core": "1.2.1", + "web3-core-helpers": "1.2.1", + "web3-core-method": "1.2.1", + "web3-core-subscriptions": "1.2.1", + "web3-eth-abi": "1.2.1", + "web3-eth-accounts": "1.2.1", + "web3-eth-contract": "1.2.1", + "web3-eth-ens": "1.2.1", + "web3-eth-iban": "1.2.1", + "web3-eth-personal": "1.2.1", + "web3-net": "1.2.1", + "web3-utils": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/contract/node_modules/web3-eth-accounts": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-eth-accounts/-/web3-eth-accounts-1.2.1.tgz", + "integrity": "sha512-26I4qq42STQ8IeKUyur3MdQ1NzrzCqPsmzqpux0j6X/XBD7EjZ+Cs0lhGNkSKH5dI3V8CJasnQ5T1mNKeWB7nQ==", + "dev": true, + "dependencies": { + "any-promise": "1.3.0", + "crypto-browserify": "3.12.0", + "eth-lib": "0.2.7", + "scryptsy": "2.1.0", + "semver": "6.2.0", + "underscore": "1.9.1", + "uuid": "3.3.2", + "web3-core": "1.2.1", + "web3-core-helpers": "1.2.1", + "web3-core-method": "1.2.1", + "web3-utils": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/contract/node_modules/web3-eth-accounts/node_modules/eth-lib": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.7.tgz", + "integrity": "sha1-L5Pxex4jrsN1nNSj/iDBKGo/wco=", + "dev": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/@truffle/contract/node_modules/web3-eth-accounts/node_modules/uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "dev": true, + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/@truffle/contract/node_modules/web3-eth-contract": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-eth-contract/-/web3-eth-contract-1.2.1.tgz", + "integrity": "sha512-kYFESbQ3boC9bl2rYVghj7O8UKMiuKaiMkxvRH5cEDHil8V7MGEGZNH0slSdoyeftZVlaWSMqkRP/chfnKND0g==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-core": "1.2.1", + "web3-core-helpers": "1.2.1", + "web3-core-method": "1.2.1", + "web3-core-promievent": "1.2.1", + "web3-core-subscriptions": "1.2.1", + "web3-eth-abi": "1.2.1", + "web3-utils": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/contract/node_modules/web3-eth-ens": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-eth-ens/-/web3-eth-ens-1.2.1.tgz", + "integrity": "sha512-lhP1kFhqZr2nnbu3CGIFFrAnNxk2veXpOXBY48Tub37RtobDyHijHgrj+xTh+mFiPokyrapVjpFsbGa+Xzye4Q==", + "dev": true, + "dependencies": { + "eth-ens-namehash": "2.0.8", + "underscore": "1.9.1", + "web3-core": "1.2.1", + "web3-core-helpers": "1.2.1", + "web3-core-promievent": "1.2.1", + "web3-eth-abi": "1.2.1", + "web3-eth-contract": "1.2.1", + "web3-utils": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/contract/node_modules/web3-eth-personal": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-eth-personal/-/web3-eth-personal-1.2.1.tgz", + "integrity": "sha512-RNDVSiaSoY4aIp8+Hc7z+X72H7lMb3fmAChuSBADoEc7DsJrY/d0R5qQDK9g9t2BO8oxgLrLNyBP/9ub2Hc6Bg==", + "dev": true, + "dependencies": { + "web3-core": "1.2.1", + "web3-core-helpers": "1.2.1", + "web3-core-method": "1.2.1", + "web3-net": "1.2.1", + "web3-utils": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/contract/node_modules/web3-net": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-net/-/web3-net-1.2.1.tgz", + "integrity": "sha512-Yt1Bs7WgnLESPe0rri/ZoPWzSy55ovioaP35w1KZydrNtQ5Yq4WcrAdhBzcOW7vAkIwrsLQsvA+hrOCy7mNauw==", + "dev": true, + "dependencies": { + "web3-core": "1.2.1", + "web3-core-method": "1.2.1", + "web3-utils": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/contract/node_modules/web3-providers-http": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-providers-http/-/web3-providers-http-1.2.1.tgz", + "integrity": "sha512-BDtVUVolT9b3CAzeGVA/np1hhn7RPUZ6YYGB/sYky+GjeO311Yoq8SRDUSezU92x8yImSC2B+SMReGhd1zL+bQ==", + "dev": true, + "dependencies": { + "web3-core-helpers": "1.2.1", + "xhr2-cookies": "1.1.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/contract/node_modules/web3-providers-ipc": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-providers-ipc/-/web3-providers-ipc-1.2.1.tgz", + "integrity": "sha512-oPEuOCwxVx8L4CPD0TUdnlOUZwGBSRKScCz/Ws2YHdr9Ium+whm+0NLmOZjkjQp5wovQbyBzNa6zJz1noFRvFA==", + "dev": true, + "dependencies": { + "oboe": "2.1.4", + "underscore": "1.9.1", + "web3-core-helpers": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/contract/node_modules/web3-providers-ws": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-providers-ws/-/web3-providers-ws-1.2.1.tgz", + "integrity": "sha512-oqsQXzu+ejJACVHy864WwIyw+oB21nw/pI65/sD95Zi98+/HQzFfNcIFneF1NC4bVF3VNX4YHTNq2I2o97LAiA==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-core-helpers": "1.2.1", + "websocket": "github:web3-js/WebSocket-Node#polyfill/globalThis" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/contract/node_modules/web3-shh": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-shh/-/web3-shh-1.2.1.tgz", + "integrity": "sha512-/3Cl04nza5kuFn25bV3FJWa0s3Vafr5BlT933h26xovQ6HIIz61LmvNQlvX1AhFL+SNJOTcQmK1SM59vcyC8bA==", + "dev": true, + "dependencies": { + "web3-core": "1.2.1", + "web3-core-method": "1.2.1", + "web3-core-subscriptions": "1.2.1", + "web3-net": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/contract/node_modules/websocket": { + "version": "1.0.29", + "resolved": "git+ssh://git@github.com/web3-js/WebSocket-Node.git#ef5ea2f41daf4a2113b80c9223df884b4d56c400", + "integrity": "sha512-fS64f2anyRmFjuEVoqTbtgtV4Ay1dQ6kP078yM1RxnF0+9hNYk4iirrtII6FIoNoNgmhhIqzQaadEU6ZRpGoEw==", + "dev": true, + "hasInstallScript": true, + "license": "Apache-2.0", + "dependencies": { + "debug": "^2.2.0", + "es5-ext": "^0.10.50", + "nan": "^2.14.0", + "typedarray-to-buffer": "^3.1.5", + "yaeti": "^0.0.6" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@truffle/debug-utils": { + "version": "4.2.14", + "resolved": "https://registry.npmjs.org/@truffle/debug-utils/-/debug-utils-4.2.14.tgz", + "integrity": "sha512-g5UTX2DPTzrjRjBJkviGI2IrQRTTSvqjmNWCNZNXP+vgQKNxL9maLZhQ6oA3BuuByVW/kusgYeXt8+W1zynC8g==", + "dev": true, + "dependencies": { + "@truffle/codec": "^0.7.1", + "@trufflesuite/chromafi": "^2.2.1", + "chalk": "^2.4.2", + "debug": "^4.1.0", + "highlight.js": "^9.15.8", + "highlightjs-solidity": "^1.0.18" + } + }, + "node_modules/@truffle/debug-utils/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@truffle/debug-utils/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/@truffle/debug-utils/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/@truffle/debug-utils/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@truffle/error": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/@truffle/error/-/error-0.0.8.tgz", + "integrity": "sha512-x55rtRuNfRO1azmZ30iR0pf0OJ6flQqbax1hJz+Avk1K5fdmOv5cr22s9qFnwTWnS6Bw0jvJEoR0ITsM7cPKtQ==", + "dev": true + }, + "node_modules/@truffle/hdwallet-provider": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@truffle/hdwallet-provider/-/hdwallet-provider-1.2.6.tgz", + "integrity": "sha512-g4n1ETH2y7KlqQYq0PMjuHaLxggU96RSj1p3i6dGCAgONyPyA+TD1wyot8M2dXp+RG/VVzZoVTuyFGyBs5EhXw==", + "dependencies": { + "@trufflesuite/web3-provider-engine": "15.0.13-1", + "any-promise": "^1.3.0", + "bindings": "^1.5.0", + "ethereum-cryptography": "^0.1.3", + "ethereum-protocol": "^1.0.1", + "ethereumjs-tx": "^1.0.0", + "ethereumjs-util": "^6.1.0", + "ethereumjs-wallet": "^1.0.1" + } + }, + "node_modules/@truffle/hdwallet-provider/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/@truffle/hdwallet-provider/node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/@truffle/hdwallet-provider/node_modules/ethereum-common": { + "version": "0.0.18", + "resolved": "https://registry.npmjs.org/ethereum-common/-/ethereum-common-0.0.18.tgz", + "integrity": "sha1-L9w1dvIykDNYl26znaeDIT/5Uj8=" + }, + "node_modules/@truffle/hdwallet-provider/node_modules/ethereumjs-tx": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/ethereumjs-tx/-/ethereumjs-tx-1.3.7.tgz", + "integrity": "sha512-wvLMxzt1RPhAQ9Yi3/HKZTn0FZYpnsmQdbKYfUUpi4j1SEIcbkd9tndVjcPrufY3V7j2IebOpC00Zp2P/Ay2kA==", + "deprecated": "New package name format for new versions: @ethereumjs/tx. Please update.", + "dependencies": { + "ethereum-common": "^0.0.18", + "ethereumjs-util": "^5.0.0" + } + }, + "node_modules/@truffle/hdwallet-provider/node_modules/ethereumjs-tx/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/@truffle/hdwallet-provider/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/@truffle/interface-adapter": { + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/@truffle/interface-adapter/-/interface-adapter-0.4.23.tgz", + "integrity": "sha512-mfpwY25Apx36WHHNJMNHWyDQVFZoZYNQ43rOwr/n+5gAMxke7+D7+IR9UW4kuO/Jp0+2848UxMdRV+oqm017kQ==", + "dev": true, + "dependencies": { + "bn.js": "^5.1.3", + "ethers": "^4.0.32", + "web3": "1.3.5" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/@ethersproject/abi": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.0.7.tgz", + "integrity": "sha512-Cqktk+hSIckwP/W8O47Eef60VwmoSC/L3lY0+dIBhQPCNn9E4V7rwmm2aFrNRRDJfFlGuZ1khkQUOc3oBX+niw==", + "dev": true, + "dependencies": { + "@ethersproject/address": "^5.0.4", + "@ethersproject/bignumber": "^5.0.7", + "@ethersproject/bytes": "^5.0.4", + "@ethersproject/constants": "^5.0.4", + "@ethersproject/hash": "^5.0.4", + "@ethersproject/keccak256": "^5.0.3", + "@ethersproject/logger": "^5.0.5", + "@ethersproject/properties": "^5.0.3", + "@ethersproject/strings": "^5.0.4" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/@types/node": { + "version": "12.20.13", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.13.tgz", + "integrity": "sha512-1x8W5OpxPq+T85OUsHRP6BqXeosKmeXRtjoF39STcdf/UWLqUsoehstZKOi0CunhVqHG17AyZgpj20eRVooK6A==", + "dev": true + }, + "node_modules/@truffle/interface-adapter/node_modules/bn.js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", + "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==", + "dev": true + }, + "node_modules/@truffle/interface-adapter/node_modules/elliptic": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz", + "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==", + "dev": true, + "dependencies": { + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/elliptic/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/@truffle/interface-adapter/node_modules/eth-lib": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", + "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/eth-lib/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/@truffle/interface-adapter/node_modules/ethers": { + "version": "4.0.48", + "resolved": "https://registry.npmjs.org/ethers/-/ethers-4.0.48.tgz", + "integrity": "sha512-sZD5K8H28dOrcidzx9f8KYh8083n5BexIO3+SbE4jK83L85FxtpXZBCQdXb8gkg+7sBqomcLhhkU7UHL+F7I2g==", + "dev": true, + "dependencies": { + "aes-js": "3.0.0", + "bn.js": "^4.4.0", + "elliptic": "6.5.3", + "hash.js": "1.1.3", + "js-sha3": "0.5.7", + "scrypt-js": "2.0.4", + "setimmediate": "1.0.4", + "uuid": "2.0.1", + "xmlhttprequest": "1.8.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/ethers/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/@truffle/interface-adapter/node_modules/eventemitter3": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==", + "dev": true + }, + "node_modules/@truffle/interface-adapter/node_modules/hash.js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz", + "integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/js-sha3": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.5.7.tgz", + "integrity": "sha1-DU/9gALVMzqrr0oj7tL2N0yfKOc=", + "dev": true + }, + "node_modules/@truffle/interface-adapter/node_modules/oboe": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/oboe/-/oboe-2.1.5.tgz", + "integrity": "sha1-VVQoTFQ6ImbXo48X4HOCH73jk80=", + "dev": true, + "dependencies": { + "http-https": "^1.0.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/scrypt-js": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-2.0.4.tgz", + "integrity": "sha512-4KsaGcPnuhtCZQCxFxN3GVYIhKFPTdLd8PLC552XwbMndtD0cjRFAhDuuydXQ0h08ZfPgzqe6EKHozpuH74iDw==", + "dev": true + }, + "node_modules/@truffle/interface-adapter/node_modules/setimmediate": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.4.tgz", + "integrity": "sha1-IOgd5iLUoCWIzgyNqJc8vPHTE48=", + "dev": true + }, + "node_modules/@truffle/interface-adapter/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "node_modules/@truffle/interface-adapter/node_modules/util": { + "version": "0.12.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.3.tgz", + "integrity": "sha512-I8XkoQwE+fPQEhy9v012V+TSdH2kp9ts29i20TaaDUXsg7x/onePbhFJUExBfv/2ay1ZOp/Vsm3nDlmnFGSAog==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "is-arguments": "^1.0.4", + "is-generator-function": "^1.0.7", + "is-typed-array": "^1.1.3", + "safe-buffer": "^5.1.2", + "which-typed-array": "^1.1.2" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/uuid": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.1.tgz", + "integrity": "sha1-wqMN7bPlNdcsz4LjQ5QaULqFM6w=", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "dev": true + }, + "node_modules/@truffle/interface-adapter/node_modules/web3": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3/-/web3-1.3.5.tgz", + "integrity": "sha512-UyQW/MT5EIGBrXPCh/FDIaD7RtJTn5/rJUNw2FOglp0qoXnCQHNKvntiR1ylztk05fYxIF6UgsC76IrazlKJjw==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "web3-bzz": "1.3.5", + "web3-core": "1.3.5", + "web3-eth": "1.3.5", + "web3-eth-personal": "1.3.5", + "web3-net": "1.3.5", + "web3-shh": "1.3.5", + "web3-utils": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/web3-bzz": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-bzz/-/web3-bzz-1.3.5.tgz", + "integrity": "sha512-XiEUAbB1uKm/agqfwBsCW8fbw+sma85TfwuDpdcy591vinVk0S9TfWgLxro6v1KJ6nSELySIbKGbAJbh2GSyxw==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "@types/node": "^12.12.6", + "got": "9.6.0", + "swarm-js": "^0.1.40", + "underscore": "1.9.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/web3-core": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-core/-/web3-core-1.3.5.tgz", + "integrity": "sha512-VQjTvnGTqJwDwjKEHSApea3RmgtFGLDSJ6bqrOyHROYNyTyKYjFQ/drG9zs3rjDkND9mgh8foI1ty37Qua3QCQ==", + "dev": true, + "dependencies": { + "@types/bn.js": "^4.11.5", + "@types/node": "^12.12.6", + "bignumber.js": "^9.0.0", + "web3-core-helpers": "1.3.5", + "web3-core-method": "1.3.5", + "web3-core-requestmanager": "1.3.5", + "web3-utils": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/web3-core-helpers": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.3.5.tgz", + "integrity": "sha512-HYh3ix5FjysgT0jyzD8s/X5ym0b4BGU7I2QtuBiydMnE0mQEWy7GcT9XKpTySA8FTOHHIAQYvQS07DN/ky3UzA==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-eth-iban": "1.3.5", + "web3-utils": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/web3-core-method": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-core-method/-/web3-core-method-1.3.5.tgz", + "integrity": "sha512-hCbmgQ+At6OTuaNGAdjXMsCr4eUCmp9yGKSuaB5HdkNVDpqFso4HHjVxcjNrTyJp3OZnyjKBzQzK1ZWLpLl84Q==", + "dev": true, + "dependencies": { + "@ethersproject/transactions": "^5.0.0-beta.135", + "underscore": "1.9.1", + "web3-core-helpers": "1.3.5", + "web3-core-promievent": "1.3.5", + "web3-core-subscriptions": "1.3.5", + "web3-utils": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/web3-core-promievent": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-core-promievent/-/web3-core-promievent-1.3.5.tgz", + "integrity": "sha512-K0j8x3ZJr0eAyNvyUCxOUsSTd4hco0/9nxxlyOuijcsa6YV8l9NL6eqhniWbSyxCJT8ka5Mb7yAiUZe69EDLBQ==", + "dev": true, + "dependencies": { + "eventemitter3": "4.0.4" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/web3-core-requestmanager": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-core-requestmanager/-/web3-core-requestmanager-1.3.5.tgz", + "integrity": "sha512-9l294U3Ga8qmvv8E37BqjQREfMs+kFnkU3PY28g9DZGYzKvl3V1dgDYqxyrOBdCFhc7rNSpHdgC4PrVHjouspg==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "util": "^0.12.0", + "web3-core-helpers": "1.3.5", + "web3-providers-http": "1.3.5", + "web3-providers-ipc": "1.3.5", + "web3-providers-ws": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/web3-core-subscriptions": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-core-subscriptions/-/web3-core-subscriptions-1.3.5.tgz", + "integrity": "sha512-6mtXdaEB1V1zKLqYBq7RF2W75AK5ZJNGpW6QYC7Zvbku7zq1ZlgaUkJo88JKMWJ7etfaHaYqQ/7VveHk5sQynA==", + "dev": true, + "dependencies": { + "eventemitter3": "4.0.4", + "underscore": "1.9.1", + "web3-core-helpers": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/web3-eth": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-eth/-/web3-eth-1.3.5.tgz", + "integrity": "sha512-5qqDPMMD+D0xRqOV2ePU2G7/uQmhn0FgCEhFzKDMHrssDQJyQLW/VgfA0NLn64lWnuUrGnQStGvNxrWf7MgsfA==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-core": "1.3.5", + "web3-core-helpers": "1.3.5", + "web3-core-method": "1.3.5", + "web3-core-subscriptions": "1.3.5", + "web3-eth-abi": "1.3.5", + "web3-eth-accounts": "1.3.5", + "web3-eth-contract": "1.3.5", + "web3-eth-ens": "1.3.5", + "web3-eth-iban": "1.3.5", + "web3-eth-personal": "1.3.5", + "web3-net": "1.3.5", + "web3-utils": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/web3-eth-abi": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-eth-abi/-/web3-eth-abi-1.3.5.tgz", + "integrity": "sha512-bkbG2v/mOW5DH6rF/SEgqunusjYoEi2IBw+fkmD3rzWDaEY7+/i1xY94AeO257d06QMgld75GtV/N+aEs7A6vQ==", + "dev": true, + "dependencies": { + "@ethersproject/abi": "5.0.7", + "underscore": "1.9.1", + "web3-utils": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/web3-eth-accounts": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-eth-accounts/-/web3-eth-accounts-1.3.5.tgz", + "integrity": "sha512-r3WOR21rgm6Cd6OFnifr3Tizdm5K+g2TsSOPySwX4FrgLrYDL6ck4zr5VXUPz+llpSExb/JztpE8pqEHr3U2NA==", + "dev": true, + "dependencies": { + "crypto-browserify": "3.12.0", + "eth-lib": "0.2.8", + "ethereumjs-common": "^1.3.2", + "ethereumjs-tx": "^2.1.1", + "scrypt-js": "^3.0.1", + "underscore": "1.9.1", + "uuid": "3.3.2", + "web3-core": "1.3.5", + "web3-core-helpers": "1.3.5", + "web3-core-method": "1.3.5", + "web3-utils": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/web3-eth-accounts/node_modules/scrypt-js": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz", + "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==", + "dev": true + }, + "node_modules/@truffle/interface-adapter/node_modules/web3-eth-accounts/node_modules/uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "dev": true, + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/web3-eth-contract": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-eth-contract/-/web3-eth-contract-1.3.5.tgz", + "integrity": "sha512-WfGVeQquN3D7Qm+KEIN9EI7yrm/fL2V9Y4+YhDWiKA/ns1pX1LYcEWojTOnBXCnPF3tcvoKKL+KBxXg1iKm38A==", + "dev": true, + "dependencies": { + "@types/bn.js": "^4.11.5", + "underscore": "1.9.1", + "web3-core": "1.3.5", + "web3-core-helpers": "1.3.5", + "web3-core-method": "1.3.5", + "web3-core-promievent": "1.3.5", + "web3-core-subscriptions": "1.3.5", + "web3-eth-abi": "1.3.5", + "web3-utils": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/web3-eth-ens": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-eth-ens/-/web3-eth-ens-1.3.5.tgz", + "integrity": "sha512-5bkpFTXV18CvaVP8kCbLZZm2r1TWUv9AsXH+80yz8bTZulUGvXsBMRfK6e5nfEr2Yv59xlIXCFoalmmySI9EJw==", + "dev": true, + "dependencies": { + "content-hash": "^2.5.2", + "eth-ens-namehash": "2.0.8", + "underscore": "1.9.1", + "web3-core": "1.3.5", + "web3-core-helpers": "1.3.5", + "web3-core-promievent": "1.3.5", + "web3-eth-abi": "1.3.5", + "web3-eth-contract": "1.3.5", + "web3-utils": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/web3-eth-iban": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.3.5.tgz", + "integrity": "sha512-x+BI/d2Vt0J1cKK8eFd4W0f1TDjgEOYCwiViTb28lLE+tqrgyPqWDA+l6UlKYLF/yMFX3Dym4ofcCOtgcn4q4g==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "web3-utils": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/web3-eth-iban/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/@truffle/interface-adapter/node_modules/web3-eth-personal": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-eth-personal/-/web3-eth-personal-1.3.5.tgz", + "integrity": "sha512-xELQHNZ8p3VoO1582ghCaq+Bx7pSkOOalc6/ACOCGtHDMelqgVejrmSIZGScYl+k0HzngmQAzURZWQocaoGM1g==", + "dev": true, + "dependencies": { + "@types/node": "^12.12.6", + "web3-core": "1.3.5", + "web3-core-helpers": "1.3.5", + "web3-core-method": "1.3.5", + "web3-net": "1.3.5", + "web3-utils": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/web3-net": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-net/-/web3-net-1.3.5.tgz", + "integrity": "sha512-usbFbuUpKK8s7jPLGoUzi/WpNnefGFPTj948aJv8BZ04UQA4L/XS5NNkkhk358zNMmhGfEFW8wrWy+0Oy0njtA==", + "dev": true, + "dependencies": { + "web3-core": "1.3.5", + "web3-core-method": "1.3.5", + "web3-utils": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/web3-providers-http": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-providers-http/-/web3-providers-http-1.3.5.tgz", + "integrity": "sha512-ZQOmceFjcajEZdiuqciXjijwIYWNmEJ1oxMtbrwB2eGxHRCMXEH2xGRUZuhOFNF88yQC/VXVi14yvYg5ZlFJlA==", + "dev": true, + "dependencies": { + "web3-core-helpers": "1.3.5", + "xhr2-cookies": "1.1.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/web3-providers-ipc": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-providers-ipc/-/web3-providers-ipc-1.3.5.tgz", + "integrity": "sha512-cbZOeb/sALiHjzMolJjIyHla/J5wdL2JKUtRO66Nh/uLALBCpU8JUgzNvpAdJ1ae3+A33+EdFStdzuDYHKtQew==", + "dev": true, + "dependencies": { + "oboe": "2.1.5", + "underscore": "1.9.1", + "web3-core-helpers": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/web3-providers-ws": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-providers-ws/-/web3-providers-ws-1.3.5.tgz", + "integrity": "sha512-zeZ4LMvKhYaJBDCqA//Bzgp4r/T0tNq5U/xvN0axA4YflzF7yqlsbzGwCkcZYDbrUaK3Ltl2uOmvwjbWALOZ1A==", + "dev": true, + "dependencies": { + "eventemitter3": "4.0.4", + "underscore": "1.9.1", + "web3-core-helpers": "1.3.5", + "websocket": "^1.0.32" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/web3-shh": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-shh/-/web3-shh-1.3.5.tgz", + "integrity": "sha512-aRwzCduXvuGVslLL/Y15VcOHa70Qr2kxZI7UwOzQVhaaOdxuRRvo3AK/cmyln1Tsd54/n93Yk8I3qg5I2+6alw==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "web3-core": "1.3.5", + "web3-core-method": "1.3.5", + "web3-core-subscriptions": "1.3.5", + "web3-net": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/web3-utils": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.3.5.tgz", + "integrity": "sha512-5apMRm8ElYjI/92GHqijmaLC+s+d5lgjpjHft+rJSs/dsnX8I8tQreqev0dmU+wzU+2EEe4Sx9a/OwGWHhQv3A==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "eth-lib": "0.2.8", + "ethereum-bloom-filters": "^1.0.6", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "underscore": "1.9.1", + "utf8": "3.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/web3-utils/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/@truffle/provider": { + "version": "0.2.30", + "resolved": "https://registry.npmjs.org/@truffle/provider/-/provider-0.2.30.tgz", + "integrity": "sha512-5ScTbWsrm7zmQjw020T41U30/kYA1LppXAtaeucUGN2jvPrSwlh0aTL18makbqftTx1NRuYKw7C8wO4jCKQSUQ==", + "dev": true, + "dependencies": { + "@truffle/error": "^0.0.14", + "@truffle/interface-adapter": "^0.4.23", + "web3": "1.3.5" + } + }, + "node_modules/@truffle/provider/node_modules/@ethersproject/abi": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.0.7.tgz", + "integrity": "sha512-Cqktk+hSIckwP/W8O47Eef60VwmoSC/L3lY0+dIBhQPCNn9E4V7rwmm2aFrNRRDJfFlGuZ1khkQUOc3oBX+niw==", + "dev": true, + "dependencies": { + "@ethersproject/address": "^5.0.4", + "@ethersproject/bignumber": "^5.0.7", + "@ethersproject/bytes": "^5.0.4", + "@ethersproject/constants": "^5.0.4", + "@ethersproject/hash": "^5.0.4", + "@ethersproject/keccak256": "^5.0.3", + "@ethersproject/logger": "^5.0.5", + "@ethersproject/properties": "^5.0.3", + "@ethersproject/strings": "^5.0.4" + } + }, + "node_modules/@truffle/provider/node_modules/@truffle/error": { + "version": "0.0.14", + "resolved": "https://registry.npmjs.org/@truffle/error/-/error-0.0.14.tgz", + "integrity": "sha512-utJx+SZYoMqk8wldQG4gCVKhV8GwMJbWY7sLXFT/D8wWZTnE2peX7URFJh/cxkjTRCO328z1s2qewkhyVsu2HA==", + "dev": true + }, + "node_modules/@truffle/provider/node_modules/@types/node": { + "version": "12.20.13", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.13.tgz", + "integrity": "sha512-1x8W5OpxPq+T85OUsHRP6BqXeosKmeXRtjoF39STcdf/UWLqUsoehstZKOi0CunhVqHG17AyZgpj20eRVooK6A==", + "dev": true + }, + "node_modules/@truffle/provider/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/@truffle/provider/node_modules/eth-lib": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", + "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/@truffle/provider/node_modules/eventemitter3": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==", + "dev": true + }, + "node_modules/@truffle/provider/node_modules/oboe": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/oboe/-/oboe-2.1.5.tgz", + "integrity": "sha1-VVQoTFQ6ImbXo48X4HOCH73jk80=", + "dev": true, + "dependencies": { + "http-https": "^1.0.0" + } + }, + "node_modules/@truffle/provider/node_modules/scrypt-js": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz", + "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==", + "dev": true + }, + "node_modules/@truffle/provider/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "node_modules/@truffle/provider/node_modules/util": { + "version": "0.12.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.3.tgz", + "integrity": "sha512-I8XkoQwE+fPQEhy9v012V+TSdH2kp9ts29i20TaaDUXsg7x/onePbhFJUExBfv/2ay1ZOp/Vsm3nDlmnFGSAog==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "is-arguments": "^1.0.4", + "is-generator-function": "^1.0.7", + "is-typed-array": "^1.1.3", + "safe-buffer": "^5.1.2", + "which-typed-array": "^1.1.2" + } + }, + "node_modules/@truffle/provider/node_modules/web3": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3/-/web3-1.3.5.tgz", + "integrity": "sha512-UyQW/MT5EIGBrXPCh/FDIaD7RtJTn5/rJUNw2FOglp0qoXnCQHNKvntiR1ylztk05fYxIF6UgsC76IrazlKJjw==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "web3-bzz": "1.3.5", + "web3-core": "1.3.5", + "web3-eth": "1.3.5", + "web3-eth-personal": "1.3.5", + "web3-net": "1.3.5", + "web3-shh": "1.3.5", + "web3-utils": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/provider/node_modules/web3-bzz": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-bzz/-/web3-bzz-1.3.5.tgz", + "integrity": "sha512-XiEUAbB1uKm/agqfwBsCW8fbw+sma85TfwuDpdcy591vinVk0S9TfWgLxro6v1KJ6nSELySIbKGbAJbh2GSyxw==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "@types/node": "^12.12.6", + "got": "9.6.0", + "swarm-js": "^0.1.40", + "underscore": "1.9.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/provider/node_modules/web3-core": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-core/-/web3-core-1.3.5.tgz", + "integrity": "sha512-VQjTvnGTqJwDwjKEHSApea3RmgtFGLDSJ6bqrOyHROYNyTyKYjFQ/drG9zs3rjDkND9mgh8foI1ty37Qua3QCQ==", + "dev": true, + "dependencies": { + "@types/bn.js": "^4.11.5", + "@types/node": "^12.12.6", + "bignumber.js": "^9.0.0", + "web3-core-helpers": "1.3.5", + "web3-core-method": "1.3.5", + "web3-core-requestmanager": "1.3.5", + "web3-utils": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/provider/node_modules/web3-core-helpers": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.3.5.tgz", + "integrity": "sha512-HYh3ix5FjysgT0jyzD8s/X5ym0b4BGU7I2QtuBiydMnE0mQEWy7GcT9XKpTySA8FTOHHIAQYvQS07DN/ky3UzA==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-eth-iban": "1.3.5", + "web3-utils": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/provider/node_modules/web3-core-method": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-core-method/-/web3-core-method-1.3.5.tgz", + "integrity": "sha512-hCbmgQ+At6OTuaNGAdjXMsCr4eUCmp9yGKSuaB5HdkNVDpqFso4HHjVxcjNrTyJp3OZnyjKBzQzK1ZWLpLl84Q==", + "dev": true, + "dependencies": { + "@ethersproject/transactions": "^5.0.0-beta.135", + "underscore": "1.9.1", + "web3-core-helpers": "1.3.5", + "web3-core-promievent": "1.3.5", + "web3-core-subscriptions": "1.3.5", + "web3-utils": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/provider/node_modules/web3-core-promievent": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-core-promievent/-/web3-core-promievent-1.3.5.tgz", + "integrity": "sha512-K0j8x3ZJr0eAyNvyUCxOUsSTd4hco0/9nxxlyOuijcsa6YV8l9NL6eqhniWbSyxCJT8ka5Mb7yAiUZe69EDLBQ==", + "dev": true, + "dependencies": { + "eventemitter3": "4.0.4" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/provider/node_modules/web3-core-requestmanager": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-core-requestmanager/-/web3-core-requestmanager-1.3.5.tgz", + "integrity": "sha512-9l294U3Ga8qmvv8E37BqjQREfMs+kFnkU3PY28g9DZGYzKvl3V1dgDYqxyrOBdCFhc7rNSpHdgC4PrVHjouspg==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "util": "^0.12.0", + "web3-core-helpers": "1.3.5", + "web3-providers-http": "1.3.5", + "web3-providers-ipc": "1.3.5", + "web3-providers-ws": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/provider/node_modules/web3-core-subscriptions": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-core-subscriptions/-/web3-core-subscriptions-1.3.5.tgz", + "integrity": "sha512-6mtXdaEB1V1zKLqYBq7RF2W75AK5ZJNGpW6QYC7Zvbku7zq1ZlgaUkJo88JKMWJ7etfaHaYqQ/7VveHk5sQynA==", + "dev": true, + "dependencies": { + "eventemitter3": "4.0.4", + "underscore": "1.9.1", + "web3-core-helpers": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/provider/node_modules/web3-eth": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-eth/-/web3-eth-1.3.5.tgz", + "integrity": "sha512-5qqDPMMD+D0xRqOV2ePU2G7/uQmhn0FgCEhFzKDMHrssDQJyQLW/VgfA0NLn64lWnuUrGnQStGvNxrWf7MgsfA==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-core": "1.3.5", + "web3-core-helpers": "1.3.5", + "web3-core-method": "1.3.5", + "web3-core-subscriptions": "1.3.5", + "web3-eth-abi": "1.3.5", + "web3-eth-accounts": "1.3.5", + "web3-eth-contract": "1.3.5", + "web3-eth-ens": "1.3.5", + "web3-eth-iban": "1.3.5", + "web3-eth-personal": "1.3.5", + "web3-net": "1.3.5", + "web3-utils": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/provider/node_modules/web3-eth-abi": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-eth-abi/-/web3-eth-abi-1.3.5.tgz", + "integrity": "sha512-bkbG2v/mOW5DH6rF/SEgqunusjYoEi2IBw+fkmD3rzWDaEY7+/i1xY94AeO257d06QMgld75GtV/N+aEs7A6vQ==", + "dev": true, + "dependencies": { + "@ethersproject/abi": "5.0.7", + "underscore": "1.9.1", + "web3-utils": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/provider/node_modules/web3-eth-accounts": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-eth-accounts/-/web3-eth-accounts-1.3.5.tgz", + "integrity": "sha512-r3WOR21rgm6Cd6OFnifr3Tizdm5K+g2TsSOPySwX4FrgLrYDL6ck4zr5VXUPz+llpSExb/JztpE8pqEHr3U2NA==", + "dev": true, + "dependencies": { + "crypto-browserify": "3.12.0", + "eth-lib": "0.2.8", + "ethereumjs-common": "^1.3.2", + "ethereumjs-tx": "^2.1.1", + "scrypt-js": "^3.0.1", + "underscore": "1.9.1", + "uuid": "3.3.2", + "web3-core": "1.3.5", + "web3-core-helpers": "1.3.5", + "web3-core-method": "1.3.5", + "web3-utils": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/provider/node_modules/web3-eth-contract": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-eth-contract/-/web3-eth-contract-1.3.5.tgz", + "integrity": "sha512-WfGVeQquN3D7Qm+KEIN9EI7yrm/fL2V9Y4+YhDWiKA/ns1pX1LYcEWojTOnBXCnPF3tcvoKKL+KBxXg1iKm38A==", + "dev": true, + "dependencies": { + "@types/bn.js": "^4.11.5", + "underscore": "1.9.1", + "web3-core": "1.3.5", + "web3-core-helpers": "1.3.5", + "web3-core-method": "1.3.5", + "web3-core-promievent": "1.3.5", + "web3-core-subscriptions": "1.3.5", + "web3-eth-abi": "1.3.5", + "web3-utils": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/provider/node_modules/web3-eth-ens": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-eth-ens/-/web3-eth-ens-1.3.5.tgz", + "integrity": "sha512-5bkpFTXV18CvaVP8kCbLZZm2r1TWUv9AsXH+80yz8bTZulUGvXsBMRfK6e5nfEr2Yv59xlIXCFoalmmySI9EJw==", + "dev": true, + "dependencies": { + "content-hash": "^2.5.2", + "eth-ens-namehash": "2.0.8", + "underscore": "1.9.1", + "web3-core": "1.3.5", + "web3-core-helpers": "1.3.5", + "web3-core-promievent": "1.3.5", + "web3-eth-abi": "1.3.5", + "web3-eth-contract": "1.3.5", + "web3-utils": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/provider/node_modules/web3-eth-iban": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.3.5.tgz", + "integrity": "sha512-x+BI/d2Vt0J1cKK8eFd4W0f1TDjgEOYCwiViTb28lLE+tqrgyPqWDA+l6UlKYLF/yMFX3Dym4ofcCOtgcn4q4g==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "web3-utils": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/provider/node_modules/web3-eth-personal": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-eth-personal/-/web3-eth-personal-1.3.5.tgz", + "integrity": "sha512-xELQHNZ8p3VoO1582ghCaq+Bx7pSkOOalc6/ACOCGtHDMelqgVejrmSIZGScYl+k0HzngmQAzURZWQocaoGM1g==", + "dev": true, + "dependencies": { + "@types/node": "^12.12.6", + "web3-core": "1.3.5", + "web3-core-helpers": "1.3.5", + "web3-core-method": "1.3.5", + "web3-net": "1.3.5", + "web3-utils": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/provider/node_modules/web3-net": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-net/-/web3-net-1.3.5.tgz", + "integrity": "sha512-usbFbuUpKK8s7jPLGoUzi/WpNnefGFPTj948aJv8BZ04UQA4L/XS5NNkkhk358zNMmhGfEFW8wrWy+0Oy0njtA==", + "dev": true, + "dependencies": { + "web3-core": "1.3.5", + "web3-core-method": "1.3.5", + "web3-utils": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/provider/node_modules/web3-providers-http": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-providers-http/-/web3-providers-http-1.3.5.tgz", + "integrity": "sha512-ZQOmceFjcajEZdiuqciXjijwIYWNmEJ1oxMtbrwB2eGxHRCMXEH2xGRUZuhOFNF88yQC/VXVi14yvYg5ZlFJlA==", + "dev": true, + "dependencies": { + "web3-core-helpers": "1.3.5", + "xhr2-cookies": "1.1.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/provider/node_modules/web3-providers-ipc": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-providers-ipc/-/web3-providers-ipc-1.3.5.tgz", + "integrity": "sha512-cbZOeb/sALiHjzMolJjIyHla/J5wdL2JKUtRO66Nh/uLALBCpU8JUgzNvpAdJ1ae3+A33+EdFStdzuDYHKtQew==", + "dev": true, + "dependencies": { + "oboe": "2.1.5", + "underscore": "1.9.1", + "web3-core-helpers": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/provider/node_modules/web3-providers-ws": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-providers-ws/-/web3-providers-ws-1.3.5.tgz", + "integrity": "sha512-zeZ4LMvKhYaJBDCqA//Bzgp4r/T0tNq5U/xvN0axA4YflzF7yqlsbzGwCkcZYDbrUaK3Ltl2uOmvwjbWALOZ1A==", + "dev": true, + "dependencies": { + "eventemitter3": "4.0.4", + "underscore": "1.9.1", + "web3-core-helpers": "1.3.5", + "websocket": "^1.0.32" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/provider/node_modules/web3-shh": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-shh/-/web3-shh-1.3.5.tgz", + "integrity": "sha512-aRwzCduXvuGVslLL/Y15VcOHa70Qr2kxZI7UwOzQVhaaOdxuRRvo3AK/cmyln1Tsd54/n93Yk8I3qg5I2+6alw==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "web3-core": "1.3.5", + "web3-core-method": "1.3.5", + "web3-core-subscriptions": "1.3.5", + "web3-net": "1.3.5" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@truffle/provider/node_modules/web3-utils": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.3.5.tgz", + "integrity": "sha512-5apMRm8ElYjI/92GHqijmaLC+s+d5lgjpjHft+rJSs/dsnX8I8tQreqev0dmU+wzU+2EEe4Sx9a/OwGWHhQv3A==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "eth-lib": "0.2.8", + "ethereum-bloom-filters": "^1.0.6", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "underscore": "1.9.1", + "utf8": "3.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@trufflesuite/chromafi": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@trufflesuite/chromafi/-/chromafi-2.2.2.tgz", + "integrity": "sha512-mItQwVBsb8qP/vaYHQ1kDt2vJLhjoEXJptT6y6fJGvFophMFhOI/NsTVUa0nJL1nyMeFiS6hSYuNVdpQZzB1gA==", + "dev": true, + "dependencies": { + "ansi-mark": "^1.0.0", + "ansi-regex": "^3.0.0", + "array-uniq": "^1.0.3", + "camelcase": "^4.1.0", + "chalk": "^2.3.2", + "cheerio": "^1.0.0-rc.2", + "detect-indent": "^5.0.0", + "he": "^1.1.1", + "highlight.js": "^10.4.1", + "lodash.merge": "^4.6.2", + "min-indent": "^1.0.0", + "strip-ansi": "^4.0.0", + "strip-indent": "^2.0.0", + "super-split": "^1.1.0" + } + }, + "node_modules/@trufflesuite/chromafi/node_modules/highlight.js": { + "version": "10.7.2", + "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.7.2.tgz", + "integrity": "sha512-oFLl873u4usRM9K63j4ME9u3etNF0PLiJhSQ8rdfuL51Wn3zkD6drf9ZW0dOzjnZI22YYG24z30JcmfCZjMgYg==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/@trufflesuite/chromafi/node_modules/strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "dependencies": { + "ansi-regex": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@trufflesuite/eth-json-rpc-filters": { + "version": "4.1.2-1", + "resolved": "https://registry.npmjs.org/@trufflesuite/eth-json-rpc-filters/-/eth-json-rpc-filters-4.1.2-1.tgz", + "integrity": "sha512-/MChvC5dw2ck9NU1cZmdovCz2VKbOeIyR4tcxDvA5sT+NaL0rA2/R5U0yI7zsbo1zD+pgqav77rQHTzpUdDNJQ==", + "dependencies": { + "@trufflesuite/eth-json-rpc-middleware": "^4.4.2-0", + "await-semaphore": "^0.1.3", + "eth-query": "^2.1.2", + "json-rpc-engine": "^5.1.3", + "lodash.flatmap": "^4.5.0", + "safe-event-emitter": "^1.0.1" + } + }, + "node_modules/@trufflesuite/eth-json-rpc-infura": { + "version": "4.0.3-0", + "resolved": "https://registry.npmjs.org/@trufflesuite/eth-json-rpc-infura/-/eth-json-rpc-infura-4.0.3-0.tgz", + "integrity": "sha512-xaUanOmo0YLqRsL0SfXpFienhdw5bpQ1WEXxMTRi57az4lwpZBv4tFUDvcerdwJrxX9wQqNmgUgd1BrR01dumw==", + "dependencies": { + "@trufflesuite/eth-json-rpc-middleware": "^4.4.2-1", + "cross-fetch": "^2.1.1", + "eth-json-rpc-errors": "^1.0.1", + "json-rpc-engine": "^5.1.3" + } + }, + "node_modules/@trufflesuite/eth-json-rpc-infura/node_modules/eth-json-rpc-errors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/eth-json-rpc-errors/-/eth-json-rpc-errors-1.1.1.tgz", + "integrity": "sha512-WT5shJ5KfNqHi9jOZD+ID8I1kuYWNrigtZat7GOQkvwo99f8SzAVaEcWhJUv656WiZOAg3P1RiJQANtUmDmbIg==", + "deprecated": "Package renamed: https://www.npmjs.com/package/eth-rpc-errors", + "dependencies": { + "fast-safe-stringify": "^2.0.6" + } + }, + "node_modules/@trufflesuite/eth-json-rpc-middleware": { + "version": "4.4.2-1", + "resolved": "https://registry.npmjs.org/@trufflesuite/eth-json-rpc-middleware/-/eth-json-rpc-middleware-4.4.2-1.tgz", + "integrity": "sha512-iEy9H8ja7/8aYES5HfrepGBKU9n/Y4OabBJEklVd/zIBlhCCBAWBqkIZgXt11nBXO/rYAeKwYuE3puH3ByYnLA==", + "dependencies": { + "@trufflesuite/eth-sig-util": "^1.4.2", + "btoa": "^1.2.1", + "clone": "^2.1.1", + "eth-json-rpc-errors": "^1.0.1", + "eth-query": "^2.1.2", + "ethereumjs-block": "^1.6.0", + "ethereumjs-tx": "^1.3.7", + "ethereumjs-util": "^5.1.2", + "ethereumjs-vm": "^2.6.0", + "fetch-ponyfill": "^4.0.0", + "json-rpc-engine": "^5.1.3", + "json-stable-stringify": "^1.0.1", + "pify": "^3.0.0", + "safe-event-emitter": "^1.0.1" + } + }, + "node_modules/@trufflesuite/eth-json-rpc-middleware/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/@trufflesuite/eth-json-rpc-middleware/node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/@trufflesuite/eth-json-rpc-middleware/node_modules/eth-json-rpc-errors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/eth-json-rpc-errors/-/eth-json-rpc-errors-1.1.1.tgz", + "integrity": "sha512-WT5shJ5KfNqHi9jOZD+ID8I1kuYWNrigtZat7GOQkvwo99f8SzAVaEcWhJUv656WiZOAg3P1RiJQANtUmDmbIg==", + "deprecated": "Package renamed: https://www.npmjs.com/package/eth-rpc-errors", + "dependencies": { + "fast-safe-stringify": "^2.0.6" + } + }, + "node_modules/@trufflesuite/eth-json-rpc-middleware/node_modules/ethereum-common": { + "version": "0.0.18", + "resolved": "https://registry.npmjs.org/ethereum-common/-/ethereum-common-0.0.18.tgz", + "integrity": "sha1-L9w1dvIykDNYl26znaeDIT/5Uj8=" + }, + "node_modules/@trufflesuite/eth-json-rpc-middleware/node_modules/ethereumjs-tx": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/ethereumjs-tx/-/ethereumjs-tx-1.3.7.tgz", + "integrity": "sha512-wvLMxzt1RPhAQ9Yi3/HKZTn0FZYpnsmQdbKYfUUpi4j1SEIcbkd9tndVjcPrufY3V7j2IebOpC00Zp2P/Ay2kA==", + "deprecated": "New package name format for new versions: @ethereumjs/tx. Please update.", + "dependencies": { + "ethereum-common": "^0.0.18", + "ethereumjs-util": "^5.0.0" + } + }, + "node_modules/@trufflesuite/eth-json-rpc-middleware/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/@trufflesuite/eth-json-rpc-middleware/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/@trufflesuite/eth-json-rpc-middleware/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "engines": { + "node": ">=4" + } + }, + "node_modules/@trufflesuite/eth-sig-util": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@trufflesuite/eth-sig-util/-/eth-sig-util-1.4.2.tgz", + "integrity": "sha512-+GyfN6b0LNW77hbQlH3ufZ/1eCON7mMrGym6tdYf7xiNw9Vv3jBO72bmmos1EId2NgBvPMhmYYm6DSLQFTmzrA==", + "dependencies": { + "ethereumjs-abi": "^0.6.8", + "ethereumjs-util": "^5.1.1" + } + }, + "node_modules/@trufflesuite/eth-sig-util/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/@trufflesuite/eth-sig-util/node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/@trufflesuite/eth-sig-util/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/@trufflesuite/eth-sig-util/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/@trufflesuite/web3-provider-engine": { + "version": "15.0.13-1", + "resolved": "https://registry.npmjs.org/@trufflesuite/web3-provider-engine/-/web3-provider-engine-15.0.13-1.tgz", + "integrity": "sha512-6u3x/iIN5fyj8pib5QTUDmIOUiwAGhaqdSTXdqCu6v9zo2BEwdCqgEJd1uXDh3DBmPRDfiZ/ge8oUPy7LerpHg==", + "dependencies": { + "@trufflesuite/eth-json-rpc-filters": "^4.1.2-1", + "@trufflesuite/eth-json-rpc-infura": "^4.0.3-0", + "@trufflesuite/eth-json-rpc-middleware": "^4.4.2-1", + "@trufflesuite/eth-sig-util": "^1.4.2", + "async": "^2.5.0", + "backoff": "^2.5.0", + "clone": "^2.0.0", + "cross-fetch": "^2.1.0", + "eth-block-tracker": "^4.4.2", + "eth-json-rpc-errors": "^2.0.2", + "ethereumjs-block": "^1.2.2", + "ethereumjs-tx": "^1.2.0", + "ethereumjs-util": "^5.1.5", + "ethereumjs-vm": "^2.3.4", + "json-stable-stringify": "^1.0.1", + "promise-to-callback": "^1.0.0", + "readable-stream": "^2.2.9", + "request": "^2.85.0", + "semaphore": "^1.0.3", + "ws": "^5.1.1", + "xhr": "^2.2.0", + "xtend": "^4.0.1" + } + }, + "node_modules/@trufflesuite/web3-provider-engine/node_modules/async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "dependencies": { + "lodash": "^4.17.14" + } + }, + "node_modules/@trufflesuite/web3-provider-engine/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/@trufflesuite/web3-provider-engine/node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/@trufflesuite/web3-provider-engine/node_modules/ethereum-common": { + "version": "0.0.18", + "resolved": "https://registry.npmjs.org/ethereum-common/-/ethereum-common-0.0.18.tgz", + "integrity": "sha1-L9w1dvIykDNYl26znaeDIT/5Uj8=" + }, + "node_modules/@trufflesuite/web3-provider-engine/node_modules/ethereumjs-tx": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/ethereumjs-tx/-/ethereumjs-tx-1.3.7.tgz", + "integrity": "sha512-wvLMxzt1RPhAQ9Yi3/HKZTn0FZYpnsmQdbKYfUUpi4j1SEIcbkd9tndVjcPrufY3V7j2IebOpC00Zp2P/Ay2kA==", + "deprecated": "New package name format for new versions: @ethereumjs/tx. Please update.", + "dependencies": { + "ethereum-common": "^0.0.18", + "ethereumjs-util": "^5.0.0" + } + }, + "node_modules/@trufflesuite/web3-provider-engine/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/@trufflesuite/web3-provider-engine/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/@trufflesuite/web3-provider-engine/node_modules/ws": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-5.2.2.tgz", + "integrity": "sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA==", + "dependencies": { + "async-limiter": "~1.0.0" + } + }, + "node_modules/@types/abstract-leveldown": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@types/abstract-leveldown/-/abstract-leveldown-5.0.2.tgz", + "integrity": "sha512-+jA1XXF3jsz+Z7FcuiNqgK53hTa/luglT2TyTpKPqoYbxVY+mCPF22Rm+q3KPBrMHJwNXFrTViHszBOfU4vftQ==", + "dev": true + }, + "node_modules/@types/bignumber.js": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@types/bignumber.js/-/bignumber.js-5.0.0.tgz", + "integrity": "sha512-0DH7aPGCClywOFaxxjE6UwpN2kQYe9LwuDQMv+zYA97j5GkOMo8e66LYT+a8JYU7jfmUFRZLa9KycxHDsKXJCA==", + "deprecated": "This is a stub types definition for bignumber.js (https://github.com/MikeMcl/bignumber.js/). bignumber.js provides its own type definitions, so you don't need @types/bignumber.js installed!", + "dev": true, + "dependencies": { + "bignumber.js": "*" + } + }, + "node_modules/@types/bn.js": { + "version": "4.11.5", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-4.11.5.tgz", + "integrity": "sha512-AEAZcIZga0JgVMHNtl1CprA/hXX7/wPt79AgR4XqaDt7jyj3QWYw6LPoOiznPtugDmlubUnAahMs2PFxGcQrng==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/cacheable-request": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.1.tgz", + "integrity": "sha512-ykFq2zmBGOCbpIXtoVbz4SKY5QriWPh3AjyU4G74RYbtt5yOc5OfaY75ftjg7mikMOla1CTGpX3lLbuJh8DTrQ==", + "dev": true, + "dependencies": { + "@types/http-cache-semantics": "*", + "@types/keyv": "*", + "@types/node": "*", + "@types/responselike": "*" + } + }, + "node_modules/@types/chai": { + "version": "4.2.21", + "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.2.21.tgz", + "integrity": "sha512-yd+9qKmJxm496BOV9CMNaey8TWsikaZOwMRwPHQIjcOJM9oV+fi9ZMNw3JsVnbEEbo2gRTDnGEBv8pjyn67hNg==", + "dev": true + }, + "node_modules/@types/color-name": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", + "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", + "dev": true + }, + "node_modules/@types/debug": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.5.tgz", + "integrity": "sha512-Q1y515GcOdTHgagaVFhHnIFQ38ygs/kmxdNpvpou+raI9UO3YZcHDngBSYKQklcKlvA7iuQlmIKbzvmxcOE9CQ==", + "dev": true + }, + "node_modules/@types/emscripten": { + "version": "1.39.4", + "resolved": "https://registry.npmjs.org/@types/emscripten/-/emscripten-1.39.4.tgz", + "integrity": "sha512-k3LLVMFrdNA9UCvMDPWMbFrGPNb+GcPyw29ktJTo1RCN7RmxFG5XzPZcPKRlnLuLT/FRm8wp4ohvDwNY7GlROQ==", + "dev": true + }, + "node_modules/@types/glob": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-VgNIkxK+j7Nz5P7jvUZlRvhuPSmsEfS03b0alKcq5V/STUKAa3Plemsn5mrQUO7am6OErJ4rhGEGJbACclrtRA==", + "dev": true, + "dependencies": { + "@types/minimatch": "*", + "@types/node": "*" + } + }, + "node_modules/@types/hosted-git-info": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/@types/hosted-git-info/-/hosted-git-info-2.7.0.tgz", + "integrity": "sha512-OW/D8GqCyQtH8F7xDdDxzPJTBgknZeZhlCakUcBCya2rYPRN53F+0YJVwSPyiyAhrknnjkl3P9qVk0oBI4S1qw==", + "dev": true + }, + "node_modules/@types/http-cache-semantics": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.0.tgz", + "integrity": "sha512-c3Xy026kOF7QOTn00hbIllV1dLR9hG9NkSrLQgCVs8NF6sBU+VGWjD3wLPhmh1TYAc7ugCFsvHYMN4VcBN1U1A==", + "dev": true + }, + "node_modules/@types/js-yaml": { + "version": "3.12.5", + "resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-3.12.5.tgz", + "integrity": "sha512-JCcp6J0GV66Y4ZMDAQCXot4xprYB+Zfd3meK9+INSJeVZwJmHAW30BBEEkPzXswMXuiyReUGOP3GxrADc9wPww==", + "dev": true + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", + "dev": true + }, + "node_modules/@types/keyv": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.1.tgz", + "integrity": "sha512-MPtoySlAZQ37VoLaPcTHCu1RWJ4llDkULYZIzOYxlhxBqYPB0RsRlmMU0R6tahtFe27mIdkHV+551ZWV4PLmVw==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/levelup": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@types/levelup/-/levelup-4.3.1.tgz", + "integrity": "sha512-n//PeTpbHLjMLTIgW5B/g06W/6iuTBHuvUka2nFL9APMSVMNe2r4enADfu3CIE9IyV9E+uquf9OEQQqrDeg24A==", + "dev": true, + "dependencies": { + "@types/abstract-leveldown": "*", + "@types/node": "*" + } + }, + "node_modules/@types/lru-cache": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@types/lru-cache/-/lru-cache-5.1.0.tgz", + "integrity": "sha512-RaE0B+14ToE4l6UqdarKPnXwVDuigfFv+5j9Dze/Nqr23yyuqdNvzcZi3xB+3Agvi5R4EOgAksfv3lXX4vBt9w==", + "dev": true + }, + "node_modules/@types/minimatch": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", + "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", + "dev": true + }, + "node_modules/@types/node": { + "version": "10.12.26", + "resolved": "https://registry.npmjs.org/@types/node/-/node-10.12.26.tgz", + "integrity": "sha512-nMRqS+mL1TOnIJrL6LKJcNZPB8V3eTfRo9FQA2b5gDvrHurC8XbSA86KNe0dShlEL7ReWJv/OU9NL7Z0dnqWTg==" + }, + "node_modules/@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true + }, + "node_modules/@types/pbkdf2": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@types/pbkdf2/-/pbkdf2-3.1.0.tgz", + "integrity": "sha512-Cf63Rv7jCQ0LaL8tNXmEyqTHuIJxRdlS5vMh1mj5voN4+QFhVZnlZruezqpWYDiJ8UTzhP0VmeLXCmBk66YrMQ==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", + "dev": true + }, + "node_modules/@types/responselike": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.0.tgz", + "integrity": "sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/secp256k1": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/secp256k1/-/secp256k1-4.0.2.tgz", + "integrity": "sha512-QMg+9v0bbNJ2peLuHRWxzmy0HRJIG6gFZNhaRSp7S3ggSbCCxiqQB2/ybvhXyhHOCequpNkrx7OavNhrWOsW0A==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/semver": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-5.5.0.tgz", + "integrity": "sha512-41qEJgBH/TWgo5NFSvBCJ1qkoi3Q6ONSF2avrHq1LVEZfYpdHmj0y9SuTK+u9ZhG1sYQKBL1AWXKyLWP4RaUoQ==", + "dev": true + }, + "node_modules/@types/xml2js": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/@types/xml2js/-/xml2js-0.4.5.tgz", + "integrity": "sha512-yohU3zMn0fkhlape1nxXG2bLEGZRc1FeqF80RoHaYXJN7uibaauXfhzhOJr1Xh36sn+/tx21QAOf07b/xYVk1w==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@vue/component-compiler-utils": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@vue/component-compiler-utils/-/component-compiler-utils-3.2.0.tgz", + "integrity": "sha512-lejBLa7xAMsfiZfNp7Kv51zOzifnb29FwdnMLa96z26kXErPFioSf9BMcePVIQ6/Gc6/mC0UrPpxAWIHyae0vw==", + "dev": true, + "dependencies": { + "consolidate": "^0.15.1", + "hash-sum": "^1.0.2", + "lru-cache": "^4.1.2", + "merge-source-map": "^1.1.0", + "postcss": "^7.0.14", + "postcss-selector-parser": "^6.0.2", + "source-map": "~0.6.1", + "vue-template-es2015-compiler": "^1.9.0" + }, + "optionalDependencies": { + "prettier": "^1.18.2" + } + }, + "node_modules/@vue/component-compiler-utils/node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "node_modules/@vue/component-compiler-utils/node_modules/prettier": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.19.1.tgz", + "integrity": "sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==", + "dev": true, + "optional": true, + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@vue/component-compiler-utils/node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", + "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", + "dev": true, + "dependencies": { + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", + "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", + "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz", + "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-code-frame": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", + "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", + "dev": true, + "dependencies": { + "@webassemblyjs/wast-printer": "1.9.0" + } + }, + "node_modules/@webassemblyjs/helper-fsm": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", + "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-module-context": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", + "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.9.0" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", + "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz", + "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz", + "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==", + "dev": true, + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz", + "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==", + "dev": true, + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz", + "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==", + "dev": true + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz", + "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/helper-wasm-section": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0", + "@webassemblyjs/wasm-opt": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0", + "@webassemblyjs/wast-printer": "1.9.0" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz", + "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/ieee754": "1.9.0", + "@webassemblyjs/leb128": "1.9.0", + "@webassemblyjs/utf8": "1.9.0" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz", + "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz", + "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/ieee754": "1.9.0", + "@webassemblyjs/leb128": "1.9.0", + "@webassemblyjs/utf8": "1.9.0" + } + }, + "node_modules/@webassemblyjs/wast-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", + "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/floating-point-hex-parser": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-code-frame": "1.9.0", + "@webassemblyjs/helper-fsm": "1.9.0", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", + "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true + }, + "node_modules/@yarnpkg/core": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@yarnpkg/core/-/core-2.1.1.tgz", + "integrity": "sha512-qeBxz8nHjKAbGTP2ZcXBnXGfM7+cN0A73mIai/24uru1ayvCIgfjWL1uIj/MM+m+K5lJX0Dcn94ZBHWits9JWQ==", + "dev": true, + "dependencies": { + "@arcanis/slice-ansi": "^1.0.2", + "@yarnpkg/fslib": "^2.1.0", + "@yarnpkg/json-proxy": "^2.1.0", + "@yarnpkg/libzip": "^2.1.0", + "@yarnpkg/parsers": "^2.1.0", + "@yarnpkg/pnp": "^2.1.0", + "@yarnpkg/shell": "^2.1.0", + "camelcase": "^5.3.1", + "chalk": "^3.0.0", + "ci-info": "^2.0.0", + "clipanion": "^2.4.2", + "cross-spawn": "7.0.3", + "diff": "^4.0.1", + "globby": "^10.0.1", + "got": "^11.1.3", + "json-file-plus": "^3.3.1", + "logic-solver": "^2.0.1", + "micromatch": "^4.0.2", + "mkdirp": "^0.5.1", + "p-limit": "^2.2.0", + "pluralize": "^7.0.0", + "pretty-bytes": "^5.1.0", + "semver": "^7.1.2", + "stream-to-promise": "^2.2.0", + "tar": "^4.4.6", + "tslib": "^1.13.0", + "tunnel": "^0.0.6" + }, + "engines": { + "node": ">=10.19.0" + } + }, + "node_modules/@yarnpkg/core/node_modules/@sindresorhus/is": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-3.1.0.tgz", + "integrity": "sha512-n4J+zu52VdY43kdi/XdI9DzuMr1Mur8zFL5ZRG2opCans9aiFwkPxHYFEb5Xgy7n1Z4K6WfI4FpqUqsh3E8BPQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" + } + }, + "node_modules/@yarnpkg/core/node_modules/@szmarczak/http-timer": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.5.tgz", + "integrity": "sha512-PyRA9sm1Yayuj5OIoJ1hGt2YISX45w9WcFbh6ddT0Z/0yaFxOtGLInr4jUfU1EAFVs0Yfyfev4RNwBlUaHdlDQ==", + "dev": true, + "dependencies": { + "defer-to-connect": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@yarnpkg/core/node_modules/ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "dependencies": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@yarnpkg/core/node_modules/cacheable-request": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.1.tgz", + "integrity": "sha512-lt0mJ6YAnsrBErpTMWeu5kl/tg9xMAWjavYTN6VQXM1A/teBITuNcccXsCxF0tDQQJf9DfAaX5O4e0zp0KlfZw==", + "dev": true, + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^4.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@yarnpkg/core/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@yarnpkg/core/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@yarnpkg/core/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@yarnpkg/core/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@yarnpkg/core/node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@yarnpkg/core/node_modules/decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "dev": true, + "dependencies": { + "mimic-response": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@yarnpkg/core/node_modules/defer-to-connect": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.0.tgz", + "integrity": "sha512-bYL2d05vOSf1JEZNx5vSAtPuBMkX8K9EUutg7zlKvTqKXHt7RhWJFbmd7qakVuf13i+IkGmp6FwSsONOf6VYIg==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/@yarnpkg/core/node_modules/get-stream": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.1.0.tgz", + "integrity": "sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw==", + "dev": true, + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@yarnpkg/core/node_modules/got": { + "version": "11.5.1", + "resolved": "https://registry.npmjs.org/got/-/got-11.5.1.tgz", + "integrity": "sha512-reQEZcEBMTGnujmQ+Wm97mJs/OK6INtO6HmLI+xt3+9CvnRwWjXutUvb2mqr+Ao4Lu05Rx6+udx9sOQAmExMxA==", + "dev": true, + "dependencies": { + "@sindresorhus/is": "^3.0.0", + "@szmarczak/http-timer": "^4.0.5", + "@types/cacheable-request": "^6.0.1", + "@types/responselike": "^1.0.0", + "cacheable-lookup": "^5.0.3", + "cacheable-request": "^7.0.1", + "decompress-response": "^6.0.0", + "http2-wrapper": "^1.0.0-beta.5.0", + "lowercase-keys": "^2.0.0", + "p-cancelable": "^2.0.0", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=10.19.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/got?sponsor=1" + } + }, + "node_modules/@yarnpkg/core/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@yarnpkg/core/node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true + }, + "node_modules/@yarnpkg/core/node_modules/keyv": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.0.1.tgz", + "integrity": "sha512-xz6Jv6oNkbhrFCvCP7HQa8AaII8y8LRpoSm661NOKLr4uHuBwhX4epXrPQgF3+xdJnN4Esm5X0xwY4bOlALOtw==", + "dev": true, + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/@yarnpkg/core/node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@yarnpkg/core/node_modules/mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@yarnpkg/core/node_modules/p-cancelable": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.0.0.tgz", + "integrity": "sha512-wvPXDmbMmu2ksjkB4Z3nZWTSkJEb9lqVdMaCKpZUGJG9TMiNp9XcbG3fn9fPKjem04fJMJnXoyFPk2FmgiaiNg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@yarnpkg/core/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@yarnpkg/core/node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@yarnpkg/core/node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@yarnpkg/core/node_modules/responselike": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.0.tgz", + "integrity": "sha512-xH48u3FTB9VsZw7R+vvgaKeLKzT6jOogbQhEe/jewwnZgzPcnyWui2Av6JpoYZF/91uueC+lqhWqeURw5/qhCw==", + "dev": true, + "dependencies": { + "lowercase-keys": "^2.0.0" + } + }, + "node_modules/@yarnpkg/core/node_modules/semver": { + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", + "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@yarnpkg/core/node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@yarnpkg/core/node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@yarnpkg/core/node_modules/supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@yarnpkg/core/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@yarnpkg/fslib": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/fslib/-/fslib-2.1.0.tgz", + "integrity": "sha512-E+f8w5yQZnTf1soyTWy7qdf+GmHsY+A0yEN4Di44/Txk6XRIMruyc1ShDi93mOI6ilnXxD87rNms18zJ8WnspA==", + "dev": true, + "dependencies": { + "@yarnpkg/libzip": "^2.1.0", + "tslib": "^1.13.0" + }, + "engines": { + "node": ">=10.19.0" + } + }, + "node_modules/@yarnpkg/json-proxy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/json-proxy/-/json-proxy-2.1.0.tgz", + "integrity": "sha512-rOgCg2DkyviLgr80mUMTt9vzdf5RGOujQB26yPiXjlz4WNePLBshKlTNG9rKSoKQSOYEQcw6cUmosfOKDatrCw==", + "dev": true, + "dependencies": { + "@yarnpkg/fslib": "^2.1.0", + "tslib": "^1.13.0" + }, + "engines": { + "node": ">=10.19.0" + } + }, + "node_modules/@yarnpkg/libzip": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/libzip/-/libzip-2.1.0.tgz", + "integrity": "sha512-39c7KuSWcYUqVxlBLZwfqdD/D6lS+jplNVWd6uAnk8EpnacaYGJRegvkqWyfw5c8KHukNMeEGF5JHrXPZYBM0w==", + "dev": true, + "dependencies": { + "@types/emscripten": "^1.38.0", + "tslib": "^1.13.0" + }, + "engines": { + "node": ">=10.19.0" + } + }, + "node_modules/@yarnpkg/lockfile": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", + "dev": true + }, + "node_modules/@yarnpkg/parsers": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-2.1.0.tgz", + "integrity": "sha512-75OYQ6PMs1C3zm+W+T1xhLyVDX78zXQGEVHpWd4o/QwpAbhneB3/5FXVGRzI3gjPPWWSb/pKOPB1S6p0xmQD2Q==", + "dev": true, + "dependencies": { + "js-yaml": "^3.10.0", + "tslib": "^1.13.0" + }, + "engines": { + "node": ">=10.19.0" + } + }, + "node_modules/@yarnpkg/pnp": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/pnp/-/pnp-2.1.0.tgz", + "integrity": "sha512-b8NlB71EFifv1jDX47nFaRXrykROxHcS7YuGb2dQ+Gp9gqJ0thIaZ3yB9+qWF8acdWtNcMpjCug4xkfAAR5Odw==", + "dev": true, + "dependencies": { + "@types/node": "^13.7.0", + "@yarnpkg/fslib": "^2.1.0", + "tslib": "^1.13.0" + }, + "engines": { + "node": ">=10.19.0" + } + }, + "node_modules/@yarnpkg/pnp/node_modules/@types/node": { + "version": "13.13.15", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.15.tgz", + "integrity": "sha512-kwbcs0jySLxzLsa2nWUAGOd/s21WU1jebrEdtzhsj1D4Yps1EOuyI1Qcu+FD56dL7NRNIJtDDjcqIG22NwkgLw==", + "dev": true + }, + "node_modules/@yarnpkg/shell": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/shell/-/shell-2.1.0.tgz", + "integrity": "sha512-9i9ZWqeKHGV0DOfdxTVq5zl73Li8Fg947v57uLBEaytNF+HywkDfouNkg/6HfgBrpI0WH8OJ9Pz/uDaE5cpctw==", + "dev": true, + "dependencies": { + "@yarnpkg/fslib": "^2.1.0", + "@yarnpkg/parsers": "^2.1.0", + "clipanion": "^2.4.2", + "cross-spawn": "7.0.3", + "fast-glob": "^3.2.2", + "stream-buffers": "^3.0.2", + "tslib": "^1.13.0" + }, + "bin": { + "shell": "lib/cli.js" + }, + "engines": { + "node": ">=10.19.0" + } + }, + "node_modules/@yarnpkg/shell/node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@yarnpkg/shell/node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@yarnpkg/shell/node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@yarnpkg/shell/node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@yarnpkg/shell/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "node_modules/abort-controller": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", + "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "dev": true, + "dependencies": { + "event-target-shim": "^5.0.0" + }, + "engines": { + "node": ">=6.5" + } + }, + "node_modules/abstract-leveldown": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.6.3.tgz", + "integrity": "sha512-2++wDf/DYqkPR3o5tbfdhF96EfMApo1GpPfzOsR/ZYXdkSmELlvOOEAl9iKkRsktMPHdGjO4rtkBpf2I7TiTeA==", + "dependencies": { + "xtend": "~4.0.0" + } + }, + "node_modules/accepts": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "dev": true, + "dependencies": { + "mime-types": "~2.1.24", + "negotiator": "0.6.2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/accepts/node_modules/mime-db": { + "version": "1.44.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", + "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/accepts/node_modules/mime-types": { + "version": "2.1.27", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", + "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", + "dev": true, + "dependencies": { + "mime-db": "1.44.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.3.1.tgz", + "integrity": "sha512-tLc0wSnatxAQHVHUapaHdz72pi9KUyHjq5KyHjGg9Y8Ifdc79pTh2XvI6I1/chZbnM7QtNKzh66ooDogPZSleA==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz", + "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0" + } + }, + "node_modules/address": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/address/-/address-1.1.2.tgz", + "integrity": "sha512-aT6camzM4xEA54YVJYSqxz1kv4IHnQZRtThJJHhUMRExaU5spC7jX5ugSwTaTgJliIgs4VhZOk7htClvQ/LmRA==", + "dev": true, + "engines": { + "node": ">= 0.12.0" + } + }, + "node_modules/adm-zip": { + "version": "0.4.16", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.16.tgz", + "integrity": "sha512-TFi4HBKSGfIKsK5YCkKaaFG2m4PEDyViZmEwof3MTIgzimHLto6muaHVpbrljdIvIrFZzEq/p4nafOeLcYegrg==", + "dev": true, + "engines": { + "node": ">=0.3.0" + } + }, + "node_modules/aes-js": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-3.0.0.tgz", + "integrity": "sha1-4h3xCtbCBTKVvLuNq0Cwnb6ofk0=", + "dev": true + }, + "node_modules/agent-base": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", + "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", + "dev": true, + "dependencies": { + "es6-promisify": "^5.0.0" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/ajv": { + "version": "6.6.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.6.2.tgz", + "integrity": "sha512-FBHEW6Jf5TB9MGBgUUA9XHkTbjXYfAUjY43ACMfmdMRHniyoMHjHjzD50OK8LGDWQwp4rWEsIq5kEqq7rvIM1g==", + "dependencies": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "node_modules/ajv-errors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", + "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", + "dev": true, + "peerDependencies": { + "ajv": ">=5.0.0" + } + }, + "node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/ajv/node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "node_modules/amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.4.2" + } + }, + "node_modules/ansi-align": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.0.tgz", + "integrity": "sha512-ZpClVKqXN3RGBmKibdfWzqCY4lnjEuoNzU5T0oEFpfd/z5qJHVarukridD4juLO2FXMiwUQxr9WqQtaYa8XRYw==", + "dev": true, + "dependencies": { + "string-width": "^3.0.0" + } + }, + "node_modules/ansi-align/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "dependencies": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-colors": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz", + "integrity": "sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-escapes": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/ansi-mark": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/ansi-mark/-/ansi-mark-1.0.4.tgz", + "integrity": "sha1-HNS6jVfxXxCdaq9uycqXhsik7mw=", + "dev": true, + "dependencies": { + "ansi-regex": "^3.0.0", + "array-uniq": "^1.0.3", + "chalk": "^2.3.2", + "strip-ansi": "^4.0.0", + "super-split": "^1.1.0" + } + }, + "node_modules/ansi-mark/node_modules/strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "dependencies": { + "ansi-regex": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ansicolors": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/ansicolors/-/ansicolors-0.3.2.tgz", + "integrity": "sha1-ZlWX3oap/+Oqm/vmyuXG6kJrSXk=", + "dev": true + }, + "node_modules/antlr4": { + "version": "4.7.1", + "resolved": "https://registry.npmjs.org/antlr4/-/antlr4-4.7.1.tgz", + "integrity": "sha512-haHyTW7Y9joE5MVs37P2lNYfU2RWBLfcRDD8OWldcdZm5TiCE91B5Xl1oWSwiDUSd4rlExpt2pu1fksYQjRBYQ==", + "dev": true + }, + "node_modules/antlr4ts": { + "version": "0.5.0-alpha.4", + "resolved": "https://registry.npmjs.org/antlr4ts/-/antlr4ts-0.5.0-alpha.4.tgz", + "integrity": "sha512-WPQDt1B74OfPv/IMS2ekXAKkTZIHl88uMetg6q3OTqgFxZ/dxDXI0EWLyZid/1Pe6hTftyg5N7gel5wNAGxXyQ==", + "dev": true + }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=" + }, + "node_modules/anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/anymatch/node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/app-module-path": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/app-module-path/-/app-module-path-2.2.0.tgz", + "integrity": "sha1-ZBqlXft9am8KgUHEucCqULbCTdU=", + "dev": true + }, + "node_modules/aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true + }, + "node_modules/archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", + "dev": true + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-filter": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-1.0.0.tgz", + "integrity": "sha1-uveeYubvTCpMC4MSMtr/7CUfnYM=", + "dev": true + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", + "dev": true + }, + "node_modules/array-includes": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.1.tgz", + "integrity": "sha512-c2VXaCHl7zPsvpkFsw4nxvFie4fh1ur9bpcgsVkIjqn0H/Xwdg+7fv3n2r/isyS8EBj5b06M9kHyZuIr4El6WQ==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0", + "is-string": "^1.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array.prototype.flat": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.3.tgz", + "integrity": "sha512-gBlRZV0VSmfPIeWfuuy56XZMvbVfbEUnOXUvt3F/eUUUSyzlgLxhEX4YAEpxNAogRGehPSnfXyPtYyKAhkzQhQ==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.map": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array.prototype.map/-/array.prototype.map-1.0.3.tgz", + "integrity": "sha512-nNcb30v0wfDyIe26Yif3PcV1JXQp4zEeEfupG7L4SRjnD6HLbO5b2a7eVSba53bOx4YCHYMBHt+Fp4vYstneRA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1", + "es-array-method-boxes-properly": "^1.0.0", + "is-string": "^1.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.map/node_modules/es-abstract": { + "version": "1.18.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz", + "integrity": "sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "get-intrinsic": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.2", + "is-callable": "^1.2.3", + "is-negative-zero": "^2.0.1", + "is-regex": "^1.1.3", + "is-string": "^1.0.6", + "object-inspect": "^1.10.3", + "object-keys": "^1.1.1", + "object.assign": "^4.1.2", + "string.prototype.trimend": "^1.0.4", + "string.prototype.trimstart": "^1.0.4", + "unbox-primitive": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.map/node_modules/es-abstract/node_modules/is-string": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz", + "integrity": "sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.map/node_modules/has-symbols": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.map/node_modules/is-callable": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz", + "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.map/node_modules/is-regex": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz", + "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.map/node_modules/object-inspect": { + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz", + "integrity": "sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.map/node_modules/object.assign": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.map/node_modules/string.prototype.trimend": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", + "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.map/node_modules/string.prototype.trimstart": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", + "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", + "dev": true + }, + "node_modules/asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "dependencies": { + "safer-buffer": "~2.1.0" + } + }, + "node_modules/asn1.js": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", + "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "dev": true, + "dependencies": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/asn1.js/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/assert": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", + "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", + "dev": true, + "dependencies": { + "object-assign": "^4.1.1", + "util": "0.10.3" + } + }, + "node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/assert/node_modules/inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", + "dev": true + }, + "node_modules/assert/node_modules/util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "dev": true, + "dependencies": { + "inherits": "2.0.1" + } + }, + "node_modules/assertion-error": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", + "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ast-parents": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/ast-parents/-/ast-parents-0.0.1.tgz", + "integrity": "sha1-UI/Q8F0MSHddnszaLhdEIyYejdM=", + "dev": true + }, + "node_modules/ast-types": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.3.tgz", + "integrity": "sha512-XTZ7xGML849LkQP86sWdQzfhwbt3YwIO6MqbX9mUNYY98VKaaVZP7YNNm70IpwecbkkxmfC5IYAzOQ/2p29zRA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=" + }, + "node_modules/async-each": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", + "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", + "dev": true, + "optional": true + }, + "node_modules/async-eventemitter": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/async-eventemitter/-/async-eventemitter-0.2.4.tgz", + "integrity": "sha512-pd20BwL7Yt1zwDFy+8MX8F1+WCT8aQeKj0kQnTrH9WaeRETlRamVhD0JtRPmrV4GfOJ2F9CvdQkZeZhnh2TuHw==", + "dependencies": { + "async": "^2.4.0" + } + }, + "node_modules/async-eventemitter/node_modules/async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "dependencies": { + "lodash": "^4.17.14" + } + }, + "node_modules/async-limiter": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", + "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==" + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "dev": true, + "bin": { + "atob": "bin/atob.js" + }, + "engines": { + "node": ">= 4.5.0" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.2.tgz", + "integrity": "sha512-XWX3OX8Onv97LMk/ftVyBibpGwY5a8SmuxZPzeOxqmuEqUCOM9ZE+uIaD1VNJ5QnvU2UQusvmKbuM1FR8QWGfQ==", + "dev": true, + "dependencies": { + "array-filter": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/await-semaphore": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/await-semaphore/-/await-semaphore-0.1.3.tgz", + "integrity": "sha512-d1W2aNSYcz/sxYO4pMGX9vq65qOTu0P800epMud+6cYYX0QcT7zyqcxec3VWzpgvdXo57UWmVbZpLMjX2m1I7Q==" + }, + "node_modules/aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "engines": { + "node": "*" + } + }, + "node_modules/aws4": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", + "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==" + }, + "node_modules/axios": { + "version": "0.21.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz", + "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==", + "dev": true, + "dependencies": { + "follow-redirects": "^1.10.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.2.0.tgz", + "integrity": "sha512-9bNwiR0dS881c5SHnzCmmGlMkJLl0OUZvxrxHo9w/iNoRuqaPjqlvBf4HrovXtQs/au5yKkpcdgfT1cC5PAZwg==", + "dependencies": { + "@babel/compat-data": "^7.13.11", + "@babel/helper-define-polyfill-provider": "^0.2.0", + "semver": "^6.1.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.2.0.tgz", + "integrity": "sha512-zZyi7p3BCUyzNxLx8KV61zTINkkV65zVkDAFNZmrTCRVhjo1jAS+YLvDJ9Jgd/w2tsAviCwFHReYfxO3Iql8Yg==", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.2.0", + "core-js-compat": "^3.9.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.2.0.tgz", + "integrity": "sha512-J7vKbCuD2Xi/eEHxquHN14bXAW9CXtecwuLrOIDJtcZzTaPzV1VdEfoUf9AzcRBMolKUQKM9/GVojeh0hFiqMg==", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.2.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/backoff": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/backoff/-/backoff-2.5.0.tgz", + "integrity": "sha1-9hbtqdPktmuMp/ynn2lXIsX44m8=", + "dependencies": { + "precond": "0.2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "node_modules/base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "dev": true, + "dependencies": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base-x": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.8.tgz", + "integrity": "sha512-Rl/1AWP4J/zRrk54hhlxH4drNxPJXYUaKffODVI53/dAsV4t9fBxyxYKAVPU1XBHxYwOWP9h9H0hM2MVw4YfJA==", + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/base/node_modules/define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base/node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base/node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base/node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base64-js": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", + "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==", + "dev": true + }, + "node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dependencies": { + "tweetnacl": "^0.14.3" + } + }, + "node_modules/bech32": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz", + "integrity": "sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==", + "dev": true + }, + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/bignumber.js": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.1.tgz", + "integrity": "sha512-IdZR9mh6ahOBv/hYGiXyVuyCetmGJhtYkqLBpTStdhEGjegpPlUawydyaF3pbIOFynJTpllEs+NP+CS9jKFLjA==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "dependencies": { + "file-uri-to-path": "1.0.0" + } + }, + "node_modules/bip66": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/bip66/-/bip66-1.1.5.tgz", + "integrity": "sha1-AfqHSHhcpwlV1QESF9GzE5lpyiI=", + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/bl": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz", + "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", + "dev": true, + "dependencies": { + "readable-stream": "^2.3.5", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/blakejs": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/blakejs/-/blakejs-1.1.0.tgz", + "integrity": "sha1-ad+S75U6qIylGjLfarHFShVfx6U=" + }, + "node_modules/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "dev": true + }, + "node_modules/bn.js": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.2.tgz", + "integrity": "sha512-40rZaf3bUNKTVYu9sIeeEGOg7g14Yvnj9kH7b50EiwX0Q7A6umbvfI5tvHaOERH0XigqKkfLkFQxzb4e6CIXnA==" + }, + "node_modules/body-parser": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", + "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", + "dev": true, + "dependencies": { + "bytes": "3.1.0", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "on-finished": "~2.3.0", + "qs": "6.7.0", + "raw-body": "2.4.0", + "type-is": "~1.6.17" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/node_modules/bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/http-errors": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", + "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", + "dev": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/body-parser/node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/body-parser/node_modules/qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/body-parser/node_modules/raw-body": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", + "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", + "dev": true, + "dependencies": { + "bytes": "3.1.0", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/node_modules/setprototypeof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", + "dev": true + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", + "dev": true + }, + "node_modules/borc": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/borc/-/borc-2.1.2.tgz", + "integrity": "sha512-Sy9eoUi4OiKzq7VovMn246iTo17kzuyHJKomCfpWMlI6RpfN1gk95w7d7gH264nApVLg0HZfcpz62/g4VH1Y4w==", + "dev": true, + "dependencies": { + "bignumber.js": "^9.0.0", + "buffer": "^5.5.0", + "commander": "^2.15.0", + "ieee754": "^1.1.13", + "iso-url": "~0.4.7", + "json-text-sequence": "~0.1.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/borc/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/boxen": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-4.2.0.tgz", + "integrity": "sha512-eB4uT9RGzg2odpER62bBwSLvUeGC+WbRjjyyFhGsKnc8wp/m0+hQsMUvUe3H2V0D5vw0nBdO1hCJoZo5mKeuIQ==", + "dev": true, + "dependencies": { + "ansi-align": "^3.0.0", + "camelcase": "^5.3.1", + "chalk": "^3.0.0", + "cli-boxes": "^2.2.0", + "string-width": "^4.1.0", + "term-size": "^2.1.0", + "type-fest": "^0.8.1", + "widest-line": "^3.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/boxen/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/boxen/node_modules/ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "dependencies": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/boxen/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/boxen/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/boxen/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/boxen/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/boxen/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/boxen/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/boxen/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/boxen/node_modules/string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/boxen/node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/boxen/node_modules/supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" + }, + "node_modules/browser-stdout": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", + "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", + "dev": true + }, + "node_modules/browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dependencies": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dev": true, + "dependencies": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "node_modules/browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dev": true, + "dependencies": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/browserify-rsa": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", + "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "dev": true, + "dependencies": { + "bn.js": "^4.1.0", + "randombytes": "^2.0.1" + } + }, + "node_modules/browserify-rsa/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/browserify-sign": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.0.tgz", + "integrity": "sha512-hEZC1KEeYuoHRqhGhTy6gWrpJA3ZDjFWv0DE61643ZnOXAKJb3u7yWcrU0mMc9SwAqK1n7myPGndkp0dFG7NFA==", + "dev": true, + "dependencies": { + "bn.js": "^5.1.1", + "browserify-rsa": "^4.0.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.2", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.5", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + } + }, + "node_modules/browserify-sign/node_modules/bn.js": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.2.tgz", + "integrity": "sha512-40rZaf3bUNKTVYu9sIeeEGOg7g14Yvnj9kH7b50EiwX0Q7A6umbvfI5tvHaOERH0XigqKkfLkFQxzb4e6CIXnA==", + "dev": true + }, + "node_modules/browserify-sign/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/browserify-sign/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/browserify-sign/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/browserify-zlib": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz", + "integrity": "sha1-uzX4pRn2AOD6a4SFJByXnQFB+y0=", + "dev": true, + "dependencies": { + "pako": "~0.2.0" + } + }, + "node_modules/browserslist": { + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.4.tgz", + "integrity": "sha512-d7rCxYV8I9kj41RH8UKYnvDYCRENUlHRgyXy/Rhr/1BaeLGfiCptEdFE8MIrvGfWbBFNjVYx76SQWvNX1j+/cQ==", + "dependencies": { + "caniuse-lite": "^1.0.30001208", + "colorette": "^1.2.2", + "electron-to-chromium": "^1.3.712", + "escalade": "^3.1.1", + "node-releases": "^1.1.71" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + } + }, + "node_modules/bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha1-vhYedsNU9veIrkBx9j806MTwpCo=", + "dependencies": { + "base-x": "^3.0.2" + } + }, + "node_modules/bs58check": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", + "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", + "dependencies": { + "bs58": "^4.0.0", + "create-hash": "^1.1.0", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/btoa": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz", + "integrity": "sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==", + "bin": { + "btoa": "bin/btoa.js" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/buffer": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.6.0.tgz", + "integrity": "sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==", + "dev": true, + "dependencies": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4" + } + }, + "node_modules/buffer-alloc": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", + "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", + "dev": true, + "dependencies": { + "buffer-alloc-unsafe": "^1.1.0", + "buffer-fill": "^1.0.0" + } + }, + "node_modules/buffer-alloc-unsafe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", + "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==", + "dev": true + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/buffer-fill": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", + "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=", + "dev": true + }, + "node_modules/buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "dev": true + }, + "node_modules/buffer-to-arraybuffer": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/buffer-to-arraybuffer/-/buffer-to-arraybuffer-0.0.5.tgz", + "integrity": "sha1-YGSkD6dutDxyOrqe+PbhIW0QURo=", + "dev": true + }, + "node_modules/buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" + }, + "node_modules/bufferutil": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.3.tgz", + "integrity": "sha512-yEYTwGndELGvfXsImMBLop58eaGW+YdONi1fNjTINSY98tmMmFijBG6WXgdkfuLNt4imzQNtIE+eBp1PVpMCSw==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "node-gyp-build": "^4.2.0" + } + }, + "node_modules/builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", + "dev": true + }, + "node_modules/bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cacache": { + "version": "12.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", + "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", + "dev": true, + "dependencies": { + "bluebird": "^3.5.5", + "chownr": "^1.1.1", + "figgy-pudding": "^3.5.1", + "glob": "^7.1.4", + "graceful-fs": "^4.1.15", + "infer-owner": "^1.0.3", + "lru-cache": "^5.1.1", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.3", + "ssri": "^6.0.1", + "unique-filename": "^1.1.1", + "y18n": "^4.0.0" + } + }, + "node_modules/cacache/node_modules/y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "dev": true + }, + "node_modules/cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "dev": true, + "dependencies": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cacheable-lookup": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.3.tgz", + "integrity": "sha512-W+JBqF9SWe18A72XFzN/V/CULFzPm7sBXzzR6ekkE+3tLG72wFZrBiBZhrZuDoYexop4PHJVdFAKb/Nj9+tm9w==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "dev": true, + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cacheable-request/node_modules/get-stream": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.1.0.tgz", + "integrity": "sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw==", + "dev": true, + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cacheable-request/node_modules/http-cache-semantics": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.0.3.tgz", + "integrity": "sha512-TcIMG3qeVLgDr1TEd2XvHaTnMPwYQUQMIBLy+5pLSDKYFc7UIqj39w8EGzZkaxoLv/l2K8HaI0t5AVA+YYgUew==", + "dev": true + }, + "node_modules/cacheable-request/node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/caller-callsite": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", + "integrity": "sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ=", + "dev": true, + "dependencies": { + "callsites": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/caller-callsite/node_modules/callsites": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", + "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/caller-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz", + "integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=", + "dev": true, + "dependencies": { + "caller-callsite": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camel-case": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz", + "integrity": "sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M=", + "dev": true, + "dependencies": { + "no-case": "^2.2.0", + "upper-case": "^1.1.1" + } + }, + "node_modules/camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001214", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001214.tgz", + "integrity": "sha512-O2/SCpuaU3eASWVaesQirZv1MSjUNOvmugaD8zNSJqw6Vv5SGwoOpA9LJs3pNPfM745nxqPvfZY3MQKY4AKHYg==" + }, + "node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" + }, + "node_modules/chai": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.2.0.tgz", + "integrity": "sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw==", + "dev": true, + "dependencies": { + "assertion-error": "^1.1.0", + "check-error": "^1.0.2", + "deep-eql": "^3.0.1", + "get-func-name": "^2.0.0", + "pathval": "^1.1.0", + "type-detect": "^4.0.5" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chai-as-promised": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/chai-as-promised/-/chai-as-promised-7.1.1.tgz", + "integrity": "sha512-azL6xMoi+uxu6z4rhWQ1jbdUhOMhis2PvscD/xjLqNMkv3BPPp2JyyuTHOrf9BOosGpNQ11v6BKv/g57RXbiaA==", + "dev": true, + "dependencies": { + "check-error": "^1.0.2" + }, + "peerDependencies": { + "chai": ">= 2.1.2 < 5" + } + }, + "node_modules/chai-bn": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/chai-bn/-/chai-bn-0.2.1.tgz", + "integrity": "sha512-01jt2gSXAw7UYFPT5K8d7HYjdXj2vyeIuE+0T/34FWzlNcVbs1JkPxRu7rYMfQnJhrHT8Nr6qjSf5ZwwLU2EYg==", + "dev": true, + "peerDependencies": { + "bn.js": "^4.11.0", + "chai": "^4.0.0" + } + }, + "node_modules/chai-string": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/chai-string/-/chai-string-1.5.0.tgz", + "integrity": "sha512-sydDC3S3pNAQMYwJrs6dQX0oBQ6KfIPuOZ78n7rocW0eJJlsHPh2t3kwW7xfwYA/1Bf6/arGtSUo16rxR2JFlw==", + "dev": true, + "peerDependencies": { + "chai": "^4.1.2" + } + }, + "node_modules/chalk": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chalk/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/chalk/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, + "node_modules/check-error": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", + "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/checkpoint-store": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/checkpoint-store/-/checkpoint-store-1.1.0.tgz", + "integrity": "sha1-BOTLUWuRQziTWB5tRgGnjpVS6gY=", + "dependencies": { + "functional-red-black-tree": "^1.0.1" + } + }, + "node_modules/cheerio": { + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.9.tgz", + "integrity": "sha512-QF6XVdrLONO6DXRF5iaolY+odmhj2CLj+xzNod7INPWMi/x9X4SOylH0S/vaPpX+AUU6t04s34SQNh7DbkuCng==", + "dev": true, + "dependencies": { + "cheerio-select": "^1.4.0", + "dom-serializer": "^1.3.1", + "domhandler": "^4.2.0", + "htmlparser2": "^6.1.0", + "parse5": "^6.0.1", + "parse5-htmlparser2-tree-adapter": "^6.0.1", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/cheeriojs/cheerio?sponsor=1" + } + }, + "node_modules/cheerio-select": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-1.4.0.tgz", + "integrity": "sha512-sobR3Yqz27L553Qa7cK6rtJlMDbiKPdNywtR95Sj/YgfpLfy0u6CGJuaBKe5YE/vTc23SCRKxWSdlon/w6I/Ew==", + "dev": true, + "dependencies": { + "css-select": "^4.1.2", + "css-what": "^5.0.0", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0", + "domutils": "^2.6.0" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cheerio-select/node_modules/dom-serializer": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.1.tgz", + "integrity": "sha512-Pv2ZluG5ife96udGgEDovOOOA5UELkltfJpnIExPrAk1LTvecolUGn6lIaoLh86d83GiB86CjzciMd9BuRB71Q==", + "dev": true, + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/cheerio-select/node_modules/domelementtype": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", + "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/cheerio-select/node_modules/domhandler": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.2.0.tgz", + "integrity": "sha512-zk7sgt970kzPks2Bf+dwT/PLzghLnsivb9CcxkvR8Mzr66Olr0Ofd8neSbglHJHaHa2MadfoSdNlKYAaafmWfA==", + "dev": true, + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/cheerio-select/node_modules/domutils": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.6.0.tgz", + "integrity": "sha512-y0BezHuy4MDYxh6OvolXYsH+1EMGmFbwv5FKW7ovwMG6zTPWqNPq3WF9ayZssFq+UlKdffGLbOEaghNdaOm1WA==", + "dev": true, + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/cheerio-select/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/cheerio/node_modules/dom-serializer": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.1.tgz", + "integrity": "sha512-Pv2ZluG5ife96udGgEDovOOOA5UELkltfJpnIExPrAk1LTvecolUGn6lIaoLh86d83GiB86CjzciMd9BuRB71Q==", + "dev": true, + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/cheerio/node_modules/domelementtype": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", + "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/cheerio/node_modules/domhandler": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.2.0.tgz", + "integrity": "sha512-zk7sgt970kzPks2Bf+dwT/PLzghLnsivb9CcxkvR8Mzr66Olr0Ofd8neSbglHJHaHa2MadfoSdNlKYAaafmWfA==", + "dev": true, + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/cheerio/node_modules/domutils": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.6.0.tgz", + "integrity": "sha512-y0BezHuy4MDYxh6OvolXYsH+1EMGmFbwv5FKW7ovwMG6zTPWqNPq3WF9ayZssFq+UlKdffGLbOEaghNdaOm1WA==", + "dev": true, + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/cheerio/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/cheerio/node_modules/htmlparser2": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "dev": true, + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" + } + }, + "node_modules/cheerio/node_modules/tslib": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz", + "integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w==", + "dev": true + }, + "node_modules/child-process": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/child-process/-/child-process-1.0.2.tgz", + "integrity": "sha1-mJdNx+0e5MYin44wX6cxOmiFp/I=", + "dev": true + }, + "node_modules/chokidar": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.2.tgz", + "integrity": "sha512-IZHaDeBeI+sZJRX7lGcXsdzgvZqKv6sECqsbErJA4mHWfpRrD8B97kSFN4cQz6nGBGiuFia1MKR4d6c1o8Cv7A==", + "dev": true, + "dependencies": { + "anymatch": "~3.1.1", + "braces": "~3.0.2", + "glob-parent": "~5.1.0", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.4.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.1.2" + } + }, + "node_modules/chokidar/node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "dev": true + }, + "node_modules/chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "dev": true, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "dev": true + }, + "node_modules/cids": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/cids/-/cids-0.7.5.tgz", + "integrity": "sha512-zT7mPeghoWAu+ppn8+BS1tQ5qGmbMfB4AregnQjA/qHY3GC1m1ptI9GkWNlgeu38r7CuRdXB47uY2XgAYt6QVA==", + "deprecated": "This module has been superseded by the multiformats module", + "dev": true, + "dependencies": { + "buffer": "^5.5.0", + "class-is": "^1.1.0", + "multibase": "~0.6.0", + "multicodec": "^1.0.0", + "multihashes": "~0.4.15" + }, + "engines": { + "node": ">=4.0.0", + "npm": ">=3.0.0" + } + }, + "node_modules/cids/node_modules/multicodec": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/multicodec/-/multicodec-1.0.4.tgz", + "integrity": "sha512-NDd7FeS3QamVtbgfvu5h7fd1IlbaC4EQ0/pgU4zqE2vdHCmBGsUa0TiM8/TdSeG6BMPC92OOCf8F1ocE/Wkrrg==", + "deprecated": "This module has been superseded by the multiformats module", + "dev": true, + "dependencies": { + "buffer": "^5.6.0", + "varint": "^5.0.0" + } + }, + "node_modules/cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/class-is": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/class-is/-/class-is-1.1.0.tgz", + "integrity": "sha512-rhjH9AG1fvabIDoGRVH587413LPjTZgmDF9fOFCbFJQV4yuocX1mHxxvXI4g3cGwbVY9wAYIoKlg1N79frJKQw==", + "dev": true + }, + "node_modules/class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dev": true, + "dependencies": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/clean-css": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.3.tgz", + "integrity": "sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==", + "dev": true, + "dependencies": { + "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 4.0" + } + }, + "node_modules/cli-boxes": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.0.tgz", + "integrity": "sha512-gpaBrMAizVEANOpfZp/EEUixTXDyGt7DFzdK5hU+UbWt/J0lB0w20ncZj59Z9a93xHb9u12zF5BS6i9RKbtg4w==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "dev": true, + "dependencies": { + "restore-cursor": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cli-spinner": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/cli-spinner/-/cli-spinner-0.2.10.tgz", + "integrity": "sha512-U0sSQ+JJvSLi1pAYuJykwiA8Dsr15uHEy85iCJ6A+0DjVxivr3d+N2Wjvodeg89uP5K6TswFkKBfAD7B3YSn/Q==", + "dev": true, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/cli-table3": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.0.tgz", + "integrity": "sha512-gnB85c3MGC7Nm9I/FkiasNBOKjOiO1RNuXXarQms37q4QMpWdlbBgD/VnOStA2faG1dpXMv31RFApjX1/QdgWQ==", + "dev": true, + "dependencies": { + "object-assign": "^4.1.0", + "string-width": "^4.2.0" + }, + "engines": { + "node": "10.* || >= 12.*" + }, + "optionalDependencies": { + "colors": "^1.1.2" + } + }, + "node_modules/cli-table3/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-table3/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/cli-table3/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-table3/node_modules/string-width": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-table3/node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-width": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", + "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==", + "dev": true + }, + "node_modules/clipanion": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/clipanion/-/clipanion-2.4.3.tgz", + "integrity": "sha512-8i3rOtO9UsMt8q3omOjra3Jo72LB/6AP9iho+AtvCGPwMg/QjLvo72w/9exfepr3j/hW1FONhpmznamKjnniJw==", + "dev": true + }, + "node_modules/cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "dev": true, + "dependencies": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wrap-ansi": "^2.0.0" + } + }, + "node_modules/cliui/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cliui/node_modules/is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "dependencies": { + "number-is-nan": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cliui/node_modules/string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "dependencies": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cliui/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cliui/node_modules/wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "dependencies": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/clone-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", + "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", + "dev": true, + "dependencies": { + "mimic-response": "^1.0.0" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "dev": true, + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "dev": true, + "dependencies": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/colorette": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz", + "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==" + }, + "node_modules/colors": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", + "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", + "dev": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/combined-stream": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.7.tgz", + "integrity": "sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/command-exists": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", + "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==", + "dev": true + }, + "node_modules/commander": { + "version": "2.18.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.18.0.tgz", + "integrity": "sha512-6CYPa+JP2ftfRU2qkDK+UTVeQYosOg/2GbcjIcKPHfinyOLPVGXu/ovN86RP49Re5ndJK1N0kuiidFFuepc4ZQ==", + "dev": true + }, + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, + "node_modules/compare-versions": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.6.0.tgz", + "integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==", + "dev": true + }, + "node_modules/component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "dev": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "node_modules/concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "dev": true, + "engines": [ + "node >= 0.8" + ], + "dependencies": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "node_modules/configstore": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", + "dev": true, + "dependencies": { + "dot-prop": "^5.2.0", + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "unique-string": "^2.0.0", + "write-file-atomic": "^3.0.0", + "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/configstore/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/console-browserify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", + "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", + "dev": true + }, + "node_modules/consolidate": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/consolidate/-/consolidate-0.15.1.tgz", + "integrity": "sha512-DW46nrsMJgy9kqAbPt5rKaCr7uFtpo4mSUvLHIUbJEjm0vo+aY5QLwBUq3FK4tRnJr/X0Psc0C4jf/h+HtXSMw==", + "dev": true, + "dependencies": { + "bluebird": "^3.1.1" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", + "dev": true + }, + "node_modules/contains-path": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", + "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/content-disposition": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", + "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", + "dev": true, + "dependencies": { + "safe-buffer": "5.1.2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-hash": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/content-hash/-/content-hash-2.5.2.tgz", + "integrity": "sha512-FvIQKy0S1JaWV10sMsA7TRx8bpU+pqPkhbsfvOJAdjRXvYxEckAwQWGwtRjiaJfh+E0DvcWUGqcdjwMGFjsSdw==", + "dev": true, + "dependencies": { + "cids": "^0.7.1", + "multicodec": "^0.5.5", + "multihashes": "^0.4.15" + } + }, + "node_modules/content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", + "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.1" + } + }, + "node_modules/cookie": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", + "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", + "dev": true + }, + "node_modules/cookiejar": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.2.tgz", + "integrity": "sha512-Mw+adcfzPxcPeI+0WlvRrr/3lGVO0bD75SxX6811cxSh1Wbxx7xZBGK1eVtDf6si8rg2lhnUjsVLMFMfbRIuwA==", + "dev": true + }, + "node_modules/copy-concurrently": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", + "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", + "dev": true, + "dependencies": { + "aproba": "^1.1.1", + "fs-write-stream-atomic": "^1.0.8", + "iferr": "^0.1.5", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.0" + } + }, + "node_modules/copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/core-js-compat": { + "version": "3.10.2", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.10.2.tgz", + "integrity": "sha512-IGHnpuaM1N++gLSPI1F1wu3WXICPxSyj/Q++clcwsIOnUVp5uKUIPl/+6h0TQ112KU3fMiSxqJuM+OrCyKj5+A==", + "dependencies": { + "browserslist": "^4.16.4", + "semver": "7.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-compat/node_modules/semver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/core-js-pure": { + "version": "3.18.0", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.18.0.tgz", + "integrity": "sha512-ZnK+9vyuMhKulIGqT/7RHGRok8RtkHMEX/BGPHkHx+ouDkq+MUvf9mfIgdqhpmPDu8+V5UtRn/CbCRc9I4lX4w==", + "dev": true, + "hasInstallScript": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dev": true, + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/cosmiconfig": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", + "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", + "dev": true, + "dependencies": { + "import-fresh": "^2.0.0", + "is-directory": "^0.3.1", + "js-yaml": "^3.13.1", + "parse-json": "^4.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cosmiconfig/node_modules/import-fresh": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", + "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", + "dev": true, + "dependencies": { + "caller-path": "^2.0.0", + "resolve-from": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cosmiconfig/node_modules/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "dependencies": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cosmiconfig/node_modules/resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/coveralls": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.1.0.tgz", + "integrity": "sha512-sHxOu2ELzW8/NC1UP5XVLbZDzO4S3VxfFye3XYCznopHy02YjNkHcj5bKaVw2O7hVaBdBjEdQGpie4II1mWhuQ==", + "dev": true, + "dependencies": { + "js-yaml": "^3.13.1", + "lcov-parse": "^1.0.0", + "log-driver": "^1.2.7", + "minimist": "^1.2.5", + "request": "^2.88.2" + }, + "bin": { + "coveralls": "bin/coveralls.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/coveralls/node_modules/request": { + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", + "dev": true, + "dependencies": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/coveralls/node_modules/tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, + "dependencies": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/crc-32": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.0.tgz", + "integrity": "sha512-1uBwHxF+Y/4yF5G48fwnKq6QsIXheor3ZLPT80yGBV1oEUwpPojlEhQbWKVw1VwcTQyMGHK1/XMmTjmlsmTTGA==", + "dev": true, + "dependencies": { + "exit-on-epipe": "~1.0.1", + "printj": "~1.1.0" + }, + "bin": { + "crc32": "bin/crc32.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/create-ecdh": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", + "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", + "dev": true, + "dependencies": { + "bn.js": "^4.1.0", + "elliptic": "^6.0.0" + } + }, + "node_modules/create-ecdh/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dependencies": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "node_modules/create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dependencies": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "node_modules/cross-fetch": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-2.2.3.tgz", + "integrity": "sha512-PrWWNH3yL2NYIb/7WF/5vFG3DCQiXDOVf8k3ijatbrtnwNuhMWLC7YF7uqf53tbTFDzHIUD8oITw4Bxt8ST3Nw==", + "dependencies": { + "node-fetch": "2.1.2", + "whatwg-fetch": "2.0.4" + } + }, + "node_modules/cross-fetch/node_modules/node-fetch": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.1.2.tgz", + "integrity": "sha1-q4hOjn5X44qUR1POxwb3iNF2i7U=", + "engines": { + "node": "4.x || >=6.0.0" + } + }, + "node_modules/cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" + } + }, + "node_modules/cross-spawn/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dev": true, + "dependencies": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + }, + "engines": { + "node": "*" + } + }, + "node_modules/crypto-js": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-3.3.0.tgz", + "integrity": "sha512-DIT51nX0dCfKltpRiXV+/TVZq+Qq2NgF4644+K7Ttnla7zEzqc+kjJyiB96BHNyUTBxyjzRcZYpUdZa+QAqi6Q==", + "dev": true + }, + "node_modules/crypto-random-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/css-loader": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-2.1.1.tgz", + "integrity": "sha512-OcKJU/lt232vl1P9EEDamhoO9iKY3tIjY5GU+XDLblAykTdgs6Ux9P1hTHve8nFKy5KPpOXOsVI/hIwi3841+w==", + "dev": true, + "dependencies": { + "camelcase": "^5.2.0", + "icss-utils": "^4.1.0", + "loader-utils": "^1.2.3", + "normalize-path": "^3.0.0", + "postcss": "^7.0.14", + "postcss-modules-extract-imports": "^2.0.0", + "postcss-modules-local-by-default": "^2.0.6", + "postcss-modules-scope": "^2.1.0", + "postcss-modules-values": "^2.0.0", + "postcss-value-parser": "^3.3.0", + "schema-utils": "^1.0.0" + }, + "engines": { + "node": ">= 6.9.0" + }, + "peerDependencies": { + "webpack": "^4.0.0" + } + }, + "node_modules/css-loader/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/css-loader/node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/css-select": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.1.2.tgz", + "integrity": "sha512-nu5ye2Hg/4ISq4XqdLY2bEatAcLIdt3OYGFc9Tm9n7VSlFBcfRv0gBNksHRgSdUDQGtN3XrZ94ztW+NfzkFSUw==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^5.0.0", + "domhandler": "^4.2.0", + "domutils": "^2.6.0", + "nth-check": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-select/node_modules/dom-serializer": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.1.tgz", + "integrity": "sha512-Pv2ZluG5ife96udGgEDovOOOA5UELkltfJpnIExPrAk1LTvecolUGn6lIaoLh86d83GiB86CjzciMd9BuRB71Q==", + "dev": true, + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/css-select/node_modules/domelementtype": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", + "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/css-select/node_modules/domhandler": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.2.0.tgz", + "integrity": "sha512-zk7sgt970kzPks2Bf+dwT/PLzghLnsivb9CcxkvR8Mzr66Olr0Ofd8neSbglHJHaHa2MadfoSdNlKYAaafmWfA==", + "dev": true, + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/css-select/node_modules/domutils": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.6.0.tgz", + "integrity": "sha512-y0BezHuy4MDYxh6OvolXYsH+1EMGmFbwv5FKW7ovwMG6zTPWqNPq3WF9ayZssFq+UlKdffGLbOEaghNdaOm1WA==", + "dev": true, + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/css-select/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/css-select/node_modules/nth-check": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.0.tgz", + "integrity": "sha512-i4sc/Kj8htBrAiH1viZ0TgU8Y5XqCaV/FziYK6TBczxmeKm3AEFWqqF3195yKudrarqy7Zu80Ra5dobFjn9X/Q==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/css-what": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.0.0.tgz", + "integrity": "sha512-qxyKHQvgKwzwDWC/rGbT821eJalfupxYW2qbSJSAtdSTimsr/MlaGONoNLllaUPZWf8QnbcKM/kPVYUQuEKAFA==", + "dev": true, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cyclist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", + "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", + "dev": true + }, + "node_modules/d": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", + "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "dev": true, + "dependencies": { + "es5-ext": "^0.10.50", + "type": "^1.0.1" + } + }, + "node_modules/dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dependencies": { + "assert-plus": "^1.0.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/data-uri-to-buffer": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-1.2.0.tgz", + "integrity": "sha512-vKQ9DTQPN1FLYiiEEOQ6IBGFqvjCa5rSK3cWMy/Nespm5d/x3dGFT9UBZnkLxCwua/IXBi2TYnwTEpsOvhC4UQ==", + "dev": true + }, + "node_modules/de-indent": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz", + "integrity": "sha1-sgOOhG3DO6pXlhKNCAS0VbjB4h0=", + "dev": true + }, + "node_modules/death": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/death/-/death-1.1.0.tgz", + "integrity": "sha1-AaqcQB7dknUFFEcLgmY5DGbGcxg=", + "dev": true + }, + "node_modules/debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decimal.js": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.2.0.tgz", + "integrity": "sha512-vDPw+rDgn3bZe1+F/pyEwb1oMG2XTlRVgAa6B4KccTEpYgF8w6eQllVbQcfIJnZyvzFtFpxnpGtx8dd7DJp/Rw==", + "dev": true + }, + "node_modules/decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "dev": true, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/decompress": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/decompress/-/decompress-4.2.1.tgz", + "integrity": "sha512-e48kc2IjU+2Zw8cTb6VZcJQ3lgVbS4uuB1TfCHbiZIP/haNXm+SVyhu+87jts5/3ROpd82GSVCoNs/z8l4ZOaQ==", + "dev": true, + "dependencies": { + "decompress-tar": "^4.0.0", + "decompress-tarbz2": "^4.0.0", + "decompress-targz": "^4.0.0", + "decompress-unzip": "^4.0.1", + "graceful-fs": "^4.1.10", + "make-dir": "^1.0.0", + "pify": "^2.3.0", + "strip-dirs": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "dev": true, + "dependencies": { + "mimic-response": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/decompress-tar": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/decompress-tar/-/decompress-tar-4.1.1.tgz", + "integrity": "sha512-JdJMaCrGpB5fESVyxwpCx4Jdj2AagLmv3y58Qy4GE6HMVjWz1FeVQk1Ct4Kye7PftcdOo/7U7UKzYBJgqnGeUQ==", + "dev": true, + "dependencies": { + "file-type": "^5.2.0", + "is-stream": "^1.1.0", + "tar-stream": "^1.5.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/decompress-tarbz2": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/decompress-tarbz2/-/decompress-tarbz2-4.1.1.tgz", + "integrity": "sha512-s88xLzf1r81ICXLAVQVzaN6ZmX4A6U4z2nMbOwobxkLoIIfjVMBg7TeguTUXkKeXni795B6y5rnvDw7rxhAq9A==", + "dev": true, + "dependencies": { + "decompress-tar": "^4.1.0", + "file-type": "^6.1.0", + "is-stream": "^1.1.0", + "seek-bzip": "^1.0.5", + "unbzip2-stream": "^1.0.9" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/decompress-tarbz2/node_modules/file-type": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-6.2.0.tgz", + "integrity": "sha512-YPcTBDV+2Tm0VqjybVd32MHdlEGAtuxS3VAYsumFokDSMG+ROT5wawGlnHDoz7bfMcMDt9hxuXvXwoKUx2fkOg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/decompress-targz": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/decompress-targz/-/decompress-targz-4.1.1.tgz", + "integrity": "sha512-4z81Znfr6chWnRDNfFNqLwPvm4db3WuZkqV+UgXQzSngG3CEKdBkw5jrv3axjjL96glyiiKjsxJG3X6WBZwX3w==", + "dev": true, + "dependencies": { + "decompress-tar": "^4.1.1", + "file-type": "^5.2.0", + "is-stream": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/decompress-unzip": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/decompress-unzip/-/decompress-unzip-4.0.1.tgz", + "integrity": "sha1-3qrM39FK6vhVePczroIQ+bSEj2k=", + "dev": true, + "dependencies": { + "file-type": "^3.8.0", + "get-stream": "^2.2.0", + "pify": "^2.3.0", + "yauzl": "^2.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/decompress-unzip/node_modules/file-type": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", + "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decompress-unzip/node_modules/get-stream": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-2.3.1.tgz", + "integrity": "sha1-Xzj5PzRgCWZu4BUKBUFn+Rvdld4=", + "dev": true, + "dependencies": { + "object-assign": "^4.0.1", + "pinkie-promise": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/deep-eql": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", + "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", + "dev": true, + "dependencies": { + "type-detect": "^4.0.0" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "dev": true, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true + }, + "node_modules/defer-to-connect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.0.2.tgz", + "integrity": "sha512-k09hcQcTDY+cwgiwa6PYKLm3jlagNzQ+RSvhjzESOGOx+MNOuXkxTfEvPrO1IOQ81tArCFYQgi631clB70RpQw==", + "dev": true + }, + "node_modules/deferred-leveldown": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-1.2.2.tgz", + "integrity": "sha512-uukrWD2bguRtXilKt6cAWKyoXrTSMo5m7crUdLfWQmu8kIm88w3QZoUL+6nhpfKVmhHANER6Re3sKoNoZ3IKMA==", + "dependencies": { + "abstract-leveldown": "~2.6.0" + } + }, + "node_modules/define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "dependencies": { + "object-keys": "^1.0.12" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/degenerator": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-1.0.4.tgz", + "integrity": "sha1-/PSQo37OJmRk2cxDGrmMWBnO0JU=", + "dev": true, + "dependencies": { + "ast-types": "0.x.x", + "escodegen": "1.x.x", + "esprima": "3.x.x" + } + }, + "node_modules/degenerator/node_modules/esprima": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", + "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/delimit-stream": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/delimit-stream/-/delimit-stream-0.1.0.tgz", + "integrity": "sha1-m4MZR3wOX4rrPONXrjBfwl6hzSs=", + "dev": true + }, + "node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/des.js": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", + "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", + "dev": true + }, + "node_modules/detect-indent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz", + "integrity": "sha1-OHHMCmoALow+Wzz38zYmRnXwa50=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/detect-port": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/detect-port/-/detect-port-1.3.0.tgz", + "integrity": "sha512-E+B1gzkl2gqxt1IhUzwjrxBKRqx1UzC3WLONHinn8S3T6lwV/agVCyitiFOsGJ/eYuEUBvD71MZHy3Pv1G9doQ==", + "dev": true, + "dependencies": { + "address": "^1.0.1", + "debug": "^2.6.0" + }, + "bin": { + "detect": "bin/detect-port", + "detect-port": "bin/detect-port" + }, + "engines": { + "node": ">= 4.2.1" + } + }, + "node_modules/detect-port/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true, + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dev": true, + "dependencies": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, + "node_modules/diffie-hellman/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dir-glob/node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/dir-to-object": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dir-to-object/-/dir-to-object-2.0.0.tgz", + "integrity": "sha512-sXs0JKIhymON7T1UZuO2Ud6VTNAx/VTBXIl4+3mjb2RgfOpt+hectX0x04YqPOPdkeOAKoJuKqwqnXXURNPNEA==", + "dev": true + }, + "node_modules/dirty-chai": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/dirty-chai/-/dirty-chai-2.0.1.tgz", + "integrity": "sha512-ys79pWKvDMowIDEPC6Fig8d5THiC0DJ2gmTeGzVAoEH18J8OzLud0Jh7I9IWg3NSk8x2UocznUuFmfHCXYZx9w==", + "dev": true, + "peerDependencies": { + "chai": ">=2.2.1 <5" + } + }, + "node_modules/docker-modem": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/docker-modem/-/docker-modem-2.1.3.tgz", + "integrity": "sha512-cwaRptBmYZwu/FyhGcqBm2MzXA77W2/E6eVkpOZVDk6PkI9Bjj84xPrXiHMA+OWjzNy+DFjgKh8Q+1hMR7/OHg==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "readable-stream": "^3.5.0", + "split-ca": "^1.0.1", + "ssh2": "^0.8.7" + }, + "engines": { + "node": ">= 8.0" + } + }, + "node_modules/docker-modem/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/docker-modem/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/docker-modem/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/dockerfile-ast": { + "version": "0.0.19", + "resolved": "https://registry.npmjs.org/dockerfile-ast/-/dockerfile-ast-0.0.19.tgz", + "integrity": "sha512-iDRNFeAB2j4rh/Ecc2gh3fjciVifCMsszfCfHlYF5Wv8yybjZLiRDZUBt/pS3xrAz8uWT8fCHLq4pOQMmwCDwA==", + "dev": true, + "dependencies": { + "vscode-languageserver-types": "^3.5.0" + }, + "engines": { + "node": "*" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/dom-converter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", + "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", + "dev": true, + "dependencies": { + "utila": "~0.4" + } + }, + "node_modules/dom-serializer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", + "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", + "dev": true, + "dependencies": { + "domelementtype": "^1.3.0", + "entities": "^1.1.1" + } + }, + "node_modules/dom-walk": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.1.tgz", + "integrity": "sha1-ZyIm3HTI95mtNTB9+TaroRrNYBg=" + }, + "node_modules/domain-browser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", + "dev": true, + "engines": { + "node": ">=0.4", + "npm": ">=1.2" + } + }, + "node_modules/domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", + "dev": true + }, + "node_modules/domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "dev": true, + "dependencies": { + "domelementtype": "1" + } + }, + "node_modules/domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "dev": true, + "dependencies": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "node_modules/dot-prop": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.2.0.tgz", + "integrity": "sha512-uEUyaDKoSQ1M4Oq8l45hSE26SnTxL6snNnqvK/VWx5wJhmff5z0FUVJDKDanor/6w3kzE3i7XZOk+7wC0EXr1A==", + "dev": true, + "dependencies": { + "is-obj": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dotnet-deps-parser": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/dotnet-deps-parser/-/dotnet-deps-parser-4.10.0.tgz", + "integrity": "sha512-dEO1oTvreaDCtcvhRdOmmAMubyC+MWqVr1c/1Wvasi+NW4NZeB67qGh1taqowUFh+aCXtPw3SP2eExn6aNkhwA==", + "dev": true, + "dependencies": { + "@snyk/lodash": "4.17.15-patch", + "@types/xml2js": "0.4.5", + "source-map-support": "^0.5.7", + "tslib": "^1.10.0", + "xml2js": "0.4.23" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/drbg.js": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/drbg.js/-/drbg.js-1.0.1.tgz", + "integrity": "sha1-Pja2xCs3BDgjzbwzLVjzHiRFSAs=", + "dependencies": { + "browserify-aes": "^1.0.6", + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "dev": true + }, + "node_modules/duplexify": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", + "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "dev": true, + "dependencies": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + } + }, + "node_modules/ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dependencies": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", + "dev": true + }, + "node_modules/electron-to-chromium": { + "version": "1.3.719", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.719.tgz", + "integrity": "sha512-heM78GKSqrIzO9Oz0/y22nTBN7bqSP1Pla2SyU9DiSnQD+Ea9SyyN5RWWlgqsqeBLNDkSlE9J9EHFmdMPzxB/g==" + }, + "node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/elliptic/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/elliptic/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/email-validator": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/email-validator/-/email-validator-2.0.4.tgz", + "integrity": "sha512-gYCwo7kh5S3IDyZPLZf6hSS0MnZT8QmJFqYvbqlDZSbwdZlY6QZWxJ4i/6UhITOJ4XzyI647Bm2MXKCLqnJ4nQ==", + "dev": true, + "engines": { + "node": ">4.0" + } + }, + "node_modules/emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/encode-utf8": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/encode-utf8/-/encode-utf8-1.0.3.tgz", + "integrity": "sha512-ucAnuBEhUK4boH2HjVYG5Q2mQyPorvv0u/ocS+zhdw0S8AlHYY+GOFhP1Gio5z4icpP2ivFSvhtFjQi8+T9ppw==", + "dev": true + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/encoding-down": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/encoding-down/-/encoding-down-6.3.0.tgz", + "integrity": "sha512-QKrV0iKR6MZVJV08QY0wp1e7vF6QbhnbQhb07bwpEyuz4uZiZgPlEGdkCROuFkUwdxlFaiPIhjyarH1ee/3vhw==", + "dev": true, + "dependencies": { + "abstract-leveldown": "^6.2.1", + "inherits": "^2.0.3", + "level-codec": "^9.0.0", + "level-errors": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/encoding-down/node_modules/abstract-leveldown": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.3.0.tgz", + "integrity": "sha512-TU5nlYgta8YrBMNpc9FwQzRbiXsj49gsALsXadbGHt9CROPzX5fB0rWDR5mtdpOOKa5XqRFpbj1QroPAoPzVjQ==", + "dev": true, + "dependencies": { + "buffer": "^5.5.0", + "immediate": "^3.2.3", + "level-concat-iterator": "~2.0.0", + "level-supports": "~1.0.0", + "xtend": "~4.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/encoding-down/node_modules/immediate": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.3.0.tgz", + "integrity": "sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q==", + "dev": true + }, + "node_modules/encoding-down/node_modules/level-codec": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-9.0.2.tgz", + "integrity": "sha512-UyIwNb1lJBChJnGfjmO0OR+ezh2iVu1Kas3nvBS/BzGnx79dv6g7unpKIDNPMhfdTEGoc7mC8uAu51XEtX+FHQ==", + "dev": true, + "dependencies": { + "buffer": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/encoding-down/node_modules/level-errors": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-2.0.1.tgz", + "integrity": "sha512-UVprBJXite4gPS+3VznfgDSU8PTRuVX0NXwoWW50KLxd2yw4Y1t2JUR5In1itQnudZqRMT9DlAM3Q//9NCjCFw==", + "dev": true, + "dependencies": { + "errno": "~0.1.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.2.tgz", + "integrity": "sha512-2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", + "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "dev": true, + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/enhanced-resolve": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz", + "integrity": "sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "memory-fs": "^0.5.0", + "tapable": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/enhanced-resolve/node_modules/memory-fs": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", + "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", + "dev": true, + "dependencies": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + }, + "engines": { + "node": ">=4.3.0 <5.0.0 || >=5.10" + } + }, + "node_modules/enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "dev": true, + "dependencies": { + "ansi-colors": "^4.1.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/enquirer/node_modules/ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", + "dev": true + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/errno": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", + "dependencies": { + "prr": "~1.0.1" + }, + "bin": { + "errno": "cli.js" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-abstract": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0.tgz", + "integrity": "sha512-LJzK7MrQa8TS0ja2w3YNLzUgJCGPdPOV1yVvezjNnS89D+VR08+Szt2mz3YB2Dck/+w5tfIq/RoUAFqJJGM2yw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "get-intrinsic": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.2", + "is-callable": "^1.2.3", + "is-negative-zero": "^2.0.1", + "is-regex": "^1.1.2", + "is-string": "^1.0.5", + "object-inspect": "^1.9.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.2", + "string.prototype.trimend": "^1.0.4", + "string.prototype.trimstart": "^1.0.4", + "unbox-primitive": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-abstract/node_modules/is-callable": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", + "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-abstract/node_modules/object.assign": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-abstract/node_modules/string.prototype.trimstart": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", + "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-array-method-boxes-properly": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", + "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==", + "dev": true + }, + "node_modules/es-get-iterator": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.2.tgz", + "integrity": "sha512-+DTO8GYwbMCwbywjimwZMHp8AuYXOS2JZFWoi2AlPOS3ebnII9w/NLpNZtA7A0YLaVDw+O7KFCeoIV7OPvM7hQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.0", + "has-symbols": "^1.0.1", + "is-arguments": "^1.1.0", + "is-map": "^2.0.2", + "is-set": "^2.0.2", + "is-string": "^1.0.5", + "isarray": "^2.0.5" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-get-iterator/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es5-ext": { + "version": "0.10.53", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", + "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", + "dev": true, + "dependencies": { + "es6-iterator": "~2.0.3", + "es6-symbol": "~3.1.3", + "next-tick": "~1.0.0" + } + }, + "node_modules/es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "dev": true, + "dependencies": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "node_modules/es6-promise": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", + "dev": true + }, + "node_modules/es6-promisify": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", + "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", + "dev": true, + "dependencies": { + "es6-promise": "^4.0.3" + } + }, + "node_modules/es6-symbol": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", + "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", + "dev": true, + "dependencies": { + "d": "^1.0.1", + "ext": "^1.1.2" + } + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-goat": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", + "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "dev": true + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/escodegen": { + "version": "1.14.3", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", + "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", + "dev": true, + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=4.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/eslint": { + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.5.0.tgz", + "integrity": "sha512-vlUP10xse9sWt9SGRtcr1LAC67BENcQMFeV+w5EvLEoFe3xJ8cF1Skd0msziRx/VMC+72B4DxreCE+OR12OA6Q==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "enquirer": "^2.3.5", + "eslint-scope": "^5.1.0", + "eslint-utils": "^2.1.0", + "eslint-visitor-keys": "^1.3.0", + "espree": "^7.2.0", + "esquery": "^1.2.0", + "esutils": "^2.0.2", + "file-entry-cache": "^5.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.0.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash": "^4.17.19", + "minimatch": "^3.0.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "progress": "^2.0.0", + "regexpp": "^3.1.0", + "semver": "^7.2.1", + "strip-ansi": "^6.0.0", + "strip-json-comments": "^3.1.0", + "table": "^5.2.3", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-prettier": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.1.0.tgz", + "integrity": "sha512-oKMhGv3ihGbCIimCAjqkdzx2Q+jthoqnXSP+d86M9tptwugycmTFdVR4IpLgq2c4SHifbwO90z2fQ8/Aio73yw==", + "dev": true, + "bin": { + "eslint-config-prettier": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=7.0.0" + } + }, + "node_modules/eslint-config-standard": { + "version": "14.1.1", + "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-14.1.1.tgz", + "integrity": "sha512-Z9B+VR+JIXRxz21udPTL9HpFMyoMUEeX1G251EQ6e05WD9aPVtVBn09XUmZ259wCMlCDmYDSZG62Hhm+ZTJcUg==", + "dev": true, + "peerDependencies": { + "eslint": ">=6.2.2", + "eslint-plugin-import": ">=2.18.0", + "eslint-plugin-node": ">=9.1.0", + "eslint-plugin-promise": ">=4.2.1", + "eslint-plugin-standard": ">=4.0.0" + } + }, + "node_modules/eslint-import-resolver-node": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz", + "integrity": "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==", + "dev": true, + "dependencies": { + "debug": "^2.6.9", + "resolve": "^1.13.1" + } + }, + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/eslint-module-utils": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz", + "integrity": "sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA==", + "dev": true, + "dependencies": { + "debug": "^2.6.9", + "pkg-dir": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/eslint-plugin-es": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", + "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", + "dev": true, + "dependencies": { + "eslint-utils": "^2.0.0", + "regexpp": "^3.0.0" + }, + "engines": { + "node": ">=8.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=4.19.1" + } + }, + "node_modules/eslint-plugin-import": { + "version": "2.22.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.22.0.tgz", + "integrity": "sha512-66Fpf1Ln6aIS5Gr/55ts19eUuoDhAbZgnr6UxK5hbDx6l/QgQgx61AePq+BV4PP2uXQFClgMVzep5zZ94qqsxg==", + "dev": true, + "dependencies": { + "array-includes": "^3.1.1", + "array.prototype.flat": "^1.2.3", + "contains-path": "^0.1.0", + "debug": "^2.6.9", + "doctrine": "1.5.0", + "eslint-import-resolver-node": "^0.3.3", + "eslint-module-utils": "^2.6.0", + "has": "^1.0.3", + "minimatch": "^3.0.4", + "object.values": "^1.1.1", + "read-pkg-up": "^2.0.0", + "resolve": "^1.17.0", + "tsconfig-paths": "^3.9.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", + "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", + "dev": true, + "dependencies": { + "esutils": "^2.0.2", + "isarray": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-node": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", + "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", + "dev": true, + "dependencies": { + "eslint-plugin-es": "^3.0.0", + "eslint-utils": "^2.0.0", + "ignore": "^5.1.1", + "minimatch": "^3.0.4", + "resolve": "^1.10.1", + "semver": "^6.1.0" + }, + "engines": { + "node": ">=8.10.0" + }, + "peerDependencies": { + "eslint": ">=5.16.0" + } + }, + "node_modules/eslint-plugin-node/node_modules/ignore": { + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/eslint-plugin-promise": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-4.2.1.tgz", + "integrity": "sha512-VoM09vT7bfA7D+upt+FjeBO5eHIJQBUWki1aPvB+vbNiHS3+oGIJGIeyBtKQTME6UPXXy3vV07OL1tHd3ANuDw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/eslint-plugin-standard": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-standard/-/eslint-plugin-standard-4.0.1.tgz", + "integrity": "sha512-v/KBnfyaOMPmZc/dmc6ozOdWqekGp7bBGq4jLAecEfPGmfKiWS4sA8sC0LqiV9w5qmXAtXVn4M3p1jSyhY85SQ==", + "dev": true, + "peerDependencies": { + "eslint": ">=5.0.0" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.0.tgz", + "integrity": "sha512-iiGRvtxWqgtx5m8EyQUJihBloE4EnYeGE/bz1wSPwJE6tZuJUtHlhqDM4Xj2ukE8Dyy1+HCZ4hE0fzIVMzb58w==", + "dev": true, + "dependencies": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/eslint/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "dependencies": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/eslint/node_modules/chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/eslint/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/eslint/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/eslint/node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/eslint/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint/node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/eslint/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/eslint/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/eslint/node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/eslint/node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/eslint/node_modules/semver": { + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", + "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint/node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/eslint/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/espree": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-7.2.0.tgz", + "integrity": "sha512-H+cQ3+3JYRMEIOl87e7QdHX70ocly5iW4+dttuR8iYSPr/hXKFb+7dBsZ7+u1adC4VrnPlTkv0+OwuPnDop19g==", + "dev": true, + "dependencies": { + "acorn": "^7.3.1", + "acorn-jsx": "^5.2.0", + "eslint-visitor-keys": "^1.3.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz", + "integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esquery/node_modules/estraverse": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.1.0.tgz", + "integrity": "sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", + "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "dev": true, + "dependencies": { + "estraverse": "^4.1.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/eth-block-tracker": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/eth-block-tracker/-/eth-block-tracker-4.4.3.tgz", + "integrity": "sha512-A8tG4Z4iNg4mw5tP1Vung9N9IjgMNqpiMoJ/FouSFwNCGHv2X0mmOYwtQOJzki6XN7r7Tyo01S29p7b224I4jw==", + "dependencies": { + "@babel/plugin-transform-runtime": "^7.5.5", + "@babel/runtime": "^7.5.5", + "eth-query": "^2.1.0", + "json-rpc-random-id": "^1.0.1", + "pify": "^3.0.0", + "safe-event-emitter": "^1.0.1" + } + }, + "node_modules/eth-block-tracker/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "engines": { + "node": ">=4" + } + }, + "node_modules/eth-ens-namehash": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/eth-ens-namehash/-/eth-ens-namehash-2.0.8.tgz", + "integrity": "sha1-IprEbsqG1S4MmR58sq74P/D2i88=", + "dev": true, + "dependencies": { + "idna-uts46-hx": "^2.3.1", + "js-sha3": "^0.5.7" + } + }, + "node_modules/eth-ens-namehash/node_modules/js-sha3": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.5.7.tgz", + "integrity": "sha1-DU/9gALVMzqrr0oj7tL2N0yfKOc=", + "dev": true + }, + "node_modules/eth-json-rpc-errors": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/eth-json-rpc-errors/-/eth-json-rpc-errors-2.0.2.tgz", + "integrity": "sha512-uBCRM2w2ewusRHGxN8JhcuOb2RN3ueAOYH/0BhqdFmQkZx5lj5+fLKTz0mIVOzd4FG5/kUksCzCD7eTEim6gaA==", + "deprecated": "Package renamed: https://www.npmjs.com/package/eth-rpc-errors", + "dependencies": { + "fast-safe-stringify": "^2.0.6" + } + }, + "node_modules/eth-lib": { + "version": "0.1.29", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.1.29.tgz", + "integrity": "sha512-bfttrr3/7gG4E02HoWTDUcDDslN003OlOoBxk9virpAZQ1ja/jDgwkWB8QfJF7ojuEowrqy+lzp9VcJG7/k5bQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "nano-json-stream-parser": "^0.1.2", + "servify": "^0.1.12", + "ws": "^3.0.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/eth-lib/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/eth-query": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/eth-query/-/eth-query-2.1.2.tgz", + "integrity": "sha1-1nQdkAAQa1FRDHLbktY2VFam2l4=", + "dependencies": { + "json-rpc-random-id": "^1.0.0", + "xtend": "^4.0.1" + } + }, + "node_modules/eth-rpc-errors": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eth-rpc-errors/-/eth-rpc-errors-3.0.0.tgz", + "integrity": "sha512-iPPNHPrLwUlR9xCSYm7HHQjWBasor3+KZfRvwEWxMz3ca0yqnlBeJrnyphkGIXZ4J7AMAaOLmwy4AWhnxOiLxg==", + "dependencies": { + "fast-safe-stringify": "^2.0.6" + } + }, + "node_modules/eth-sig-util": { + "version": "2.5.4", + "resolved": "https://registry.npmjs.org/eth-sig-util/-/eth-sig-util-2.5.4.tgz", + "integrity": "sha512-aCMBwp8q/4wrW4QLsF/HYBOSA7TpLKmkVwP3pYQNkEEseW2Rr8Z5Uxc9/h6HX+OG3tuHo+2bINVSihIeBfym6A==", + "deprecated": "Deprecated in favor of '@metamask/eth-sig-util'", + "dev": true, + "dependencies": { + "ethereumjs-abi": "0.6.8", + "ethereumjs-util": "^5.1.1", + "tweetnacl": "^1.0.3", + "tweetnacl-util": "^0.15.0" + } + }, + "node_modules/eth-sig-util/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/eth-sig-util/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/eth-sig-util/node_modules/tweetnacl": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", + "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==", + "dev": true + }, + "node_modules/ethereum-bloom-filters": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/ethereum-bloom-filters/-/ethereum-bloom-filters-1.0.7.tgz", + "integrity": "sha512-cDcJJSJ9GMAcURiAWO3DxIEhTL/uWqlQnvgKpuYQzYPrt/izuGU+1ntQmHt0IRq6ADoSYHFnB+aCEFIldjhkMQ==", + "dev": true, + "dependencies": { + "js-sha3": "^0.8.0" + } + }, + "node_modules/ethereum-bloom-filters/node_modules/js-sha3": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", + "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==", + "dev": true + }, + "node_modules/ethereum-common": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/ethereum-common/-/ethereum-common-0.2.0.tgz", + "integrity": "sha512-XOnAR/3rntJgbCdGhqdaLIxDLWKLmsZOGhHdBKadEr6gEnJLH52k93Ou+TUdFaPN3hJc3isBZBal3U/XZ15abA==" + }, + "node_modules/ethereum-cryptography": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", + "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", + "dependencies": { + "@types/pbkdf2": "^3.0.0", + "@types/secp256k1": "^4.0.1", + "blakejs": "^1.1.0", + "browserify-aes": "^1.2.0", + "bs58check": "^2.1.2", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "hash.js": "^1.1.7", + "keccak": "^3.0.0", + "pbkdf2": "^3.0.17", + "randombytes": "^2.1.0", + "safe-buffer": "^5.1.2", + "scrypt-js": "^3.0.0", + "secp256k1": "^4.0.1", + "setimmediate": "^1.0.5" + } + }, + "node_modules/ethereum-cryptography/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/ethereum-cryptography/node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/ethereum-cryptography/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ethereum-cryptography/node_modules/keccak": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/keccak/-/keccak-3.0.1.tgz", + "integrity": "sha512-epq90L9jlFWCW7+pQa6JOnKn2Xgl2mtI664seYR6MHskvI9agt7AnDqmAlp9TqU4/caMYbA08Hi5DMZAl5zdkA==", + "hasInstallScript": true, + "dependencies": { + "node-addon-api": "^2.0.0", + "node-gyp-build": "^4.2.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/ethereum-cryptography/node_modules/scrypt-js": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz", + "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==" + }, + "node_modules/ethereum-cryptography/node_modules/secp256k1": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.2.tgz", + "integrity": "sha512-UDar4sKvWAksIlfX3xIaQReADn+WFnHvbVujpcbr+9Sf/69odMwy2MUsz5CKLQgX9nsIyrjuxL2imVyoNHa3fg==", + "hasInstallScript": true, + "dependencies": { + "elliptic": "^6.5.2", + "node-addon-api": "^2.0.0", + "node-gyp-build": "^4.2.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/ethereum-ens": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/ethereum-ens/-/ethereum-ens-0.8.0.tgz", + "integrity": "sha512-a8cBTF4AWw1Q1Y37V1LSCS9pRY4Mh3f8vCg5cbXCCEJ3eno1hbI/+Ccv9SZLISYpqQhaglP3Bxb/34lS4Qf7Bg==", + "dev": true, + "dependencies": { + "bluebird": "^3.4.7", + "eth-ens-namehash": "^2.0.0", + "js-sha3": "^0.5.7", + "pako": "^1.0.4", + "underscore": "^1.8.3", + "web3": "^1.0.0-beta.34" + } + }, + "node_modules/ethereum-ens/node_modules/js-sha3": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.5.7.tgz", + "integrity": "sha1-DU/9gALVMzqrr0oj7tL2N0yfKOc=", + "dev": true + }, + "node_modules/ethereum-ens/node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "dev": true + }, + "node_modules/ethereum-protocol": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ethereum-protocol/-/ethereum-protocol-1.0.1.tgz", + "integrity": "sha512-3KLX1mHuEsBW0dKG+c6EOJS1NBNqdCICvZW9sInmZTt5aY0oxmHVggYRE0lJu1tcnMD1K+AKHdLi6U43Awm1Vg==" + }, + "node_modules/ethereumjs-abi": { + "version": "0.6.8", + "resolved": "https://registry.npmjs.org/ethereumjs-abi/-/ethereumjs-abi-0.6.8.tgz", + "integrity": "sha512-Tx0r/iXI6r+lRsdvkFDlut0N08jWMnKRZ6Gkq+Nmw75lZe4e6o3EkSnkaBP5NF6+m5PTGAr9JP43N3LyeoglsA==", + "dependencies": { + "bn.js": "^4.11.8", + "ethereumjs-util": "^6.0.0" + } + }, + "node_modules/ethereumjs-abi/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/ethereumjs-account": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/ethereumjs-account/-/ethereumjs-account-2.0.5.tgz", + "integrity": "sha512-bgDojnXGjhMwo6eXQC0bY6UK2liSFUSMwwylOmQvZbSl/D7NXQ3+vrGO46ZeOgjGfxXmgIeVNDIiHw7fNZM4VA==", + "dependencies": { + "ethereumjs-util": "^5.0.0", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ethereumjs-account/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/ethereumjs-account/node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/ethereumjs-account/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ethereumjs-account/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ethereumjs-block": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/ethereumjs-block/-/ethereumjs-block-1.7.1.tgz", + "integrity": "sha512-B+sSdtqm78fmKkBq78/QLKJbu/4Ts4P2KFISdgcuZUPDm9x+N7qgBPIIFUGbaakQh8bzuquiRVbdmvPKqbILRg==", + "deprecated": "New package name format for new versions: @ethereumjs/block. Please update.", + "dependencies": { + "async": "^2.0.1", + "ethereum-common": "0.2.0", + "ethereumjs-tx": "^1.2.2", + "ethereumjs-util": "^5.0.0", + "merkle-patricia-tree": "^2.1.2" + } + }, + "node_modules/ethereumjs-block/node_modules/async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "dependencies": { + "lodash": "^4.17.14" + } + }, + "node_modules/ethereumjs-block/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/ethereumjs-block/node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/ethereumjs-block/node_modules/ethereumjs-tx": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/ethereumjs-tx/-/ethereumjs-tx-1.3.7.tgz", + "integrity": "sha512-wvLMxzt1RPhAQ9Yi3/HKZTn0FZYpnsmQdbKYfUUpi4j1SEIcbkd9tndVjcPrufY3V7j2IebOpC00Zp2P/Ay2kA==", + "deprecated": "New package name format for new versions: @ethereumjs/tx. Please update.", + "dependencies": { + "ethereum-common": "^0.0.18", + "ethereumjs-util": "^5.0.0" + } + }, + "node_modules/ethereumjs-block/node_modules/ethereumjs-tx/node_modules/ethereum-common": { + "version": "0.0.18", + "resolved": "https://registry.npmjs.org/ethereum-common/-/ethereum-common-0.0.18.tgz", + "integrity": "sha1-L9w1dvIykDNYl26znaeDIT/5Uj8=" + }, + "node_modules/ethereumjs-block/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ethereumjs-block/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ethereumjs-common": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/ethereumjs-common/-/ethereumjs-common-1.5.1.tgz", + "integrity": "sha512-aVUPRLgmXORGXXEVkFYgPhr9TGtpBY2tGhZ9Uh0A3lIUzUDr1x6kQx33SbjPUkLkX3eniPQnIL/2psjkjrOfcQ==", + "deprecated": "New package name format for new versions: @ethereumjs/common. Please update." + }, + "node_modules/ethereumjs-tx": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ethereumjs-tx/-/ethereumjs-tx-2.1.2.tgz", + "integrity": "sha512-zZEK1onCeiORb0wyCXUvg94Ve5It/K6GD1K+26KfFKodiBiS6d9lfCXlUKGBBdQ+bv7Day+JK0tj1K+BeNFRAw==", + "deprecated": "New package name format for new versions: @ethereumjs/tx. Please update.", + "dependencies": { + "ethereumjs-common": "^1.5.0", + "ethereumjs-util": "^6.0.0" + } + }, + "node_modules/ethereumjs-util": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-6.2.0.tgz", + "integrity": "sha512-vb0XN9J2QGdZGIEKG2vXM+kUdEivUfU6Wmi5y0cg+LRhDYKnXIZ/Lz7XjFbHRR9VIKq2lVGLzGBkA++y2nOdOQ==", + "dependencies": { + "@types/bn.js": "^4.11.3", + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "ethjs-util": "0.1.6", + "keccak": "^2.0.0", + "rlp": "^2.2.3", + "secp256k1": "^3.0.1" + } + }, + "node_modules/ethereumjs-util/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" + }, + "node_modules/ethereumjs-vm": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/ethereumjs-vm/-/ethereumjs-vm-2.6.0.tgz", + "integrity": "sha512-r/XIUik/ynGbxS3y+mvGnbOKnuLo40V5Mj1J25+HEO63aWYREIqvWeRO/hnROlMBE5WoniQmPmhiaN0ctiHaXw==", + "deprecated": "New package name format for new versions: @ethereumjs/vm. Please update.", + "dependencies": { + "async": "^2.1.2", + "async-eventemitter": "^0.2.2", + "ethereumjs-account": "^2.0.3", + "ethereumjs-block": "~2.2.0", + "ethereumjs-common": "^1.1.0", + "ethereumjs-util": "^6.0.0", + "fake-merkle-patricia-tree": "^1.0.1", + "functional-red-black-tree": "^1.0.1", + "merkle-patricia-tree": "^2.3.2", + "rustbn.js": "~0.2.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ethereumjs-vm/node_modules/async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "dependencies": { + "lodash": "^4.17.14" + } + }, + "node_modules/ethereumjs-vm/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/ethereumjs-vm/node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/ethereumjs-vm/node_modules/ethereumjs-block": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/ethereumjs-block/-/ethereumjs-block-2.2.2.tgz", + "integrity": "sha512-2p49ifhek3h2zeg/+da6XpdFR3GlqY3BIEiqxGF8j9aSRIgkb7M1Ky+yULBKJOu8PAZxfhsYA+HxUk2aCQp3vg==", + "deprecated": "New package name format for new versions: @ethereumjs/block. Please update.", + "dependencies": { + "async": "^2.0.1", + "ethereumjs-common": "^1.5.0", + "ethereumjs-tx": "^2.1.1", + "ethereumjs-util": "^5.0.0", + "merkle-patricia-tree": "^2.1.2" + } + }, + "node_modules/ethereumjs-vm/node_modules/ethereumjs-block/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ethereumjs-vm/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ethereumjs-wallet": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ethereumjs-wallet/-/ethereumjs-wallet-1.0.1.tgz", + "integrity": "sha512-3Z5g1hG1das0JWU6cQ9HWWTY2nt9nXCcwj7eXVNAHKbo00XAZO8+NHlwdgXDWrL0SXVQMvTWN8Q/82DRH/JhPw==", + "dependencies": { + "aes-js": "^3.1.1", + "bs58check": "^2.1.2", + "ethereum-cryptography": "^0.1.3", + "ethereumjs-util": "^7.0.2", + "randombytes": "^2.0.6", + "scrypt-js": "^3.0.1", + "utf8": "^3.0.0", + "uuid": "^3.3.2" + } + }, + "node_modules/ethereumjs-wallet/node_modules/@types/bn.js": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.0.tgz", + "integrity": "sha512-QSSVYj7pYFN49kW77o2s9xTCwZ8F2xLbjLLSEVh8D2F4JUhZtPAGOFLTD+ffqksBx/u4cE/KImFjyhqCjn/LIA==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/ethereumjs-wallet/node_modules/aes-js": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-3.1.2.tgz", + "integrity": "sha512-e5pEa2kBnBOgR4Y/p20pskXI74UEz7de8ZGVo58asOtvSVG5YAbJeELPZxOmt+Bnz3rX753YKhfIn4X4l1PPRQ==" + }, + "node_modules/ethereumjs-wallet/node_modules/ethereumjs-util": { + "version": "7.0.10", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.0.10.tgz", + "integrity": "sha512-c/xThw6A+EAnej5Xk5kOzFzyoSnw0WX0tSlZ6pAsfGVvQj3TItaDg9b1+Fz1RJXA+y2YksKwQnuzgt1eY6LKzw==", + "dependencies": { + "@types/bn.js": "^5.1.0", + "bn.js": "^5.1.2", + "create-hash": "^1.1.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "0.1.6", + "rlp": "^2.2.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/ethereumjs-wallet/node_modules/scrypt-js": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz", + "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==" + }, + "node_modules/ethjs-abi": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/ethjs-abi/-/ethjs-abi-0.2.1.tgz", + "integrity": "sha1-4KepOn6BFjqUR3utVu3lJKtt5TM=", + "dev": true, + "dependencies": { + "bn.js": "4.11.6", + "js-sha3": "0.5.5", + "number-to-bn": "1.7.0" + }, + "engines": { + "node": ">=6.5.0", + "npm": ">=3" + } + }, + "node_modules/ethjs-abi/node_modules/bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=", + "dev": true + }, + "node_modules/ethjs-unit": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/ethjs-unit/-/ethjs-unit-0.1.6.tgz", + "integrity": "sha1-xmWSHkduh7ziqdWIpv4EBbLEFpk=", + "dev": true, + "dependencies": { + "bn.js": "4.11.6", + "number-to-bn": "1.7.0" + }, + "engines": { + "node": ">=6.5.0", + "npm": ">=3" + } + }, + "node_modules/ethjs-unit/node_modules/bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=", + "dev": true + }, + "node_modules/ethjs-util": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/ethjs-util/-/ethjs-util-0.1.6.tgz", + "integrity": "sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w==", + "dependencies": { + "is-hex-prefixed": "1.0.0", + "strip-hex-prefix": "1.0.0" + }, + "engines": { + "node": ">=6.5.0", + "npm": ">=3" + } + }, + "node_modules/event-loop-spinner": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/event-loop-spinner/-/event-loop-spinner-2.0.0.tgz", + "integrity": "sha512-1y4j/Mhttr8ordvHkbDsGzGrlQaSYJoXD/3YKUxiOXIk7myEn9UPfybEk/lLtrcU3D4QvCNmVUxVQaPtvAIaUw==", + "dev": true, + "dependencies": { + "tslib": "^1.10.0" + } + }, + "node_modules/event-target-shim": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", + "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/eventemitter3": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.2.tgz", + "integrity": "sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==", + "dev": true + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dependencies": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dev": true, + "dependencies": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/execa/node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/exit-on-epipe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/exit-on-epipe/-/exit-on-epipe-1.0.1.tgz", + "integrity": "sha512-h2z5mrROTxce56S+pnvAV890uu7ls7f1kEvVGJbw1OlFH3/mlJ5bkXu0KRyW94v37zzHPiUd55iLn3DA7TjWpw==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/exorcist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/exorcist/-/exorcist-1.0.1.tgz", + "integrity": "sha1-eTFuPEiFhFSQ97tAXA5bXbEWfFI=", + "dev": true, + "dependencies": { + "is-stream": "~1.1.0", + "minimist": "0.0.5", + "mkdirp": "~0.5.1", + "mold-source-map": "~0.4.0" + }, + "bin": { + "exorcist": "bin/exorcist.js" + } + }, + "node_modules/exorcist/node_modules/minimist": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.5.tgz", + "integrity": "sha1-16oye87PUY+RBqxrjwA/o7zqhWY=", + "dev": true + }, + "node_modules/expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "dev": true, + "dependencies": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express": { + "version": "4.17.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", + "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", + "dev": true, + "dependencies": { + "accepts": "~1.3.7", + "array-flatten": "1.1.1", + "body-parser": "1.19.0", + "content-disposition": "0.5.3", + "content-type": "~1.0.4", + "cookie": "0.4.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "~1.1.2", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "~1.1.2", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.5", + "qs": "6.7.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.1.2", + "send": "0.17.1", + "serve-static": "1.14.1", + "setprototypeof": "1.1.1", + "statuses": "~1.5.0", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/express/node_modules/setprototypeof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", + "dev": true + }, + "node_modules/ext": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", + "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", + "dev": true, + "dependencies": { + "type": "^2.0.0" + } + }, + "node_modules/ext/node_modules/type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.0.0.tgz", + "integrity": "sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==", + "dev": true + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dev": true, + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, + "dependencies": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "engines": [ + "node >=0.6.0" + ] + }, + "node_modules/fake-merkle-patricia-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/fake-merkle-patricia-tree/-/fake-merkle-patricia-tree-1.0.1.tgz", + "integrity": "sha1-S4w6z7Ugr635hgsfFM2M40As3dM=", + "dependencies": { + "checkpoint-store": "^1.1.0" + } + }, + "node_modules/fast-diff": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", + "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.4.tgz", + "integrity": "sha512-kr/Oo6PX51265qeuCYsyGypiO5uJFgBS0jksyG7FUeCyQzNwYnzrNIMR1NXfkZXsMYXYLRAHgISHBz8gQcxKHQ==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.0", + "merge2": "^1.3.0", + "micromatch": "^4.0.2", + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "node_modules/fast-safe-stringify": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz", + "integrity": "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==" + }, + "node_modules/fastq": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.8.0.tgz", + "integrity": "sha512-SMIZoZdLh/fgofivvIkmknUXyPnvxRE3DhtZ5Me3Mrsk5gyPL42F0xr51TdRXskBxHfMp+07bcYzfsYEsSQA9Q==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", + "dev": true, + "dependencies": { + "pend": "~1.2.0" + } + }, + "node_modules/fetch-ponyfill": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/fetch-ponyfill/-/fetch-ponyfill-4.1.0.tgz", + "integrity": "sha1-rjzl9zLGReq4fkroeTQUcJsjmJM=", + "dependencies": { + "node-fetch": "~1.7.1" + } + }, + "node_modules/figgy-pudding": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", + "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==", + "dev": true + }, + "node_modules/figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/file-entry-cache": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", + "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "dev": true, + "dependencies": { + "flat-cache": "^2.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/file-type": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-5.2.0.tgz", + "integrity": "sha1-LdvqfHP/42No365J3DOMBYwritY=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==" + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "dev": true, + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/find-cache-dir/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/find-cache-dir/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/find-cache-dir/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/find-cache-dir/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/find-cache-dir/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/find-cache-dir/node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/find-cache-dir/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/find-cache-dir/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/find-cache-dir/node_modules/pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "dependencies": { + "find-up": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/find-cache-dir/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/find-up/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up/node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/find-versions": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-3.2.0.tgz", + "integrity": "sha512-P8WRou2S+oe222TOCHitLy8zj+SIsVJh52VP4lvXkaFVnOFFdoWv1H1Jjvel1aI6NCFOAaeAVm8qrI0odiLcww==", + "dev": true, + "dependencies": { + "semver-regex": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/flat": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/flat/-/flat-4.1.1.tgz", + "integrity": "sha512-FmTtBsHskrU6FJ2VxCnsDb84wu9zhmO3cUX2kGFb5tuwhfXxGciiT0oRY+cck35QmG+NmGh5eLz6lLCpWTqwpA==", + "dev": true, + "dependencies": { + "is-buffer": "~2.0.3" + }, + "bin": { + "flat": "cli.js" + } + }, + "node_modules/flat-cache": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "dev": true, + "dependencies": { + "flatted": "^2.0.0", + "rimraf": "2.6.3", + "write": "1.0.3" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/flat-cache/node_modules/rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/flatted": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", + "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", + "dev": true + }, + "node_modules/flush-write-stream": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", + "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "readable-stream": "^2.3.6" + } + }, + "node_modules/fmix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/fmix/-/fmix-0.1.0.tgz", + "integrity": "sha1-x7vxJN7ELJ0ZHPuUfQqXeN2YbAw=", + "dev": true, + "dependencies": { + "imul": "^1.0.0" + } + }, + "node_modules/follow-redirects": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.1.tgz", + "integrity": "sha512-HWqDgT7ZEkqRzBvc2s64vSZ/hfOceEol3ac/7tKwzuvEyWx3/4UegXh5oBOIotkGsObyk3xznnSRVADBgWSQVg==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/foreach": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", + "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", + "dev": true + }, + "node_modules/forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "engines": { + "node": "*" + } + }, + "node_modules/form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/forwarded": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fp-ts": { + "version": "1.19.3", + "resolved": "https://registry.npmjs.org/fp-ts/-/fp-ts-1.19.3.tgz", + "integrity": "sha512-H5KQDspykdHuztLTg+ajGN0Z2qUjcEf3Ybxc6hLt0k7/zPkn29XnKnxlBPyW2XIddWrGaJBzBl4VLYOtk39yZg==", + "dev": true + }, + "node_modules/fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "dev": true, + "dependencies": { + "map-cache": "^0.2.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/from2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", + "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" + } + }, + "node_modules/fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", + "dev": true + }, + "node_modules/fs-extra": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", + "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "node_modules/fs-minipass": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz", + "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==", + "dev": true, + "dependencies": { + "minipass": "^2.6.0" + } + }, + "node_modules/fs-write-stream-atomic": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", + "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "iferr": "^0.1.5", + "imurmurhash": "^0.1.4", + "readable-stream": "1 || 2" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", + "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", + "deprecated": "\"Please update to latest v2.3 or v2.2\"", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/ftp": { + "version": "0.3.10", + "resolved": "https://registry.npmjs.org/ftp/-/ftp-0.3.10.tgz", + "integrity": "sha1-kZfYYa2BQvPmPVqDv+TFn3MwiF0=", + "dev": true, + "dependencies": { + "readable-stream": "1.1.x", + "xregexp": "2.0.0" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/ftp/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "node_modules/ftp/node_modules/readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/ftp/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "node_modules/functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=" + }, + "node_modules/ganache-core": { + "version": "2.13.2", + "resolved": "https://registry.npmjs.org/ganache-core/-/ganache-core-2.13.2.tgz", + "integrity": "sha512-tIF5cR+ANQz0+3pHWxHjIwHqFXcVo0Mb+kcsNhglNFALcYo49aQpnS9dqHartqPfMFjiHh/qFoD3mYK0d/qGgw==", + "bundleDependencies": [ + "keccak" + ], + "deprecated": "ganache-core is now ganache; visit https://trfl.io/g7 for details", + "dev": true, + "hasShrinkwrap": true, + "dependencies": { + "abstract-leveldown": "3.0.0", + "async": "2.6.2", + "bip39": "2.5.0", + "cachedown": "1.0.0", + "clone": "2.1.2", + "debug": "3.2.6", + "encoding-down": "5.0.4", + "eth-sig-util": "3.0.0", + "ethereumjs-abi": "0.6.8", + "ethereumjs-account": "3.0.0", + "ethereumjs-block": "2.2.2", + "ethereumjs-common": "1.5.0", + "ethereumjs-tx": "2.1.2", + "ethereumjs-util": "6.2.1", + "ethereumjs-vm": "4.2.0", + "heap": "0.2.6", + "keccak": "3.0.1", + "level-sublevel": "6.6.4", + "levelup": "3.1.1", + "lodash": "4.17.20", + "lru-cache": "5.1.1", + "merkle-patricia-tree": "3.0.0", + "patch-package": "6.2.2", + "seedrandom": "3.0.1", + "source-map-support": "0.5.12", + "tmp": "0.1.0", + "web3-provider-engine": "14.2.1", + "websocket": "1.0.32" + }, + "engines": { + "node": ">=8.9.0" + }, + "optionalDependencies": { + "ethereumjs-wallet": "0.6.5", + "web3": "1.2.11" + } + }, + "node_modules/ganache-core/node_modules/@ethersproject/abi": { + "version": "5.0.0-beta.153", + "resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.0.0-beta.153.tgz", + "integrity": "sha512-aXweZ1Z7vMNzJdLpR1CZUAIgnwjrZeUSvN9syCwlBaEBUFJmFY+HHnfuTI5vIhVs/mRkfJVrbEyl51JZQqyjAg==", + "dev": true, + "optional": true, + "dependencies": { + "@ethersproject/address": ">=5.0.0-beta.128", + "@ethersproject/bignumber": ">=5.0.0-beta.130", + "@ethersproject/bytes": ">=5.0.0-beta.129", + "@ethersproject/constants": ">=5.0.0-beta.128", + "@ethersproject/hash": ">=5.0.0-beta.128", + "@ethersproject/keccak256": ">=5.0.0-beta.127", + "@ethersproject/logger": ">=5.0.0-beta.129", + "@ethersproject/properties": ">=5.0.0-beta.131", + "@ethersproject/strings": ">=5.0.0-beta.130" + } + }, + "node_modules/ganache-core/node_modules/@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "dev": true, + "optional": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache-core/node_modules/@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "dev": true, + "optional": true, + "dependencies": { + "defer-to-connect": "^1.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache-core/node_modules/@types/bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha512-pqr857jrp2kPuO9uRjZ3PwnJTjoQy+fcdxvBTvHm6dkmEL9q+hDD/2j/0ELOBPtPnS8LjCX0gI9nbl8lVkadpg==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/ganache-core/node_modules/@types/node": { + "version": "14.14.20", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.20.tgz", + "integrity": "sha512-Y93R97Ouif9JEOWPIUyU+eyIdyRqQR0I8Ez1dzku4hDx34NWh4HbtIc3WNzwB1Y9ULvNGeu5B8h8bVL5cAk4/A==", + "dev": true + }, + "node_modules/ganache-core/node_modules/@yarnpkg/lockfile": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", + "dev": true + }, + "node_modules/ganache-core/node_modules/abstract-leveldown": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-3.0.0.tgz", + "integrity": "sha512-KUWx9UWGQD12zsmLNj64/pndaz4iJh/Pj7nopgkfDG6RlCcbMZvT6+9l7dchK4idog2Is8VdC/PvNbFuFmalIQ==", + "dev": true, + "dependencies": { + "xtend": "~4.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ganache-core/node_modules/accepts": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "dev": true, + "optional": true, + "dependencies": { + "mime-types": "~2.1.24", + "negotiator": "0.6.2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/ganache-core/node_modules/aes-js": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-3.1.2.tgz", + "integrity": "sha512-e5pEa2kBnBOgR4Y/p20pskXI74UEz7de8ZGVo58asOtvSVG5YAbJeELPZxOmt+Bnz3rX753YKhfIn4X4l1PPRQ==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ganache-core/node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "dev": true, + "dependencies": { + "safer-buffer": "~2.1.0" + } + }, + "node_modules/ganache-core/node_modules/asn1.js": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", + "dev": true, + "optional": true, + "dependencies": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/ganache-core/node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/ganache-core/node_modules/async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz", + "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==", + "dev": true, + "dependencies": { + "lodash": "^4.17.11" + } + }, + "node_modules/ganache-core/node_modules/async-limiter": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", + "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", + "dev": true + }, + "node_modules/ganache-core/node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true + }, + "node_modules/ganache-core/node_modules/aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/ganache-core/node_modules/aws4": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", + "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", + "dev": true + }, + "node_modules/ganache-core/node_modules/babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "dev": true, + "dependencies": { + "chalk": "^1.1.3", + "esutils": "^2.0.2", + "js-tokens": "^3.0.2" + } + }, + "node_modules/ganache-core/node_modules/babel-code-frame/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/babel-code-frame/node_modules/ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/babel-code-frame/node_modules/chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "dependencies": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/babel-code-frame/node_modules/js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true + }, + "node_modules/ganache-core/node_modules/babel-code-frame/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/babel-code-frame/node_modules/supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/ganache-core/node_modules/babel-core": { + "version": "6.26.3", + "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", + "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", + "dev": true, + "dependencies": { + "babel-code-frame": "^6.26.0", + "babel-generator": "^6.26.0", + "babel-helpers": "^6.24.1", + "babel-messages": "^6.23.0", + "babel-register": "^6.26.0", + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "convert-source-map": "^1.5.1", + "debug": "^2.6.9", + "json5": "^0.5.1", + "lodash": "^4.17.4", + "minimatch": "^3.0.4", + "path-is-absolute": "^1.0.1", + "private": "^0.1.8", + "slash": "^1.0.0", + "source-map": "^0.5.7" + } + }, + "node_modules/ganache-core/node_modules/babel-core/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/ganache-core/node_modules/babel-core/node_modules/json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", + "dev": true, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/ganache-core/node_modules/babel-core/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "node_modules/ganache-core/node_modules/babel-core/node_modules/slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/babel-generator": { + "version": "6.26.1", + "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", + "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", + "dev": true, + "dependencies": { + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "detect-indent": "^4.0.0", + "jsesc": "^1.3.0", + "lodash": "^4.17.4", + "source-map": "^0.5.7", + "trim-right": "^1.0.1" + } + }, + "node_modules/ganache-core/node_modules/babel-generator/node_modules/jsesc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", + "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/ganache-core/node_modules/babel-helper-builder-binary-assignment-operator-visitor": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", + "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", + "dev": true, + "dependencies": { + "babel-helper-explode-assignable-expression": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "node_modules/ganache-core/node_modules/babel-helper-call-delegate": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", + "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", + "dev": true, + "dependencies": { + "babel-helper-hoist-variables": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "node_modules/ganache-core/node_modules/babel-helper-define-map": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz", + "integrity": "sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8=", + "dev": true, + "dependencies": { + "babel-helper-function-name": "^6.24.1", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "lodash": "^4.17.4" + } + }, + "node_modules/ganache-core/node_modules/babel-helper-explode-assignable-expression": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", + "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.22.0", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "node_modules/ganache-core/node_modules/babel-helper-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", + "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", + "dev": true, + "dependencies": { + "babel-helper-get-function-arity": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "node_modules/ganache-core/node_modules/babel-helper-get-function-arity": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", + "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "node_modules/ganache-core/node_modules/babel-helper-hoist-variables": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", + "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "node_modules/ganache-core/node_modules/babel-helper-optimise-call-expression": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz", + "integrity": "sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "node_modules/ganache-core/node_modules/babel-helper-regex": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", + "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "lodash": "^4.17.4" + } + }, + "node_modules/ganache-core/node_modules/babel-helper-remap-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", + "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", + "dev": true, + "dependencies": { + "babel-helper-function-name": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "node_modules/ganache-core/node_modules/babel-helper-replace-supers": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz", + "integrity": "sha1-v22/5Dk40XNpohPKiov3S2qQqxo=", + "dev": true, + "dependencies": { + "babel-helper-optimise-call-expression": "^6.24.1", + "babel-messages": "^6.23.0", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "node_modules/ganache-core/node_modules/babel-helpers": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", + "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" + } + }, + "node_modules/ganache-core/node_modules/babel-messages": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.22.0" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-check-es2015-constants": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", + "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.22.0" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-syntax-async-functions": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", + "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", + "dev": true + }, + "node_modules/ganache-core/node_modules/babel-plugin-syntax-exponentiation-operator": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", + "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", + "dev": true + }, + "node_modules/ganache-core/node_modules/babel-plugin-syntax-trailing-function-commas": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", + "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", + "dev": true + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", + "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", + "dev": true, + "dependencies": { + "babel-helper-remap-async-to-generator": "^6.24.1", + "babel-plugin-syntax-async-functions": "^6.8.0", + "babel-runtime": "^6.22.0" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-es2015-arrow-functions": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz", + "integrity": "sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.22.0" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-es2015-block-scoped-functions": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz", + "integrity": "sha1-u8UbSflk1wy42OC5ToICRs46YUE=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.22.0" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-es2015-block-scoping": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz", + "integrity": "sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "lodash": "^4.17.4" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-es2015-classes": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz", + "integrity": "sha1-WkxYpQyclGHlZLSyo7+ryXolhNs=", + "dev": true, + "dependencies": { + "babel-helper-define-map": "^6.24.1", + "babel-helper-function-name": "^6.24.1", + "babel-helper-optimise-call-expression": "^6.24.1", + "babel-helper-replace-supers": "^6.24.1", + "babel-messages": "^6.23.0", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-es2015-computed-properties": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz", + "integrity": "sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-es2015-destructuring": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", + "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.22.0" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-es2015-duplicate-keys": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz", + "integrity": "sha1-c+s9MQypaePvnskcU3QabxV2Qj4=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-es2015-for-of": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz", + "integrity": "sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.22.0" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-es2015-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", + "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", + "dev": true, + "dependencies": { + "babel-helper-function-name": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-es2015-literals": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz", + "integrity": "sha1-T1SgLWzWbPkVKAAZox0xklN3yi4=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.22.0" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-es2015-modules-amd": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz", + "integrity": "sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ=", + "dev": true, + "dependencies": { + "babel-plugin-transform-es2015-modules-commonjs": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-es2015-modules-commonjs": { + "version": "6.26.2", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", + "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", + "dev": true, + "dependencies": { + "babel-plugin-transform-strict-mode": "^6.24.1", + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-types": "^6.26.0" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-es2015-modules-systemjs": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz", + "integrity": "sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM=", + "dev": true, + "dependencies": { + "babel-helper-hoist-variables": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-es2015-modules-umd": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz", + "integrity": "sha1-rJl+YoXNGO1hdq22B9YCNErThGg=", + "dev": true, + "dependencies": { + "babel-plugin-transform-es2015-modules-amd": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-es2015-object-super": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz", + "integrity": "sha1-JM72muIcuDp/hgPa0CH1cusnj40=", + "dev": true, + "dependencies": { + "babel-helper-replace-supers": "^6.24.1", + "babel-runtime": "^6.22.0" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-es2015-parameters": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", + "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", + "dev": true, + "dependencies": { + "babel-helper-call-delegate": "^6.24.1", + "babel-helper-get-function-arity": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-es2015-shorthand-properties": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz", + "integrity": "sha1-JPh11nIch2YbvZmkYi5R8U3jiqA=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-es2015-spread": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", + "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.22.0" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-es2015-sticky-regex": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", + "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", + "dev": true, + "dependencies": { + "babel-helper-regex": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-es2015-template-literals": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz", + "integrity": "sha1-qEs0UPfp+PH2g51taH2oS7EjbY0=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.22.0" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-es2015-typeof-symbol": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz", + "integrity": "sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.22.0" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-es2015-unicode-regex": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", + "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", + "dev": true, + "dependencies": { + "babel-helper-regex": "^6.24.1", + "babel-runtime": "^6.22.0", + "regexpu-core": "^2.0.0" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-exponentiation-operator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", + "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", + "dev": true, + "dependencies": { + "babel-helper-builder-binary-assignment-operator-visitor": "^6.24.1", + "babel-plugin-syntax-exponentiation-operator": "^6.8.0", + "babel-runtime": "^6.22.0" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-regenerator": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz", + "integrity": "sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8=", + "dev": true, + "dependencies": { + "regenerator-transform": "^0.10.0" + } + }, + "node_modules/ganache-core/node_modules/babel-plugin-transform-strict-mode": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", + "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "node_modules/ganache-core/node_modules/babel-preset-env": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/babel-preset-env/-/babel-preset-env-1.7.0.tgz", + "integrity": "sha512-9OR2afuKDneX2/q2EurSftUYM0xGu4O2D9adAhVfADDhrYDaxXV0rBbevVYoY9n6nyX1PmQW/0jtpJvUNr9CHg==", + "dev": true, + "dependencies": { + "babel-plugin-check-es2015-constants": "^6.22.0", + "babel-plugin-syntax-trailing-function-commas": "^6.22.0", + "babel-plugin-transform-async-to-generator": "^6.22.0", + "babel-plugin-transform-es2015-arrow-functions": "^6.22.0", + "babel-plugin-transform-es2015-block-scoped-functions": "^6.22.0", + "babel-plugin-transform-es2015-block-scoping": "^6.23.0", + "babel-plugin-transform-es2015-classes": "^6.23.0", + "babel-plugin-transform-es2015-computed-properties": "^6.22.0", + "babel-plugin-transform-es2015-destructuring": "^6.23.0", + "babel-plugin-transform-es2015-duplicate-keys": "^6.22.0", + "babel-plugin-transform-es2015-for-of": "^6.23.0", + "babel-plugin-transform-es2015-function-name": "^6.22.0", + "babel-plugin-transform-es2015-literals": "^6.22.0", + "babel-plugin-transform-es2015-modules-amd": "^6.22.0", + "babel-plugin-transform-es2015-modules-commonjs": "^6.23.0", + "babel-plugin-transform-es2015-modules-systemjs": "^6.23.0", + "babel-plugin-transform-es2015-modules-umd": "^6.23.0", + "babel-plugin-transform-es2015-object-super": "^6.22.0", + "babel-plugin-transform-es2015-parameters": "^6.23.0", + "babel-plugin-transform-es2015-shorthand-properties": "^6.22.0", + "babel-plugin-transform-es2015-spread": "^6.22.0", + "babel-plugin-transform-es2015-sticky-regex": "^6.22.0", + "babel-plugin-transform-es2015-template-literals": "^6.22.0", + "babel-plugin-transform-es2015-typeof-symbol": "^6.23.0", + "babel-plugin-transform-es2015-unicode-regex": "^6.22.0", + "babel-plugin-transform-exponentiation-operator": "^6.22.0", + "babel-plugin-transform-regenerator": "^6.22.0", + "browserslist": "^3.2.6", + "invariant": "^2.2.2", + "semver": "^5.3.0" + } + }, + "node_modules/ganache-core/node_modules/babel-preset-env/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/ganache-core/node_modules/babel-register": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", + "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", + "dev": true, + "dependencies": { + "babel-core": "^6.26.0", + "babel-runtime": "^6.26.0", + "core-js": "^2.5.0", + "home-or-tmp": "^2.0.0", + "lodash": "^4.17.4", + "mkdirp": "^0.5.1", + "source-map-support": "^0.4.15" + } + }, + "node_modules/ganache-core/node_modules/babel-register/node_modules/source-map-support": { + "version": "0.4.18", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", + "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "dev": true, + "dependencies": { + "source-map": "^0.5.6" + } + }, + "node_modules/ganache-core/node_modules/babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "dev": true, + "dependencies": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + } + }, + "node_modules/ganache-core/node_modules/babel-template": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", + "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "lodash": "^4.17.4" + } + }, + "node_modules/ganache-core/node_modules/babel-traverse": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", + "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "dev": true, + "dependencies": { + "babel-code-frame": "^6.26.0", + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "debug": "^2.6.8", + "globals": "^9.18.0", + "invariant": "^2.2.2", + "lodash": "^4.17.4" + } + }, + "node_modules/ganache-core/node_modules/babel-traverse/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/ganache-core/node_modules/babel-traverse/node_modules/globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/babel-traverse/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "node_modules/ganache-core/node_modules/babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "dev": true, + "dependencies": { + "babel-runtime": "^6.26.0", + "esutils": "^2.0.2", + "lodash": "^4.17.4", + "to-fast-properties": "^1.0.3" + } + }, + "node_modules/ganache-core/node_modules/babel-types/node_modules/to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/babelify": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/babelify/-/babelify-7.3.0.tgz", + "integrity": "sha1-qlau3nBn/XvVSWZu4W3ChQh+iOU=", + "dev": true, + "dependencies": { + "babel-core": "^6.0.14", + "object-assign": "^4.0.0" + } + }, + "node_modules/ganache-core/node_modules/babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true, + "bin": { + "babylon": "bin/babylon.js" + } + }, + "node_modules/ganache-core/node_modules/backoff": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/backoff/-/backoff-2.5.0.tgz", + "integrity": "sha1-9hbtqdPktmuMp/ynn2lXIsX44m8=", + "dev": true, + "dependencies": { + "precond": "0.2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/ganache-core/node_modules/balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "node_modules/ganache-core/node_modules/base-x": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.8.tgz", + "integrity": "sha512-Rl/1AWP4J/zRrk54hhlxH4drNxPJXYUaKffODVI53/dAsV4t9fBxyxYKAVPU1XBHxYwOWP9h9H0hM2MVw4YfJA==", + "dev": true, + "optional": true, + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/ganache-core/node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ganache-core/node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dev": true, + "dependencies": { + "tweetnacl": "^0.14.3" + } + }, + "node_modules/ganache-core/node_modules/bcrypt-pbkdf/node_modules/tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true + }, + "node_modules/ganache-core/node_modules/bip39": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/bip39/-/bip39-2.5.0.tgz", + "integrity": "sha512-xwIx/8JKoT2+IPJpFEfXoWdYwP7UVAoUxxLNfGCfVowaJE7yg1Y5B1BVPqlUNsBq5/nGwmFkwRJ8xDW4sX8OdA==", + "dev": true, + "dependencies": { + "create-hash": "^1.1.0", + "pbkdf2": "^3.0.9", + "randombytes": "^2.0.1", + "safe-buffer": "^5.0.1", + "unorm": "^1.3.3" + } + }, + "node_modules/ganache-core/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/ganache-core/node_modules/body-parser": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", + "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", + "dev": true, + "optional": true, + "dependencies": { + "bytes": "3.1.0", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "on-finished": "~2.3.0", + "qs": "6.7.0", + "raw-body": "2.4.0", + "type-is": "~1.6.17" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/ganache-core/node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "optional": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/ganache-core/node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/body-parser/node_modules/qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/ganache-core/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/ganache-core/node_modules/brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", + "dev": true + }, + "node_modules/ganache-core/node_modules/browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dev": true, + "optional": true, + "dependencies": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/ganache-core/node_modules/browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dev": true, + "optional": true, + "dependencies": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "node_modules/ganache-core/node_modules/browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dev": true, + "optional": true, + "dependencies": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/ganache-core/node_modules/browserify-rsa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", + "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", + "dev": true, + "optional": true, + "dependencies": { + "bn.js": "^5.0.0", + "randombytes": "^2.0.1" + } + }, + "node_modules/ganache-core/node_modules/browserify-rsa/node_modules/bn.js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", + "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/browserify-sign": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", + "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", + "dev": true, + "optional": true, + "dependencies": { + "bn.js": "^5.1.1", + "browserify-rsa": "^4.0.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.3", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.5", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + } + }, + "node_modules/ganache-core/node_modules/browserify-sign/node_modules/bn.js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", + "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/browserify-sign/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "optional": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/ganache-core/node_modules/browserslist": { + "version": "3.2.8", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-3.2.8.tgz", + "integrity": "sha512-WHVocJYavUwVgVViC0ORikPHQquXwVh939TaelZ4WDqpWgTX/FsGhl/+P4qBUAGcRvtOgDgC+xftNWWp2RUTAQ==", + "dev": true, + "dependencies": { + "caniuse-lite": "^1.0.30000844", + "electron-to-chromium": "^1.3.47" + }, + "bin": { + "browserslist": "cli.js" + } + }, + "node_modules/ganache-core/node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/ganache-core/node_modules/buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "dev": true + }, + "node_modules/ganache-core/node_modules/buffer-to-arraybuffer": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/buffer-to-arraybuffer/-/buffer-to-arraybuffer-0.0.5.tgz", + "integrity": "sha1-YGSkD6dutDxyOrqe+PbhIW0QURo=", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/ganache-core/node_modules/bytewise": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/bytewise/-/bytewise-1.1.0.tgz", + "integrity": "sha1-HRPL/3F65xWAlKqIGzXQgbOHJT4=", + "dev": true, + "dependencies": { + "bytewise-core": "^1.2.2", + "typewise": "^1.0.3" + } + }, + "node_modules/ganache-core/node_modules/bytewise-core": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/bytewise-core/-/bytewise-core-1.2.3.tgz", + "integrity": "sha1-P7QQx+kVWOsasiqCg0V3qmvWHUI=", + "dev": true, + "dependencies": { + "typewise-core": "^1.2" + } + }, + "node_modules/ganache-core/node_modules/cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "dev": true, + "optional": true, + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ganache-core/node_modules/cacheable-request/node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "dev": true, + "optional": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ganache-core/node_modules/cachedown": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/cachedown/-/cachedown-1.0.0.tgz", + "integrity": "sha1-1D8DbkUQaWsxJG19sx6/D3rDLRU=", + "dev": true, + "dependencies": { + "abstract-leveldown": "^2.4.1", + "lru-cache": "^3.2.0" + } + }, + "node_modules/ganache-core/node_modules/cachedown/node_modules/abstract-leveldown": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.7.2.tgz", + "integrity": "sha512-+OVvxH2rHVEhWLdbudP6p0+dNMXu8JA1CbhP19T8paTYAcX7oJ4OVjT+ZUVpv7mITxXHqDMej+GdqXBmXkw09w==", + "dev": true, + "dependencies": { + "xtend": "~4.0.0" + } + }, + "node_modules/ganache-core/node_modules/cachedown/node_modules/lru-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-3.2.0.tgz", + "integrity": "sha1-cXibO39Tmb7IVl3aOKow0qCX7+4=", + "dev": true, + "dependencies": { + "pseudomap": "^1.0.1" + } + }, + "node_modules/ganache-core/node_modules/caniuse-lite": { + "version": "1.0.30001174", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001174.tgz", + "integrity": "sha512-tqClL/4ThQq6cfFXH3oJL4rifFBeM6gTkphjao5kgwMaW9yn0tKgQLAEfKzDwj6HQWCB/aWo8kTFlSvIN8geEA==", + "dev": true + }, + "node_modules/ganache-core/node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true + }, + "node_modules/ganache-core/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ganache-core/node_modules/checkpoint-store": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/checkpoint-store/-/checkpoint-store-1.1.0.tgz", + "integrity": "sha1-BOTLUWuRQziTWB5tRgGnjpVS6gY=", + "dev": true, + "dependencies": { + "functional-red-black-tree": "^1.0.1" + } + }, + "node_modules/ganache-core/node_modules/chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "dev": true + }, + "node_modules/ganache-core/node_modules/cids": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/cids/-/cids-0.7.5.tgz", + "integrity": "sha512-zT7mPeghoWAu+ppn8+BS1tQ5qGmbMfB4AregnQjA/qHY3GC1m1ptI9GkWNlgeu38r7CuRdXB47uY2XgAYt6QVA==", + "deprecated": "This module has been superseded by the multiformats module", + "dev": true, + "optional": true, + "dependencies": { + "buffer": "^5.5.0", + "class-is": "^1.1.0", + "multibase": "~0.6.0", + "multicodec": "^1.0.0", + "multihashes": "~0.4.15" + }, + "engines": { + "node": ">=4.0.0", + "npm": ">=3.0.0" + } + }, + "node_modules/ganache-core/node_modules/cids/node_modules/multicodec": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/multicodec/-/multicodec-1.0.4.tgz", + "integrity": "sha512-NDd7FeS3QamVtbgfvu5h7fd1IlbaC4EQ0/pgU4zqE2vdHCmBGsUa0TiM8/TdSeG6BMPC92OOCf8F1ocE/Wkrrg==", + "deprecated": "This module has been superseded by the multiformats module", + "dev": true, + "optional": true, + "dependencies": { + "buffer": "^5.6.0", + "varint": "^5.0.0" + } + }, + "node_modules/ganache-core/node_modules/cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/ganache-core/node_modules/class-is": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/class-is/-/class-is-1.1.0.tgz", + "integrity": "sha512-rhjH9AG1fvabIDoGRVH587413LPjTZgmDF9fOFCbFJQV4yuocX1mHxxvXI4g3cGwbVY9wAYIoKlg1N79frJKQw==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/ganache-core/node_modules/clone-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", + "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", + "dev": true, + "optional": true, + "dependencies": { + "mimic-response": "^1.0.0" + } + }, + "node_modules/ganache-core/node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "node_modules/ganache-core/node_modules/content-disposition": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", + "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", + "dev": true, + "optional": true, + "dependencies": { + "safe-buffer": "5.1.2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/ganache-core/node_modules/content-disposition/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/content-hash": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/content-hash/-/content-hash-2.5.2.tgz", + "integrity": "sha512-FvIQKy0S1JaWV10sMsA7TRx8bpU+pqPkhbsfvOJAdjRXvYxEckAwQWGwtRjiaJfh+E0DvcWUGqcdjwMGFjsSdw==", + "dev": true, + "optional": true, + "dependencies": { + "cids": "^0.7.1", + "multicodec": "^0.5.5", + "multihashes": "^0.4.15" + } + }, + "node_modules/ganache-core/node_modules/content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/ganache-core/node_modules/convert-source-map": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", + "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.1" + } + }, + "node_modules/ganache-core/node_modules/convert-source-map/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/ganache-core/node_modules/cookie": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", + "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/ganache-core/node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/cookiejar": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.2.tgz", + "integrity": "sha512-Mw+adcfzPxcPeI+0WlvRrr/3lGVO0bD75SxX6811cxSh1Wbxx7xZBGK1eVtDf6si8rg2lhnUjsVLMFMfbRIuwA==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/core-js": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", + "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==", + "deprecated": "core-js@<3.4 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Please, upgrade your dependencies to the actual version of core-js.", + "dev": true, + "hasInstallScript": true + }, + "node_modules/ganache-core/node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "node_modules/ganache-core/node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dev": true, + "optional": true, + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/ganache-core/node_modules/create-ecdh": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", + "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", + "dev": true, + "optional": true, + "dependencies": { + "bn.js": "^4.1.0", + "elliptic": "^6.5.3" + } + }, + "node_modules/ganache-core/node_modules/create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dev": true, + "dependencies": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "node_modules/ganache-core/node_modules/create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dev": true, + "dependencies": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "node_modules/ganache-core/node_modules/cross-fetch": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-2.2.3.tgz", + "integrity": "sha512-PrWWNH3yL2NYIb/7WF/5vFG3DCQiXDOVf8k3ijatbrtnwNuhMWLC7YF7uqf53tbTFDzHIUD8oITw4Bxt8ST3Nw==", + "dev": true, + "dependencies": { + "node-fetch": "2.1.2", + "whatwg-fetch": "2.0.4" + } + }, + "node_modules/ganache-core/node_modules/crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dev": true, + "optional": true, + "dependencies": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + }, + "engines": { + "node": "*" + } + }, + "node_modules/ganache-core/node_modules/d": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", + "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "dev": true, + "dependencies": { + "es5-ext": "^0.10.50", + "type": "^1.0.1" + } + }, + "node_modules/ganache-core/node_modules/dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "dependencies": { + "assert-plus": "^1.0.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/ganache-core/node_modules/debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/ganache-core/node_modules/decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/ganache-core/node_modules/decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "dev": true, + "optional": true, + "dependencies": { + "mimic-response": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ganache-core/node_modules/deep-equal": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", + "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", + "dev": true, + "dependencies": { + "is-arguments": "^1.0.4", + "is-date-object": "^1.0.1", + "is-regex": "^1.0.4", + "object-is": "^1.0.1", + "object-keys": "^1.1.1", + "regexp.prototype.flags": "^1.2.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ganache-core/node_modules/defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/deferred-leveldown": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-4.0.2.tgz", + "integrity": "sha512-5fMC8ek8alH16QiV0lTCis610D1Zt1+LA4MS4d63JgS32lrCjTFDUFz2ao09/j2I4Bqb5jL4FZYwu7Jz0XO1ww==", + "dev": true, + "dependencies": { + "abstract-leveldown": "~5.0.0", + "inherits": "^2.0.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache-core/node_modules/deferred-leveldown/node_modules/abstract-leveldown": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-5.0.0.tgz", + "integrity": "sha512-5mU5P1gXtsMIXg65/rsYGsi93+MlogXZ9FA8JnwKurHQg64bfXwGYVdVdijNTVNOlAsuIiOwHdvFFD5JqCJQ7A==", + "dev": true, + "dependencies": { + "xtend": "~4.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache-core/node_modules/define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "dependencies": { + "object-keys": "^1.0.12" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/ganache-core/node_modules/define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "dependencies": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/defined": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", + "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=", + "dev": true + }, + "node_modules/ganache-core/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/ganache-core/node_modules/des.js": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", + "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "dev": true, + "optional": true, + "dependencies": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/ganache-core/node_modules/destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/detect-indent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", + "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", + "dev": true, + "dependencies": { + "repeating": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dev": true, + "optional": true, + "dependencies": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, + "node_modules/ganache-core/node_modules/dom-walk": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz", + "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==", + "dev": true + }, + "node_modules/ganache-core/node_modules/dotignore": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/dotignore/-/dotignore-0.1.2.tgz", + "integrity": "sha512-UGGGWfSauusaVJC+8fgV+NVvBXkCTmVv7sk6nojDZZvuOUNGUy0Zk4UpHQD6EDjS0jpBwcACvH4eofvyzBcRDw==", + "dev": true, + "dependencies": { + "minimatch": "^3.0.4" + }, + "bin": { + "ignored": "bin/ignored" + } + }, + "node_modules/ganache-core/node_modules/duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dev": true, + "dependencies": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/ganache-core/node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/electron-to-chromium": { + "version": "1.3.636", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.636.tgz", + "integrity": "sha512-Adcvng33sd3gTjNIDNXGD1G4H6qCImIy2euUJAQHtLNplEKU5WEz5KRJxupRNIIT8sD5oFZLTKBWAf12Bsz24A==", + "dev": true + }, + "node_modules/ganache-core/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/ganache-core/node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/ganache-core/node_modules/encoding-down": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/encoding-down/-/encoding-down-5.0.4.tgz", + "integrity": "sha512-8CIZLDcSKxgzT+zX8ZVfgNbu8Md2wq/iqa1Y7zyVR18QBEAc0Nmzuvj/N5ykSKpfGzjM8qxbaFntLPwnVoUhZw==", + "dev": true, + "dependencies": { + "abstract-leveldown": "^5.0.0", + "inherits": "^2.0.3", + "level-codec": "^9.0.0", + "level-errors": "^2.0.0", + "xtend": "^4.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache-core/node_modules/encoding-down/node_modules/abstract-leveldown": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-5.0.0.tgz", + "integrity": "sha512-5mU5P1gXtsMIXg65/rsYGsi93+MlogXZ9FA8JnwKurHQg64bfXwGYVdVdijNTVNOlAsuIiOwHdvFFD5JqCJQ7A==", + "dev": true, + "dependencies": { + "xtend": "~4.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache-core/node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.2.tgz", + "integrity": "sha512-2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dev": true, + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/ganache-core/node_modules/es5-ext": { + "version": "0.10.53", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", + "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", + "dev": true, + "dependencies": { + "es6-iterator": "~2.0.3", + "es6-symbol": "~3.1.3", + "next-tick": "~1.0.0" + } + }, + "node_modules/ganache-core/node_modules/es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "dev": true, + "dependencies": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "node_modules/ganache-core/node_modules/es6-symbol": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", + "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", + "dev": true, + "dependencies": { + "d": "^1.0.1", + "ext": "^1.1.2" + } + }, + "node_modules/ganache-core/node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/ganache-core/node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/ganache-core/node_modules/eth-block-tracker": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/eth-block-tracker/-/eth-block-tracker-3.0.1.tgz", + "integrity": "sha512-WUVxWLuhMmsfenfZvFO5sbl1qFY2IqUlw/FPVmjjdElpqLsZtSG+wPe9Dz7W/sB6e80HgFKknOmKk2eNlznHug==", + "dev": true, + "dependencies": { + "eth-query": "^2.1.0", + "ethereumjs-tx": "^1.3.3", + "ethereumjs-util": "^5.1.3", + "ethjs-util": "^0.1.3", + "json-rpc-engine": "^3.6.0", + "pify": "^2.3.0", + "tape": "^4.6.3" + } + }, + "node_modules/ganache-core/node_modules/eth-block-tracker/node_modules/ethereumjs-tx": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/ethereumjs-tx/-/ethereumjs-tx-1.3.7.tgz", + "integrity": "sha512-wvLMxzt1RPhAQ9Yi3/HKZTn0FZYpnsmQdbKYfUUpi4j1SEIcbkd9tndVjcPrufY3V7j2IebOpC00Zp2P/Ay2kA==", + "deprecated": "New package name format for new versions: @ethereumjs/tx. Please update.", + "dev": true, + "dependencies": { + "ethereum-common": "^0.0.18", + "ethereumjs-util": "^5.0.0" + } + }, + "node_modules/ganache-core/node_modules/eth-block-tracker/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ganache-core/node_modules/eth-block-tracker/node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/eth-ens-namehash": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/eth-ens-namehash/-/eth-ens-namehash-2.0.8.tgz", + "integrity": "sha1-IprEbsqG1S4MmR58sq74P/D2i88=", + "dev": true, + "optional": true, + "dependencies": { + "idna-uts46-hx": "^2.3.1", + "js-sha3": "^0.5.7" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-infura": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/eth-json-rpc-infura/-/eth-json-rpc-infura-3.2.1.tgz", + "integrity": "sha512-W7zR4DZvyTn23Bxc0EWsq4XGDdD63+XPUCEhV2zQvQGavDVC4ZpFDK4k99qN7bd7/fjj37+rxmuBOBeIqCA5Mw==", + "dev": true, + "dependencies": { + "cross-fetch": "^2.1.1", + "eth-json-rpc-middleware": "^1.5.0", + "json-rpc-engine": "^3.4.0", + "json-rpc-error": "^2.0.0" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/eth-json-rpc-middleware/-/eth-json-rpc-middleware-1.6.0.tgz", + "integrity": "sha512-tDVCTlrUvdqHKqivYMjtFZsdD7TtpNLBCfKAcOpaVs7orBMS/A8HWro6dIzNtTZIR05FAbJ3bioFOnZpuCew9Q==", + "dev": true, + "dependencies": { + "async": "^2.5.0", + "eth-query": "^2.1.2", + "eth-tx-summary": "^3.1.2", + "ethereumjs-block": "^1.6.0", + "ethereumjs-tx": "^1.3.3", + "ethereumjs-util": "^5.1.2", + "ethereumjs-vm": "^2.1.0", + "fetch-ponyfill": "^4.0.0", + "json-rpc-engine": "^3.6.0", + "json-rpc-error": "^2.0.0", + "json-stable-stringify": "^1.0.1", + "promise-to-callback": "^1.0.0", + "tape": "^4.6.3" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/abstract-leveldown": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.6.3.tgz", + "integrity": "sha512-2++wDf/DYqkPR3o5tbfdhF96EfMApo1GpPfzOsR/ZYXdkSmELlvOOEAl9iKkRsktMPHdGjO4rtkBpf2I7TiTeA==", + "dev": true, + "dependencies": { + "xtend": "~4.0.0" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/deferred-leveldown": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-1.2.2.tgz", + "integrity": "sha512-uukrWD2bguRtXilKt6cAWKyoXrTSMo5m7crUdLfWQmu8kIm88w3QZoUL+6nhpfKVmhHANER6Re3sKoNoZ3IKMA==", + "dev": true, + "dependencies": { + "abstract-leveldown": "~2.6.0" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/ethereumjs-account": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/ethereumjs-account/-/ethereumjs-account-2.0.5.tgz", + "integrity": "sha512-bgDojnXGjhMwo6eXQC0bY6UK2liSFUSMwwylOmQvZbSl/D7NXQ3+vrGO46ZeOgjGfxXmgIeVNDIiHw7fNZM4VA==", + "dev": true, + "dependencies": { + "ethereumjs-util": "^5.0.0", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/ethereumjs-block": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/ethereumjs-block/-/ethereumjs-block-1.7.1.tgz", + "integrity": "sha512-B+sSdtqm78fmKkBq78/QLKJbu/4Ts4P2KFISdgcuZUPDm9x+N7qgBPIIFUGbaakQh8bzuquiRVbdmvPKqbILRg==", + "deprecated": "New package name format for new versions: @ethereumjs/block. Please update.", + "dev": true, + "dependencies": { + "async": "^2.0.1", + "ethereum-common": "0.2.0", + "ethereumjs-tx": "^1.2.2", + "ethereumjs-util": "^5.0.0", + "merkle-patricia-tree": "^2.1.2" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/ethereumjs-block/node_modules/ethereum-common": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/ethereum-common/-/ethereum-common-0.2.0.tgz", + "integrity": "sha512-XOnAR/3rntJgbCdGhqdaLIxDLWKLmsZOGhHdBKadEr6gEnJLH52k93Ou+TUdFaPN3hJc3isBZBal3U/XZ15abA==", + "dev": true + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/ethereumjs-tx": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/ethereumjs-tx/-/ethereumjs-tx-1.3.7.tgz", + "integrity": "sha512-wvLMxzt1RPhAQ9Yi3/HKZTn0FZYpnsmQdbKYfUUpi4j1SEIcbkd9tndVjcPrufY3V7j2IebOpC00Zp2P/Ay2kA==", + "deprecated": "New package name format for new versions: @ethereumjs/tx. Please update.", + "dev": true, + "dependencies": { + "ethereum-common": "^0.0.18", + "ethereumjs-util": "^5.0.0" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/ethereumjs-vm": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/ethereumjs-vm/-/ethereumjs-vm-2.6.0.tgz", + "integrity": "sha512-r/XIUik/ynGbxS3y+mvGnbOKnuLo40V5Mj1J25+HEO63aWYREIqvWeRO/hnROlMBE5WoniQmPmhiaN0ctiHaXw==", + "deprecated": "New package name format for new versions: @ethereumjs/vm. Please update.", + "dev": true, + "dependencies": { + "async": "^2.1.2", + "async-eventemitter": "^0.2.2", + "ethereumjs-account": "^2.0.3", + "ethereumjs-block": "~2.2.0", + "ethereumjs-common": "^1.1.0", + "ethereumjs-util": "^6.0.0", + "fake-merkle-patricia-tree": "^1.0.1", + "functional-red-black-tree": "^1.0.1", + "merkle-patricia-tree": "^2.3.2", + "rustbn.js": "~0.2.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/ethereumjs-vm/node_modules/ethereumjs-block": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/ethereumjs-block/-/ethereumjs-block-2.2.2.tgz", + "integrity": "sha512-2p49ifhek3h2zeg/+da6XpdFR3GlqY3BIEiqxGF8j9aSRIgkb7M1Ky+yULBKJOu8PAZxfhsYA+HxUk2aCQp3vg==", + "deprecated": "New package name format for new versions: @ethereumjs/block. Please update.", + "dev": true, + "dependencies": { + "async": "^2.0.1", + "ethereumjs-common": "^1.5.0", + "ethereumjs-tx": "^2.1.1", + "ethereumjs-util": "^5.0.0", + "merkle-patricia-tree": "^2.1.2" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/ethereumjs-vm/node_modules/ethereumjs-block/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/ethereumjs-vm/node_modules/ethereumjs-tx": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ethereumjs-tx/-/ethereumjs-tx-2.1.2.tgz", + "integrity": "sha512-zZEK1onCeiORb0wyCXUvg94Ve5It/K6GD1K+26KfFKodiBiS6d9lfCXlUKGBBdQ+bv7Day+JK0tj1K+BeNFRAw==", + "deprecated": "New package name format for new versions: @ethereumjs/tx. Please update.", + "dev": true, + "dependencies": { + "ethereumjs-common": "^1.5.0", + "ethereumjs-util": "^6.0.0" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/ethereumjs-vm/node_modules/ethereumjs-util": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-6.2.1.tgz", + "integrity": "sha512-W2Ktez4L01Vexijrm5EB6w7dg4n/TgpoYU4avuT5T3Vmnw/eCRtiBrJfQYS/DCSvDIOLn2k57GcHdeBcgVxAqw==", + "dev": true, + "dependencies": { + "@types/bn.js": "^4.11.3", + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "0.1.6", + "rlp": "^2.2.3" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/level-codec": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-7.0.1.tgz", + "integrity": "sha512-Ua/R9B9r3RasXdRmOtd+t9TCOEIIlts+TN/7XTT2unhDaL6sJn83S3rUyljbr6lVtw49N3/yA0HHjpV6Kzb2aQ==", + "dev": true + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/level-errors": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-1.0.5.tgz", + "integrity": "sha512-/cLUpQduF6bNrWuAC4pwtUKA5t669pCsCi2XbmojG2tFeOr9j6ShtdDCtFFQO1DRt+EVZhx9gPzP9G2bUaG4ig==", + "dev": true, + "dependencies": { + "errno": "~0.1.1" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/level-iterator-stream": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-1.3.1.tgz", + "integrity": "sha1-5Dt4sagUPm+pek9IXrjqUwNS8u0=", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "level-errors": "^1.0.3", + "readable-stream": "^1.0.33", + "xtend": "^4.0.0" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/level-iterator-stream/node_modules/readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/level-ws": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/level-ws/-/level-ws-0.0.0.tgz", + "integrity": "sha1-Ny5RIXeSSgBCSwtDrvK7QkltIos=", + "dev": true, + "dependencies": { + "readable-stream": "~1.0.15", + "xtend": "~2.1.1" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/level-ws/node_modules/readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/level-ws/node_modules/xtend": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz", + "integrity": "sha1-bv7MKk2tjmlixJAbM3znuoe10os=", + "dev": true, + "dependencies": { + "object-keys": "~0.4.0" + }, + "engines": { + "node": ">=0.4" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/levelup": { + "version": "1.3.9", + "resolved": "https://registry.npmjs.org/levelup/-/levelup-1.3.9.tgz", + "integrity": "sha512-VVGHfKIlmw8w1XqpGOAGwq6sZm2WwWLmlDcULkKWQXEA5EopA8OBNJ2Ck2v6bdk8HeEZSbCSEgzXadyQFm76sQ==", + "dev": true, + "dependencies": { + "deferred-leveldown": "~1.2.1", + "level-codec": "~7.0.0", + "level-errors": "~1.0.3", + "level-iterator-stream": "~1.3.0", + "prr": "~1.0.1", + "semver": "~5.4.1", + "xtend": "~4.0.0" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/ltgt": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ltgt/-/ltgt-2.2.1.tgz", + "integrity": "sha1-81ypHEk/e3PaDgdJUwTxezH4fuU=", + "dev": true + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/memdown": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/memdown/-/memdown-1.4.1.tgz", + "integrity": "sha1-tOThkhdGZP+65BNhqlAPMRnv4hU=", + "dev": true, + "dependencies": { + "abstract-leveldown": "~2.7.1", + "functional-red-black-tree": "^1.0.1", + "immediate": "^3.2.3", + "inherits": "~2.0.1", + "ltgt": "~2.2.0", + "safe-buffer": "~5.1.1" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/memdown/node_modules/abstract-leveldown": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.7.2.tgz", + "integrity": "sha512-+OVvxH2rHVEhWLdbudP6p0+dNMXu8JA1CbhP19T8paTYAcX7oJ4OVjT+ZUVpv7mITxXHqDMej+GdqXBmXkw09w==", + "dev": true, + "dependencies": { + "xtend": "~4.0.0" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/merkle-patricia-tree": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/merkle-patricia-tree/-/merkle-patricia-tree-2.3.2.tgz", + "integrity": "sha512-81PW5m8oz/pz3GvsAwbauj7Y00rqm81Tzad77tHBwU7pIAtN+TJnMSOJhxBKflSVYhptMMb9RskhqHqrSm1V+g==", + "dev": true, + "dependencies": { + "async": "^1.4.2", + "ethereumjs-util": "^5.0.0", + "level-ws": "0.0.0", + "levelup": "^1.2.1", + "memdown": "^1.0.0", + "readable-stream": "^2.0.0", + "rlp": "^2.0.0", + "semaphore": ">=1.0.1" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/merkle-patricia-tree/node_modules/async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "dev": true + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/object-keys": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz", + "integrity": "sha1-KKaq50KN0sOpLz2V8hM13SBOAzY=", + "dev": true + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/semver": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", + "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/ganache-core/node_modules/eth-json-rpc-middleware/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + }, + "node_modules/ganache-core/node_modules/eth-lib": { + "version": "0.1.29", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.1.29.tgz", + "integrity": "sha512-bfttrr3/7gG4E02HoWTDUcDDslN003OlOoBxk9virpAZQ1ja/jDgwkWB8QfJF7ojuEowrqy+lzp9VcJG7/k5bQ==", + "dev": true, + "optional": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "nano-json-stream-parser": "^0.1.2", + "servify": "^0.1.12", + "ws": "^3.0.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/ganache-core/node_modules/eth-query": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/eth-query/-/eth-query-2.1.2.tgz", + "integrity": "sha1-1nQdkAAQa1FRDHLbktY2VFam2l4=", + "dev": true, + "dependencies": { + "json-rpc-random-id": "^1.0.0", + "xtend": "^4.0.1" + } + }, + "node_modules/ganache-core/node_modules/eth-sig-util": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eth-sig-util/-/eth-sig-util-3.0.0.tgz", + "integrity": "sha512-4eFkMOhpGbTxBQ3AMzVf0haUX2uTur7DpWiHzWyTURa28BVJJtOkcb9Ok5TV0YvEPG61DODPW7ZUATbJTslioQ==", + "deprecated": "Deprecated in favor of '@metamask/eth-sig-util'", + "dev": true, + "dependencies": { + "buffer": "^5.2.1", + "elliptic": "^6.4.0", + "ethereumjs-abi": "0.6.5", + "ethereumjs-util": "^5.1.1", + "tweetnacl": "^1.0.0", + "tweetnacl-util": "^0.15.0" + } + }, + "node_modules/ganache-core/node_modules/eth-sig-util/node_modules/ethereumjs-abi": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/ethereumjs-abi/-/ethereumjs-abi-0.6.5.tgz", + "integrity": "sha1-WmN+8Wq0NHP6cqKa2QhxQFs/UkE=", + "dev": true, + "dependencies": { + "bn.js": "^4.10.0", + "ethereumjs-util": "^4.3.0" + } + }, + "node_modules/ganache-core/node_modules/eth-sig-util/node_modules/ethereumjs-abi/node_modules/ethereumjs-util": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-4.5.1.tgz", + "integrity": "sha512-WrckOZ7uBnei4+AKimpuF1B3Fv25OmoRgmYCpGsP7u8PFxXAmAgiJSYT2kRWnt6fVIlKaQlZvuwXp7PIrmn3/w==", + "dev": true, + "dependencies": { + "bn.js": "^4.8.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "rlp": "^2.0.0" + } + }, + "node_modules/ganache-core/node_modules/eth-sig-util/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ganache-core/node_modules/eth-tx-summary": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/eth-tx-summary/-/eth-tx-summary-3.2.4.tgz", + "integrity": "sha512-NtlDnaVZah146Rm8HMRUNMgIwG/ED4jiqk0TME9zFheMl1jOp6jL1m0NKGjJwehXQ6ZKCPr16MTr+qspKpEXNg==", + "dev": true, + "dependencies": { + "async": "^2.1.2", + "clone": "^2.0.0", + "concat-stream": "^1.5.1", + "end-of-stream": "^1.1.0", + "eth-query": "^2.0.2", + "ethereumjs-block": "^1.4.1", + "ethereumjs-tx": "^1.1.1", + "ethereumjs-util": "^5.0.1", + "ethereumjs-vm": "^2.6.0", + "through2": "^2.0.3" + } + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/abstract-leveldown": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.6.3.tgz", + "integrity": "sha512-2++wDf/DYqkPR3o5tbfdhF96EfMApo1GpPfzOsR/ZYXdkSmELlvOOEAl9iKkRsktMPHdGjO4rtkBpf2I7TiTeA==", + "dev": true, + "dependencies": { + "xtend": "~4.0.0" + } + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/deferred-leveldown": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-1.2.2.tgz", + "integrity": "sha512-uukrWD2bguRtXilKt6cAWKyoXrTSMo5m7crUdLfWQmu8kIm88w3QZoUL+6nhpfKVmhHANER6Re3sKoNoZ3IKMA==", + "dev": true, + "dependencies": { + "abstract-leveldown": "~2.6.0" + } + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/ethereumjs-account": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/ethereumjs-account/-/ethereumjs-account-2.0.5.tgz", + "integrity": "sha512-bgDojnXGjhMwo6eXQC0bY6UK2liSFUSMwwylOmQvZbSl/D7NXQ3+vrGO46ZeOgjGfxXmgIeVNDIiHw7fNZM4VA==", + "dev": true, + "dependencies": { + "ethereumjs-util": "^5.0.0", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/ethereumjs-block": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/ethereumjs-block/-/ethereumjs-block-1.7.1.tgz", + "integrity": "sha512-B+sSdtqm78fmKkBq78/QLKJbu/4Ts4P2KFISdgcuZUPDm9x+N7qgBPIIFUGbaakQh8bzuquiRVbdmvPKqbILRg==", + "deprecated": "New package name format for new versions: @ethereumjs/block. Please update.", + "dev": true, + "dependencies": { + "async": "^2.0.1", + "ethereum-common": "0.2.0", + "ethereumjs-tx": "^1.2.2", + "ethereumjs-util": "^5.0.0", + "merkle-patricia-tree": "^2.1.2" + } + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/ethereumjs-block/node_modules/ethereum-common": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/ethereum-common/-/ethereum-common-0.2.0.tgz", + "integrity": "sha512-XOnAR/3rntJgbCdGhqdaLIxDLWKLmsZOGhHdBKadEr6gEnJLH52k93Ou+TUdFaPN3hJc3isBZBal3U/XZ15abA==", + "dev": true + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/ethereumjs-tx": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/ethereumjs-tx/-/ethereumjs-tx-1.3.7.tgz", + "integrity": "sha512-wvLMxzt1RPhAQ9Yi3/HKZTn0FZYpnsmQdbKYfUUpi4j1SEIcbkd9tndVjcPrufY3V7j2IebOpC00Zp2P/Ay2kA==", + "deprecated": "New package name format for new versions: @ethereumjs/tx. Please update.", + "dev": true, + "dependencies": { + "ethereum-common": "^0.0.18", + "ethereumjs-util": "^5.0.0" + } + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/ethereumjs-vm": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/ethereumjs-vm/-/ethereumjs-vm-2.6.0.tgz", + "integrity": "sha512-r/XIUik/ynGbxS3y+mvGnbOKnuLo40V5Mj1J25+HEO63aWYREIqvWeRO/hnROlMBE5WoniQmPmhiaN0ctiHaXw==", + "deprecated": "New package name format for new versions: @ethereumjs/vm. Please update.", + "dev": true, + "dependencies": { + "async": "^2.1.2", + "async-eventemitter": "^0.2.2", + "ethereumjs-account": "^2.0.3", + "ethereumjs-block": "~2.2.0", + "ethereumjs-common": "^1.1.0", + "ethereumjs-util": "^6.0.0", + "fake-merkle-patricia-tree": "^1.0.1", + "functional-red-black-tree": "^1.0.1", + "merkle-patricia-tree": "^2.3.2", + "rustbn.js": "~0.2.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/ethereumjs-vm/node_modules/ethereumjs-block": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/ethereumjs-block/-/ethereumjs-block-2.2.2.tgz", + "integrity": "sha512-2p49ifhek3h2zeg/+da6XpdFR3GlqY3BIEiqxGF8j9aSRIgkb7M1Ky+yULBKJOu8PAZxfhsYA+HxUk2aCQp3vg==", + "deprecated": "New package name format for new versions: @ethereumjs/block. Please update.", + "dev": true, + "dependencies": { + "async": "^2.0.1", + "ethereumjs-common": "^1.5.0", + "ethereumjs-tx": "^2.1.1", + "ethereumjs-util": "^5.0.0", + "merkle-patricia-tree": "^2.1.2" + } + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/ethereumjs-vm/node_modules/ethereumjs-block/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/ethereumjs-vm/node_modules/ethereumjs-tx": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ethereumjs-tx/-/ethereumjs-tx-2.1.2.tgz", + "integrity": "sha512-zZEK1onCeiORb0wyCXUvg94Ve5It/K6GD1K+26KfFKodiBiS6d9lfCXlUKGBBdQ+bv7Day+JK0tj1K+BeNFRAw==", + "deprecated": "New package name format for new versions: @ethereumjs/tx. Please update.", + "dev": true, + "dependencies": { + "ethereumjs-common": "^1.5.0", + "ethereumjs-util": "^6.0.0" + } + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/ethereumjs-vm/node_modules/ethereumjs-util": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-6.2.1.tgz", + "integrity": "sha512-W2Ktez4L01Vexijrm5EB6w7dg4n/TgpoYU4avuT5T3Vmnw/eCRtiBrJfQYS/DCSvDIOLn2k57GcHdeBcgVxAqw==", + "dev": true, + "dependencies": { + "@types/bn.js": "^4.11.3", + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "0.1.6", + "rlp": "^2.2.3" + } + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/level-codec": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-7.0.1.tgz", + "integrity": "sha512-Ua/R9B9r3RasXdRmOtd+t9TCOEIIlts+TN/7XTT2unhDaL6sJn83S3rUyljbr6lVtw49N3/yA0HHjpV6Kzb2aQ==", + "dev": true + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/level-errors": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-1.0.5.tgz", + "integrity": "sha512-/cLUpQduF6bNrWuAC4pwtUKA5t669pCsCi2XbmojG2tFeOr9j6ShtdDCtFFQO1DRt+EVZhx9gPzP9G2bUaG4ig==", + "dev": true, + "dependencies": { + "errno": "~0.1.1" + } + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/level-iterator-stream": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-1.3.1.tgz", + "integrity": "sha1-5Dt4sagUPm+pek9IXrjqUwNS8u0=", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "level-errors": "^1.0.3", + "readable-stream": "^1.0.33", + "xtend": "^4.0.0" + } + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/level-iterator-stream/node_modules/readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/level-ws": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/level-ws/-/level-ws-0.0.0.tgz", + "integrity": "sha1-Ny5RIXeSSgBCSwtDrvK7QkltIos=", + "dev": true, + "dependencies": { + "readable-stream": "~1.0.15", + "xtend": "~2.1.1" + } + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/level-ws/node_modules/readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/level-ws/node_modules/xtend": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz", + "integrity": "sha1-bv7MKk2tjmlixJAbM3znuoe10os=", + "dev": true, + "dependencies": { + "object-keys": "~0.4.0" + }, + "engines": { + "node": ">=0.4" + } + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/levelup": { + "version": "1.3.9", + "resolved": "https://registry.npmjs.org/levelup/-/levelup-1.3.9.tgz", + "integrity": "sha512-VVGHfKIlmw8w1XqpGOAGwq6sZm2WwWLmlDcULkKWQXEA5EopA8OBNJ2Ck2v6bdk8HeEZSbCSEgzXadyQFm76sQ==", + "dev": true, + "dependencies": { + "deferred-leveldown": "~1.2.1", + "level-codec": "~7.0.0", + "level-errors": "~1.0.3", + "level-iterator-stream": "~1.3.0", + "prr": "~1.0.1", + "semver": "~5.4.1", + "xtend": "~4.0.0" + } + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/ltgt": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ltgt/-/ltgt-2.2.1.tgz", + "integrity": "sha1-81ypHEk/e3PaDgdJUwTxezH4fuU=", + "dev": true + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/memdown": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/memdown/-/memdown-1.4.1.tgz", + "integrity": "sha1-tOThkhdGZP+65BNhqlAPMRnv4hU=", + "dev": true, + "dependencies": { + "abstract-leveldown": "~2.7.1", + "functional-red-black-tree": "^1.0.1", + "immediate": "^3.2.3", + "inherits": "~2.0.1", + "ltgt": "~2.2.0", + "safe-buffer": "~5.1.1" + } + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/memdown/node_modules/abstract-leveldown": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.7.2.tgz", + "integrity": "sha512-+OVvxH2rHVEhWLdbudP6p0+dNMXu8JA1CbhP19T8paTYAcX7oJ4OVjT+ZUVpv7mITxXHqDMej+GdqXBmXkw09w==", + "dev": true, + "dependencies": { + "xtend": "~4.0.0" + } + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/merkle-patricia-tree": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/merkle-patricia-tree/-/merkle-patricia-tree-2.3.2.tgz", + "integrity": "sha512-81PW5m8oz/pz3GvsAwbauj7Y00rqm81Tzad77tHBwU7pIAtN+TJnMSOJhxBKflSVYhptMMb9RskhqHqrSm1V+g==", + "dev": true, + "dependencies": { + "async": "^1.4.2", + "ethereumjs-util": "^5.0.0", + "level-ws": "0.0.0", + "levelup": "^1.2.1", + "memdown": "^1.0.0", + "readable-stream": "^2.0.0", + "rlp": "^2.0.0", + "semaphore": ">=1.0.1" + } + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/merkle-patricia-tree/node_modules/async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "dev": true + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/object-keys": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz", + "integrity": "sha1-KKaq50KN0sOpLz2V8hM13SBOAzY=", + "dev": true + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/semver": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", + "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/ganache-core/node_modules/eth-tx-summary/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + }, + "node_modules/ganache-core/node_modules/ethashjs": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ethashjs/-/ethashjs-0.0.8.tgz", + "integrity": "sha512-/MSbf/r2/Ld8o0l15AymjOTlPqpN8Cr4ByUEA9GtR4x0yAh3TdtDzEg29zMjXCNPI7u6E5fOQdj/Cf9Tc7oVNw==", + "deprecated": "New package name format for new versions: @ethereumjs/ethash. Please update.", + "dev": true, + "dependencies": { + "async": "^2.1.2", + "buffer-xor": "^2.0.1", + "ethereumjs-util": "^7.0.2", + "miller-rabin": "^4.0.0" + } + }, + "node_modules/ganache-core/node_modules/ethashjs/node_modules/bn.js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", + "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==", + "dev": true + }, + "node_modules/ganache-core/node_modules/ethashjs/node_modules/buffer-xor": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-2.0.2.tgz", + "integrity": "sha512-eHslX0bin3GB+Lx2p7lEYRShRewuNZL3fUl4qlVJGGiwoPGftmt8JQgk2Y9Ji5/01TnVDo33E5b5O3vUB1HdqQ==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ganache-core/node_modules/ethashjs/node_modules/ethereumjs-util": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.0.7.tgz", + "integrity": "sha512-vU5rtZBlZsgkTw3o6PDKyB8li2EgLavnAbsKcfsH2YhHH1Le+PP8vEiMnAnvgc1B6uMoaM5GDCrVztBw0Q5K9g==", + "dev": true, + "dependencies": { + "@types/bn.js": "^4.11.3", + "bn.js": "^5.1.2", + "create-hash": "^1.1.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "0.1.6", + "rlp": "^2.2.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/ganache-core/node_modules/ethereum-bloom-filters": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/ethereum-bloom-filters/-/ethereum-bloom-filters-1.0.7.tgz", + "integrity": "sha512-cDcJJSJ9GMAcURiAWO3DxIEhTL/uWqlQnvgKpuYQzYPrt/izuGU+1ntQmHt0IRq6ADoSYHFnB+aCEFIldjhkMQ==", + "dev": true, + "optional": true, + "dependencies": { + "js-sha3": "^0.8.0" + } + }, + "node_modules/ganache-core/node_modules/ethereum-bloom-filters/node_modules/js-sha3": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", + "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/ethereum-common": { + "version": "0.0.18", + "resolved": "https://registry.npmjs.org/ethereum-common/-/ethereum-common-0.0.18.tgz", + "integrity": "sha1-L9w1dvIykDNYl26znaeDIT/5Uj8=", + "dev": true + }, + "node_modules/ganache-core/node_modules/ethereumjs-account": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ethereumjs-account/-/ethereumjs-account-3.0.0.tgz", + "integrity": "sha512-WP6BdscjiiPkQfF9PVfMcwx/rDvfZTjFKY0Uwc09zSQr9JfIVH87dYIJu0gNhBhpmovV4yq295fdllS925fnBA==", + "deprecated": "Please use Util.Account class found on package ethereumjs-util@^7.0.6 https://github.com/ethereumjs/ethereumjs-util/releases/tag/v7.0.6", + "dev": true, + "dependencies": { + "ethereumjs-util": "^6.0.0", + "rlp": "^2.2.1", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-block": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/ethereumjs-block/-/ethereumjs-block-2.2.2.tgz", + "integrity": "sha512-2p49ifhek3h2zeg/+da6XpdFR3GlqY3BIEiqxGF8j9aSRIgkb7M1Ky+yULBKJOu8PAZxfhsYA+HxUk2aCQp3vg==", + "deprecated": "New package name format for new versions: @ethereumjs/block. Please update.", + "dev": true, + "dependencies": { + "async": "^2.0.1", + "ethereumjs-common": "^1.5.0", + "ethereumjs-tx": "^2.1.1", + "ethereumjs-util": "^5.0.0", + "merkle-patricia-tree": "^2.1.2" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-block/node_modules/abstract-leveldown": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.6.3.tgz", + "integrity": "sha512-2++wDf/DYqkPR3o5tbfdhF96EfMApo1GpPfzOsR/ZYXdkSmELlvOOEAl9iKkRsktMPHdGjO4rtkBpf2I7TiTeA==", + "dev": true, + "dependencies": { + "xtend": "~4.0.0" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-block/node_modules/deferred-leveldown": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-1.2.2.tgz", + "integrity": "sha512-uukrWD2bguRtXilKt6cAWKyoXrTSMo5m7crUdLfWQmu8kIm88w3QZoUL+6nhpfKVmhHANER6Re3sKoNoZ3IKMA==", + "dev": true, + "dependencies": { + "abstract-leveldown": "~2.6.0" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-block/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-block/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "node_modules/ganache-core/node_modules/ethereumjs-block/node_modules/level-codec": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-7.0.1.tgz", + "integrity": "sha512-Ua/R9B9r3RasXdRmOtd+t9TCOEIIlts+TN/7XTT2unhDaL6sJn83S3rUyljbr6lVtw49N3/yA0HHjpV6Kzb2aQ==", + "dev": true + }, + "node_modules/ganache-core/node_modules/ethereumjs-block/node_modules/level-errors": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-1.0.5.tgz", + "integrity": "sha512-/cLUpQduF6bNrWuAC4pwtUKA5t669pCsCi2XbmojG2tFeOr9j6ShtdDCtFFQO1DRt+EVZhx9gPzP9G2bUaG4ig==", + "dev": true, + "dependencies": { + "errno": "~0.1.1" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-block/node_modules/level-iterator-stream": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-1.3.1.tgz", + "integrity": "sha1-5Dt4sagUPm+pek9IXrjqUwNS8u0=", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "level-errors": "^1.0.3", + "readable-stream": "^1.0.33", + "xtend": "^4.0.0" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-block/node_modules/level-iterator-stream/node_modules/readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-block/node_modules/level-ws": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/level-ws/-/level-ws-0.0.0.tgz", + "integrity": "sha1-Ny5RIXeSSgBCSwtDrvK7QkltIos=", + "dev": true, + "dependencies": { + "readable-stream": "~1.0.15", + "xtend": "~2.1.1" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-block/node_modules/level-ws/node_modules/readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-block/node_modules/level-ws/node_modules/xtend": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz", + "integrity": "sha1-bv7MKk2tjmlixJAbM3znuoe10os=", + "dev": true, + "dependencies": { + "object-keys": "~0.4.0" + }, + "engines": { + "node": ">=0.4" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-block/node_modules/levelup": { + "version": "1.3.9", + "resolved": "https://registry.npmjs.org/levelup/-/levelup-1.3.9.tgz", + "integrity": "sha512-VVGHfKIlmw8w1XqpGOAGwq6sZm2WwWLmlDcULkKWQXEA5EopA8OBNJ2Ck2v6bdk8HeEZSbCSEgzXadyQFm76sQ==", + "dev": true, + "dependencies": { + "deferred-leveldown": "~1.2.1", + "level-codec": "~7.0.0", + "level-errors": "~1.0.3", + "level-iterator-stream": "~1.3.0", + "prr": "~1.0.1", + "semver": "~5.4.1", + "xtend": "~4.0.0" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-block/node_modules/ltgt": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ltgt/-/ltgt-2.2.1.tgz", + "integrity": "sha1-81ypHEk/e3PaDgdJUwTxezH4fuU=", + "dev": true + }, + "node_modules/ganache-core/node_modules/ethereumjs-block/node_modules/memdown": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/memdown/-/memdown-1.4.1.tgz", + "integrity": "sha1-tOThkhdGZP+65BNhqlAPMRnv4hU=", + "dev": true, + "dependencies": { + "abstract-leveldown": "~2.7.1", + "functional-red-black-tree": "^1.0.1", + "immediate": "^3.2.3", + "inherits": "~2.0.1", + "ltgt": "~2.2.0", + "safe-buffer": "~5.1.1" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-block/node_modules/memdown/node_modules/abstract-leveldown": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.7.2.tgz", + "integrity": "sha512-+OVvxH2rHVEhWLdbudP6p0+dNMXu8JA1CbhP19T8paTYAcX7oJ4OVjT+ZUVpv7mITxXHqDMej+GdqXBmXkw09w==", + "dev": true, + "dependencies": { + "xtend": "~4.0.0" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-block/node_modules/merkle-patricia-tree": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/merkle-patricia-tree/-/merkle-patricia-tree-2.3.2.tgz", + "integrity": "sha512-81PW5m8oz/pz3GvsAwbauj7Y00rqm81Tzad77tHBwU7pIAtN+TJnMSOJhxBKflSVYhptMMb9RskhqHqrSm1V+g==", + "dev": true, + "dependencies": { + "async": "^1.4.2", + "ethereumjs-util": "^5.0.0", + "level-ws": "0.0.0", + "levelup": "^1.2.1", + "memdown": "^1.0.0", + "readable-stream": "^2.0.0", + "rlp": "^2.0.0", + "semaphore": ">=1.0.1" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-block/node_modules/merkle-patricia-tree/node_modules/async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "dev": true + }, + "node_modules/ganache-core/node_modules/ethereumjs-block/node_modules/object-keys": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz", + "integrity": "sha1-KKaq50KN0sOpLz2V8hM13SBOAzY=", + "dev": true + }, + "node_modules/ganache-core/node_modules/ethereumjs-block/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/ganache-core/node_modules/ethereumjs-block/node_modules/semver": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", + "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-block/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + }, + "node_modules/ganache-core/node_modules/ethereumjs-blockchain": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/ethereumjs-blockchain/-/ethereumjs-blockchain-4.0.4.tgz", + "integrity": "sha512-zCxaRMUOzzjvX78DTGiKjA+4h2/sF0OYL1QuPux0DHpyq8XiNoF5GYHtb++GUxVlMsMfZV7AVyzbtgcRdIcEPQ==", + "deprecated": "New package name format for new versions: @ethereumjs/blockchain. Please update.", + "dev": true, + "dependencies": { + "async": "^2.6.1", + "ethashjs": "~0.0.7", + "ethereumjs-block": "~2.2.2", + "ethereumjs-common": "^1.5.0", + "ethereumjs-util": "^6.1.0", + "flow-stoplight": "^1.0.0", + "level-mem": "^3.0.1", + "lru-cache": "^5.1.1", + "rlp": "^2.2.2", + "semaphore": "^1.1.0" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-common": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/ethereumjs-common/-/ethereumjs-common-1.5.0.tgz", + "integrity": "sha512-SZOjgK1356hIY7MRj3/ma5qtfr/4B5BL+G4rP/XSMYr2z1H5el4RX5GReYCKmQmYI/nSBmRnwrZ17IfHuG0viQ==", + "deprecated": "New package name format for new versions: @ethereumjs/common. Please update.", + "dev": true + }, + "node_modules/ganache-core/node_modules/ethereumjs-tx": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ethereumjs-tx/-/ethereumjs-tx-2.1.2.tgz", + "integrity": "sha512-zZEK1onCeiORb0wyCXUvg94Ve5It/K6GD1K+26KfFKodiBiS6d9lfCXlUKGBBdQ+bv7Day+JK0tj1K+BeNFRAw==", + "deprecated": "New package name format for new versions: @ethereumjs/tx. Please update.", + "dev": true, + "dependencies": { + "ethereumjs-common": "^1.5.0", + "ethereumjs-util": "^6.0.0" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-util": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-6.2.1.tgz", + "integrity": "sha512-W2Ktez4L01Vexijrm5EB6w7dg4n/TgpoYU4avuT5T3Vmnw/eCRtiBrJfQYS/DCSvDIOLn2k57GcHdeBcgVxAqw==", + "dev": true, + "dependencies": { + "@types/bn.js": "^4.11.3", + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "0.1.6", + "rlp": "^2.2.3" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-vm": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/ethereumjs-vm/-/ethereumjs-vm-4.2.0.tgz", + "integrity": "sha512-X6qqZbsY33p5FTuZqCnQ4+lo957iUJMM6Mpa6bL4UW0dxM6WmDSHuI4j/zOp1E2TDKImBGCJA9QPfc08PaNubA==", + "deprecated": "New package name format for new versions: @ethereumjs/vm. Please update.", + "dev": true, + "dependencies": { + "async": "^2.1.2", + "async-eventemitter": "^0.2.2", + "core-js-pure": "^3.0.1", + "ethereumjs-account": "^3.0.0", + "ethereumjs-block": "^2.2.2", + "ethereumjs-blockchain": "^4.0.3", + "ethereumjs-common": "^1.5.0", + "ethereumjs-tx": "^2.1.2", + "ethereumjs-util": "^6.2.0", + "fake-merkle-patricia-tree": "^1.0.1", + "functional-red-black-tree": "^1.0.1", + "merkle-patricia-tree": "^2.3.2", + "rustbn.js": "~0.2.0", + "safe-buffer": "^5.1.1", + "util.promisify": "^1.0.0" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-vm/node_modules/abstract-leveldown": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.6.3.tgz", + "integrity": "sha512-2++wDf/DYqkPR3o5tbfdhF96EfMApo1GpPfzOsR/ZYXdkSmELlvOOEAl9iKkRsktMPHdGjO4rtkBpf2I7TiTeA==", + "dev": true, + "dependencies": { + "xtend": "~4.0.0" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-vm/node_modules/deferred-leveldown": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-1.2.2.tgz", + "integrity": "sha512-uukrWD2bguRtXilKt6cAWKyoXrTSMo5m7crUdLfWQmu8kIm88w3QZoUL+6nhpfKVmhHANER6Re3sKoNoZ3IKMA==", + "dev": true, + "dependencies": { + "abstract-leveldown": "~2.6.0" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-vm/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "node_modules/ganache-core/node_modules/ethereumjs-vm/node_modules/level-codec": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-7.0.1.tgz", + "integrity": "sha512-Ua/R9B9r3RasXdRmOtd+t9TCOEIIlts+TN/7XTT2unhDaL6sJn83S3rUyljbr6lVtw49N3/yA0HHjpV6Kzb2aQ==", + "dev": true + }, + "node_modules/ganache-core/node_modules/ethereumjs-vm/node_modules/level-errors": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-1.0.5.tgz", + "integrity": "sha512-/cLUpQduF6bNrWuAC4pwtUKA5t669pCsCi2XbmojG2tFeOr9j6ShtdDCtFFQO1DRt+EVZhx9gPzP9G2bUaG4ig==", + "dev": true, + "dependencies": { + "errno": "~0.1.1" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-vm/node_modules/level-iterator-stream": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-1.3.1.tgz", + "integrity": "sha1-5Dt4sagUPm+pek9IXrjqUwNS8u0=", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "level-errors": "^1.0.3", + "readable-stream": "^1.0.33", + "xtend": "^4.0.0" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-vm/node_modules/level-iterator-stream/node_modules/readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-vm/node_modules/level-ws": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/level-ws/-/level-ws-0.0.0.tgz", + "integrity": "sha1-Ny5RIXeSSgBCSwtDrvK7QkltIos=", + "dev": true, + "dependencies": { + "readable-stream": "~1.0.15", + "xtend": "~2.1.1" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-vm/node_modules/level-ws/node_modules/readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-vm/node_modules/level-ws/node_modules/xtend": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz", + "integrity": "sha1-bv7MKk2tjmlixJAbM3znuoe10os=", + "dev": true, + "dependencies": { + "object-keys": "~0.4.0" + }, + "engines": { + "node": ">=0.4" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-vm/node_modules/levelup": { + "version": "1.3.9", + "resolved": "https://registry.npmjs.org/levelup/-/levelup-1.3.9.tgz", + "integrity": "sha512-VVGHfKIlmw8w1XqpGOAGwq6sZm2WwWLmlDcULkKWQXEA5EopA8OBNJ2Ck2v6bdk8HeEZSbCSEgzXadyQFm76sQ==", + "dev": true, + "dependencies": { + "deferred-leveldown": "~1.2.1", + "level-codec": "~7.0.0", + "level-errors": "~1.0.3", + "level-iterator-stream": "~1.3.0", + "prr": "~1.0.1", + "semver": "~5.4.1", + "xtend": "~4.0.0" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-vm/node_modules/ltgt": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ltgt/-/ltgt-2.2.1.tgz", + "integrity": "sha1-81ypHEk/e3PaDgdJUwTxezH4fuU=", + "dev": true + }, + "node_modules/ganache-core/node_modules/ethereumjs-vm/node_modules/memdown": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/memdown/-/memdown-1.4.1.tgz", + "integrity": "sha1-tOThkhdGZP+65BNhqlAPMRnv4hU=", + "dev": true, + "dependencies": { + "abstract-leveldown": "~2.7.1", + "functional-red-black-tree": "^1.0.1", + "immediate": "^3.2.3", + "inherits": "~2.0.1", + "ltgt": "~2.2.0", + "safe-buffer": "~5.1.1" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-vm/node_modules/memdown/node_modules/abstract-leveldown": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.7.2.tgz", + "integrity": "sha512-+OVvxH2rHVEhWLdbudP6p0+dNMXu8JA1CbhP19T8paTYAcX7oJ4OVjT+ZUVpv7mITxXHqDMej+GdqXBmXkw09w==", + "dev": true, + "dependencies": { + "xtend": "~4.0.0" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-vm/node_modules/merkle-patricia-tree": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/merkle-patricia-tree/-/merkle-patricia-tree-2.3.2.tgz", + "integrity": "sha512-81PW5m8oz/pz3GvsAwbauj7Y00rqm81Tzad77tHBwU7pIAtN+TJnMSOJhxBKflSVYhptMMb9RskhqHqrSm1V+g==", + "dev": true, + "dependencies": { + "async": "^1.4.2", + "ethereumjs-util": "^5.0.0", + "level-ws": "0.0.0", + "levelup": "^1.2.1", + "memdown": "^1.0.0", + "readable-stream": "^2.0.0", + "rlp": "^2.0.0", + "semaphore": ">=1.0.1" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-vm/node_modules/merkle-patricia-tree/node_modules/async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "dev": true + }, + "node_modules/ganache-core/node_modules/ethereumjs-vm/node_modules/merkle-patricia-tree/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-vm/node_modules/object-keys": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz", + "integrity": "sha1-KKaq50KN0sOpLz2V8hM13SBOAzY=", + "dev": true + }, + "node_modules/ganache-core/node_modules/ethereumjs-vm/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/ganache-core/node_modules/ethereumjs-vm/node_modules/semver": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", + "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/ganache-core/node_modules/ethereumjs-vm/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + }, + "node_modules/ganache-core/node_modules/ethereumjs-wallet": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/ethereumjs-wallet/-/ethereumjs-wallet-0.6.5.tgz", + "integrity": "sha512-MDwjwB9VQVnpp/Dc1XzA6J1a3wgHQ4hSvA1uWNatdpOrtCbPVuQSKSyRnjLvS0a+KKMw2pvQ9Ybqpb3+eW8oNA==", + "dev": true, + "optional": true, + "dependencies": { + "aes-js": "^3.1.1", + "bs58check": "^2.1.2", + "ethereum-cryptography": "^0.1.3", + "ethereumjs-util": "^6.0.0", + "randombytes": "^2.0.6", + "safe-buffer": "^5.1.2", + "scryptsy": "^1.2.1", + "utf8": "^3.0.0", + "uuid": "^3.3.2" + } + }, + "node_modules/ganache-core/node_modules/ethjs-unit": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/ethjs-unit/-/ethjs-unit-0.1.6.tgz", + "integrity": "sha1-xmWSHkduh7ziqdWIpv4EBbLEFpk=", + "dev": true, + "optional": true, + "dependencies": { + "bn.js": "4.11.6", + "number-to-bn": "1.7.0" + }, + "engines": { + "node": ">=6.5.0", + "npm": ">=3" + } + }, + "node_modules/ganache-core/node_modules/ethjs-unit/node_modules/bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/ethjs-util": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/ethjs-util/-/ethjs-util-0.1.6.tgz", + "integrity": "sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w==", + "dev": true, + "dependencies": { + "is-hex-prefixed": "1.0.0", + "strip-hex-prefix": "1.0.0" + }, + "engines": { + "node": ">=6.5.0", + "npm": ">=3" + } + }, + "node_modules/ganache-core/node_modules/eventemitter3": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dev": true, + "optional": true, + "dependencies": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ganache-core/node_modules/express": { + "version": "4.17.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", + "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", + "dev": true, + "optional": true, + "dependencies": { + "accepts": "~1.3.7", + "array-flatten": "1.1.1", + "body-parser": "1.19.0", + "content-disposition": "0.5.3", + "content-type": "~1.0.4", + "cookie": "0.4.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "~1.1.2", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "~1.1.2", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.5", + "qs": "6.7.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.1.2", + "send": "0.17.1", + "serve-static": "1.14.1", + "setprototypeof": "1.1.1", + "statuses": "~1.5.0", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/ganache-core/node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "optional": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/ganache-core/node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/express/node_modules/qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/ganache-core/node_modules/express/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/ext": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", + "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", + "dev": true, + "dependencies": { + "type": "^2.0.0" + } + }, + "node_modules/ganache-core/node_modules/ext/node_modules/type": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.1.0.tgz", + "integrity": "sha512-G9absDWvhAWCV2gmF1zKud3OyC61nZDwWvBL2DApaVFogI07CprggiQAOOjvp2NRjYWFzPyu7vwtDrQFq8jeSA==", + "dev": true + }, + "node_modules/ganache-core/node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "node_modules/ganache-core/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true, + "engines": [ + "node >=0.6.0" + ] + }, + "node_modules/ganache-core/node_modules/fake-merkle-patricia-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/fake-merkle-patricia-tree/-/fake-merkle-patricia-tree-1.0.1.tgz", + "integrity": "sha1-S4w6z7Ugr635hgsfFM2M40As3dM=", + "dev": true, + "dependencies": { + "checkpoint-store": "^1.1.0" + } + }, + "node_modules/ganache-core/node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/ganache-core/node_modules/fetch-ponyfill": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/fetch-ponyfill/-/fetch-ponyfill-4.1.0.tgz", + "integrity": "sha1-rjzl9zLGReq4fkroeTQUcJsjmJM=", + "dev": true, + "dependencies": { + "node-fetch": "~1.7.1" + } + }, + "node_modules/ganache-core/node_modules/fetch-ponyfill/node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/fetch-ponyfill/node_modules/node-fetch": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", + "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", + "dev": true, + "dependencies": { + "encoding": "^0.1.11", + "is-stream": "^1.0.1" + } + }, + "node_modules/ganache-core/node_modules/finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "dev": true, + "optional": true, + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/ganache-core/node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "optional": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/ganache-core/node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/find-yarn-workspace-root": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/find-yarn-workspace-root/-/find-yarn-workspace-root-1.2.1.tgz", + "integrity": "sha512-dVtfb0WuQG+8Ag2uWkbG79hOUzEsRrhBzgfn86g2sJPkzmcpGdghbNTfUKGTxymFrY/tLIodDzLoW9nOJ4FY8Q==", + "dev": true, + "dependencies": { + "fs-extra": "^4.0.3", + "micromatch": "^3.1.4" + } + }, + "node_modules/ganache-core/node_modules/find-yarn-workspace-root/node_modules/braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "dependencies": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/find-yarn-workspace-root/node_modules/braces/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/find-yarn-workspace-root/node_modules/fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "dependencies": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/find-yarn-workspace-root/node_modules/fill-range/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/find-yarn-workspace-root/node_modules/fs-extra": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", + "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "node_modules/ganache-core/node_modules/find-yarn-workspace-root/node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "node_modules/ganache-core/node_modules/find-yarn-workspace-root/node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/find-yarn-workspace-root/node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/find-yarn-workspace-root/node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/find-yarn-workspace-root/node_modules/micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/find-yarn-workspace-root/node_modules/to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "dependencies": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/flow-stoplight": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/flow-stoplight/-/flow-stoplight-1.0.0.tgz", + "integrity": "sha1-SiksW8/4s5+mzAyxqFPYbyfu/3s=", + "dev": true + }, + "node_modules/ganache-core/node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dev": true, + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/ganache-core/node_modules/forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/ganache-core/node_modules/form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/ganache-core/node_modules/forwarded": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/ganache-core/node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/ganache-core/node_modules/fs-extra": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", + "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/ganache-core/node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "node_modules/ganache-core/node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "node_modules/ganache-core/node_modules/functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "node_modules/ganache-core/node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dev": true, + "optional": true, + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ganache-core/node_modules/getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dev": true, + "dependencies": { + "assert-plus": "^1.0.0" + } + }, + "node_modules/ganache-core/node_modules/glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + } + }, + "node_modules/ganache-core/node_modules/global": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz", + "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==", + "dev": true, + "dependencies": { + "min-document": "^2.19.0", + "process": "^0.11.10" + } + }, + "node_modules/ganache-core/node_modules/got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "dev": true, + "optional": true, + "dependencies": { + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/ganache-core/node_modules/got/node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "optional": true, + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache-core/node_modules/har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/ganache-core/node_modules/har-validator": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "deprecated": "this library is no longer supported", + "dev": true, + "dependencies": { + "ajv": "^6.12.3", + "har-schema": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache-core/node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/ganache-core/node_modules/has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/has-ansi/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/has-symbol-support-x": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz", + "integrity": "sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw==", + "dev": true, + "optional": true, + "engines": { + "node": "*" + } + }, + "node_modules/ganache-core/node_modules/has-to-string-tag-x": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", + "integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==", + "dev": true, + "optional": true, + "dependencies": { + "has-symbol-support-x": "^1.4.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/ganache-core/node_modules/hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ganache-core/node_modules/hash-base/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/ganache-core/node_modules/heap": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/heap/-/heap-0.2.6.tgz", + "integrity": "sha1-CH4fELBGky/IWU3Z5tN4r8nR5aw=", + "dev": true + }, + "node_modules/ganache-core/node_modules/home-or-tmp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", + "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", + "dev": true, + "dependencies": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/http-errors": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", + "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", + "dev": true, + "optional": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/ganache-core/node_modules/http-errors/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/http-https": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/http-https/-/http-https-1.0.0.tgz", + "integrity": "sha1-L5CN1fHbQGjAWM1ubUzjkskTOJs=", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dev": true, + "dependencies": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + }, + "engines": { + "node": ">=0.8", + "npm": ">=1.3.7" + } + }, + "node_modules/ganache-core/node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/idna-uts46-hx": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/idna-uts46-hx/-/idna-uts46-hx-2.3.1.tgz", + "integrity": "sha512-PWoF9Keq6laYdIRwwCdhTPl60xRqAloYNMQLiyUnG42VjT53oW07BXIRM+NK7eQjzXjAk2gUvX9caRxlnF9TAA==", + "dev": true, + "optional": true, + "dependencies": { + "punycode": "2.1.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/ganache-core/node_modules/idna-uts46-hx/node_modules/punycode": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.0.tgz", + "integrity": "sha1-X4Y+3Im5bbCQdLrXlHvwkFbKTn0=", + "dev": true, + "optional": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache-core/node_modules/immediate": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.2.3.tgz", + "integrity": "sha1-0UD6j2FGWb1lQSMwl92qwlzdmRw=", + "dev": true + }, + "node_modules/ganache-core/node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/ganache-core/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/ganache-core/node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/ganache-core/node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/is-arguments": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.0.tgz", + "integrity": "sha512-1Ij4lOMPl/xB5kBDn7I+b2ttPMKa8szhEIrXDuXQD/oe3HJLTLhqhgGspwgyGd6MOywBUqVvYicF72lkgDnIHg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ganache-core/node_modules/is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "dev": true, + "dependencies": { + "ci-info": "^2.0.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/ganache-core/node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/is-date-object": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", + "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ganache-core/node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/is-finite": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", + "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", + "dev": true, + "engines": { + "node": ">=0.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ganache-core/node_modules/is-fn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fn/-/is-fn-1.0.0.tgz", + "integrity": "sha1-lUPV3nvPWwiiLsiiC65uKG1RDYw=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/is-function": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-function/-/is-function-1.0.2.tgz", + "integrity": "sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==", + "dev": true + }, + "node_modules/ganache-core/node_modules/is-hex-prefixed": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz", + "integrity": "sha1-fY035q135dEnFIkTxXPggtd39VQ=", + "dev": true, + "engines": { + "node": ">=6.5.0", + "npm": ">=3" + } + }, + "node_modules/ganache-core/node_modules/is-object": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz", + "integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==", + "dev": true, + "optional": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ganache-core/node_modules/is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/is-retry-allowed": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz", + "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "node_modules/ganache-core/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "node_modules/ganache-core/node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "node_modules/ganache-core/node_modules/isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true + }, + "node_modules/ganache-core/node_modules/isurl": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", + "integrity": "sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==", + "dev": true, + "optional": true, + "dependencies": { + "has-to-string-tag-x": "^1.2.0", + "is-object": "^1.0.1" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/ganache-core/node_modules/js-sha3": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.5.7.tgz", + "integrity": "sha1-DU/9gALVMzqrr0oj7tL2N0yfKOc=", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true + }, + "node_modules/ganache-core/node_modules/json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/json-rpc-engine": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/json-rpc-engine/-/json-rpc-engine-3.8.0.tgz", + "integrity": "sha512-6QNcvm2gFuuK4TKU1uwfH0Qd/cOSb9c1lls0gbnIhciktIUQJwz6NQNAW4B1KiGPenv7IKu97V222Yo1bNhGuA==", + "dev": true, + "dependencies": { + "async": "^2.0.1", + "babel-preset-env": "^1.7.0", + "babelify": "^7.3.0", + "json-rpc-error": "^2.0.0", + "promise-to-callback": "^1.0.0", + "safe-event-emitter": "^1.0.1" + } + }, + "node_modules/ganache-core/node_modules/json-rpc-error": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/json-rpc-error/-/json-rpc-error-2.0.0.tgz", + "integrity": "sha1-p6+cICg4tekFxyUOVH8a/3cligI=", + "dev": true, + "dependencies": { + "inherits": "^2.0.1" + } + }, + "node_modules/ganache-core/node_modules/json-rpc-random-id": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-rpc-random-id/-/json-rpc-random-id-1.0.1.tgz", + "integrity": "sha1-uknZat7RRE27jaPSA3SKy7zeyMg=", + "dev": true + }, + "node_modules/ganache-core/node_modules/json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true + }, + "node_modules/ganache-core/node_modules/json-stable-stringify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", + "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", + "dev": true, + "dependencies": { + "jsonify": "~0.0.0" + } + }, + "node_modules/ganache-core/node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true + }, + "node_modules/ganache-core/node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "dev": true, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/ganache-core/node_modules/jsonify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/ganache-core/node_modules/jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "node_modules/ganache-core/node_modules/keccak": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/keccak/-/keccak-3.0.1.tgz", + "integrity": "sha512-epq90L9jlFWCW7+pQa6JOnKn2Xgl2mtI664seYR6MHskvI9agt7AnDqmAlp9TqU4/caMYbA08Hi5DMZAl5zdkA==", + "dev": true, + "hasInstallScript": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "node-addon-api": "^2.0.0", + "node-gyp-build": "^4.2.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/ganache-core/node_modules/keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "dev": true, + "optional": true, + "dependencies": { + "json-buffer": "3.0.0" + } + }, + "node_modules/ganache-core/node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/klaw-sync": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/klaw-sync/-/klaw-sync-6.0.0.tgz", + "integrity": "sha512-nIeuVSzdCCs6TDPTqI8w1Yre34sSq7AkZ4B3sfOBbI2CgVSB4Du4aLQijFU2+lhAFCwt9+42Hel6lQNIv6AntQ==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.11" + } + }, + "node_modules/ganache-core/node_modules/level-codec": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-9.0.2.tgz", + "integrity": "sha512-UyIwNb1lJBChJnGfjmO0OR+ezh2iVu1Kas3nvBS/BzGnx79dv6g7unpKIDNPMhfdTEGoc7mC8uAu51XEtX+FHQ==", + "dev": true, + "dependencies": { + "buffer": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache-core/node_modules/level-errors": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-2.0.1.tgz", + "integrity": "sha512-UVprBJXite4gPS+3VznfgDSU8PTRuVX0NXwoWW50KLxd2yw4Y1t2JUR5In1itQnudZqRMT9DlAM3Q//9NCjCFw==", + "dev": true, + "dependencies": { + "errno": "~0.1.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache-core/node_modules/level-iterator-stream": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-2.0.3.tgz", + "integrity": "sha512-I6Heg70nfF+e5Y3/qfthJFexhRw/Gi3bIymCoXAlijZdAcLaPuWSJs3KXyTYf23ID6g0o2QF62Yh+grOXY3Rig==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.5", + "xtend": "^4.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ganache-core/node_modules/level-mem": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/level-mem/-/level-mem-3.0.1.tgz", + "integrity": "sha512-LbtfK9+3Ug1UmvvhR2DqLqXiPW1OJ5jEh0a3m9ZgAipiwpSxGj/qaVVy54RG5vAQN1nCuXqjvprCuKSCxcJHBg==", + "dev": true, + "dependencies": { + "level-packager": "~4.0.0", + "memdown": "~3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache-core/node_modules/level-mem/node_modules/abstract-leveldown": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-5.0.0.tgz", + "integrity": "sha512-5mU5P1gXtsMIXg65/rsYGsi93+MlogXZ9FA8JnwKurHQg64bfXwGYVdVdijNTVNOlAsuIiOwHdvFFD5JqCJQ7A==", + "dev": true, + "dependencies": { + "xtend": "~4.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache-core/node_modules/level-mem/node_modules/ltgt": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ltgt/-/ltgt-2.2.1.tgz", + "integrity": "sha1-81ypHEk/e3PaDgdJUwTxezH4fuU=", + "dev": true + }, + "node_modules/ganache-core/node_modules/level-mem/node_modules/memdown": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/memdown/-/memdown-3.0.0.tgz", + "integrity": "sha512-tbV02LfZMWLcHcq4tw++NuqMO+FZX8tNJEiD2aNRm48ZZusVg5N8NART+dmBkepJVye986oixErf7jfXboMGMA==", + "dev": true, + "dependencies": { + "abstract-leveldown": "~5.0.0", + "functional-red-black-tree": "~1.0.1", + "immediate": "~3.2.3", + "inherits": "~2.0.1", + "ltgt": "~2.2.0", + "safe-buffer": "~5.1.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache-core/node_modules/level-mem/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/ganache-core/node_modules/level-packager": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/level-packager/-/level-packager-4.0.1.tgz", + "integrity": "sha512-svCRKfYLn9/4CoFfi+d8krOtrp6RoX8+xm0Na5cgXMqSyRru0AnDYdLl+YI8u1FyS6gGZ94ILLZDE5dh2but3Q==", + "dev": true, + "dependencies": { + "encoding-down": "~5.0.0", + "levelup": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache-core/node_modules/level-post": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/level-post/-/level-post-1.0.7.tgz", + "integrity": "sha512-PWYqG4Q00asOrLhX7BejSajByB4EmG2GaKHfj3h5UmmZ2duciXLPGYWIjBzLECFWUGOZWlm5B20h/n3Gs3HKew==", + "dev": true, + "dependencies": { + "ltgt": "^2.1.2" + } + }, + "node_modules/ganache-core/node_modules/level-sublevel": { + "version": "6.6.4", + "resolved": "https://registry.npmjs.org/level-sublevel/-/level-sublevel-6.6.4.tgz", + "integrity": "sha512-pcCrTUOiO48+Kp6F1+UAzF/OtWqLcQVTVF39HLdZ3RO8XBoXt+XVPKZO1vVr1aUoxHZA9OtD2e1v7G+3S5KFDA==", + "dev": true, + "dependencies": { + "bytewise": "~1.1.0", + "level-codec": "^9.0.0", + "level-errors": "^2.0.0", + "level-iterator-stream": "^2.0.3", + "ltgt": "~2.1.1", + "pull-defer": "^0.2.2", + "pull-level": "^2.0.3", + "pull-stream": "^3.6.8", + "typewiselite": "~1.0.0", + "xtend": "~4.0.0" + } + }, + "node_modules/ganache-core/node_modules/level-ws": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/level-ws/-/level-ws-1.0.0.tgz", + "integrity": "sha512-RXEfCmkd6WWFlArh3X8ONvQPm8jNpfA0s/36M4QzLqrLEIt1iJE9WBHLZ5vZJK6haMjJPJGJCQWfjMNnRcq/9Q==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "readable-stream": "^2.2.8", + "xtend": "^4.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache-core/node_modules/levelup": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/levelup/-/levelup-3.1.1.tgz", + "integrity": "sha512-9N10xRkUU4dShSRRFTBdNaBxofz+PGaIZO962ckboJZiNmLuhVT6FZ6ZKAsICKfUBO76ySaYU6fJWX/jnj3Lcg==", + "dev": true, + "dependencies": { + "deferred-leveldown": "~4.0.0", + "level-errors": "~2.0.0", + "level-iterator-stream": "~3.0.0", + "xtend": "~4.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache-core/node_modules/levelup/node_modules/level-iterator-stream": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-3.0.1.tgz", + "integrity": "sha512-nEIQvxEED9yRThxvOrq8Aqziy4EGzrxSZK+QzEFAVuJvQ8glfyZ96GB6BoI4sBbLfjMXm2w4vu3Tkcm9obcY0g==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "readable-stream": "^2.3.6", + "xtend": "^4.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache-core/node_modules/lodash": { + "version": "4.17.20", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", + "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==", + "dev": true + }, + "node_modules/ganache-core/node_modules/looper": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/looper/-/looper-2.0.0.tgz", + "integrity": "sha1-Zs0Md0rz1P7axTeU90LbVtqPCew=", + "dev": true + }, + "node_modules/ganache-core/node_modules/lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/ganache-core/node_modules/ltgt": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ltgt/-/ltgt-2.1.3.tgz", + "integrity": "sha1-EIUaBtmWS5cReEQcI8nlJpjuzjQ=", + "dev": true + }, + "node_modules/ganache-core/node_modules/md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "dev": true, + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/ganache-core/node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/ganache-core/node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/merkle-patricia-tree": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/merkle-patricia-tree/-/merkle-patricia-tree-3.0.0.tgz", + "integrity": "sha512-soRaMuNf/ILmw3KWbybaCjhx86EYeBbD8ph0edQCTed0JN/rxDt1EBN52Ajre3VyGo+91f8+/rfPIRQnnGMqmQ==", + "dev": true, + "dependencies": { + "async": "^2.6.1", + "ethereumjs-util": "^5.2.0", + "level-mem": "^3.0.1", + "level-ws": "^1.0.0", + "readable-stream": "^3.0.6", + "rlp": "^2.0.0", + "semaphore": ">=1.0.1" + } + }, + "node_modules/ganache-core/node_modules/merkle-patricia-tree/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ganache-core/node_modules/merkle-patricia-tree/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/ganache-core/node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/ganache-core/node_modules/miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dev": true, + "dependencies": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + }, + "bin": { + "miller-rabin": "bin/miller-rabin" + } + }, + "node_modules/ganache-core/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "optional": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ganache-core/node_modules/mime-db": { + "version": "1.45.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.45.0.tgz", + "integrity": "sha512-CkqLUxUk15hofLoLyljJSrukZi8mAtgd+yE5uO4tqRZsdsAJKv0O+rFMhVDRJgozy+yG6md5KwuXhD4ocIoP+w==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/ganache-core/node_modules/mime-types": { + "version": "2.1.28", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.28.tgz", + "integrity": "sha512-0TO2yJ5YHYr7M2zzT7gDU1tbwHxEUWBCLt0lscSNpcdAfFyJOVEpRYNS7EXVcTLNj/25QO8gulHC5JtTzSE2UQ==", + "dev": true, + "dependencies": { + "mime-db": "1.45.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/ganache-core/node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "dev": true, + "optional": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/ganache-core/node_modules/min-document": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", + "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", + "dev": true, + "dependencies": { + "dom-walk": "^0.1.0" + } + }, + "node_modules/ganache-core/node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/ganache-core/node_modules/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "node_modules/ganache-core/node_modules/minizlib": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", + "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==", + "dev": true, + "optional": true, + "dependencies": { + "minipass": "^2.9.0" + } + }, + "node_modules/ganache-core/node_modules/minizlib/node_modules/minipass": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", + "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", + "dev": true, + "optional": true, + "dependencies": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "node_modules/ganache-core/node_modules/mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/ganache-core/node_modules/mkdirp-promise": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/mkdirp-promise/-/mkdirp-promise-5.0.1.tgz", + "integrity": "sha1-6bj2jlUsaKnBcTuEiD96HdA5uKE=", + "deprecated": "This package is broken and no longer maintained. 'mkdirp' itself supports promises now, please switch to that.", + "dev": true, + "optional": true, + "dependencies": { + "mkdirp": "*" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ganache-core/node_modules/mock-fs": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-4.13.0.tgz", + "integrity": "sha512-DD0vOdofJdoaRNtnWcrXe6RQbpHkPPmtqGq14uRX0F8ZKJ5nv89CVTYl/BZdppDxBDaV0hl75htg3abpEWlPZA==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + }, + "node_modules/ganache-core/node_modules/multibase": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/multibase/-/multibase-0.6.1.tgz", + "integrity": "sha512-pFfAwyTjbbQgNc3G7D48JkJxWtoJoBMaR4xQUOuB8RnCgRqaYmWNFeJTTvrJ2w51bjLq2zTby6Rqj9TQ9elSUw==", + "deprecated": "This module has been superseded by the multiformats module", + "dev": true, + "optional": true, + "dependencies": { + "base-x": "^3.0.8", + "buffer": "^5.5.0" + } + }, + "node_modules/ganache-core/node_modules/multicodec": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/multicodec/-/multicodec-0.5.7.tgz", + "integrity": "sha512-PscoRxm3f+88fAtELwUnZxGDkduE2HD9Q6GHUOywQLjOGT/HAdhjLDYNZ1e7VR0s0TP0EwZ16LNUTFpoBGivOA==", + "deprecated": "This module has been superseded by the multiformats module", + "dev": true, + "optional": true, + "dependencies": { + "varint": "^5.0.0" + } + }, + "node_modules/ganache-core/node_modules/multihashes": { + "version": "0.4.21", + "resolved": "https://registry.npmjs.org/multihashes/-/multihashes-0.4.21.tgz", + "integrity": "sha512-uVSvmeCWf36pU2nB4/1kzYZjsXD9vofZKpgudqkceYY5g2aZZXJ5r9lxuzoRLl1OAp28XljXsEJ/X/85ZsKmKw==", + "dev": true, + "optional": true, + "dependencies": { + "buffer": "^5.5.0", + "multibase": "^0.7.0", + "varint": "^5.0.0" + } + }, + "node_modules/ganache-core/node_modules/multihashes/node_modules/multibase": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/multibase/-/multibase-0.7.0.tgz", + "integrity": "sha512-TW8q03O0f6PNFTQDvh3xxH03c8CjGaaYrjkl9UQPG6rz53TQzzxJVCIWVjzcbN/Q5Y53Zd0IBQBMVktVgNx4Fg==", + "deprecated": "This module has been superseded by the multiformats module", + "dev": true, + "optional": true, + "dependencies": { + "base-x": "^3.0.8", + "buffer": "^5.5.0" + } + }, + "node_modules/ganache-core/node_modules/nano-json-stream-parser": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/nano-json-stream-parser/-/nano-json-stream-parser-0.1.2.tgz", + "integrity": "sha1-DMj20OK2IrR5xA1JnEbWS3Vcb18=", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/negotiator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/ganache-core/node_modules/next-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", + "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=", + "dev": true + }, + "node_modules/ganache-core/node_modules/nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, + "node_modules/ganache-core/node_modules/node-addon-api": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", + "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/ganache-core/node_modules/node-fetch": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.1.2.tgz", + "integrity": "sha1-q4hOjn5X44qUR1POxwb3iNF2i7U=", + "dev": true, + "engines": { + "node": "4.x || >=6.0.0" + } + }, + "node_modules/ganache-core/node_modules/node-gyp-build": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.2.3.tgz", + "integrity": "sha512-MN6ZpzmfNCRM+3t57PTJHgHyw/h4OWnZ6mR8P5j/uZtqQr46RRuDE/P+g3n0YR/AiYXeWixZZzaip77gdICfRg==", + "dev": true, + "inBundle": true, + "license": "MIT", + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" + } + }, + "node_modules/ganache-core/node_modules/normalize-url": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.0.tgz", + "integrity": "sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ==", + "dev": true, + "optional": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ganache-core/node_modules/number-to-bn": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/number-to-bn/-/number-to-bn-1.7.0.tgz", + "integrity": "sha1-uzYjWS9+X54AMLGXe9QaDFP+HqA=", + "dev": true, + "optional": true, + "dependencies": { + "bn.js": "4.11.6", + "strip-hex-prefix": "1.0.0" + }, + "engines": { + "node": ">=6.5.0", + "npm": ">=3" + } + }, + "node_modules/ganache-core/node_modules/number-to-bn/node_modules/bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/ganache-core/node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/object-is": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.4.tgz", + "integrity": "sha512-1ZvAZ4wlF7IyPVOcE1Omikt7UpaFlOQq0HlSti+ZvDH3UiD2brwGMwDbyV43jao2bKJ+4+WdPJHSd7kgzKYVqg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ganache-core/node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/ganache-core/node_modules/object.assign": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ganache-core/node_modules/oboe": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/oboe/-/oboe-2.1.4.tgz", + "integrity": "sha1-IMiM2wwVNxuwQRklfU/dNLCqSfY=", + "dev": true, + "optional": true, + "dependencies": { + "http-https": "^1.0.0" + } + }, + "node_modules/ganache-core/node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dev": true, + "optional": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/ganache-core/node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/ganache-core/node_modules/os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "dev": true, + "optional": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache-core/node_modules/p-timeout": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-1.2.1.tgz", + "integrity": "sha1-XrOzU7f86Z8QGhA4iAuwVOu+o4Y=", + "dev": true, + "optional": true, + "dependencies": { + "p-finally": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ganache-core/node_modules/p-timeout/node_modules/p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true, + "optional": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/ganache-core/node_modules/parse-asn1": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", + "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", + "dev": true, + "optional": true, + "dependencies": { + "asn1.js": "^5.2.0", + "browserify-aes": "^1.0.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ganache-core/node_modules/parse-headers": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.3.tgz", + "integrity": "sha512-QhhZ+DCCit2Coi2vmAKbq5RGTRcQUOE2+REgv8vdyu7MnYx2eZztegqtTx99TZ86GTIwqiy3+4nQTWZ2tgmdCA==", + "dev": true + }, + "node_modules/ganache-core/node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/ganache-core/node_modules/patch-package": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/patch-package/-/patch-package-6.2.2.tgz", + "integrity": "sha512-YqScVYkVcClUY0v8fF0kWOjDYopzIM8e3bj/RU1DPeEF14+dCGm6UeOYm4jvCyxqIEQ5/eJzmbWfDWnUleFNMg==", + "dev": true, + "dependencies": { + "@yarnpkg/lockfile": "^1.1.0", + "chalk": "^2.4.2", + "cross-spawn": "^6.0.5", + "find-yarn-workspace-root": "^1.2.1", + "fs-extra": "^7.0.1", + "is-ci": "^2.0.0", + "klaw-sync": "^6.0.0", + "minimist": "^1.2.0", + "rimraf": "^2.6.3", + "semver": "^5.6.0", + "slash": "^2.0.0", + "tmp": "^0.0.33" + }, + "bin": { + "patch-package": "index.js" + }, + "engines": { + "npm": ">5" + } + }, + "node_modules/ganache-core/node_modules/patch-package/node_modules/cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" + } + }, + "node_modules/ganache-core/node_modules/patch-package/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/ganache-core/node_modules/patch-package/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/ganache-core/node_modules/patch-package/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/patch-package/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/patch-package/node_modules/slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache-core/node_modules/patch-package/node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/ganache-core/node_modules/patch-package/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/ganache-core/node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "dev": true + }, + "node_modules/ganache-core/node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/pbkdf2": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.1.tgz", + "integrity": "sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg==", + "dev": true, + "dependencies": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/ganache-core/node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true + }, + "node_modules/ganache-core/node_modules/precond": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/precond/-/precond-0.2.3.tgz", + "integrity": "sha1-qpWRvKokkj8eD0hJ0kD0fvwQdaw=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/ganache-core/node_modules/prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", + "dev": true, + "optional": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/ganache-core/node_modules/private": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", + "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/ganache-core/node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "dev": true, + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/ganache-core/node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "node_modules/ganache-core/node_modules/promise-to-callback": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/promise-to-callback/-/promise-to-callback-1.0.0.tgz", + "integrity": "sha1-XSp0kBC/tn2WNZj805YHRqaP7vc=", + "dev": true, + "dependencies": { + "is-fn": "^1.0.0", + "set-immediate-shim": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/proxy-addr": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz", + "integrity": "sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==", + "dev": true, + "optional": true, + "dependencies": { + "forwarded": "~0.1.2", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/ganache-core/node_modules/pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "node_modules/ganache-core/node_modules/psl": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", + "dev": true + }, + "node_modules/ganache-core/node_modules/public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dev": true, + "optional": true, + "dependencies": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/ganache-core/node_modules/pull-cat": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/pull-cat/-/pull-cat-1.1.11.tgz", + "integrity": "sha1-tkLdElXaN2pwa220+pYvX9t0wxs=", + "dev": true + }, + "node_modules/ganache-core/node_modules/pull-defer": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/pull-defer/-/pull-defer-0.2.3.tgz", + "integrity": "sha512-/An3KE7mVjZCqNhZsr22k1Tx8MACnUnHZZNPSJ0S62td8JtYr/AiRG42Vz7Syu31SoTLUzVIe61jtT/pNdjVYA==", + "dev": true + }, + "node_modules/ganache-core/node_modules/pull-level": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pull-level/-/pull-level-2.0.4.tgz", + "integrity": "sha512-fW6pljDeUThpq5KXwKbRG3X7Ogk3vc75d5OQU/TvXXui65ykm+Bn+fiktg+MOx2jJ85cd+sheufPL+rw9QSVZg==", + "dev": true, + "dependencies": { + "level-post": "^1.0.7", + "pull-cat": "^1.1.9", + "pull-live": "^1.0.1", + "pull-pushable": "^2.0.0", + "pull-stream": "^3.4.0", + "pull-window": "^2.1.4", + "stream-to-pull-stream": "^1.7.1" + } + }, + "node_modules/ganache-core/node_modules/pull-live": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/pull-live/-/pull-live-1.0.1.tgz", + "integrity": "sha1-pOzuAeMwFV6RJLu89HYfIbOPUfU=", + "dev": true, + "dependencies": { + "pull-cat": "^1.1.9", + "pull-stream": "^3.4.0" + } + }, + "node_modules/ganache-core/node_modules/pull-pushable": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/pull-pushable/-/pull-pushable-2.2.0.tgz", + "integrity": "sha1-Xy867UethpGfAbEqLpnW8b13ZYE=", + "dev": true + }, + "node_modules/ganache-core/node_modules/pull-stream": { + "version": "3.6.14", + "resolved": "https://registry.npmjs.org/pull-stream/-/pull-stream-3.6.14.tgz", + "integrity": "sha512-KIqdvpqHHaTUA2mCYcLG1ibEbu/LCKoJZsBWyv9lSYtPkJPBq8m3Hxa103xHi6D2thj5YXa0TqK3L3GUkwgnew==", + "dev": true + }, + "node_modules/ganache-core/node_modules/pull-window": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/pull-window/-/pull-window-2.1.4.tgz", + "integrity": "sha1-/DuG/uvRkgx64pdpHiP3BfiFUvA=", + "dev": true, + "dependencies": { + "looper": "^2.0.0" + } + }, + "node_modules/ganache-core/node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "optional": true, + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/ganache-core/node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache-core/node_modules/qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/ganache-core/node_modules/query-string": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz", + "integrity": "sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==", + "dev": true, + "optional": true, + "dependencies": { + "decode-uri-component": "^0.2.0", + "object-assign": "^4.1.0", + "strict-uri-encode": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/ganache-core/node_modules/randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dev": true, + "optional": true, + "dependencies": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "node_modules/ganache-core/node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/ganache-core/node_modules/raw-body": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", + "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", + "dev": true, + "optional": true, + "dependencies": { + "bytes": "3.1.0", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/ganache-core/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/ganache-core/node_modules/readable-stream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/ganache-core/node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true + }, + "node_modules/ganache-core/node_modules/regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true + }, + "node_modules/ganache-core/node_modules/regenerator-transform": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz", + "integrity": "sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==", + "dev": true, + "dependencies": { + "babel-runtime": "^6.18.0", + "babel-types": "^6.19.0", + "private": "^0.1.6" + } + }, + "node_modules/ganache-core/node_modules/regexp.prototype.flags": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", + "integrity": "sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ganache-core/node_modules/regexp.prototype.flags/node_modules/es-abstract": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0.tgz", + "integrity": "sha512-LJzK7MrQa8TS0ja2w3YNLzUgJCGPdPOV1yVvezjNnS89D+VR08+Szt2mz3YB2Dck/+w5tfIq/RoUAFqJJGM2yw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "get-intrinsic": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.2", + "is-callable": "^1.2.3", + "is-negative-zero": "^2.0.1", + "is-regex": "^1.1.2", + "is-string": "^1.0.5", + "object-inspect": "^1.9.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.2", + "string.prototype.trimend": "^1.0.4", + "string.prototype.trimstart": "^1.0.4", + "unbox-primitive": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ganache-core/node_modules/regexp.prototype.flags/node_modules/es-abstract/node_modules/get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ganache-core/node_modules/regexp.prototype.flags/node_modules/is-callable": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", + "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ganache-core/node_modules/regexpu-core": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", + "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", + "dev": true, + "dependencies": { + "regenerate": "^1.2.1", + "regjsgen": "^0.2.0", + "regjsparser": "^0.1.4" + } + }, + "node_modules/ganache-core/node_modules/regjsgen": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", + "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", + "dev": true + }, + "node_modules/ganache-core/node_modules/regjsparser": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", + "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", + "dev": true, + "dependencies": { + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/ganache-core/node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/ganache-core/node_modules/repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "dev": true, + "dependencies": { + "is-finite": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/request": { + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", + "dev": true, + "dependencies": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/ganache-core/node_modules/responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "dev": true, + "optional": true, + "dependencies": { + "lowercase-keys": "^1.0.0" + } + }, + "node_modules/ganache-core/node_modules/resumer": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/resumer/-/resumer-0.0.0.tgz", + "integrity": "sha1-8ej0YeQGS6Oegq883CqMiT0HZ1k=", + "dev": true, + "dependencies": { + "through": "~2.3.4" + } + }, + "node_modules/ganache-core/node_modules/rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/ganache-core/node_modules/ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dev": true, + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "node_modules/ganache-core/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ganache-core/node_modules/safe-event-emitter": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/safe-event-emitter/-/safe-event-emitter-1.0.1.tgz", + "integrity": "sha512-e1wFe99A91XYYxoQbcq2ZJUWurxEyP8vfz7A7vuUe1s95q8r5ebraVaA1BukYJcpM6V16ugWoD9vngi8Ccu5fg==", + "deprecated": "Renamed to @metamask/safe-event-emitter", + "dev": true, + "dependencies": { + "events": "^3.0.0" + } + }, + "node_modules/ganache-core/node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "node_modules/ganache-core/node_modules/scrypt-js": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz", + "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/scryptsy": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/scryptsy/-/scryptsy-1.2.1.tgz", + "integrity": "sha1-oyJfpLJST4AnAHYeKFW987LZIWM=", + "dev": true, + "optional": true, + "dependencies": { + "pbkdf2": "^3.0.3" + } + }, + "node_modules/ganache-core/node_modules/seedrandom": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/seedrandom/-/seedrandom-3.0.1.tgz", + "integrity": "sha512-1/02Y/rUeU1CJBAGLebiC5Lbo5FnB22gQbIFFYTLkwvp1xdABZJH1sn4ZT1MzXmPpzv+Rf/Lu2NcsLJiK4rcDg==", + "dev": true + }, + "node_modules/ganache-core/node_modules/semaphore": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/semaphore/-/semaphore-1.1.0.tgz", + "integrity": "sha512-O4OZEaNtkMd/K0i6js9SL+gqy0ZCBMgUvlSqHKi4IBdjhe7wB8pwztUk1BbZ1fmrvpwFrPbHzqd2w5pTcJH6LA==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/ganache-core/node_modules/send": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", + "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", + "dev": true, + "optional": true, + "dependencies": { + "debug": "2.6.9", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "~1.7.2", + "mime": "1.6.0", + "ms": "2.1.1", + "on-finished": "~2.3.0", + "range-parser": "~1.2.1", + "statuses": "~1.5.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/ganache-core/node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "optional": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/ganache-core/node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/send/node_modules/ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/serve-static": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", + "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", + "dev": true, + "optional": true, + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.17.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/ganache-core/node_modules/servify": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/servify/-/servify-0.1.12.tgz", + "integrity": "sha512-/xE6GvsKKqyo1BAY+KxOWXcLpPsUUyji7Qg3bVD7hh1eRze5bR1uYiuDA/k3Gof1s9BTzQZEJK8sNcNGFIzeWw==", + "dev": true, + "optional": true, + "dependencies": { + "body-parser": "^1.16.0", + "cors": "^2.8.1", + "express": "^4.14.0", + "request": "^2.79.0", + "xhr": "^2.3.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache-core/node_modules/set-immediate-shim": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", + "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/setprototypeof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + }, + "bin": { + "sha.js": "bin.js" + } + }, + "node_modules/ganache-core/node_modules/simple-concat": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", + "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "optional": true + }, + "node_modules/ganache-core/node_modules/simple-get": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-2.8.1.tgz", + "integrity": "sha512-lSSHRSw3mQNUGPAYRqo7xy9dhKmxFXIjLjp4KHpf99GEH2VH7C3AM+Qfx6du6jhfUi6Vm7XnbEVEf7Wb6N8jRw==", + "dev": true, + "optional": true, + "dependencies": { + "decompress-response": "^3.3.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "node_modules/ganache-core/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/source-map-support": { + "version": "0.5.12", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.12.tgz", + "integrity": "sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/ganache-core/node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "dev": true, + "dependencies": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + }, + "bin": { + "sshpk-conv": "bin/sshpk-conv", + "sshpk-sign": "bin/sshpk-sign", + "sshpk-verify": "bin/sshpk-verify" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/sshpk/node_modules/tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true + }, + "node_modules/ganache-core/node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/ganache-core/node_modules/stream-to-pull-stream": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/stream-to-pull-stream/-/stream-to-pull-stream-1.7.3.tgz", + "integrity": "sha512-6sNyqJpr5dIOQdgNy/xcDWwDuzAsAwVzhzrWlAPAQ7Lkjx/rv0wgvxEyKwTq6FmNd5rjTrELt/CLmaSw7crMGg==", + "dev": true, + "dependencies": { + "looper": "^3.0.0", + "pull-stream": "^3.2.3" + } + }, + "node_modules/ganache-core/node_modules/stream-to-pull-stream/node_modules/looper": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/looper/-/looper-3.0.0.tgz", + "integrity": "sha1-LvpUw7HLq6m5Su4uWRSwvlf7t0k=", + "dev": true + }, + "node_modules/ganache-core/node_modules/strict-uri-encode": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", + "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/ganache-core/node_modules/string_decoder/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/ganache-core/node_modules/string.prototype.trim": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.3.tgz", + "integrity": "sha512-16IL9pIBA5asNOSukPfxX2W68BaBvxyiRK16H3RA/lWW9BDosh+w7f+LhomPHpXJ82QEe7w7/rY/S1CV97raLg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ganache-core/node_modules/string.prototype.trimstart": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", + "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ganache-core/node_modules/strip-hex-prefix": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz", + "integrity": "sha1-DF8VX+8RUTczd96du1iNoFUA428=", + "dev": true, + "dependencies": { + "is-hex-prefixed": "1.0.0" + }, + "engines": { + "node": ">=6.5.0", + "npm": ">=3" + } + }, + "node_modules/ganache-core/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ganache-core/node_modules/swarm-js": { + "version": "0.1.40", + "resolved": "https://registry.npmjs.org/swarm-js/-/swarm-js-0.1.40.tgz", + "integrity": "sha512-yqiOCEoA4/IShXkY3WKwP5PvZhmoOOD8clsKA7EEcRILMkTEYHCQ21HDCAcVpmIxZq4LyZvWeRJ6quIyHk1caA==", + "dev": true, + "optional": true, + "dependencies": { + "bluebird": "^3.5.0", + "buffer": "^5.0.5", + "eth-lib": "^0.1.26", + "fs-extra": "^4.0.2", + "got": "^7.1.0", + "mime-types": "^2.1.16", + "mkdirp-promise": "^5.0.1", + "mock-fs": "^4.1.0", + "setimmediate": "^1.0.5", + "tar": "^4.0.2", + "xhr-request": "^1.0.1" + } + }, + "node_modules/ganache-core/node_modules/swarm-js/node_modules/fs-extra": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", + "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", + "dev": true, + "optional": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "node_modules/ganache-core/node_modules/swarm-js/node_modules/get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "dev": true, + "optional": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/ganache-core/node_modules/swarm-js/node_modules/got": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/got/-/got-7.1.0.tgz", + "integrity": "sha512-Y5WMo7xKKq1muPsxD+KmrR8DH5auG7fBdDVueZwETwV6VytKyU9OX/ddpq2/1hp1vIPvVb4T81dKQz3BivkNLw==", + "dev": true, + "optional": true, + "dependencies": { + "decompress-response": "^3.2.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "is-plain-obj": "^1.1.0", + "is-retry-allowed": "^1.0.0", + "is-stream": "^1.0.0", + "isurl": "^1.0.0-alpha5", + "lowercase-keys": "^1.0.0", + "p-cancelable": "^0.3.0", + "p-timeout": "^1.1.1", + "safe-buffer": "^5.0.1", + "timed-out": "^4.0.0", + "url-parse-lax": "^1.0.0", + "url-to-options": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ganache-core/node_modules/swarm-js/node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/swarm-js/node_modules/p-cancelable": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz", + "integrity": "sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw==", + "dev": true, + "optional": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/ganache-core/node_modules/swarm-js/node_modules/prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/swarm-js/node_modules/url-parse-lax": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", + "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "dev": true, + "optional": true, + "dependencies": { + "prepend-http": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/tape": { + "version": "4.13.3", + "resolved": "https://registry.npmjs.org/tape/-/tape-4.13.3.tgz", + "integrity": "sha512-0/Y20PwRIUkQcTCSi4AASs+OANZZwqPKaipGCEwp10dQMipVvSZwUUCi01Y/OklIGyHKFhIcjock+DKnBfLAFw==", + "dev": true, + "dependencies": { + "deep-equal": "~1.1.1", + "defined": "~1.0.0", + "dotignore": "~0.1.2", + "for-each": "~0.3.3", + "function-bind": "~1.1.1", + "glob": "~7.1.6", + "has": "~1.0.3", + "inherits": "~2.0.4", + "is-regex": "~1.0.5", + "minimist": "~1.2.5", + "object-inspect": "~1.7.0", + "resolve": "~1.17.0", + "resumer": "~0.0.0", + "string.prototype.trim": "~1.2.1", + "through": "~2.3.8" + }, + "bin": { + "tape": "bin/tape" + } + }, + "node_modules/ganache-core/node_modules/tape/node_modules/glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/ganache-core/node_modules/tape/node_modules/is-regex": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", + "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==", + "dev": true, + "dependencies": { + "has": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ganache-core/node_modules/tape/node_modules/object-inspect": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", + "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ganache-core/node_modules/tape/node_modules/resolve": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", + "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", + "dev": true, + "dependencies": { + "path-parse": "^1.0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ganache-core/node_modules/tar": { + "version": "4.4.13", + "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.13.tgz", + "integrity": "sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA==", + "dev": true, + "optional": true, + "dependencies": { + "chownr": "^1.1.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.8.6", + "minizlib": "^1.2.1", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.3" + }, + "engines": { + "node": ">=4.5" + } + }, + "node_modules/ganache-core/node_modules/tar/node_modules/fs-minipass": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz", + "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==", + "dev": true, + "optional": true, + "dependencies": { + "minipass": "^2.6.0" + } + }, + "node_modules/ganache-core/node_modules/tar/node_modules/minipass": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", + "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", + "dev": true, + "optional": true, + "dependencies": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "node_modules/ganache-core/node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "node_modules/ganache-core/node_modules/through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dev": true, + "dependencies": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "node_modules/ganache-core/node_modules/timed-out": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", + "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/tmp": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.1.0.tgz", + "integrity": "sha512-J7Z2K08jbGcdA1kkQpJSqLF6T0tdQqpR2pnSUXsIchbPdTI9v3e85cLW0d6WDhwuAleOV71j2xWs8qMPfK7nKw==", + "dev": true, + "dependencies": { + "rimraf": "^2.6.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache-core/node_modules/to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "dev": true, + "optional": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache-core/node_modules/toidentifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/ganache-core/node_modules/tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, + "dependencies": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/ganache-core/node_modules/trim-right": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache-core/node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "dependencies": { + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/ganache-core/node_modules/tweetnacl": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", + "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==", + "dev": true + }, + "node_modules/ganache-core/node_modules/type": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", + "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==", + "dev": true + }, + "node_modules/ganache-core/node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dev": true, + "optional": true, + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/ganache-core/node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/ganache-core/node_modules/typewise": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typewise/-/typewise-1.0.3.tgz", + "integrity": "sha1-EGeTZUCvl5N8xdz5kiSG6fooRlE=", + "dev": true, + "dependencies": { + "typewise-core": "^1.2.0" + } + }, + "node_modules/ganache-core/node_modules/typewise-core": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/typewise-core/-/typewise-core-1.2.0.tgz", + "integrity": "sha1-l+uRgFx/VdL5QXSPpQ0xXZke8ZU=", + "dev": true + }, + "node_modules/ganache-core/node_modules/typewiselite": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/typewiselite/-/typewiselite-1.0.0.tgz", + "integrity": "sha1-yIgvobsQksBgBal/NO9chQjjZk4=", + "dev": true + }, + "node_modules/ganache-core/node_modules/ultron": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", + "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/ganache-core/node_modules/unorm": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/unorm/-/unorm-1.6.0.tgz", + "integrity": "sha512-b2/KCUlYZUeA7JFUuRJZPUtr4gZvBh7tavtv4fvk4+KV9pfGiR6CQAQAWl49ZpR3ts2dk4FYkP7EIgDJoiOLDA==", + "dev": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/ganache-core/node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/ganache-core/node_modules/url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + "dev": true, + "optional": true, + "dependencies": { + "prepend-http": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ganache-core/node_modules/url-set-query": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-set-query/-/url-set-query-1.0.0.tgz", + "integrity": "sha1-AW6M/Xwg7gXK/neV6JK9BwL6ozk=", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/url-to-options": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz", + "integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=", + "dev": true, + "optional": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/ganache-core/node_modules/utf8": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/utf8/-/utf8-3.0.0.tgz", + "integrity": "sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "node_modules/ganache-core/node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/ganache-core/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "dev": true, + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/ganache-core/node_modules/varint": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/varint/-/varint-5.0.2.tgz", + "integrity": "sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/ganache-core/node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "node_modules/ganache-core/node_modules/web3": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3/-/web3-1.2.11.tgz", + "integrity": "sha512-mjQ8HeU41G6hgOYm1pmeH0mRAeNKJGnJEUzDMoerkpw7QUQT4exVREgF1MYPvL/z6vAshOXei25LE/t/Bxl8yQ==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "dependencies": { + "web3-bzz": "1.2.11", + "web3-core": "1.2.11", + "web3-eth": "1.2.11", + "web3-eth-personal": "1.2.11", + "web3-net": "1.2.11", + "web3-shh": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-bzz": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-bzz/-/web3-bzz-1.2.11.tgz", + "integrity": "sha512-XGpWUEElGypBjeFyUhTkiPXFbDVD6Nr/S5jznE3t8cWUA0FxRf1n3n/NuIZeb0H9RkN2Ctd/jNma/k8XGa3YKg==", + "dev": true, + "optional": true, + "dependencies": { + "@types/node": "^12.12.6", + "got": "9.6.0", + "swarm-js": "^0.1.40", + "underscore": "1.9.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-bzz/node_modules/@types/node": { + "version": "12.19.12", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.19.12.tgz", + "integrity": "sha512-UwfL2uIU9arX/+/PRcIkT08/iBadGN2z6ExOROA2Dh5mAuWTBj6iJbQX4nekiV5H8cTrEG569LeX+HRco9Cbxw==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/web3-core": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core/-/web3-core-1.2.11.tgz", + "integrity": "sha512-CN7MEYOY5ryo5iVleIWRE3a3cZqVaLlIbIzDPsvQRUfzYnvzZQRZBm9Mq+ttDi2STOOzc1MKylspz/o3yq/LjQ==", + "dev": true, + "optional": true, + "dependencies": { + "@types/bn.js": "^4.11.5", + "@types/node": "^12.12.6", + "bignumber.js": "^9.0.0", + "web3-core-helpers": "1.2.11", + "web3-core-method": "1.2.11", + "web3-core-requestmanager": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-core-helpers": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.2.11.tgz", + "integrity": "sha512-PEPoAoZd5ME7UfbnCZBdzIerpe74GEvlwT4AjOmHeCVZoIFk7EqvOZDejJHt+feJA6kMVTdd0xzRNN295UhC1A==", + "dev": true, + "optional": true, + "dependencies": { + "underscore": "1.9.1", + "web3-eth-iban": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-core-method": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core-method/-/web3-core-method-1.2.11.tgz", + "integrity": "sha512-ff0q76Cde94HAxLDZ6DbdmKniYCQVtvuaYh+rtOUMB6kssa5FX0q3vPmixi7NPooFnbKmmZCM6NvXg4IreTPIw==", + "dev": true, + "optional": true, + "dependencies": { + "@ethersproject/transactions": "^5.0.0-beta.135", + "underscore": "1.9.1", + "web3-core-helpers": "1.2.11", + "web3-core-promievent": "1.2.11", + "web3-core-subscriptions": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-core-promievent": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core-promievent/-/web3-core-promievent-1.2.11.tgz", + "integrity": "sha512-il4McoDa/Ox9Agh4kyfQ8Ak/9ABYpnF8poBLL33R/EnxLsJOGQG2nZhkJa3I067hocrPSjEdlPt/0bHXsln4qA==", + "dev": true, + "optional": true, + "dependencies": { + "eventemitter3": "4.0.4" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-core-requestmanager": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core-requestmanager/-/web3-core-requestmanager-1.2.11.tgz", + "integrity": "sha512-oFhBtLfOiIbmfl6T6gYjjj9igOvtyxJ+fjS+byRxiwFJyJ5BQOz4/9/17gWR1Cq74paTlI7vDGxYfuvfE/mKvA==", + "dev": true, + "optional": true, + "dependencies": { + "underscore": "1.9.1", + "web3-core-helpers": "1.2.11", + "web3-providers-http": "1.2.11", + "web3-providers-ipc": "1.2.11", + "web3-providers-ws": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-core-subscriptions": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core-subscriptions/-/web3-core-subscriptions-1.2.11.tgz", + "integrity": "sha512-qEF/OVqkCvQ7MPs1JylIZCZkin0aKK9lDxpAtQ1F8niEDGFqn7DT8E/vzbIa0GsOjL2fZjDhWJsaW+BSoAW1gg==", + "dev": true, + "optional": true, + "dependencies": { + "eventemitter3": "4.0.4", + "underscore": "1.9.1", + "web3-core-helpers": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-core/node_modules/@types/node": { + "version": "12.19.12", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.19.12.tgz", + "integrity": "sha512-UwfL2uIU9arX/+/PRcIkT08/iBadGN2z6ExOROA2Dh5mAuWTBj6iJbQX4nekiV5H8cTrEG569LeX+HRco9Cbxw==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/web3-eth": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth/-/web3-eth-1.2.11.tgz", + "integrity": "sha512-REvxW1wJ58AgHPcXPJOL49d1K/dPmuw4LjPLBPStOVkQjzDTVmJEIsiLwn2YeuNDd4pfakBwT8L3bz1G1/wVsQ==", + "dev": true, + "optional": true, + "dependencies": { + "underscore": "1.9.1", + "web3-core": "1.2.11", + "web3-core-helpers": "1.2.11", + "web3-core-method": "1.2.11", + "web3-core-subscriptions": "1.2.11", + "web3-eth-abi": "1.2.11", + "web3-eth-accounts": "1.2.11", + "web3-eth-contract": "1.2.11", + "web3-eth-ens": "1.2.11", + "web3-eth-iban": "1.2.11", + "web3-eth-personal": "1.2.11", + "web3-net": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-eth-abi": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-abi/-/web3-eth-abi-1.2.11.tgz", + "integrity": "sha512-PkRYc0+MjuLSgg03QVWqWlQivJqRwKItKtEpRUaxUAeLE7i/uU39gmzm2keHGcQXo3POXAbOnMqkDvOep89Crg==", + "dev": true, + "optional": true, + "dependencies": { + "@ethersproject/abi": "5.0.0-beta.153", + "underscore": "1.9.1", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-eth-accounts": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-accounts/-/web3-eth-accounts-1.2.11.tgz", + "integrity": "sha512-6FwPqEpCfKIh3nSSGeo3uBm2iFSnFJDfwL3oS9pyegRBXNsGRVpgiW63yhNzL0796StsvjHWwQnQHsZNxWAkGw==", + "dev": true, + "optional": true, + "dependencies": { + "crypto-browserify": "3.12.0", + "eth-lib": "0.2.8", + "ethereumjs-common": "^1.3.2", + "ethereumjs-tx": "^2.1.1", + "scrypt-js": "^3.0.1", + "underscore": "1.9.1", + "uuid": "3.3.2", + "web3-core": "1.2.11", + "web3-core-helpers": "1.2.11", + "web3-core-method": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-eth-accounts/node_modules/eth-lib": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", + "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "dev": true, + "optional": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/ganache-core/node_modules/web3-eth-accounts/node_modules/uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "dev": true, + "optional": true, + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/ganache-core/node_modules/web3-eth-contract": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-contract/-/web3-eth-contract-1.2.11.tgz", + "integrity": "sha512-MzYuI/Rq2o6gn7vCGcnQgco63isPNK5lMAan2E51AJLknjSLnOxwNY3gM8BcKoy4Z+v5Dv00a03Xuk78JowFow==", + "dev": true, + "optional": true, + "dependencies": { + "@types/bn.js": "^4.11.5", + "underscore": "1.9.1", + "web3-core": "1.2.11", + "web3-core-helpers": "1.2.11", + "web3-core-method": "1.2.11", + "web3-core-promievent": "1.2.11", + "web3-core-subscriptions": "1.2.11", + "web3-eth-abi": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-eth-ens": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-ens/-/web3-eth-ens-1.2.11.tgz", + "integrity": "sha512-dbW7dXP6HqT1EAPvnniZVnmw6TmQEKF6/1KgAxbo8iBBYrVTMDGFQUUnZ+C4VETGrwwaqtX4L9d/FrQhZ6SUiA==", + "dev": true, + "optional": true, + "dependencies": { + "content-hash": "^2.5.2", + "eth-ens-namehash": "2.0.8", + "underscore": "1.9.1", + "web3-core": "1.2.11", + "web3-core-helpers": "1.2.11", + "web3-core-promievent": "1.2.11", + "web3-eth-abi": "1.2.11", + "web3-eth-contract": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-eth-iban": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.2.11.tgz", + "integrity": "sha512-ozuVlZ5jwFC2hJY4+fH9pIcuH1xP0HEFhtWsR69u9uDIANHLPQQtWYmdj7xQ3p2YT4bQLq/axKhZi7EZVetmxQ==", + "dev": true, + "optional": true, + "dependencies": { + "bn.js": "^4.11.9", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-eth-personal": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-personal/-/web3-eth-personal-1.2.11.tgz", + "integrity": "sha512-42IzUtKq9iHZ8K9VN0vAI50iSU9tOA1V7XU2BhF/tb7We2iKBVdkley2fg26TxlOcKNEHm7o6HRtiiFsVK4Ifw==", + "dev": true, + "optional": true, + "dependencies": { + "@types/node": "^12.12.6", + "web3-core": "1.2.11", + "web3-core-helpers": "1.2.11", + "web3-core-method": "1.2.11", + "web3-net": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-eth-personal/node_modules/@types/node": { + "version": "12.19.12", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.19.12.tgz", + "integrity": "sha512-UwfL2uIU9arX/+/PRcIkT08/iBadGN2z6ExOROA2Dh5mAuWTBj6iJbQX4nekiV5H8cTrEG569LeX+HRco9Cbxw==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/web3-net": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-net/-/web3-net-1.2.11.tgz", + "integrity": "sha512-sjrSDj0pTfZouR5BSTItCuZ5K/oZPVdVciPQ6981PPPIwJJkCMeVjD7I4zO3qDPCnBjBSbWvVnLdwqUBPtHxyg==", + "dev": true, + "optional": true, + "dependencies": { + "web3-core": "1.2.11", + "web3-core-method": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine": { + "version": "14.2.1", + "resolved": "https://registry.npmjs.org/web3-provider-engine/-/web3-provider-engine-14.2.1.tgz", + "integrity": "sha512-iSv31h2qXkr9vrL6UZDm4leZMc32SjWJFGOp/D92JXfcEboCqraZyuExDkpxKw8ziTufXieNM7LSXNHzszYdJw==", + "dev": true, + "dependencies": { + "async": "^2.5.0", + "backoff": "^2.5.0", + "clone": "^2.0.0", + "cross-fetch": "^2.1.0", + "eth-block-tracker": "^3.0.0", + "eth-json-rpc-infura": "^3.1.0", + "eth-sig-util": "^1.4.2", + "ethereumjs-block": "^1.2.2", + "ethereumjs-tx": "^1.2.0", + "ethereumjs-util": "^5.1.5", + "ethereumjs-vm": "^2.3.4", + "json-rpc-error": "^2.0.0", + "json-stable-stringify": "^1.0.1", + "promise-to-callback": "^1.0.0", + "readable-stream": "^2.2.9", + "request": "^2.85.0", + "semaphore": "^1.0.3", + "ws": "^5.1.1", + "xhr": "^2.2.0", + "xtend": "^4.0.1" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/abstract-leveldown": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.6.3.tgz", + "integrity": "sha512-2++wDf/DYqkPR3o5tbfdhF96EfMApo1GpPfzOsR/ZYXdkSmELlvOOEAl9iKkRsktMPHdGjO4rtkBpf2I7TiTeA==", + "dev": true, + "dependencies": { + "xtend": "~4.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/deferred-leveldown": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-1.2.2.tgz", + "integrity": "sha512-uukrWD2bguRtXilKt6cAWKyoXrTSMo5m7crUdLfWQmu8kIm88w3QZoUL+6nhpfKVmhHANER6Re3sKoNoZ3IKMA==", + "dev": true, + "dependencies": { + "abstract-leveldown": "~2.6.0" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/eth-sig-util": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/eth-sig-util/-/eth-sig-util-1.4.2.tgz", + "integrity": "sha1-jZWCAsftuq6Dlwf7pvCf8ydgYhA=", + "deprecated": "Deprecated in favor of '@metamask/eth-sig-util'", + "dev": true, + "dependencies": { + "ethereumjs-abi": "git+https://github.com/ethereumjs/ethereumjs-abi.git", + "ethereumjs-util": "^5.1.1" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/ethereumjs-abi": { + "version": "0.6.8", + "resolved": "git+ssh://git@github.com/ethereumjs/ethereumjs-abi.git#ee3994657fa7a427238e6ba92a84d0b529bbcde0", + "integrity": "sha512-qs8G5KwnIO/thOQjv1RvR/4oiTsy6IaCsN+ory5dbiqFXz8sd239aWJH0wmsVNPimL5X1KzQheUpi6xAo6FU4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "bn.js": "^4.11.8", + "ethereumjs-util": "^6.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/ethereumjs-abi/node_modules/ethereumjs-util": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-6.2.1.tgz", + "integrity": "sha512-W2Ktez4L01Vexijrm5EB6w7dg4n/TgpoYU4avuT5T3Vmnw/eCRtiBrJfQYS/DCSvDIOLn2k57GcHdeBcgVxAqw==", + "dev": true, + "dependencies": { + "@types/bn.js": "^4.11.3", + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "0.1.6", + "rlp": "^2.2.3" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/ethereumjs-account": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/ethereumjs-account/-/ethereumjs-account-2.0.5.tgz", + "integrity": "sha512-bgDojnXGjhMwo6eXQC0bY6UK2liSFUSMwwylOmQvZbSl/D7NXQ3+vrGO46ZeOgjGfxXmgIeVNDIiHw7fNZM4VA==", + "dev": true, + "dependencies": { + "ethereumjs-util": "^5.0.0", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/ethereumjs-block": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/ethereumjs-block/-/ethereumjs-block-1.7.1.tgz", + "integrity": "sha512-B+sSdtqm78fmKkBq78/QLKJbu/4Ts4P2KFISdgcuZUPDm9x+N7qgBPIIFUGbaakQh8bzuquiRVbdmvPKqbILRg==", + "deprecated": "New package name format for new versions: @ethereumjs/block. Please update.", + "dev": true, + "dependencies": { + "async": "^2.0.1", + "ethereum-common": "0.2.0", + "ethereumjs-tx": "^1.2.2", + "ethereumjs-util": "^5.0.0", + "merkle-patricia-tree": "^2.1.2" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/ethereumjs-block/node_modules/ethereum-common": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/ethereum-common/-/ethereum-common-0.2.0.tgz", + "integrity": "sha512-XOnAR/3rntJgbCdGhqdaLIxDLWKLmsZOGhHdBKadEr6gEnJLH52k93Ou+TUdFaPN3hJc3isBZBal3U/XZ15abA==", + "dev": true + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/ethereumjs-tx": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/ethereumjs-tx/-/ethereumjs-tx-1.3.7.tgz", + "integrity": "sha512-wvLMxzt1RPhAQ9Yi3/HKZTn0FZYpnsmQdbKYfUUpi4j1SEIcbkd9tndVjcPrufY3V7j2IebOpC00Zp2P/Ay2kA==", + "deprecated": "New package name format for new versions: @ethereumjs/tx. Please update.", + "dev": true, + "dependencies": { + "ethereum-common": "^0.0.18", + "ethereumjs-util": "^5.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/ethereumjs-vm": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/ethereumjs-vm/-/ethereumjs-vm-2.6.0.tgz", + "integrity": "sha512-r/XIUik/ynGbxS3y+mvGnbOKnuLo40V5Mj1J25+HEO63aWYREIqvWeRO/hnROlMBE5WoniQmPmhiaN0ctiHaXw==", + "deprecated": "New package name format for new versions: @ethereumjs/vm. Please update.", + "dev": true, + "dependencies": { + "async": "^2.1.2", + "async-eventemitter": "^0.2.2", + "ethereumjs-account": "^2.0.3", + "ethereumjs-block": "~2.2.0", + "ethereumjs-common": "^1.1.0", + "ethereumjs-util": "^6.0.0", + "fake-merkle-patricia-tree": "^1.0.1", + "functional-red-black-tree": "^1.0.1", + "merkle-patricia-tree": "^2.3.2", + "rustbn.js": "~0.2.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/ethereumjs-vm/node_modules/ethereumjs-block": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/ethereumjs-block/-/ethereumjs-block-2.2.2.tgz", + "integrity": "sha512-2p49ifhek3h2zeg/+da6XpdFR3GlqY3BIEiqxGF8j9aSRIgkb7M1Ky+yULBKJOu8PAZxfhsYA+HxUk2aCQp3vg==", + "deprecated": "New package name format for new versions: @ethereumjs/block. Please update.", + "dev": true, + "dependencies": { + "async": "^2.0.1", + "ethereumjs-common": "^1.5.0", + "ethereumjs-tx": "^2.1.1", + "ethereumjs-util": "^5.0.0", + "merkle-patricia-tree": "^2.1.2" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/ethereumjs-vm/node_modules/ethereumjs-block/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/ethereumjs-vm/node_modules/ethereumjs-tx": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ethereumjs-tx/-/ethereumjs-tx-2.1.2.tgz", + "integrity": "sha512-zZEK1onCeiORb0wyCXUvg94Ve5It/K6GD1K+26KfFKodiBiS6d9lfCXlUKGBBdQ+bv7Day+JK0tj1K+BeNFRAw==", + "deprecated": "New package name format for new versions: @ethereumjs/tx. Please update.", + "dev": true, + "dependencies": { + "ethereumjs-common": "^1.5.0", + "ethereumjs-util": "^6.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/ethereumjs-vm/node_modules/ethereumjs-util": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-6.2.1.tgz", + "integrity": "sha512-W2Ktez4L01Vexijrm5EB6w7dg4n/TgpoYU4avuT5T3Vmnw/eCRtiBrJfQYS/DCSvDIOLn2k57GcHdeBcgVxAqw==", + "dev": true, + "dependencies": { + "@types/bn.js": "^4.11.3", + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "0.1.6", + "rlp": "^2.2.3" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/level-codec": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-7.0.1.tgz", + "integrity": "sha512-Ua/R9B9r3RasXdRmOtd+t9TCOEIIlts+TN/7XTT2unhDaL6sJn83S3rUyljbr6lVtw49N3/yA0HHjpV6Kzb2aQ==", + "dev": true + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/level-errors": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-1.0.5.tgz", + "integrity": "sha512-/cLUpQduF6bNrWuAC4pwtUKA5t669pCsCi2XbmojG2tFeOr9j6ShtdDCtFFQO1DRt+EVZhx9gPzP9G2bUaG4ig==", + "dev": true, + "dependencies": { + "errno": "~0.1.1" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/level-iterator-stream": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-1.3.1.tgz", + "integrity": "sha1-5Dt4sagUPm+pek9IXrjqUwNS8u0=", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "level-errors": "^1.0.3", + "readable-stream": "^1.0.33", + "xtend": "^4.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/level-iterator-stream/node_modules/readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/level-ws": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/level-ws/-/level-ws-0.0.0.tgz", + "integrity": "sha1-Ny5RIXeSSgBCSwtDrvK7QkltIos=", + "dev": true, + "dependencies": { + "readable-stream": "~1.0.15", + "xtend": "~2.1.1" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/level-ws/node_modules/readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/level-ws/node_modules/xtend": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz", + "integrity": "sha1-bv7MKk2tjmlixJAbM3znuoe10os=", + "dev": true, + "dependencies": { + "object-keys": "~0.4.0" + }, + "engines": { + "node": ">=0.4" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/levelup": { + "version": "1.3.9", + "resolved": "https://registry.npmjs.org/levelup/-/levelup-1.3.9.tgz", + "integrity": "sha512-VVGHfKIlmw8w1XqpGOAGwq6sZm2WwWLmlDcULkKWQXEA5EopA8OBNJ2Ck2v6bdk8HeEZSbCSEgzXadyQFm76sQ==", + "dev": true, + "dependencies": { + "deferred-leveldown": "~1.2.1", + "level-codec": "~7.0.0", + "level-errors": "~1.0.3", + "level-iterator-stream": "~1.3.0", + "prr": "~1.0.1", + "semver": "~5.4.1", + "xtend": "~4.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/ltgt": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ltgt/-/ltgt-2.2.1.tgz", + "integrity": "sha1-81ypHEk/e3PaDgdJUwTxezH4fuU=", + "dev": true + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/memdown": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/memdown/-/memdown-1.4.1.tgz", + "integrity": "sha1-tOThkhdGZP+65BNhqlAPMRnv4hU=", + "dev": true, + "dependencies": { + "abstract-leveldown": "~2.7.1", + "functional-red-black-tree": "^1.0.1", + "immediate": "^3.2.3", + "inherits": "~2.0.1", + "ltgt": "~2.2.0", + "safe-buffer": "~5.1.1" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/memdown/node_modules/abstract-leveldown": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.7.2.tgz", + "integrity": "sha512-+OVvxH2rHVEhWLdbudP6p0+dNMXu8JA1CbhP19T8paTYAcX7oJ4OVjT+ZUVpv7mITxXHqDMej+GdqXBmXkw09w==", + "dev": true, + "dependencies": { + "xtend": "~4.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/merkle-patricia-tree": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/merkle-patricia-tree/-/merkle-patricia-tree-2.3.2.tgz", + "integrity": "sha512-81PW5m8oz/pz3GvsAwbauj7Y00rqm81Tzad77tHBwU7pIAtN+TJnMSOJhxBKflSVYhptMMb9RskhqHqrSm1V+g==", + "dev": true, + "dependencies": { + "async": "^1.4.2", + "ethereumjs-util": "^5.0.0", + "level-ws": "0.0.0", + "levelup": "^1.2.1", + "memdown": "^1.0.0", + "readable-stream": "^2.0.0", + "rlp": "^2.0.0", + "semaphore": ">=1.0.1" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/merkle-patricia-tree/node_modules/async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "dev": true + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/object-keys": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz", + "integrity": "sha1-KKaq50KN0sOpLz2V8hM13SBOAzY=", + "dev": true + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/semver": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", + "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + }, + "node_modules/ganache-core/node_modules/web3-provider-engine/node_modules/ws": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-5.2.2.tgz", + "integrity": "sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA==", + "dev": true, + "dependencies": { + "async-limiter": "~1.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-providers-http": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-providers-http/-/web3-providers-http-1.2.11.tgz", + "integrity": "sha512-psh4hYGb1+ijWywfwpB2cvvOIMISlR44F/rJtYkRmQ5jMvG4FOCPlQJPiHQZo+2cc3HbktvvSJzIhkWQJdmvrA==", + "dev": true, + "optional": true, + "dependencies": { + "web3-core-helpers": "1.2.11", + "xhr2-cookies": "1.1.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-providers-ipc": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-providers-ipc/-/web3-providers-ipc-1.2.11.tgz", + "integrity": "sha512-yhc7Y/k8hBV/KlELxynWjJDzmgDEDjIjBzXK+e0rHBsYEhdCNdIH5Psa456c+l0qTEU2YzycF8VAjYpWfPnBpQ==", + "dev": true, + "optional": true, + "dependencies": { + "oboe": "2.1.4", + "underscore": "1.9.1", + "web3-core-helpers": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-providers-ws": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-providers-ws/-/web3-providers-ws-1.2.11.tgz", + "integrity": "sha512-ZxnjIY1Er8Ty+cE4migzr43zA/+72AF1myzsLaU5eVgdsfV7Jqx7Dix1hbevNZDKFlSoEyq/3j/jYalh3So1Zg==", + "dev": true, + "optional": true, + "dependencies": { + "eventemitter3": "4.0.4", + "underscore": "1.9.1", + "web3-core-helpers": "1.2.11", + "websocket": "^1.0.31" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-shh": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-shh/-/web3-shh-1.2.11.tgz", + "integrity": "sha512-B3OrO3oG1L+bv3E1sTwCx66injW1A8hhwpknDUbV+sw3fehFazA06z9SGXUefuFI1kVs4q2vRi0n4oCcI4dZDg==", + "dev": true, + "optional": true, + "dependencies": { + "web3-core": "1.2.11", + "web3-core-method": "1.2.11", + "web3-core-subscriptions": "1.2.11", + "web3-net": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-utils": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.2.11.tgz", + "integrity": "sha512-3Tq09izhD+ThqHEaWYX4VOT7dNPdZiO+c/1QMA0s5X2lDFKK/xHJb7cyTRRVzN2LvlHbR7baS1tmQhSua51TcQ==", + "dev": true, + "optional": true, + "dependencies": { + "bn.js": "^4.11.9", + "eth-lib": "0.2.8", + "ethereum-bloom-filters": "^1.0.6", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "underscore": "1.9.1", + "utf8": "3.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/ganache-core/node_modules/web3-utils/node_modules/eth-lib": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", + "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "dev": true, + "optional": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/ganache-core/node_modules/websocket": { + "version": "1.0.32", + "resolved": "https://registry.npmjs.org/websocket/-/websocket-1.0.32.tgz", + "integrity": "sha512-i4yhcllSP4wrpoPMU2N0TQ/q0O94LRG/eUQjEAamRltjQ1oT1PFFKOG4i877OlJgCG8rw6LrrowJp+TYCEWF7Q==", + "dev": true, + "dependencies": { + "bufferutil": "^4.0.1", + "debug": "^2.2.0", + "es5-ext": "^0.10.50", + "typedarray-to-buffer": "^3.1.5", + "utf-8-validate": "^5.0.2", + "yaeti": "^0.0.6" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/ganache-core/node_modules/websocket/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/ganache-core/node_modules/websocket/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "node_modules/ganache-core/node_modules/whatwg-fetch": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz", + "integrity": "sha512-dcQ1GWpOD/eEQ97k66aiEVpNnapVj90/+R+SXTPYGHpYBBypfKJEQjLrvMZ7YXbKm21gXd4NcuxUTjiv1YtLng==", + "dev": true + }, + "node_modules/ganache-core/node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "node_modules/ganache-core/node_modules/ws": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", + "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", + "dev": true, + "optional": true, + "dependencies": { + "async-limiter": "~1.0.0", + "safe-buffer": "~5.1.0", + "ultron": "~1.1.0" + } + }, + "node_modules/ganache-core/node_modules/ws/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "optional": true + }, + "node_modules/ganache-core/node_modules/xhr": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.6.0.tgz", + "integrity": "sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==", + "dev": true, + "dependencies": { + "global": "~4.4.0", + "is-function": "^1.0.1", + "parse-headers": "^2.0.0", + "xtend": "^4.0.0" + } + }, + "node_modules/ganache-core/node_modules/xhr-request": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/xhr-request/-/xhr-request-1.1.0.tgz", + "integrity": "sha512-Y7qzEaR3FDtL3fP30k9wO/e+FBnBByZeybKOhASsGP30NIkRAAkKD/sCnLvgEfAIEC1rcmK7YG8f4oEnIrrWzA==", + "dev": true, + "optional": true, + "dependencies": { + "buffer-to-arraybuffer": "^0.0.5", + "object-assign": "^4.1.1", + "query-string": "^5.0.1", + "simple-get": "^2.7.0", + "timed-out": "^4.0.1", + "url-set-query": "^1.0.0", + "xhr": "^2.0.4" + } + }, + "node_modules/ganache-core/node_modules/xhr-request-promise": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/xhr-request-promise/-/xhr-request-promise-0.1.3.tgz", + "integrity": "sha512-YUBytBsuwgitWtdRzXDDkWAXzhdGB8bYm0sSzMPZT7Z2MBjMSTHFsyCT1yCRATY+XC69DUrQraRAEgcoCRaIPg==", + "dev": true, + "optional": true, + "dependencies": { + "xhr-request": "^1.1.0" + } + }, + "node_modules/ganache-core/node_modules/xhr2-cookies": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/xhr2-cookies/-/xhr2-cookies-1.1.0.tgz", + "integrity": "sha1-fXdEnQmZGX8VXLc7I99yUF7YnUg=", + "dev": true, + "optional": true, + "dependencies": { + "cookiejar": "^2.1.1" + } + }, + "node_modules/ganache-core/node_modules/yaeti": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/yaeti/-/yaeti-0.0.6.tgz", + "integrity": "sha1-8m9ITXJoTPQr7ft2lwqhYI+/lXc=", + "dev": true, + "engines": { + "node": ">=0.10.32" + } + }, + "node_modules/ganache-core/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-func-name": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", + "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/get-uri": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-2.0.4.tgz", + "integrity": "sha512-v7LT/s8kVjs+Tx0ykk1I+H/rbpzkHvuIq87LmeXptcf5sNWm9uQiwjNAt94SJPA1zOlCntmnOlJvVWKmzsxG8Q==", + "dev": true, + "dependencies": { + "data-uri-to-buffer": "1", + "debug": "2", + "extend": "~3.0.2", + "file-uri-to-path": "1", + "ftp": "~0.3.10", + "readable-stream": "2" + } + }, + "node_modules/get-uri/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dependencies": { + "assert-plus": "^1.0.0" + } + }, + "node_modules/ghost-testrpc": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/ghost-testrpc/-/ghost-testrpc-0.0.2.tgz", + "integrity": "sha512-i08dAEgJ2g8z5buJIrCTduwPIhih3DP+hOCTyyryikfV8T0bNvHnGXO67i0DD1H4GBDETTclPy9njZbfluQYrQ==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "node-emoji": "^1.10.0" + }, + "bin": { + "testrpc-sc": "index.js" + } + }, + "node_modules/ghost-testrpc/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ghost-testrpc/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", + "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/global": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/global/-/global-4.3.2.tgz", + "integrity": "sha1-52mJJopsdMOJCLEwWxD8DjlOnQ8=", + "dependencies": { + "min-document": "^2.19.0", + "process": "~0.5.1" + } + }, + "node_modules/global-dirs": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-2.0.1.tgz", + "integrity": "sha512-5HqUqdhkEovj2Of/ms3IeS/EekcO54ytHRLV4PEY2rhRwrHXLQjeVEES0Lhka0xwNDtGYn58wyC4s5+MHsOO6A==", + "dev": true, + "dependencies": { + "ini": "^1.3.5" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/global-modules": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", + "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", + "dev": true, + "dependencies": { + "global-prefix": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/global-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "dev": true, + "dependencies": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/globals": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "dev": true, + "dependencies": { + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globby": { + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz", + "integrity": "sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==", + "dev": true, + "dependencies": { + "@types/glob": "^7.1.1", + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.0.3", + "glob": "^7.1.3", + "ignore": "^5.1.1", + "merge2": "^1.2.3", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/globby/node_modules/ignore": { + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "dev": true, + "dependencies": { + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/got/node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", + "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", + "dev": true + }, + "node_modules/graceful-readlink": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", + "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=", + "dev": true + }, + "node_modules/grapheme-splitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", + "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "dev": true + }, + "node_modules/growl": { + "version": "1.10.5", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", + "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", + "dev": true, + "engines": { + "node": ">=4.x" + } + }, + "node_modules/gunzip-maybe": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/gunzip-maybe/-/gunzip-maybe-1.4.2.tgz", + "integrity": "sha512-4haO1M4mLO91PW57BMsDFf75UmwoRX0GkdD+Faw+Lr+r/OZrOCS0pIBwOL1xCKQqnQzbNFGgK2V2CpBUPeFNTw==", + "dev": true, + "dependencies": { + "browserify-zlib": "^0.1.4", + "is-deflate": "^1.0.0", + "is-gzip": "^1.0.0", + "peek-stream": "^1.1.0", + "pumpify": "^1.3.3", + "through2": "^2.0.3" + }, + "bin": { + "gunzip-maybe": "bin.js" + } + }, + "node_modules/handlebars": { + "version": "4.7.6", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.6.tgz", + "integrity": "sha512-1f2BACcBfiwAfStCKZNrUCgqNZkGsAT7UM3kkYtXuLo0KnaVfjKOyf7PRzB6++aK9STyT1Pd2ZCPe3EGOXleXA==", + "dev": true, + "dependencies": { + "minimist": "^1.2.5", + "neo-async": "^2.6.0", + "source-map": "^0.6.1", + "wordwrap": "^1.0.0" + }, + "bin": { + "handlebars": "bin/handlebars" + }, + "engines": { + "node": ">=0.4.7" + }, + "optionalDependencies": { + "uglify-js": "^3.1.4" + } + }, + "node_modules/handlebars/node_modules/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "node_modules/har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "engines": { + "node": ">=4" + } + }, + "node_modules/har-validator": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", + "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", + "deprecated": "this library is no longer supported", + "dependencies": { + "ajv": "^6.5.5", + "har-schema": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/hardhat": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/hardhat/-/hardhat-2.2.1.tgz", + "integrity": "sha512-8s7MtGXdh0NDwQKdlA8m8QdloVIN1+hv5aFpn0G5Ljj9vfNY9kUoc0a9pMboeGbd9WrS+XrZs5YlsPgQjaW/Tg==", + "dev": true, + "dependencies": { + "@ethereumjs/block": "^3.2.1", + "@ethereumjs/blockchain": "^5.2.1", + "@ethereumjs/common": "^2.2.0", + "@ethereumjs/tx": "^3.1.3", + "@ethereumjs/vm": "^5.3.2", + "@sentry/node": "^5.18.1", + "@solidity-parser/parser": "^0.11.0", + "@types/bn.js": "^5.1.0", + "@types/lru-cache": "^5.1.0", + "abort-controller": "^3.0.0", + "adm-zip": "^0.4.16", + "ansi-escapes": "^4.3.0", + "chalk": "^2.4.2", + "chokidar": "^3.4.0", + "ci-info": "^2.0.0", + "debug": "^4.1.1", + "enquirer": "^2.3.0", + "env-paths": "^2.2.0", + "eth-sig-util": "^2.5.2", + "ethereum-cryptography": "^0.1.2", + "ethereumjs-abi": "^0.6.8", + "ethereumjs-util": "^7.0.10", + "find-up": "^2.1.0", + "fp-ts": "1.19.3", + "fs-extra": "^7.0.1", + "glob": "^7.1.3", + "immutable": "^4.0.0-rc.12", + "io-ts": "1.10.4", + "lodash": "^4.17.11", + "merkle-patricia-tree": "^4.1.0", + "mnemonist": "^0.38.0", + "mocha": "^7.1.2", + "node-fetch": "^2.6.0", + "qs": "^6.7.0", + "raw-body": "^2.4.1", + "resolve": "1.17.0", + "semver": "^6.3.0", + "slash": "^3.0.0", + "solc": "0.7.3", + "source-map-support": "^0.5.13", + "stacktrace-parser": "^0.1.10", + "true-case-path": "^2.2.1", + "tsort": "0.0.1", + "uuid": "^3.3.2", + "ws": "^7.2.1" + }, + "bin": { + "hardhat": "internal/cli/cli.js" + }, + "engines": { + "node": ">=8.2.0" + } + }, + "node_modules/hardhat-contract-sizer": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/hardhat-contract-sizer/-/hardhat-contract-sizer-2.0.3.tgz", + "integrity": "sha512-iaixOzWxwOSIIE76cl2uk4m9VXI1hKU3bFt+gl7jDhyb2/JB2xOp5wECkfWqAoc4V5lD4JtjldZlpSTbzX+nPQ==", + "dev": true, + "dependencies": { + "cli-table3": "^0.6.0", + "colors": "^1.4.0" + }, + "peerDependencies": { + "hardhat": "^2.0.0" + } + }, + "node_modules/hardhat-deploy": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/hardhat-deploy/-/hardhat-deploy-0.7.5.tgz", + "integrity": "sha512-b+raIZBhrlw3lzkj7La8wyfczgxRsSWo8IHQM4STY4VUw0I/zjjeMm1naIvtGuebdrW/63ADLsucXZUZ8yVLkQ==", + "dev": true, + "dependencies": { + "@ethersproject/abi": "^5.0.0", + "@ethersproject/abstract-signer": "^5.0.0", + "@ethersproject/address": "^5.0.0", + "@ethersproject/bignumber": "^5.0.0", + "@ethersproject/bytes": "^5.0.0", + "@ethersproject/contracts": "^5.0.0", + "@ethersproject/providers": "^5.0.0", + "@ethersproject/solidity": "^5.0.0", + "@ethersproject/transactions": "^5.0.0", + "@ethersproject/wallet": "^5.0.0", + "@types/qs": "^6.9.4", + "axios": "^0.21.1", + "chalk": "^4.1.0", + "chokidar": "^3.4.0", + "debug": "^4.1.1", + "form-data": "^3.0.0", + "fs-extra": "^9.0.0", + "match-all": "^1.2.6", + "murmur-128": "^0.2.1", + "qs": "^6.9.4" + }, + "peerDependencies": { + "@ethersproject/hardware-wallets": "^5.0.14", + "hardhat": "^2.0.0" + } + }, + "node_modules/hardhat-deploy/node_modules/@ethersproject/abi": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.1.2.tgz", + "integrity": "sha512-uMhoQVPX0UtfzTpekYQSEUcJGDgsJ25ifz+SV6PDETWaUFhcR8RNgb1QPTASP13inW8r6iy0/Xdq9D5hK2pNvA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/address": "^5.1.0", + "@ethersproject/bignumber": "^5.1.0", + "@ethersproject/bytes": "^5.1.0", + "@ethersproject/constants": "^5.1.0", + "@ethersproject/hash": "^5.1.0", + "@ethersproject/keccak256": "^5.1.0", + "@ethersproject/logger": "^5.1.0", + "@ethersproject/properties": "^5.1.0", + "@ethersproject/strings": "^5.1.0" + } + }, + "node_modules/hardhat-deploy/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/hardhat-deploy/node_modules/chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/hardhat-deploy/node_modules/chokidar": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", + "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==", + "dev": true, + "dependencies": { + "anymatch": "~3.1.1", + "braces": "~3.0.2", + "glob-parent": "~5.1.0", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.5.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.1" + } + }, + "node_modules/hardhat-deploy/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/hardhat-deploy/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/hardhat-deploy/node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/hardhat-deploy/node_modules/debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/hardhat-deploy/node_modules/form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/hardhat-deploy/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/hardhat-deploy/node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/hardhat-deploy/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/hardhat-deploy/node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/hardhat-deploy/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/hardhat-deploy/node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/hardhat-deploy/node_modules/qs": { + "version": "6.10.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.1.tgz", + "integrity": "sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg==", + "dev": true, + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hardhat-deploy/node_modules/readdirp": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz", + "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/hardhat-deploy/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/hardhat-deploy/node_modules/universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "dev": true, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/hardhat-docgen": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/hardhat-docgen/-/hardhat-docgen-1.1.1.tgz", + "integrity": "sha512-vMZqT2go9JmIAtTfK4QZLsL2hzGVccqkfDvSIvqC6wvH2FX9vmp4H5mTHoYqimanqZcU74QZ8Vi81G13m0WZ2w==", + "dev": true, + "dependencies": { + "css-loader": "^2.1.0", + "html-webpack-plugin": "^3.2.0", + "vue": "^2.6.12", + "vue-loader": "^15.6.4", + "vue-router": "^3.4.9", + "vue-template-compiler": "^2.6.7", + "webpack": "^4.29.5" + }, + "engines": { + "node": ">=12.10.0" + }, + "peerDependencies": { + "hardhat": "^2.0.0" + } + }, + "node_modules/hardhat-log-remover": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/hardhat-log-remover/-/hardhat-log-remover-2.0.1.tgz", + "integrity": "sha512-SP2kIU/XjJmoIHvTR2yHOMFIcmdz/72rGSVAG2rzdps6unO9+GekSlQ7msrkMVh18WuUDJMjlgH0jANR/hkpQg==", + "dev": true, + "peerDependencies": { + "hardhat": "^2.0.0" + } + }, + "node_modules/hardhat/node_modules/@solidity-parser/parser": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.11.1.tgz", + "integrity": "sha512-H8BSBoKE8EubJa0ONqecA2TviT3TnHeC4NpgnAHSUiuhZoQBfPB4L2P9bs8R6AoTW10Endvh3vc+fomVMIDIYQ==", + "dev": true + }, + "node_modules/hardhat/node_modules/@types/bn.js": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.0.tgz", + "integrity": "sha512-QSSVYj7pYFN49kW77o2s9xTCwZ8F2xLbjLLSEVh8D2F4JUhZtPAGOFLTD+ffqksBx/u4cE/KImFjyhqCjn/LIA==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/hardhat/node_modules/ansi-colors": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz", + "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/hardhat/node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/hardhat/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/hardhat/node_modules/chalk/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/hardhat/node_modules/chokidar": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", + "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==", + "dev": true, + "dependencies": { + "anymatch": "~3.1.1", + "braces": "~3.0.2", + "glob-parent": "~5.1.0", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.5.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.1" + } + }, + "node_modules/hardhat/node_modules/cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dev": true, + "dependencies": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + } + }, + "node_modules/hardhat/node_modules/debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/hardhat/node_modules/diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true, + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/hardhat/node_modules/ethereumjs-util": { + "version": "7.0.10", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.0.10.tgz", + "integrity": "sha512-c/xThw6A+EAnej5Xk5kOzFzyoSnw0WX0tSlZ6pAsfGVvQj3TItaDg9b1+Fz1RJXA+y2YksKwQnuzgt1eY6LKzw==", + "dev": true, + "dependencies": { + "@types/bn.js": "^5.1.0", + "bn.js": "^5.1.2", + "create-hash": "^1.1.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "0.1.6", + "rlp": "^2.2.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/hardhat/node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/hardhat/node_modules/fs-extra": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", + "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/hardhat/node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/hardhat/node_modules/glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + } + }, + "node_modules/hardhat/node_modules/js-yaml": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", + "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/hardhat/node_modules/level-ws": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/level-ws/-/level-ws-2.0.0.tgz", + "integrity": "sha512-1iv7VXx0G9ec1isqQZ7y5LmoZo/ewAsyDHNA8EFDW5hqH2Kqovm33nSFkSdnLLAK+I5FlT+lo5Cw9itGe+CpQA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "readable-stream": "^3.1.0", + "xtend": "^4.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/hardhat/node_modules/log-symbols": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", + "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/hardhat/node_modules/merkle-patricia-tree": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/merkle-patricia-tree/-/merkle-patricia-tree-4.2.1.tgz", + "integrity": "sha512-25reMgrT8PhJy0Ba0U7fMZD2oobS1FPWB9vQa0uBpJYIQYYuFXEHoqEkTqA/UzX+s9br3pmUVVY/TOsFt/x0oQ==", + "dev": true, + "dependencies": { + "@types/levelup": "^4.3.0", + "ethereumjs-util": "^7.1.0", + "level-mem": "^5.0.1", + "level-ws": "^2.0.0", + "readable-stream": "^3.6.0", + "rlp": "^2.2.4", + "semaphore-async-await": "^1.5.1" + } + }, + "node_modules/hardhat/node_modules/merkle-patricia-tree/node_modules/ethereumjs-util": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.0.tgz", + "integrity": "sha512-kR+vhu++mUDARrsMMhsjjzPduRVAeundLGXucGRHF3B4oEltOUspfgCVco4kckucj3FMlLaZHUl9n7/kdmr6Tw==", + "dev": true, + "dependencies": { + "@types/bn.js": "^5.1.0", + "bn.js": "^5.1.2", + "create-hash": "^1.1.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "0.1.6", + "rlp": "^2.2.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/hardhat/node_modules/mocha": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-7.2.0.tgz", + "integrity": "sha512-O9CIypScywTVpNaRrCAgoUnJgozpIofjKUYmJhiCIJMiuYnLI6otcb1/kpW9/n/tJODHGZ7i8aLQoDVsMtOKQQ==", + "dev": true, + "dependencies": { + "ansi-colors": "3.2.3", + "browser-stdout": "1.3.1", + "chokidar": "3.3.0", + "debug": "3.2.6", + "diff": "3.5.0", + "escape-string-regexp": "1.0.5", + "find-up": "3.0.0", + "glob": "7.1.3", + "growl": "1.10.5", + "he": "1.2.0", + "js-yaml": "3.13.1", + "log-symbols": "3.0.0", + "minimatch": "3.0.4", + "mkdirp": "0.5.5", + "ms": "2.1.1", + "node-environment-flags": "1.0.6", + "object.assign": "4.1.0", + "strip-json-comments": "2.0.1", + "supports-color": "6.0.0", + "which": "1.3.1", + "wide-align": "1.1.3", + "yargs": "13.3.2", + "yargs-parser": "13.1.2", + "yargs-unparser": "1.6.0" + }, + "bin": { + "_mocha": "bin/_mocha", + "mocha": "bin/mocha" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mochajs" + } + }, + "node_modules/hardhat/node_modules/mocha/node_modules/chokidar": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.0.tgz", + "integrity": "sha512-dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A==", + "dev": true, + "dependencies": { + "anymatch": "~3.1.1", + "braces": "~3.0.2", + "glob-parent": "~5.1.0", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.2.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.1.1" + } + }, + "node_modules/hardhat/node_modules/mocha/node_modules/debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/hardhat/node_modules/mocha/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/hardhat/node_modules/mocha/node_modules/fsevents": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", + "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", + "deprecated": "\"Please update to latest v2.3 or v2.2\"", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/hardhat/node_modules/mocha/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/hardhat/node_modules/mocha/node_modules/ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "node_modules/hardhat/node_modules/mocha/node_modules/readdirp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.2.0.tgz", + "integrity": "sha512-crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ==", + "dev": true, + "dependencies": { + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/hardhat/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/hardhat/node_modules/node-fetch": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.2.tgz", + "integrity": "sha512-aLoxToI6RfZ+0NOjmWAgn9+LEd30YCkJKFSyWacNZdEKTit/ZMcKjGkTRo8uWEsnIb/hfKecNPEbln02PdWbcA==", + "dev": true, + "engines": { + "node": "4.x || >=6.0.0" + } + }, + "node_modules/hardhat/node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/hardhat/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/hardhat/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/hardhat/node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/hardhat/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/hardhat/node_modules/qs": { + "version": "6.10.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.1.tgz", + "integrity": "sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg==", + "dev": true, + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hardhat/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/hardhat/node_modules/readdirp": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz", + "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/hardhat/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "dependencies": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/hardhat/node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/hardhat/node_modules/ws": { + "version": "7.4.5", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.5.tgz", + "integrity": "sha512-xzyu3hFvomRfXKH8vOFMU3OguG6oOvhXMo3xsGy3xWExqaM2dxBbVxuD99O7m3ZUFMvvscsZDqxfgMaRr/Nr1g==", + "dev": true, + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/hardhat/node_modules/y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "dev": true + }, + "node_modules/hardhat/node_modules/yargs": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "dev": true, + "dependencies": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" + } + }, + "node_modules/hardhat/node_modules/yargs-unparser": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.6.0.tgz", + "integrity": "sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw==", + "dev": true, + "dependencies": { + "flat": "^4.1.0", + "lodash": "^4.17.15", + "yargs": "^13.3.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/hardhat/node_modules/yargs/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/hardhat/node_modules/yargs/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-bigints": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", + "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/has-symbol-support-x": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz", + "integrity": "sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/has-symbols": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-to-string-tag-x": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", + "integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==", + "dev": true, + "dependencies": { + "has-symbol-support-x": "^1.4.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "dev": true, + "dependencies": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "dev": true, + "dependencies": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values/node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "node_modules/has-values/node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values/node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values/node_modules/kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-yarn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", + "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/hash-base/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/hash-base/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/hash-base/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/hash-sum": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-1.0.2.tgz", + "integrity": "sha1-M7QHd3VMZDJXPBIMw4CLvRDUfwQ=", + "dev": true + }, + "node_modules/hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true, + "bin": { + "he": "bin/he" + } + }, + "node_modules/highlight.js": { + "version": "9.18.5", + "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-9.18.5.tgz", + "integrity": "sha512-a5bFyofd/BHCX52/8i8uJkjr9DYwXIPnM/plwI6W7ezItLGqzt7X2G2nXuYSfsIJdkwwj/g9DG1LkcGJI/dDoA==", + "deprecated": "Support has ended for 9.x series. Upgrade to @latest", + "dev": true, + "hasInstallScript": true, + "engines": { + "node": "*" + } + }, + "node_modules/highlightjs-solidity": { + "version": "1.0.22", + "resolved": "https://registry.npmjs.org/highlightjs-solidity/-/highlightjs-solidity-1.0.22.tgz", + "integrity": "sha512-Ha1TDrtOwCDCSa+D99CMCdm2fOlpMqcEzC45rpwyr6SOPvor69tqhecolUA7TjnfHU8zJswH3lnxI1ti0tLmFw==", + "dev": true + }, + "node_modules/hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "dependencies": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/hosted-git-info": { + "version": "2.8.4", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.4.tgz", + "integrity": "sha512-pzXIvANXEFrc5oFFXRMkbLPQ2rXRoDERwDLyrcUxGhaZhgP54BBSl9Oheh7Vv0T090cszWBxPjkQQ5Sq1PbBRQ==", + "dev": true + }, + "node_modules/html-minifier": { + "version": "3.5.21", + "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.21.tgz", + "integrity": "sha512-LKUKwuJDhxNa3uf/LPR/KVjm/l3rBqtYeCOAekvG8F1vItxMUpueGd94i/asDDr8/1u7InxzFA5EeGjhhG5mMA==", + "dev": true, + "dependencies": { + "camel-case": "3.0.x", + "clean-css": "4.2.x", + "commander": "2.17.x", + "he": "1.2.x", + "param-case": "2.1.x", + "relateurl": "0.2.x", + "uglify-js": "3.4.x" + }, + "bin": { + "html-minifier": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/html-minifier/node_modules/commander": { + "version": "2.17.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz", + "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==", + "dev": true + }, + "node_modules/html-minifier/node_modules/uglify-js": { + "version": "3.4.10", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.10.tgz", + "integrity": "sha512-Y2VsbPVs0FIshJztycsO2SfPk7/KAF/T72qzv9u5EpQ4kB2hQoHlhNQTsNyy6ul7lQtqJN/AoWeS23OzEiEFxw==", + "dev": true, + "dependencies": { + "commander": "~2.19.0", + "source-map": "~0.6.1" + }, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/html-minifier/node_modules/uglify-js/node_modules/commander": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz", + "integrity": "sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==", + "dev": true + }, + "node_modules/html-webpack-plugin": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-3.2.0.tgz", + "integrity": "sha1-sBq71yOsqqeze2r0SS69oD2d03s=", + "deprecated": "3.x is no longer supported", + "dev": true, + "dependencies": { + "html-minifier": "^3.2.3", + "loader-utils": "^0.2.16", + "lodash": "^4.17.3", + "pretty-error": "^2.0.2", + "tapable": "^1.0.0", + "toposort": "^1.0.0", + "util.promisify": "1.0.0" + }, + "engines": { + "node": ">=6.9" + }, + "peerDependencies": { + "webpack": "^1.0.0 || ^2.0.0 || ^3.0.0 || ^4.0.0" + } + }, + "node_modules/html-webpack-plugin/node_modules/big.js": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz", + "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/html-webpack-plugin/node_modules/emojis-list": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", + "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/html-webpack-plugin/node_modules/json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", + "dev": true, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/html-webpack-plugin/node_modules/loader-utils": { + "version": "0.2.17", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz", + "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=", + "dev": true, + "dependencies": { + "big.js": "^3.1.3", + "emojis-list": "^2.0.0", + "json5": "^0.5.0", + "object-assign": "^4.0.1" + } + }, + "node_modules/html-webpack-plugin/node_modules/util.promisify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", + "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.2", + "object.getownpropertydescriptors": "^2.0.3" + } + }, + "node_modules/htmlparser2": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", + "dev": true, + "dependencies": { + "domelementtype": "^1.3.1", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.1.1" + } + }, + "node_modules/htmlparser2/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", + "dev": true + }, + "node_modules/http-errors": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", + "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==", + "dev": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/http-errors/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/http-https": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/http-https/-/http-https-1.0.0.tgz", + "integrity": "sha1-L5CN1fHbQGjAWM1ubUzjkskTOJs=", + "dev": true + }, + "node_modules/http-proxy-agent": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz", + "integrity": "sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==", + "dev": true, + "dependencies": { + "agent-base": "4", + "debug": "3.1.0" + }, + "engines": { + "node": ">= 4.5.0" + } + }, + "node_modules/http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dependencies": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + }, + "engines": { + "node": ">=0.8", + "npm": ">=1.3.7" + } + }, + "node_modules/http2-wrapper": { + "version": "1.0.0-beta.5.2", + "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.0-beta.5.2.tgz", + "integrity": "sha512-xYz9goEyBnC8XwXDTuC/MZ6t+MrKVQZOk4s7+PaDkwIsQd8IwqvM+0M6bA/2lvG8GHXcPdf+MejTUeO2LCPCeQ==", + "dev": true, + "dependencies": { + "quick-lru": "^5.1.1", + "resolve-alpn": "^1.0.0" + }, + "engines": { + "node": ">=10.19.0" + } + }, + "node_modules/https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", + "dev": true + }, + "node_modules/https-proxy-agent": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-3.0.1.tgz", + "integrity": "sha512-+ML2Rbh6DAuee7d07tYGEKOEi2voWPUGan+ExdPbPW6Z3svq+JCqr0v8WmKPOkz1vOVykPCBSuobe7G8GJUtVg==", + "dev": true, + "dependencies": { + "agent-base": "^4.3.0", + "debug": "^3.1.0" + }, + "engines": { + "node": ">= 4.5.0" + } + }, + "node_modules/husky": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/husky/-/husky-4.2.5.tgz", + "integrity": "sha512-SYZ95AjKcX7goYVZtVZF2i6XiZcHknw50iXvY7b0MiGoj5RwdgRQNEHdb+gPDPCXKlzwrybjFjkL6FOj8uRhZQ==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "chalk": "^4.0.0", + "ci-info": "^2.0.0", + "compare-versions": "^3.6.0", + "cosmiconfig": "^6.0.0", + "find-versions": "^3.2.0", + "opencollective-postinstall": "^2.0.2", + "pkg-dir": "^4.2.0", + "please-upgrade-node": "^3.2.0", + "slash": "^3.0.0", + "which-pm-runs": "^1.0.0" + }, + "bin": { + "husky-run": "bin/run.js", + "husky-upgrade": "lib/upgrader/bin.js" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/husky" + } + }, + "node_modules/husky/node_modules/ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "dependencies": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/husky/node_modules/chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/husky/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/husky/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/husky/node_modules/cosmiconfig": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz", + "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==", + "dev": true, + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.1.0", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.7.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/husky/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/husky/node_modules/parse-json": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.0.0.tgz", + "integrity": "sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/husky/node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/husky/node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/husky/node_modules/supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/icss-replace-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz", + "integrity": "sha1-Bupvg2ead0njhs/h/oEq5dsiPe0=", + "dev": true + }, + "node_modules/icss-utils": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", + "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", + "dev": true, + "dependencies": { + "postcss": "^7.0.14" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/idna-uts46-hx": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/idna-uts46-hx/-/idna-uts46-hx-2.3.1.tgz", + "integrity": "sha512-PWoF9Keq6laYdIRwwCdhTPl60xRqAloYNMQLiyUnG42VjT53oW07BXIRM+NK7eQjzXjAk2gUvX9caRxlnF9TAA==", + "dev": true, + "dependencies": { + "punycode": "2.1.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/idna-uts46-hx/node_modules/punycode": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.0.tgz", + "integrity": "sha1-X4Y+3Im5bbCQdLrXlHvwkFbKTn0=", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/iferr": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", + "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", + "dev": true + }, + "node_modules/ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=", + "dev": true + }, + "node_modules/immutable": { + "version": "4.0.0-rc.12", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.0.0-rc.12.tgz", + "integrity": "sha512-0M2XxkZLx/mi3t8NVwIm1g8nHoEmM9p9UBl/G9k4+hm0kBgOVdMV/B3CY5dQ8qG8qc80NN4gDV4HQv6FTJ5q7A==", + "dev": true + }, + "node_modules/import-fresh": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", + "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/imul": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/imul/-/imul-1.0.1.tgz", + "integrity": "sha1-nVhnFh6LPelsLDjV3HyxAvNeKsk=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", + "dev": true + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "node_modules/ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "deprecated": "Please update to ini >=1.3.6 to avoid a prototype pollution issue", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/inquirer": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.5.2.tgz", + "integrity": "sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ==", + "dev": true, + "dependencies": { + "ansi-escapes": "^3.2.0", + "chalk": "^2.4.2", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^3.0.3", + "figures": "^2.0.0", + "lodash": "^4.17.12", + "mute-stream": "0.0.7", + "run-async": "^2.2.0", + "rxjs": "^6.4.0", + "string-width": "^2.1.0", + "strip-ansi": "^5.1.0", + "through": "^2.3.6" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/inquirer/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/inquirer/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dev": true, + "dependencies": { + "loose-envify": "^1.0.0" + } + }, + "node_modules/invert-kv": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/io-ts": { + "version": "1.10.4", + "resolved": "https://registry.npmjs.org/io-ts/-/io-ts-1.10.4.tgz", + "integrity": "sha512-b23PteSnYXSONJ6JQXRAlvJhuw8KOtkqa87W4wDtvMrud/DTJd5X+NpOOI+O/zZwVq6v0VLAaJ+1EDViKEuN9g==", + "dev": true, + "dependencies": { + "fp-ts": "^1.0.0" + } + }, + "node_modules/ip": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", + "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", + "dev": true + }, + "node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/is/-/is-3.3.0.tgz", + "integrity": "sha512-nW24QBoPcFGGHJGUwnfpI7Yc5CdqWNdsyHQszVE/z2pKHXzh7FZ5GWhJqSyaQ9wMkQnsTx+kAI8bHlCX4tKdbg==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-accessor-descriptor/node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-arguments": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.0.tgz", + "integrity": "sha512-1Ij4lOMPl/xB5kBDn7I+b2ttPMKa8szhEIrXDuXQD/oe3HJLTLhqhgGspwgyGd6MOywBUqVvYicF72lkgDnIHg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "node_modules/is-bigint": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.1.tgz", + "integrity": "sha512-J0ELF4yHFxHy0cmSxZuheDOz2luOdVvqjwmEcj8H/L1JHeuEDSDbeRP+Dk9kFVk5RTFzbucJ2Kb9F7ixY2QaCg==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.0.tgz", + "integrity": "sha512-a7Uprx8UtD+HWdyYwnD1+ExtTgqQtD2k/1yJgtXP6wnMm8byhkoTZRl+95LLThpzNZJ5aEvi46cdH+ayMFRwmA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "engines": { + "node": ">=4" + } + }, + "node_modules/is-callable": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", + "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-data-descriptor/node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-date-object": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", + "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-deflate": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-deflate/-/is-deflate-1.0.0.tgz", + "integrity": "sha1-yGKQHDwWH7CdrHzcfnhPgOmPLxQ=", + "dev": true + }, + "node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-descriptor/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-directory": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", + "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-docker": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.0.0.tgz", + "integrity": "sha512-pJEdRugimx4fBMra5z2/5iRdZ63OhYV0vr0Dwm5+xtW4D1FvRkB8hamMIhnWfyJeDdyr/aa7BDyNbtG38VxgoQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fn/-/is-fn-1.0.0.tgz", + "integrity": "sha1-lUPV3nvPWwiiLsiiC65uKG1RDYw=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/is-function": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-function/-/is-function-1.0.1.tgz", + "integrity": "sha1-Es+5i2W1fdPRk6MSH19uL0N2ArU=" + }, + "node_modules/is-generator-function": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.9.tgz", + "integrity": "sha512-ZJ34p1uvIfptHCN7sFTjGibB9/oBg17sHqzDLfuwhvmN/qLVvIQXRQ8licZQ35WJ8KuEQt/etnnzQFI9C9Ue/A==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-gzip": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-gzip/-/is-gzip-1.0.0.tgz", + "integrity": "sha1-bKiwe5nHeZgCWQDlVc7Y7YCHmoM=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-hex-prefixed": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz", + "integrity": "sha1-fY035q135dEnFIkTxXPggtd39VQ=", + "engines": { + "node": ">=6.5.0", + "npm": ">=3" + } + }, + "node_modules/is-installed-globally": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.3.2.tgz", + "integrity": "sha512-wZ8x1js7Ia0kecP/CHM/3ABkAmujX7WPvQk6uu3Fly/Mk44pySulQpnHG46OMjHGXApINnV4QhY3SWnECO2z5g==", + "dev": true, + "dependencies": { + "global-dirs": "^2.0.1", + "is-path-inside": "^3.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", + "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-natural-number": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-natural-number/-/is-natural-number-4.0.1.tgz", + "integrity": "sha1-q5124dtM7VHjXeDHLr7PCfc0zeg=", + "dev": true + }, + "node_modules/is-negative-zero": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", + "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-npm": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-4.0.0.tgz", + "integrity": "sha512-96ECIfh9xtDDlPylNPXhzjsykHsMJZ18ASpaWzQyBr4YRTcVjUvzaHayDAES2oU/3KpljhHUjtSRNiDwi0F0ig==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.4.tgz", + "integrity": "sha512-zohwelOAur+5uXtk8O3GPQ1eAcu4ZX3UwxQhUlfFFMNpUd83gXgjbhJh6HmB6LUNV/ieOLQuDwJO3dWJosUeMw==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-object": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.1.tgz", + "integrity": "sha1-iVJojF7C/9awPsyF52ngKQMINHA=", + "dev": true + }, + "node_modules/is-path-inside": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.2.tgz", + "integrity": "sha512-/2UGPSgmtqwo1ktx8NDHjuPwZWmHhO+gj0f93EkhLB5RgW9RZevWYYlIkS6zePc6U2WpOdQYIwHe9YC4DWEBVg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-regex": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz", + "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-retry-allowed": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz", + "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-set": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", + "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-string": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", + "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", + "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.5.tgz", + "integrity": "sha512-S+GRDgJlR3PyEbsX/Fobd9cqpZBuvUS+8asRqYDMLCb2qMzt1oz5m5oxQCxOgUDxiWsOVNi4yaF+/uvdlHlYug==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.2", + "call-bind": "^1.0.2", + "es-abstract": "^1.18.0-next.2", + "foreach": "^2.0.5", + "has-symbols": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" + }, + "node_modules/is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-yarn-global": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", + "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==", + "dev": true + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "node_modules/iso-url": { + "version": "0.4.7", + "resolved": "https://registry.npmjs.org/iso-url/-/iso-url-0.4.7.tgz", + "integrity": "sha512-27fFRDnPAMnHGLq36bWTpKET+eiXct3ENlCcdcMdk+mjXrb2kw3mhBUg1B7ewAC0kVzlOPhADzQgz1SE6Tglog==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" + }, + "node_modules/isurl": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", + "integrity": "sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==", + "dev": true, + "dependencies": { + "has-to-string-tag-x": "^1.2.0", + "is-object": "^1.0.1" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/iterate-iterator": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/iterate-iterator/-/iterate-iterator-1.0.1.tgz", + "integrity": "sha512-3Q6tudGN05kbkDQDI4CqjaBf4qf85w6W6GnuZDtUVYwKgtC1q8yxYX7CZed7N+tLzQqS6roujWvszf13T+n9aw==", + "dev": true + }, + "node_modules/iterate-value": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/iterate-value/-/iterate-value-1.0.2.tgz", + "integrity": "sha512-A6fMAio4D2ot2r/TYzr4yUWrmwNdsN5xL7+HUiyACE4DXm+q8HtPcnFTp+NnW3k4N05tZ7FVYFFb2CR13NxyHQ==", + "dev": true, + "dependencies": { + "es-get-iterator": "^1.0.2", + "iterate-iterator": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/js-sha3": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.5.5.tgz", + "integrity": "sha1-uvDA6MVK1ZA0R9+Wreekobynmko=", + "dev": true + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/js-yaml": { + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz", + "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=", + "dev": true + }, + "node_modules/json-file-plus": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/json-file-plus/-/json-file-plus-3.3.1.tgz", + "integrity": "sha512-wo0q1UuiV5NsDPQDup1Km8IwEeqe+olr8tkWxeJq9Bjtcp7DZ0l+yrg28fSC3DEtrE311mhTZ54QGS6oiqnZEA==", + "dev": true, + "dependencies": { + "is": "^3.2.1", + "node.extend": "^2.0.0", + "object.assign": "^4.1.0", + "promiseback": "^2.0.2", + "safer-buffer": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true + }, + "node_modules/json-rpc-engine": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/json-rpc-engine/-/json-rpc-engine-5.4.0.tgz", + "integrity": "sha512-rAffKbPoNDjuRnXkecTjnsE3xLLrb00rEkdgalINhaYVYIxDwWtvYBr9UFbhTvPB1B2qUOLoFd/cV6f4Q7mh7g==", + "dependencies": { + "eth-rpc-errors": "^3.0.0", + "safe-event-emitter": "^1.0.1" + } + }, + "node_modules/json-rpc-random-id": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-rpc-random-id/-/json-rpc-random-id-1.0.1.tgz", + "integrity": "sha1-uknZat7RRE27jaPSA3SKy7zeyMg=" + }, + "node_modules/json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "node_modules/json-stable-stringify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", + "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", + "dependencies": { + "jsonify": "~0.0.0" + } + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" + }, + "node_modules/json-text-sequence": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/json-text-sequence/-/json-text-sequence-0.1.1.tgz", + "integrity": "sha1-py8hfcSvxGKf/1/rME3BvVGi89I=", + "dev": true, + "dependencies": { + "delimit-stream": "0.1.0" + } + }, + "node_modules/json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/json5/node_modules/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "dev": true, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsonify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", + "engines": { + "node": "*" + } + }, + "node_modules/jsonschema": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/jsonschema/-/jsonschema-1.2.6.tgz", + "integrity": "sha512-SqhURKZG07JyKKeo/ir24QnS4/BV7a6gQy93bUSe4lUdNp0QNpIz2c9elWJQ9dpc5cQYY6cvCzgRwy0MQCLyqA==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "node_modules/jszip": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.5.0.tgz", + "integrity": "sha512-WRtu7TPCmYePR1nazfrtuF216cIVon/3GWOvHS9QR5bIwSbnxtdpma6un3jyGGNhHsKCSzn5Ypk+EkDRvTGiFA==", + "dev": true, + "dependencies": { + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "set-immediate-shim": "~1.0.1" + } + }, + "node_modules/jszip/node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "dev": true + }, + "node_modules/keccak": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/keccak/-/keccak-2.1.0.tgz", + "integrity": "sha512-m1wbJRTo+gWbctZWay9i26v5fFnYkOn7D5PCxJ3fZUGUEb49dE1Pm4BREUYCt/aoO6di7jeoGmhvqN9Nzylm3Q==", + "hasInstallScript": true, + "dependencies": { + "bindings": "^1.5.0", + "inherits": "^2.0.4", + "nan": "^2.14.0", + "safe-buffer": "^5.2.0" + }, + "engines": { + "node": ">=5.12.0" + } + }, + "node_modules/keccak/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/keccak/node_modules/nan": { + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz", + "integrity": "sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==" + }, + "node_modules/keccak/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "dev": true, + "dependencies": { + "json-buffer": "3.0.0" + } + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/klaw": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz", + "integrity": "sha1-QIhDO0azsbolnXh4XY6W9zugJDk=", + "dev": true, + "optionalDependencies": { + "graceful-fs": "^4.1.9" + } + }, + "node_modules/latest-version": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", + "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", + "dev": true, + "dependencies": { + "package-json": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "dev": true, + "dependencies": { + "invert-kv": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lcov-parse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-1.0.0.tgz", + "integrity": "sha1-6w1GtUER68VhrLTECO+TY73I9+A=", + "dev": true, + "bin": { + "lcov-parse": "bin/cli.js" + } + }, + "node_modules/level-codec": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-7.0.1.tgz", + "integrity": "sha512-Ua/R9B9r3RasXdRmOtd+t9TCOEIIlts+TN/7XTT2unhDaL6sJn83S3rUyljbr6lVtw49N3/yA0HHjpV6Kzb2aQ==" + }, + "node_modules/level-concat-iterator": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/level-concat-iterator/-/level-concat-iterator-2.0.1.tgz", + "integrity": "sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/level-errors": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-1.0.5.tgz", + "integrity": "sha512-/cLUpQduF6bNrWuAC4pwtUKA5t669pCsCi2XbmojG2tFeOr9j6ShtdDCtFFQO1DRt+EVZhx9gPzP9G2bUaG4ig==", + "dependencies": { + "errno": "~0.1.1" + } + }, + "node_modules/level-iterator-stream": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-1.3.1.tgz", + "integrity": "sha1-5Dt4sagUPm+pek9IXrjqUwNS8u0=", + "dependencies": { + "inherits": "^2.0.1", + "level-errors": "^1.0.3", + "readable-stream": "^1.0.33", + "xtend": "^4.0.0" + } + }, + "node_modules/level-iterator-stream/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + }, + "node_modules/level-iterator-stream/node_modules/readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/level-iterator-stream/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + }, + "node_modules/level-mem": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/level-mem/-/level-mem-5.0.1.tgz", + "integrity": "sha512-qd+qUJHXsGSFoHTziptAKXoLX87QjR7v2KMbqncDXPxQuCdsQlzmyX+gwrEHhlzn08vkf8TyipYyMmiC6Gobzg==", + "dev": true, + "dependencies": { + "level-packager": "^5.0.3", + "memdown": "^5.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/level-mem/node_modules/abstract-leveldown": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz", + "integrity": "sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ==", + "dev": true, + "dependencies": { + "buffer": "^5.5.0", + "immediate": "^3.2.3", + "level-concat-iterator": "~2.0.0", + "level-supports": "~1.0.0", + "xtend": "~4.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/level-mem/node_modules/immediate": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.2.3.tgz", + "integrity": "sha1-0UD6j2FGWb1lQSMwl92qwlzdmRw=", + "dev": true + }, + "node_modules/level-mem/node_modules/memdown": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/memdown/-/memdown-5.1.0.tgz", + "integrity": "sha512-B3J+UizMRAlEArDjWHTMmadet+UKwHd3UjMgGBkZcKAxAYVPS9o0Yeiha4qvz7iGiL2Sb3igUft6p7nbFWctpw==", + "dev": true, + "dependencies": { + "abstract-leveldown": "~6.2.1", + "functional-red-black-tree": "~1.0.1", + "immediate": "~3.2.3", + "inherits": "~2.0.1", + "ltgt": "~2.2.0", + "safe-buffer": "~5.2.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/level-mem/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/level-packager": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/level-packager/-/level-packager-5.1.1.tgz", + "integrity": "sha512-HMwMaQPlTC1IlcwT3+swhqf/NUO+ZhXVz6TY1zZIIZlIR0YSn8GtAAWmIvKjNY16ZkEg/JcpAuQskxsXqC0yOQ==", + "dev": true, + "dependencies": { + "encoding-down": "^6.3.0", + "levelup": "^4.3.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/level-packager/node_modules/abstract-leveldown": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz", + "integrity": "sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ==", + "dev": true, + "dependencies": { + "buffer": "^5.5.0", + "immediate": "^3.2.3", + "level-concat-iterator": "~2.0.0", + "level-supports": "~1.0.0", + "xtend": "~4.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/level-packager/node_modules/deferred-leveldown": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-5.3.0.tgz", + "integrity": "sha512-a59VOT+oDy7vtAbLRCZwWgxu2BaCfd5Hk7wxJd48ei7I+nsg8Orlb9CLG0PMZienk9BSUKgeAqkO2+Lw+1+Ukw==", + "dev": true, + "dependencies": { + "abstract-leveldown": "~6.2.1", + "inherits": "^2.0.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/level-packager/node_modules/immediate": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.3.0.tgz", + "integrity": "sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q==", + "dev": true + }, + "node_modules/level-packager/node_modules/level-errors": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-2.0.1.tgz", + "integrity": "sha512-UVprBJXite4gPS+3VznfgDSU8PTRuVX0NXwoWW50KLxd2yw4Y1t2JUR5In1itQnudZqRMT9DlAM3Q//9NCjCFw==", + "dev": true, + "dependencies": { + "errno": "~0.1.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/level-packager/node_modules/level-iterator-stream": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-4.0.2.tgz", + "integrity": "sha512-ZSthfEqzGSOMWoUGhTXdX9jv26d32XJuHz/5YnuHZzH6wldfWMOVwI9TBtKcya4BKTyTt3XVA0A3cF3q5CY30Q==", + "dev": true, + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "^3.4.0", + "xtend": "^4.0.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/level-packager/node_modules/level-iterator-stream/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/level-packager/node_modules/level-iterator-stream/node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true, + "engines": { + "node": ">=0.4" + } + }, + "node_modules/level-packager/node_modules/levelup": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/levelup/-/levelup-4.4.0.tgz", + "integrity": "sha512-94++VFO3qN95cM/d6eBXvd894oJE0w3cInq9USsyQzzoJxmiYzPAocNcuGCPGGjoXqDVJcr3C1jzt1TSjyaiLQ==", + "dev": true, + "dependencies": { + "deferred-leveldown": "~5.3.0", + "level-errors": "~2.0.0", + "level-iterator-stream": "~4.0.0", + "level-supports": "~1.0.0", + "xtend": "~4.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/level-packager/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/level-supports": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-1.0.1.tgz", + "integrity": "sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==", + "dev": true, + "dependencies": { + "xtend": "^4.0.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/level-supports/node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true, + "engines": { + "node": ">=0.4" + } + }, + "node_modules/level-ws": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/level-ws/-/level-ws-0.0.0.tgz", + "integrity": "sha1-Ny5RIXeSSgBCSwtDrvK7QkltIos=", + "dependencies": { + "readable-stream": "~1.0.15", + "xtend": "~2.1.1" + } + }, + "node_modules/level-ws/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + }, + "node_modules/level-ws/node_modules/object-keys": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz", + "integrity": "sha1-KKaq50KN0sOpLz2V8hM13SBOAzY=" + }, + "node_modules/level-ws/node_modules/readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/level-ws/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + }, + "node_modules/level-ws/node_modules/xtend": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz", + "integrity": "sha1-bv7MKk2tjmlixJAbM3znuoe10os=", + "dependencies": { + "object-keys": "~0.4.0" + }, + "engines": { + "node": ">=0.4" + } + }, + "node_modules/levelup": { + "version": "1.3.9", + "resolved": "https://registry.npmjs.org/levelup/-/levelup-1.3.9.tgz", + "integrity": "sha512-VVGHfKIlmw8w1XqpGOAGwq6sZm2WwWLmlDcULkKWQXEA5EopA8OBNJ2Ck2v6bdk8HeEZSbCSEgzXadyQFm76sQ==", + "dependencies": { + "deferred-leveldown": "~1.2.1", + "level-codec": "~7.0.0", + "level-errors": "~1.0.3", + "level-iterator-stream": "~1.3.0", + "prr": "~1.0.1", + "semver": "~5.4.1", + "xtend": "~4.0.0" + } + }, + "node_modules/levelup/node_modules/semver": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", + "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "dev": true, + "dependencies": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lie": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "dev": true, + "dependencies": { + "immediate": "~3.0.5" + } + }, + "node_modules/lines-and-columns": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", + "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", + "dev": true + }, + "node_modules/load-json-file": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "strip-bom": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/loader-runner": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", + "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", + "dev": true, + "engines": { + "node": ">=4.3.0 <5.0.0 || >=5.10" + } + }, + "node_modules/loader-utils": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", + "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/locate-path/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/lodash": { + "version": "4.17.19", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", + "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==" + }, + "node_modules/lodash.assign": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", + "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=", + "dev": true + }, + "node_modules/lodash.assignin": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", + "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=", + "dev": true + }, + "node_modules/lodash.clone": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clone/-/lodash.clone-4.5.0.tgz", + "integrity": "sha1-GVhwRQ9aExkkeN9Lw9I9LeoZB7Y=", + "dev": true + }, + "node_modules/lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "dev": true + }, + "node_modules/lodash.constant": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash.constant/-/lodash.constant-3.0.0.tgz", + "integrity": "sha1-v+Bczn5RWzEokl1jYhOEIL1iSRA=", + "dev": true + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=" + }, + "node_modules/lodash.escaperegexp": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.escaperegexp/-/lodash.escaperegexp-4.1.2.tgz", + "integrity": "sha1-ZHYsSGGAglGKw99Mz11YhtriA0c=", + "dev": true + }, + "node_modules/lodash.filter": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz", + "integrity": "sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4=", + "dev": true + }, + "node_modules/lodash.flatmap": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.flatmap/-/lodash.flatmap-4.5.0.tgz", + "integrity": "sha1-74y/QI9uSCaGYzRTBcaswLd4cC4=" + }, + "node_modules/lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", + "dev": true + }, + "node_modules/lodash.foreach": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", + "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=", + "dev": true + }, + "node_modules/lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", + "dev": true + }, + "node_modules/lodash.has": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/lodash.has/-/lodash.has-4.5.2.tgz", + "integrity": "sha1-0Z9NwQlQWMzL4rDN9O4P5Ko3yGI=", + "dev": true + }, + "node_modules/lodash.isarray": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-4.0.0.tgz", + "integrity": "sha1-KspJayjEym1yZxUxNZDALm6jRAM=", + "deprecated": "This package is deprecated. Use Array.isArray.", + "dev": true + }, + "node_modules/lodash.isempty": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.isempty/-/lodash.isempty-4.4.0.tgz", + "integrity": "sha1-b4bL7di+TsmHvpqvM8loTbGzHn4=", + "dev": true + }, + "node_modules/lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=", + "dev": true + }, + "node_modules/lodash.isfunction": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/lodash.isfunction/-/lodash.isfunction-3.0.9.tgz", + "integrity": "sha512-AirXNj15uRIMMPihnkInB4i3NHeb4iBtNg9WRWuK2o31S+ePwwNmDPaTL3o7dTJ+VXNZim7rFs4rxN4YU1oUJw==", + "dev": true + }, + "node_modules/lodash.isundefined": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/lodash.isundefined/-/lodash.isundefined-3.0.1.tgz", + "integrity": "sha1-I+89lTVWUgOmbO/VuDD4SJEa+0g=", + "dev": true + }, + "node_modules/lodash.keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-4.2.0.tgz", + "integrity": "sha1-oIYCrBLk+4P5H8H7ejYKTZujUgU=", + "dev": true + }, + "node_modules/lodash.map": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz", + "integrity": "sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=", + "dev": true + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/lodash.partition": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.partition/-/lodash.partition-4.6.0.tgz", + "integrity": "sha1-o45GtzRp4EILDaEhLmbUFL42S6Q=", + "dev": true + }, + "node_modules/lodash.reduce": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz", + "integrity": "sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs=", + "dev": true + }, + "node_modules/lodash.set": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/lodash.set/-/lodash.set-4.3.2.tgz", + "integrity": "sha1-2HV7HagH3eJIFrDWqEvqGnYjCyM=", + "dev": true + }, + "node_modules/lodash.size": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.size/-/lodash.size-4.2.0.tgz", + "integrity": "sha1-cf517T6r2yvLc6GwtPUcOS7ie4Y=", + "dev": true + }, + "node_modules/lodash.sum": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/lodash.sum/-/lodash.sum-4.0.2.tgz", + "integrity": "sha1-rZDjl5ZdgD1PH/eqWy0Bl/O0Y3s=", + "dev": true + }, + "node_modules/lodash.toarray": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.toarray/-/lodash.toarray-4.4.0.tgz", + "integrity": "sha1-JMS/zWsvuji/0FlNsRedjptlZWE=", + "dev": true + }, + "node_modules/lodash.topairs": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.topairs/-/lodash.topairs-4.3.0.tgz", + "integrity": "sha1-O23qo31g+xFnE8RsXxfqGQ7EjWQ=", + "dev": true + }, + "node_modules/lodash.transform": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.transform/-/lodash.transform-4.6.0.tgz", + "integrity": "sha1-EjBkIvYzJK7YSD0/ODMrX2cFR6A=", + "dev": true + }, + "node_modules/lodash.union": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz", + "integrity": "sha1-SLtQiECfFvGCFmZkHETdGqrjzYg=", + "dev": true + }, + "node_modules/lodash.values": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.values/-/lodash.values-4.3.0.tgz", + "integrity": "sha1-o6bCsOvsxcLLocF+bmIP6BtT00c=", + "dev": true + }, + "node_modules/log-driver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", + "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", + "dev": true, + "engines": { + "node": ">=0.8.6" + } + }, + "node_modules/log-symbols": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz", + "integrity": "sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/log-symbols/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/log-symbols/node_modules/chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/log-symbols/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/log-symbols/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/log-symbols/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/log-symbols/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/logic-solver": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/logic-solver/-/logic-solver-2.0.1.tgz", + "integrity": "sha1-6fpHAC612M2nYW1BY5uXVS62dL4=", + "dev": true, + "dependencies": { + "underscore": "^1.7.0" + } + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lower-case": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz", + "integrity": "sha1-miyr0bno4K6ZOkv31YdcOcQujqw=", + "dev": true + }, + "node_modules/lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lru_map": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/lru_map/-/lru_map-0.3.3.tgz", + "integrity": "sha1-tcg1G5Rky9dQM1p5ZQoOwOVhGN0=", + "dev": true + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/ltgt": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ltgt/-/ltgt-2.2.1.tgz", + "integrity": "sha1-81ypHEk/e3PaDgdJUwTxezH4fuU=" + }, + "node_modules/macos-release": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/macos-release/-/macos-release-2.4.1.tgz", + "integrity": "sha512-H/QHeBIN1fIGJX517pvK8IEK53yQOW7YcEI55oYtgjDdoCQQz7eJS94qt5kNrscReEyuD/JcdFCm2XBEcGOITg==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "dependencies": { + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/make-dir/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "dev": true, + "dependencies": { + "object-visit": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/match-all": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/match-all/-/match-all-1.2.6.tgz", + "integrity": "sha512-0EESkXiTkWzrQQntBu2uzKvLu6vVkUGz40nGPbSZuegcfE5UuSzNjLaIu76zJWuaT/2I3Z/8M06OlUOZLGwLlQ==", + "dev": true + }, + "node_modules/mcl-wasm": { + "version": "0.7.7", + "resolved": "https://registry.npmjs.org/mcl-wasm/-/mcl-wasm-0.7.7.tgz", + "integrity": "sha512-jDGiCQA++5hX37gdH6RDZ3ZsA0raet7xyY/R5itj5cbcdf4Gvw+YyxWX/ZZ0Z2UPxJiw1ktRsCJZzpnqlQILdw==", + "dev": true, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memdown": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/memdown/-/memdown-1.4.1.tgz", + "integrity": "sha1-tOThkhdGZP+65BNhqlAPMRnv4hU=", + "dependencies": { + "abstract-leveldown": "~2.7.1", + "functional-red-black-tree": "^1.0.1", + "immediate": "^3.2.3", + "inherits": "~2.0.1", + "ltgt": "~2.2.0", + "safe-buffer": "~5.1.1" + } + }, + "node_modules/memdown/node_modules/abstract-leveldown": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.7.2.tgz", + "integrity": "sha512-+OVvxH2rHVEhWLdbudP6p0+dNMXu8JA1CbhP19T8paTYAcX7oJ4OVjT+ZUVpv7mITxXHqDMej+GdqXBmXkw09w==", + "dependencies": { + "xtend": "~4.0.0" + } + }, + "node_modules/memdown/node_modules/immediate": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.3.0.tgz", + "integrity": "sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q==" + }, + "node_modules/memory-fs": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", + "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", + "dev": true, + "dependencies": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + }, + "node_modules/memorystream": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", + "integrity": "sha1-htcJCzDORV1j+64S3aUaR93K+bI=", + "dev": true, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", + "dev": true + }, + "node_modules/merge-source-map": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", + "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", + "dev": true, + "dependencies": { + "source-map": "^0.6.1" + } + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/merkle-patricia-tree": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/merkle-patricia-tree/-/merkle-patricia-tree-2.3.2.tgz", + "integrity": "sha512-81PW5m8oz/pz3GvsAwbauj7Y00rqm81Tzad77tHBwU7pIAtN+TJnMSOJhxBKflSVYhptMMb9RskhqHqrSm1V+g==", + "dependencies": { + "async": "^1.4.2", + "ethereumjs-util": "^5.0.0", + "level-ws": "0.0.0", + "levelup": "^1.2.1", + "memdown": "^1.0.0", + "readable-stream": "^2.0.0", + "rlp": "^2.0.0", + "semaphore": ">=1.0.1" + } + }, + "node_modules/merkle-patricia-tree/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/merkle-patricia-tree/node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/merkle-patricia-tree/node_modules/ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "dependencies": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/merkle-patricia-tree/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "dependencies": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dev": true, + "dependencies": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + }, + "bin": { + "miller-rabin": "bin/miller-rabin" + } + }, + "node_modules/miller-rabin/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.37.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.37.0.tgz", + "integrity": "sha512-R3C4db6bgQhlIhPU48fUtdVmKnflq+hRdad7IyKhtFj06VPNVdk2RhiYL3UjQIlso8L+YxAtFkobT0VK+S/ybg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.21", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.21.tgz", + "integrity": "sha512-3iL6DbwpyLzjR3xHSFNFeb9Nz/M8WDkX33t1GFQnFOllWk8pOrh/LSrB5OXlnlW5P9LH73X6loW/eogc+F5lJg==", + "dependencies": { + "mime-db": "~1.37.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/min-document": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", + "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", + "dependencies": { + "dom-walk": "^0.1.0" + } + }, + "node_modules/min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, + "node_modules/minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" + }, + "node_modules/minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "node_modules/minipass": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", + "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "node_modules/minizlib": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", + "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==", + "dev": true, + "dependencies": { + "minipass": "^2.9.0" + } + }, + "node_modules/mississippi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", + "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", + "dev": true, + "dependencies": { + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^3.0.0", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "dev": true, + "dependencies": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mixin-deep/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/mkdirp-promise": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/mkdirp-promise/-/mkdirp-promise-5.0.1.tgz", + "integrity": "sha1-6bj2jlUsaKnBcTuEiD96HdA5uKE=", + "deprecated": "This package is broken and no longer maintained. 'mkdirp' itself supports promises now, please switch to that.", + "dev": true, + "dependencies": { + "mkdirp": "*" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mnemonist": { + "version": "0.38.3", + "resolved": "https://registry.npmjs.org/mnemonist/-/mnemonist-0.38.3.tgz", + "integrity": "sha512-2K9QYubXx/NAjv4VLq1d1Ly8pWNC5L3BrixtdkyTegXWJIqY+zLNDhhX/A+ZwWt70tB1S8H4BE8FLYEFyNoOBw==", + "dev": true, + "dependencies": { + "obliterator": "^1.6.1" + } + }, + "node_modules/mocha": { + "version": "8.1.2", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-8.1.2.tgz", + "integrity": "sha512-I8FRAcuACNMLQn3lS4qeWLxXqLvGf6r2CaLstDpZmMUUSmvW6Cnm1AuHxgbc7ctZVRcfwspCRbDHymPsi3dkJw==", + "dev": true, + "dependencies": { + "ansi-colors": "4.1.1", + "browser-stdout": "1.3.1", + "chokidar": "3.4.2", + "debug": "4.1.1", + "diff": "4.0.2", + "escape-string-regexp": "4.0.0", + "find-up": "5.0.0", + "glob": "7.1.6", + "growl": "1.10.5", + "he": "1.2.0", + "js-yaml": "3.14.0", + "log-symbols": "4.0.0", + "minimatch": "3.0.4", + "ms": "2.1.2", + "object.assign": "4.1.0", + "promise.allsettled": "1.0.2", + "serialize-javascript": "4.0.0", + "strip-json-comments": "3.0.1", + "supports-color": "7.1.0", + "which": "2.0.2", + "wide-align": "1.1.3", + "workerpool": "6.0.0", + "yargs": "13.3.2", + "yargs-parser": "13.1.2", + "yargs-unparser": "1.6.1" + }, + "bin": { + "_mocha": "bin/_mocha", + "mocha": "bin/mocha" + }, + "engines": { + "node": ">= 10.12.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mochajs" + } + }, + "node_modules/mocha/node_modules/ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/mocha/node_modules/cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dev": true, + "dependencies": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + } + }, + "node_modules/mocha/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/mocha/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/mocha/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/mocha/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/mocha/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/mocha/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/mocha/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/mocha/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/mocha/node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/mocha/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "dependencies": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/mocha/node_modules/strip-json-comments": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz", + "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/mocha/node_modules/supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/mocha/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/mocha/node_modules/y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "dev": true + }, + "node_modules/mocha/node_modules/yargs": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "dev": true, + "dependencies": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" + } + }, + "node_modules/mocha/node_modules/yargs/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/mocha/node_modules/yargs/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/mocha/node_modules/yargs/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/mocha/node_modules/yargs/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/mocha/node_modules/yargs/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/mock-fs": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-4.12.0.tgz", + "integrity": "sha512-/P/HtrlvBxY4o/PzXY9cCNBrdylDNxg7gnrv2sMNxj+UJ2m8jSpl0/A6fuJeNAWr99ZvGWH8XCbE0vmnM5KupQ==", + "dev": true + }, + "node_modules/mold-source-map": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/mold-source-map/-/mold-source-map-0.4.0.tgz", + "integrity": "sha1-z2fgsxxHq5uttcnCVlGGISe7gxc=", + "dev": true, + "dependencies": { + "convert-source-map": "^1.1.0", + "through": "~2.2.7" + } + }, + "node_modules/mold-source-map/node_modules/through": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/through/-/through-2.2.7.tgz", + "integrity": "sha1-bo4hIAGR1OtqmfbwEN9Gqhxusr0=", + "dev": true + }, + "node_modules/move-concurrently": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", + "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", + "dev": true, + "dependencies": { + "aproba": "^1.1.1", + "copy-concurrently": "^1.0.0", + "fs-write-stream-atomic": "^1.0.8", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.3" + } + }, + "node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "node_modules/multibase": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/multibase/-/multibase-0.6.1.tgz", + "integrity": "sha512-pFfAwyTjbbQgNc3G7D48JkJxWtoJoBMaR4xQUOuB8RnCgRqaYmWNFeJTTvrJ2w51bjLq2zTby6Rqj9TQ9elSUw==", + "deprecated": "This module has been superseded by the multiformats module", + "dev": true, + "dependencies": { + "base-x": "^3.0.8", + "buffer": "^5.5.0" + } + }, + "node_modules/multicodec": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/multicodec/-/multicodec-0.5.7.tgz", + "integrity": "sha512-PscoRxm3f+88fAtELwUnZxGDkduE2HD9Q6GHUOywQLjOGT/HAdhjLDYNZ1e7VR0s0TP0EwZ16LNUTFpoBGivOA==", + "deprecated": "This module has been superseded by the multiformats module", + "dev": true, + "dependencies": { + "varint": "^5.0.0" + } + }, + "node_modules/multihashes": { + "version": "0.4.21", + "resolved": "https://registry.npmjs.org/multihashes/-/multihashes-0.4.21.tgz", + "integrity": "sha512-uVSvmeCWf36pU2nB4/1kzYZjsXD9vofZKpgudqkceYY5g2aZZXJ5r9lxuzoRLl1OAp28XljXsEJ/X/85ZsKmKw==", + "dev": true, + "dependencies": { + "buffer": "^5.5.0", + "multibase": "^0.7.0", + "varint": "^5.0.0" + } + }, + "node_modules/multihashes/node_modules/multibase": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/multibase/-/multibase-0.7.0.tgz", + "integrity": "sha512-TW8q03O0f6PNFTQDvh3xxH03c8CjGaaYrjkl9UQPG6rz53TQzzxJVCIWVjzcbN/Q5Y53Zd0IBQBMVktVgNx4Fg==", + "deprecated": "This module has been superseded by the multiformats module", + "dev": true, + "dependencies": { + "base-x": "^3.0.8", + "buffer": "^5.5.0" + } + }, + "node_modules/murmur-128": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/murmur-128/-/murmur-128-0.2.1.tgz", + "integrity": "sha512-WseEgiRkI6aMFBbj8Cg9yBj/y+OdipwVC7zUo3W2W1JAJITwouUOtpqsmGSg67EQmwwSyod7hsVsWY5LsrfQVg==", + "dev": true, + "dependencies": { + "encode-utf8": "^1.0.2", + "fmix": "^0.1.0", + "imul": "^1.0.0" + } + }, + "node_modules/mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", + "dev": true + }, + "node_modules/nan": { + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz", + "integrity": "sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==", + "dev": true + }, + "node_modules/nano-json-stream-parser": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/nano-json-stream-parser/-/nano-json-stream-parser-0.1.2.tgz", + "integrity": "sha1-DMj20OK2IrR5xA1JnEbWS3Vcb18=", + "dev": true + }, + "node_modules/nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "dev": true, + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "dependencies": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "node_modules/nconf": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/nconf/-/nconf-0.10.0.tgz", + "integrity": "sha512-fKiXMQrpP7CYWJQzKkPPx9hPgmq+YLDyxcG9N8RpiE9FoCkCbzD0NyW0YhE3xn3Aupe7nnDeIx4PFzYehpHT9Q==", + "dev": true, + "dependencies": { + "async": "^1.4.0", + "ini": "^1.3.0", + "secure-keys": "^1.0.0", + "yargs": "^3.19.0" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/needle": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/needle/-/needle-2.5.0.tgz", + "integrity": "sha512-o/qITSDR0JCyCKEQ1/1bnUXMmznxabbwi/Y4WwJElf+evwJNFNwIDMCCt5IigFVxgeGBJESLohGtIS9gEzo1fA==", + "dev": true, + "dependencies": { + "debug": "^3.2.6", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + }, + "bin": { + "needle": "bin/needle" + }, + "engines": { + "node": ">= 4.4.x" + } + }, + "node_modules/needle/node_modules/debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/needle/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/negotiator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/neo-async": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", + "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", + "dev": true + }, + "node_modules/netmask": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/netmask/-/netmask-1.0.6.tgz", + "integrity": "sha1-ICl+idhvb2QA8lDZ9Pa0wZRfzTU=", + "dev": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/next-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", + "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=", + "dev": true + }, + "node_modules/nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, + "node_modules/no-case": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-2.3.2.tgz", + "integrity": "sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==", + "dev": true, + "dependencies": { + "lower-case": "^1.1.1" + } + }, + "node_modules/node-addon-api": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", + "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==" + }, + "node_modules/node-emoji": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-1.10.0.tgz", + "integrity": "sha512-Yt3384If5H6BYGVHiHwTL+99OzJKHhgp82S8/dktEK73T26BazdgZ4JZh92xSVtGNJvz9UbXdNAc5hcrXV42vw==", + "dev": true, + "dependencies": { + "lodash.toarray": "^4.4.0" + } + }, + "node_modules/node-environment-flags": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.6.tgz", + "integrity": "sha512-5Evy2epuL+6TM0lCQGpFIj6KwiEsGh1SrHUhTbNX+sLbBtjidPZFAnVK9y5yU1+h//RitLbRHTIMyxQPtxMdHw==", + "dev": true, + "dependencies": { + "object.getownpropertydescriptors": "^2.0.3", + "semver": "^5.7.0" + } + }, + "node_modules/node-environment-flags/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/node-fetch": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", + "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", + "dependencies": { + "encoding": "^0.1.11", + "is-stream": "^1.0.1" + } + }, + "node_modules/node-gyp-build": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.2.3.tgz", + "integrity": "sha512-MN6ZpzmfNCRM+3t57PTJHgHyw/h4OWnZ6mR8P5j/uZtqQr46RRuDE/P+g3n0YR/AiYXeWixZZzaip77gdICfRg==", + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" + } + }, + "node_modules/node-libs-browser": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", + "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", + "dev": true, + "dependencies": { + "assert": "^1.1.1", + "browserify-zlib": "^0.2.0", + "buffer": "^4.3.0", + "console-browserify": "^1.1.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.11.0", + "domain-browser": "^1.1.1", + "events": "^3.0.0", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", + "path-browserify": "0.0.1", + "process": "^0.11.10", + "punycode": "^1.2.4", + "querystring-es3": "^0.2.0", + "readable-stream": "^2.3.3", + "stream-browserify": "^2.0.1", + "stream-http": "^2.7.2", + "string_decoder": "^1.0.0", + "timers-browserify": "^2.0.4", + "tty-browserify": "0.0.0", + "url": "^0.11.0", + "util": "^0.11.0", + "vm-browserify": "^1.0.1" + } + }, + "node_modules/node-libs-browser/node_modules/browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "dev": true, + "dependencies": { + "pako": "~1.0.5" + } + }, + "node_modules/node-libs-browser/node_modules/buffer": { + "version": "4.9.2", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", + "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", + "dev": true, + "dependencies": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } + }, + "node_modules/node-libs-browser/node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "dev": true + }, + "node_modules/node-libs-browser/node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "dev": true, + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/node-libs-browser/node_modules/punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + }, + "node_modules/node-releases": { + "version": "1.1.71", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.71.tgz", + "integrity": "sha512-zR6HoT6LrLCRBwukmrVbHv0EpEQjksO6GmFcZQQuCAy139BEsoVKPYnf3jongYW83fAa1torLGYwxxky/p28sg==" + }, + "node_modules/node.extend": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node.extend/-/node.extend-2.0.2.tgz", + "integrity": "sha512-pDT4Dchl94/+kkgdwyS2PauDFjZG0Hk0IcHIB+LkW27HLDtdoeMxHTxZh39DYbPP8UflWXWj9JcdDozF+YDOpQ==", + "dev": true, + "dependencies": { + "has": "^1.0.3", + "is": "^3.2.1" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/nopt": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", + "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", + "dev": true, + "dependencies": { + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" + } + }, + "node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/normalize-url": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.3.0.tgz", + "integrity": "sha512-0NLtR71o4k6GLP+mr6Ty34c5GA6CMoEsncKJxvQd8NzPxaHRJNnb5gZE8R1XF4CPIS7QPHLJ74IFszwtNVAHVQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "dependencies": { + "path-key": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "dev": true, + "dependencies": { + "boolbase": "~1.0.0" + } + }, + "node_modules/number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/number-to-bn": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/number-to-bn/-/number-to-bn-1.7.0.tgz", + "integrity": "sha1-uzYjWS9+X54AMLGXe9QaDFP+HqA=", + "dev": true, + "dependencies": { + "bn.js": "4.11.6", + "strip-hex-prefix": "1.0.0" + }, + "engines": { + "node": ">=6.5.0", + "npm": ">=3" + } + }, + "node_modules/number-to-bn/node_modules/bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=", + "dev": true + }, + "node_modules/oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "engines": { + "node": "*" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "dev": true, + "dependencies": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "node_modules/object-copy/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-hash": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-2.0.3.tgz", + "integrity": "sha512-JPKn0GMu+Fa3zt3Bmr66JhokJU5BaNBIh4ZeTlaCBzrBsOeXzwcKKAK1tbLiPKgvwmPXsDvvLHoWh5Bm7ofIYg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/object-inspect": { + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz", + "integrity": "sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "dev": true, + "dependencies": { + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.assign": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", + "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.2", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.0", + "object-keys": "^1.0.11" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.getownpropertydescriptors": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.2.tgz", + "integrity": "sha512-WtxeKSzfBjlzL+F9b7M7hewDzMwy+C8NRssHd1YrNlzHzIDrXcXiNOMrezdAEM4UXixgV+vvnyBeN7Rygl2ttQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.2" + }, + "engines": { + "node": ">= 0.8" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.values": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.1.tgz", + "integrity": "sha512-WTa54g2K8iu0kmS/us18jEmdv1a4Wi//BZ/DTVYEcH0XhLM5NYdpDHja3gt57VrZLcNAO2WGA+KpWsDBaHt6eA==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1", + "function-bind": "^1.1.1", + "has": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/obliterator": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/obliterator/-/obliterator-1.6.1.tgz", + "integrity": "sha512-9WXswnqINnnhOG/5SLimUlzuU1hFJUc8zkwyD59Sd+dPOMf05PmnYG/d6Q7HZ+KmgkZJa1PxRso6QdM3sTNHig==", + "dev": true + }, + "node_modules/oboe": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/oboe/-/oboe-2.1.4.tgz", + "integrity": "sha1-IMiM2wwVNxuwQRklfU/dNLCqSfY=", + "dev": true, + "dependencies": { + "http-https": "^1.0.0" + } + }, + "node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dev": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dev": true, + "dependencies": { + "mimic-fn": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/open": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/open/-/open-7.1.0.tgz", + "integrity": "sha512-lLPI5KgOwEYCDKXf4np7y1PBEkj7HYIyP2DY8mVDRnx0VIIu6bNrRB0R66TuO7Mack6EnTNLm4uvcl1UoklTpA==", + "dev": true, + "dependencies": { + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/opencollective-postinstall": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz", + "integrity": "sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q==", + "dev": true, + "bin": { + "opencollective-postinstall": "index.js" + } + }, + "node_modules/optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "dev": true, + "dependencies": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.6", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "word-wrap": "~1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/original-require": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/original-require/-/original-require-1.0.1.tgz", + "integrity": "sha1-DxMEcVhM0zURxew4yNWSE/msXiA=", + "dev": true + }, + "node_modules/os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", + "dev": true + }, + "node_modules/os-locale": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "dev": true, + "dependencies": { + "lcid": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/os-name": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/os-name/-/os-name-3.1.0.tgz", + "integrity": "sha512-h8L+8aNjNcMpo/mAIBPn5PXCM16iyPGjHNWo6U1YO8sJTMHtEtyczI6QJnLoplswm6goopQkqc7OAnjhWcugVg==", + "dev": true, + "dependencies": { + "macos-release": "^2.2.0", + "windows-release": "^3.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "dependencies": { + "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "dependencies": { + "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-map": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", + "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/p-timeout": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-1.2.1.tgz", + "integrity": "sha1-XrOzU7f86Z8QGhA4iAuwVOu+o4Y=", + "dev": true, + "dependencies": { + "p-finally": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/pac-proxy-agent": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-3.0.1.tgz", + "integrity": "sha512-44DUg21G/liUZ48dJpUSjZnFfZro/0K5JTyFYLBcmh9+T6Ooi4/i4efwUiEy0+4oQusCBqWdhv16XohIj1GqnQ==", + "dev": true, + "dependencies": { + "agent-base": "^4.2.0", + "debug": "^4.1.1", + "get-uri": "^2.0.0", + "http-proxy-agent": "^2.1.0", + "https-proxy-agent": "^3.0.0", + "pac-resolver": "^3.0.0", + "raw-body": "^2.2.0", + "socks-proxy-agent": "^4.0.1" + } + }, + "node_modules/pac-proxy-agent/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/pac-proxy-agent/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/pac-resolver": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-3.0.0.tgz", + "integrity": "sha512-tcc38bsjuE3XZ5+4vP96OfhOugrX+JcnpUbhfuc4LuXBLQhoTthOstZeoQJBDnQUDYzYmdImKsbz0xSl1/9qeA==", + "dev": true, + "dependencies": { + "co": "^4.6.0", + "degenerator": "^1.0.4", + "ip": "^1.1.5", + "netmask": "^1.0.6", + "thunkify": "^2.1.2" + } + }, + "node_modules/package-json": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", + "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", + "dev": true, + "dependencies": { + "got": "^9.6.0", + "registry-auth-token": "^4.0.0", + "registry-url": "^5.0.0", + "semver": "^6.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pako": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", + "integrity": "sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=", + "dev": true + }, + "node_modules/parallel-transform": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", + "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", + "dev": true, + "dependencies": { + "cyclist": "^1.0.1", + "inherits": "^2.0.3", + "readable-stream": "^2.1.5" + } + }, + "node_modules/param-case": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz", + "integrity": "sha1-35T9jPZTHs915r75oIWPvHK+Ikc=", + "dev": true, + "dependencies": { + "no-case": "^2.2.0" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-asn1": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz", + "integrity": "sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==", + "dev": true, + "dependencies": { + "asn1.js": "^4.0.0", + "browserify-aes": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/parse-headers": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.1.tgz", + "integrity": "sha1-aug6eqJanZtwCswoaYzR8e1+lTY=", + "dependencies": { + "for-each": "^0.3.2", + "trim": "0.0.1" + } + }, + "node_modules/parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "dependencies": { + "error-ex": "^1.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/parse-link-header": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-link-header/-/parse-link-header-1.0.1.tgz", + "integrity": "sha1-vt/g0hGK64S+deewJUGeyKYRQKc=", + "dev": true, + "dependencies": { + "xtend": "~4.0.1" + } + }, + "node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, + "node_modules/parse5-htmlparser2-tree-adapter": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", + "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", + "dev": true, + "dependencies": { + "parse5": "^6.0.1" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", + "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", + "dev": true + }, + "node_modules/path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", + "dev": true, + "optional": true + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", + "dev": true + }, + "node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" + }, + "node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=", + "dev": true + }, + "node_modules/path-type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", + "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "dev": true, + "dependencies": { + "pify": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pathval": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz", + "integrity": "sha1-uULm1L3mUwBe9rcTYd74cn0GReA=", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/pbkdf2": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.1.tgz", + "integrity": "sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg==", + "dependencies": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/peek-stream": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/peek-stream/-/peek-stream-1.1.3.tgz", + "integrity": "sha512-FhJ+YbOSBb9/rIl2ZeE/QHEsWn7PqNYt8ARAY3kIgNGOk13g9FGyIY6JIl/xB/3TFRVoTv5as0l11weORrTekA==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "duplexify": "^3.5.0", + "through2": "^2.0.3" + } + }, + "node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=", + "dev": true + }, + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" + }, + "node_modules/picomatch": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", + "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "dependencies": { + "pinkie": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "dependencies": { + "find-up": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-dir/node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/please-upgrade-node": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz", + "integrity": "sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==", + "dev": true, + "dependencies": { + "semver-compare": "^1.0.0" + } + }, + "node_modules/pluralize": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", + "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss": { + "version": "7.0.36", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", + "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-modules-extract-imports": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", + "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", + "dev": true, + "dependencies": { + "postcss": "^7.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/postcss-modules-local-by-default": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-2.0.6.tgz", + "integrity": "sha512-oLUV5YNkeIBa0yQl7EYnxMgy4N6noxmiwZStaEJUSe2xPMcdNc8WmBQuQCx18H5psYbVxz8zoHk0RAAYZXP9gA==", + "dev": true, + "dependencies": { + "postcss": "^7.0.6", + "postcss-selector-parser": "^6.0.0", + "postcss-value-parser": "^3.3.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/postcss-modules-scope": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", + "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", + "dev": true, + "dependencies": { + "postcss": "^7.0.6", + "postcss-selector-parser": "^6.0.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/postcss-modules-values": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-2.0.0.tgz", + "integrity": "sha512-Ki7JZa7ff1N3EIMlPnGTZfUMe69FFwiQPnVSXC9mnn3jozCRBYIxiZd44yJOV2AmabOo4qFf8s0dC/+lweG7+w==", + "dev": true, + "dependencies": { + "icss-replace-symbols": "^1.1.0", + "postcss": "^7.0.6" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.6.tgz", + "integrity": "sha512-9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + }, + "node_modules/postcss/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss/node_modules/chalk/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/precond": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/precond/-/precond-0.2.3.tgz", + "integrity": "sha1-qpWRvKokkj8eD0hJ0kD0fvwQdaw=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/prettier": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.2.1.tgz", + "integrity": "sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==", + "dev": true, + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/prettier-plugin-solidity": { + "version": "1.0.0-beta.6", + "resolved": "https://registry.npmjs.org/prettier-plugin-solidity/-/prettier-plugin-solidity-1.0.0-beta.6.tgz", + "integrity": "sha512-WymLqd22Hl93t5+HDNLk08TAWp4i4vZMhpihuVqkwOApjCT7mH1qwhLtvf3m+NdU//qj8vrPDmMoT+xc74skcg==", + "dev": true, + "dependencies": { + "@solidity-parser/parser": "^0.12.0", + "dir-to-object": "^2.0.0", + "emoji-regex": "^9.2.1", + "escape-string-regexp": "^4.0.0", + "prettier": "^2.2.1", + "semver": "^7.3.4", + "solidity-comments-extractor": "^0.0.4", + "string-width": "^4.2.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/prettier-plugin-solidity/node_modules/@solidity-parser/parser": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.12.0.tgz", + "integrity": "sha512-DT3f/Aa4tQysZwUsuqBwvr8YRJzKkvPUKV/9o2/o5EVw3xqlbzmtx4O60lTUcZdCawL+N8bBLNUyOGpHjGlJVQ==", + "dev": true + }, + "node_modules/prettier-plugin-solidity/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/prettier-plugin-solidity/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "node_modules/prettier-plugin-solidity/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/prettier-plugin-solidity/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/prettier-plugin-solidity/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/prettier-plugin-solidity/node_modules/semver": { + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", + "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/prettier-plugin-solidity/node_modules/string-width": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/prettier-plugin-solidity/node_modules/string-width/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/prettier-plugin-solidity/node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/prettier-plugin-solidity/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/pretty-bytes": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.3.0.tgz", + "integrity": "sha512-hjGrh+P926p4R4WbaB6OckyRtO0F0/lQBiT+0gnxjV+5kjPBrfVBFCsCLbMqVQeydvIoouYTCmmEURiH3R1Bdg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/pretty-error": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.2.tgz", + "integrity": "sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw==", + "dev": true, + "dependencies": { + "lodash": "^4.17.20", + "renderkid": "^2.0.4" + } + }, + "node_modules/pretty-error/node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/printj": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/printj/-/printj-1.1.2.tgz", + "integrity": "sha512-zA2SmoLaxZyArQTOPj5LXecR+RagfPSU5Kw1qP+jkWeNlrq+eJZyY2oS68SU1Z/7/myXM4lo9716laOFAVStCQ==", + "dev": true, + "bin": { + "printj": "bin/printj.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/process": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/process/-/process-0.5.2.tgz", + "integrity": "sha1-FjjYqONML0QKkduVq5rrZ3/Bhc8=", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==" + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "dev": true, + "dependencies": { + "asap": "~2.0.3" + } + }, + "node_modules/promise-deferred": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/promise-deferred/-/promise-deferred-2.0.3.tgz", + "integrity": "sha512-n10XaoznCzLfyPFOlEE8iurezHpxrYzyjgq/1eW9Wk1gJwur/N7BdBmjJYJpqMeMcXK4wEbzo2EvZQcqjYcKUQ==", + "dev": true, + "dependencies": { + "promise": "^7.3.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "dev": true + }, + "node_modules/promise-to-callback": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/promise-to-callback/-/promise-to-callback-1.0.0.tgz", + "integrity": "sha1-XSp0kBC/tn2WNZj805YHRqaP7vc=", + "dependencies": { + "is-fn": "^1.0.0", + "set-immediate-shim": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/promise.allsettled": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/promise.allsettled/-/promise.allsettled-1.0.2.tgz", + "integrity": "sha512-UpcYW5S1RaNKT6pd+s9jp9K9rlQge1UXKskec0j6Mmuq7UJCvlS2J2/s/yuPN8ehftf9HXMxWlKiPbGGUzpoRg==", + "dev": true, + "dependencies": { + "array.prototype.map": "^1.0.1", + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1", + "function-bind": "^1.1.1", + "iterate-value": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/promiseback": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/promiseback/-/promiseback-2.0.3.tgz", + "integrity": "sha512-VZXdCwS0ppVNTIRfNsCvVwJAaP2b+pxQF7lM8DMWfmpNWyTxB6O5YNbzs+8z0ki/KIBHKHk308NTIl4kJUem3w==", + "dev": true, + "dependencies": { + "is-callable": "^1.1.5", + "promise-deferred": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/promiseback/node_modules/is-callable": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", + "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz", + "integrity": "sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==", + "dev": true, + "dependencies": { + "forwarded": "~0.1.2", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-agent": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-3.1.1.tgz", + "integrity": "sha512-WudaR0eTsDx33O3EJE16PjBRZWcX8GqCEeERw1W3hZJgH/F2a46g7jty6UGty6NeJ4CKQy8ds2CJPMiyeqaTvw==", + "dev": true, + "dependencies": { + "agent-base": "^4.2.0", + "debug": "4", + "http-proxy-agent": "^2.1.0", + "https-proxy-agent": "^3.0.0", + "lru-cache": "^5.1.1", + "pac-proxy-agent": "^3.0.1", + "proxy-from-env": "^1.0.0", + "socks-proxy-agent": "^4.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/proxy-agent/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/proxy-agent/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", + "dev": true + }, + "node_modules/prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=" + }, + "node_modules/pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "node_modules/psl": { + "version": "1.1.31", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.31.tgz", + "integrity": "sha512-/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw==" + }, + "node_modules/public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dev": true, + "dependencies": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/public-encrypt/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/pumpify": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", + "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", + "dev": true, + "dependencies": { + "duplexify": "^3.6.0", + "inherits": "^2.0.3", + "pump": "^2.0.0" + } + }, + "node_modules/pumpify/node_modules/pump": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "dev": true, + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/pupa": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.0.1.tgz", + "integrity": "sha512-hEJH0s8PXLY/cdXh66tNEQGndDrIKNqNC5xmrysZy3i5C3oEoLna7YAOad+7u125+zH1HNXUmGEkrhb3c2VriA==", + "dev": true, + "dependencies": { + "escape-goat": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/query-string": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz", + "integrity": "sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==", + "dev": true, + "dependencies": { + "decode-uri-component": "^0.2.0", + "object-assign": "^4.1.0", + "strict-uri-encode": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", + "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.", + "dev": true, + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", + "dev": true, + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/quick-lru": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dev": true, + "dependencies": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "node_modules/randomhex": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/randomhex/-/randomhex-0.1.5.tgz", + "integrity": "sha1-us7vmCMpCRQA8qKRLGzQLxCU9YU=", + "dev": true + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz", + "integrity": "sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA==", + "dev": true, + "dependencies": { + "bytes": "3.1.0", + "http-errors": "1.7.3", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dev": true, + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/read-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", + "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "dev": true, + "dependencies": { + "load-json-file": "^2.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", + "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "dev": true, + "dependencies": { + "find-up": "^2.0.0", + "read-pkg": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/readdirp": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz", + "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", + "dev": true, + "dependencies": { + "resolve": "^1.1.6" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/recursive-readdir": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz", + "integrity": "sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==", + "dev": true, + "dependencies": { + "minimatch": "3.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.13.7", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz", + "integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==" + }, + "node_modules/regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "dev": true, + "dependencies": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regex-not/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regex-not/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regexpp": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz", + "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/registry-auth-token": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.0.tgz", + "integrity": "sha512-P+lWzPrsgfN+UEpDS3U8AQKg/UjZX6mQSJueZj3EK+vNESoqBSpBUD3gmu4sF9lOsjXWjF11dQKUqemf3veq1w==", + "dev": true, + "dependencies": { + "rc": "^1.2.8" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/registry-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", + "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", + "dev": true, + "dependencies": { + "rc": "^1.2.8" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true, + "optional": true + }, + "node_modules/renderkid": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.5.tgz", + "integrity": "sha512-ccqoLg+HLOHq1vdfYNm4TBeaCDIi1FLt3wGojTDSvdewUv65oTmI3cnT2E4hRjl1gzKZIPK+KZrXzlUYKnR+vQ==", + "dev": true, + "dependencies": { + "css-select": "^2.0.2", + "dom-converter": "^0.2", + "htmlparser2": "^3.10.1", + "lodash": "^4.17.20", + "strip-ansi": "^3.0.0" + } + }, + "node_modules/renderkid/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/renderkid/node_modules/css-select": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz", + "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^3.2.1", + "domutils": "^1.7.0", + "nth-check": "^1.0.2" + } + }, + "node_modules/renderkid/node_modules/css-what": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz", + "integrity": "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==", + "dev": true, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/renderkid/node_modules/domutils": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", + "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", + "dev": true, + "dependencies": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "node_modules/renderkid/node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/renderkid/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/repeat-element": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz", + "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "dev": true, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/request": { + "version": "2.88.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", + "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", + "dependencies": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.0", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.4.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true + }, + "node_modules/resolve": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", + "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", + "dependencies": { + "path-parse": "^1.0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-alpn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.0.0.tgz", + "integrity": "sha512-rTuiIEqFmGxne4IovivKSDzld2lWW9QCjqv80SYjPgf+gS35eaCAjaP54CCwGAwBtnCsvNLYtqxe1Nw+i6JEmA==", + "dev": true + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "deprecated": "https://github.com/lydell/resolve-url#deprecated", + "dev": true + }, + "node_modules/responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "dev": true, + "dependencies": { + "lowercase-keys": "^1.0.0" + } + }, + "node_modules/restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "dev": true, + "dependencies": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "dev": true, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "node_modules/rlp": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/rlp/-/rlp-2.2.5.tgz", + "integrity": "sha512-y1QxTQOp0OZnjn19FxBmped4p+BSKPHwGndaqrESseyd2xXZtcgR3yuTIosh8CaMaOii9SKIYerBXnV/CpJ3qw==", + "dependencies": { + "bn.js": "^4.11.1" + }, + "bin": { + "rlp": "bin/rlp" + } + }, + "node_modules/rlp/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" + }, + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/run-parallel": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz", + "integrity": "sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==", + "dev": true + }, + "node_modules/run-queue": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", + "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "dev": true, + "dependencies": { + "aproba": "^1.1.1" + } + }, + "node_modules/rustbn.js": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/rustbn.js/-/rustbn.js-0.2.0.tgz", + "integrity": "sha512-4VlvkRUuCJvr2J6Y0ImW7NvTCriMi7ErOAqWk1y69vAdoNIzCF3yPmgeNzx+RQTLEDFq5sHfscn1MwHxP9hNfA==" + }, + "node_modules/rxjs": { + "version": "6.5.5", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.5.tgz", + "integrity": "sha512-WfQI+1gohdf0Dai/Bbmk5L5ItH5tYqm3ki2c5GdWhKjalzjg93N3avFjVStyZZz+A2Em+ZxKH5bNghw9UeylGQ==", + "dev": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/safe-event-emitter": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/safe-event-emitter/-/safe-event-emitter-1.0.1.tgz", + "integrity": "sha512-e1wFe99A91XYYxoQbcq2ZJUWurxEyP8vfz7A7vuUe1s95q8r5ebraVaA1BukYJcpM6V16ugWoD9vngi8Ccu5fg==", + "deprecated": "Renamed to @metamask/safe-event-emitter", + "dependencies": { + "events": "^3.0.0" + } + }, + "node_modules/safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "dev": true, + "dependencies": { + "ret": "~0.1.10" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + }, + "node_modules/sc-istanbul": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/sc-istanbul/-/sc-istanbul-0.4.5.tgz", + "integrity": "sha512-7wR5EZFLsC4w0wSm9BUuCgW+OGKAU7PNlW5L0qwVPbh+Q1sfVn2fyzfMXYCm6rkNA5ipaCOt94nApcguQwF5Gg==", + "dev": true, + "dependencies": { + "abbrev": "1.0.x", + "async": "1.x", + "escodegen": "1.8.x", + "esprima": "2.7.x", + "glob": "^5.0.15", + "handlebars": "^4.0.1", + "js-yaml": "3.x", + "mkdirp": "0.5.x", + "nopt": "3.x", + "once": "1.x", + "resolve": "1.1.x", + "supports-color": "^3.1.0", + "which": "^1.1.1", + "wordwrap": "^1.0.0" + }, + "bin": { + "istanbul": "lib/cli.js" + } + }, + "node_modules/sc-istanbul/node_modules/abbrev": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz", + "integrity": "sha1-kbR5JYinc4wl813W9jdSovh3YTU=", + "dev": true + }, + "node_modules/sc-istanbul/node_modules/escodegen": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz", + "integrity": "sha1-WltTr0aTEQvrsIZ6o0MN07cKEBg=", + "dev": true, + "dependencies": { + "esprima": "^2.7.1", + "estraverse": "^1.9.1", + "esutils": "^2.0.2", + "optionator": "^0.8.1" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=0.12.0" + }, + "optionalDependencies": { + "source-map": "~0.2.0" + } + }, + "node_modules/sc-istanbul/node_modules/esprima": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", + "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sc-istanbul/node_modules/estraverse": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz", + "integrity": "sha1-r2fy3JIlgkFZUJJgkaQAXSnJu0Q=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sc-istanbul/node_modules/glob": { + "version": "5.0.15", + "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", + "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "dev": true, + "dependencies": { + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + } + }, + "node_modules/sc-istanbul/node_modules/has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sc-istanbul/node_modules/resolve": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", + "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", + "dev": true + }, + "node_modules/sc-istanbul/node_modules/source-map": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz", + "integrity": "sha1-2rc/vPwrqBm03gO9b26qSBZLP50=", + "dev": true, + "optional": true, + "dependencies": { + "amdefine": ">=0.0.4" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/sc-istanbul/node_modules/supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "dependencies": { + "has-flag": "^1.0.0" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dev": true, + "dependencies": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/scrypt-js": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-2.0.3.tgz", + "integrity": "sha1-uwBAvgMEPamgEqLOqfyfhSz8h9Q=", + "dev": true + }, + "node_modules/scryptsy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/scryptsy/-/scryptsy-2.1.0.tgz", + "integrity": "sha512-1CdSqHQowJBnMAFyPEBRfqag/YP9OF394FV+4YREIJX4ljD7OxvQRDayyoyyCk+senRjSkP6VnUNQmVQqB6g7w==", + "dev": true + }, + "node_modules/secp256k1": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-3.8.0.tgz", + "integrity": "sha512-k5ke5avRZbtl9Tqx/SA7CbY3NF6Ro+Sj9cZxezFzuBlLDmyqPiL8hJJ+EmzD8Ig4LUDByHJ3/iPOVoRixs/hmw==", + "hasInstallScript": true, + "dependencies": { + "bindings": "^1.5.0", + "bip66": "^1.1.5", + "bn.js": "^4.11.8", + "create-hash": "^1.2.0", + "drbg.js": "^1.0.1", + "elliptic": "^6.5.2", + "nan": "^2.14.0", + "safe-buffer": "^5.1.2" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/secp256k1/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" + }, + "node_modules/secp256k1/node_modules/elliptic": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz", + "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==", + "dependencies": { + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.0" + } + }, + "node_modules/secp256k1/node_modules/nan": { + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz", + "integrity": "sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==" + }, + "node_modules/secure-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/secure-keys/-/secure-keys-1.0.0.tgz", + "integrity": "sha1-8MgtmKOxOah3aogIBQuCRDEIf8o=", + "dev": true + }, + "node_modules/seek-bzip": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/seek-bzip/-/seek-bzip-1.0.5.tgz", + "integrity": "sha1-z+kXyz0nS8/6x5J1ivUxc+sfq9w=", + "dev": true, + "dependencies": { + "commander": "~2.8.1" + }, + "bin": { + "seek-bunzip": "bin/seek-bunzip", + "seek-table": "bin/seek-bzip-table" + } + }, + "node_modules/seek-bzip/node_modules/commander": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz", + "integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=", + "dev": true, + "dependencies": { + "graceful-readlink": ">= 1.0.0" + }, + "engines": { + "node": ">= 0.6.x" + } + }, + "node_modules/semaphore": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/semaphore/-/semaphore-1.1.0.tgz", + "integrity": "sha512-O4OZEaNtkMd/K0i6js9SL+gqy0ZCBMgUvlSqHKi4IBdjhe7wB8pwztUk1BbZ1fmrvpwFrPbHzqd2w5pTcJH6LA==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/semaphore-async-await": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/semaphore-async-await/-/semaphore-async-await-1.5.1.tgz", + "integrity": "sha1-hXvvXjZEYBykuVcLh+nfXKEpdPo=", + "dev": true, + "engines": { + "node": ">=4.1" + } + }, + "node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=", + "dev": true + }, + "node_modules/semver-diff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", + "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", + "dev": true, + "dependencies": { + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/semver-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-2.0.0.tgz", + "integrity": "sha512-mUdIBBvdn0PLOeP3TEkMH7HHeUP3GjsXCwKarjv/kGmUFOYg1VqEemKhoQpWMu6X2I8kHeuVdGibLGkVK+/5Qw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/send": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", + "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "~1.7.2", + "mime": "1.6.0", + "ms": "2.1.1", + "on-finished": "~2.3.0", + "range-parser": "~1.2.1", + "statuses": "~1.5.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "node_modules/send/node_modules/http-errors": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", + "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==", + "dev": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/send/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "node_modules/send/node_modules/setprototypeof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", + "dev": true + }, + "node_modules/serialize-javascript": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz", + "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", + "dev": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/serve-static": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", + "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", + "dev": true, + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.17.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/servify": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/servify/-/servify-0.1.12.tgz", + "integrity": "sha512-/xE6GvsKKqyo1BAY+KxOWXcLpPsUUyji7Qg3bVD7hh1eRze5bR1uYiuDA/k3Gof1s9BTzQZEJK8sNcNGFIzeWw==", + "dev": true, + "dependencies": { + "body-parser": "^1.16.0", + "cors": "^2.8.1", + "express": "^4.14.0", + "request": "^2.79.0", + "xhr": "^2.3.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true + }, + "node_modules/set-immediate-shim": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", + "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/set-value": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "dev": true, + "dependencies": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" + }, + "node_modules/setprototypeof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", + "dev": true + }, + "node_modules/sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + }, + "bin": { + "sha.js": "bin.js" + } + }, + "node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shelljs": { + "version": "0.8.4", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.4.tgz", + "integrity": "sha512-7gk3UZ9kOfPLIAbslLzyWeGiEqx9e3rxwZM0KE6EL8GlGwjym9Mrlx5/p33bWTu9YG6vcS4MBxYZDHYr5lr8BQ==", + "dev": true, + "dependencies": { + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + }, + "bin": { + "shjs": "bin/shjs" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", + "dev": true + }, + "node_modules/simple-concat": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.0.tgz", + "integrity": "sha1-c0TLuLbib7J9ZrL8hvn21Zl1IcY=", + "dev": true + }, + "node_modules/simple-get": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-2.8.1.tgz", + "integrity": "sha512-lSSHRSw3mQNUGPAYRqo7xy9dhKmxFXIjLjp4KHpf99GEH2VH7C3AM+Qfx6du6jhfUi6Vm7XnbEVEf7Wb6N8jRw==", + "dev": true, + "dependencies": { + "decompress-response": "^3.3.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/slice-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", + "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.0", + "astral-regex": "^1.0.0", + "is-fullwidth-code-point": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/smart-buffer": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.1.0.tgz", + "integrity": "sha512-iVICrxOzCynf/SNaBQCw34eM9jROU/s5rzIhpOvzhzuYHfJR/DhZfDkXiZSgKXfgv26HT3Yni3AV/DGw0cGnnw==", + "dev": true, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "dev": true, + "dependencies": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dev": true, + "dependencies": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node/node_modules/define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node/node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node/node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node/node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dev": true, + "dependencies": { + "kind-of": "^3.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-util/node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "node_modules/snapdragon-util/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/snapdragon/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snyk": { + "version": "1.369.0", + "resolved": "https://registry.npmjs.org/snyk/-/snyk-1.369.0.tgz", + "integrity": "sha512-iDRFFtuglOILwe26MQuBGxM4MVeunY95FeUCY42nqbXJzKV1KrsXsqENY+HRHhY1aXAtGTSkf9VmMQHTJYfJYA==", + "dev": true, + "dependencies": { + "@snyk/cli-interface": "2.8.1", + "@snyk/dep-graph": "1.18.3", + "@snyk/gemfile": "1.2.0", + "@snyk/graphlib": "2.1.9-patch", + "@snyk/inquirer": "6.2.2-patch", + "@snyk/lodash": "^4.17.15-patch", + "@snyk/ruby-semver": "2.2.0", + "@snyk/snyk-cocoapods-plugin": "2.3.0", + "abbrev": "^1.1.1", + "ansi-escapes": "3.2.0", + "chalk": "^2.4.2", + "cli-spinner": "0.2.10", + "configstore": "^5.0.1", + "debug": "^4.1.1", + "diff": "^4.0.1", + "glob": "^7.1.3", + "needle": "^2.5.0", + "open": "^7.0.3", + "os-name": "^3.0.0", + "proxy-agent": "^3.1.1", + "proxy-from-env": "^1.0.0", + "semver": "^6.0.0", + "snyk-config": "3.1.0", + "snyk-docker-plugin": "3.16.0", + "snyk-go-plugin": "1.16.0", + "snyk-gradle-plugin": "3.5.1", + "snyk-module": "3.1.0", + "snyk-mvn-plugin": "2.18.0", + "snyk-nodejs-lockfile-parser": "1.26.3", + "snyk-nuget-plugin": "1.18.1", + "snyk-php-plugin": "1.9.0", + "snyk-policy": "1.14.1", + "snyk-python-plugin": "1.17.1", + "snyk-resolve": "1.0.1", + "snyk-resolve-deps": "4.4.0", + "snyk-sbt-plugin": "2.11.0", + "snyk-tree": "^1.0.0", + "snyk-try-require": "1.3.1", + "source-map-support": "^0.5.11", + "strip-ansi": "^5.2.0", + "tempfile": "^2.0.0", + "update-notifier": "^4.1.0", + "uuid": "^3.3.2", + "wrap-ansi": "^5.1.0" + }, + "bin": { + "snyk": "dist/cli/index.js" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk-config": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/snyk-config/-/snyk-config-3.1.0.tgz", + "integrity": "sha512-3UlyogA67/9WOssJ7s4d7gqWQRWyO/LbgdBBNMhhmFDKa7eTUSW+A782CVHgyDSJZ2kNANcMWwMiOL+h3p6zQg==", + "dev": true, + "dependencies": { + "@snyk/lodash": "4.17.15-patch", + "debug": "^4.1.1", + "nconf": "^0.10.0" + } + }, + "node_modules/snyk-config/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/snyk-config/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/snyk-docker-plugin": { + "version": "3.16.0", + "resolved": "https://registry.npmjs.org/snyk-docker-plugin/-/snyk-docker-plugin-3.16.0.tgz", + "integrity": "sha512-i11WxMhsZxcFKn123LeA+u77NN7uWqWgPfQ6dvkACJnvouWHZidkOAxBOmYU49x8VS7dEQSe2Ym0bgr6EHn4cQ==", + "dev": true, + "dependencies": { + "@snyk/rpm-parser": "^2.0.0", + "@snyk/snyk-docker-pull": "^3.2.0", + "debug": "^4.1.1", + "docker-modem": "2.1.3", + "dockerfile-ast": "0.0.19", + "event-loop-spinner": "^2.0.0", + "gunzip-maybe": "^1.4.2", + "mkdirp": "^1.0.4", + "semver": "^6.1.0", + "snyk-nodejs-lockfile-parser": "1.22.0", + "tar-stream": "^2.1.0", + "tmp": "^0.2.1", + "tslib": "^1", + "uuid": "^8.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk-docker-plugin/node_modules/bl": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.0.2.tgz", + "integrity": "sha512-j4OH8f6Qg2bGuWfRiltT2HYGx0e1QcBTrK9KAHNMwMZdQnDZFk0ZSYIpADjYCB3U12nicC5tVJwSIhwOWjb4RQ==", + "dev": true, + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/snyk-docker-plugin/node_modules/bl/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/snyk-docker-plugin/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/snyk-docker-plugin/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/snyk-docker-plugin/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/snyk-docker-plugin/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/snyk-docker-plugin/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/snyk-docker-plugin/node_modules/snyk-nodejs-lockfile-parser": { + "version": "1.22.0", + "resolved": "https://registry.npmjs.org/snyk-nodejs-lockfile-parser/-/snyk-nodejs-lockfile-parser-1.22.0.tgz", + "integrity": "sha512-l6jLoJxqcIIkQopSdQuAstXdMw5AIgLu+uGc5CYpHyw8fYqOwna8rawwofNeGuwJAAv4nEiNiexeYaR88OCq6Q==", + "dev": true, + "dependencies": { + "@snyk/graphlib": "2.1.9-patch", + "@snyk/lodash": "^4.17.15-patch", + "@yarnpkg/lockfile": "^1.0.2", + "event-loop-spinner": "^1.1.0", + "p-map": "2.1.0", + "snyk-config": "^3.0.0", + "source-map-support": "^0.5.7", + "tslib": "^1.9.3", + "uuid": "^3.3.2" + }, + "bin": { + "parse-nodejs-lockfile": "bin/index.js" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk-docker-plugin/node_modules/snyk-nodejs-lockfile-parser/node_modules/event-loop-spinner": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/event-loop-spinner/-/event-loop-spinner-1.1.0.tgz", + "integrity": "sha512-YVFs6dPpZIgH665kKckDktEVvSBccSYJmoZUfhNUdv5d3Xv+Q+SKF4Xis1jolq9aBzuW1ZZhQh/m/zU/TPdDhw==", + "dev": true, + "dependencies": { + "tslib": "^1.10.0" + } + }, + "node_modules/snyk-docker-plugin/node_modules/snyk-nodejs-lockfile-parser/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "dev": true, + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/snyk-docker-plugin/node_modules/tar-stream": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.1.3.tgz", + "integrity": "sha512-Z9yri56Dih8IaK8gncVPx4Wqt86NDmQTSh49XLZgjWpGZL9GK9HKParS2scqHCC4w6X9Gh2jwaU45V47XTKwVA==", + "dev": true, + "dependencies": { + "bl": "^4.0.1", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/snyk-docker-plugin/node_modules/tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "dev": true, + "dependencies": { + "rimraf": "^3.0.0" + }, + "engines": { + "node": ">=8.17.0" + } + }, + "node_modules/snyk-docker-plugin/node_modules/uuid": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.0.tgz", + "integrity": "sha512-fX6Z5o4m6XsXBdli9g7DtWgAx+osMsRRZFKma1mIUsLCz6vRvv+pz5VNbyu9UEDzpMWulZfvpgb/cmDXVulYFQ==", + "dev": true, + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/snyk-go-parser": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/snyk-go-parser/-/snyk-go-parser-1.4.1.tgz", + "integrity": "sha512-StU3uHB85VMEkcgXta63M0Fgd+9cs5sMCjQXTBoYTdE4dxarPn7U67yCuwkRRdZdny1ZXtzfY8LKns9i0+dy9w==", + "dev": true, + "dependencies": { + "toml": "^3.0.0", + "tslib": "^1.10.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/snyk-go-plugin": { + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/snyk-go-plugin/-/snyk-go-plugin-1.16.0.tgz", + "integrity": "sha512-XNGHEFyP+pCzcqmXnj5T/1Oy6AZzm2WkTSuUpohWQ/09ecMRCCv2yrr/kwMQemrKN4+7CoJS/9xfm3GnNlzVHA==", + "dev": true, + "dependencies": { + "@snyk/dep-graph": "1.19.3", + "@snyk/graphlib": "2.1.9-patch", + "debug": "^4.1.1", + "snyk-go-parser": "1.4.1", + "tmp": "0.2.0", + "tslib": "^1.10.0" + } + }, + "node_modules/snyk-go-plugin/node_modules/@snyk/dep-graph": { + "version": "1.19.3", + "resolved": "https://registry.npmjs.org/@snyk/dep-graph/-/dep-graph-1.19.3.tgz", + "integrity": "sha512-WJLUFKBokoFK5imi0t8Dkyj+uqtS/5Ziuf4oE/OOFX30UqP1ffMDkv9/3sqBJQVQ9FjdgsX3Cm8JZMtMlYRc6w==", + "dev": true, + "dependencies": { + "@snyk/graphlib": "2.1.9-patch.2", + "lodash.isequal": "^4.5.0", + "object-hash": "^2.0.3", + "semver": "^6.0.0", + "source-map-support": "^0.5.19", + "tslib": "^1.13.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk-go-plugin/node_modules/@snyk/dep-graph/node_modules/@snyk/graphlib": { + "version": "2.1.9-patch.2", + "resolved": "https://registry.npmjs.org/@snyk/graphlib/-/graphlib-2.1.9-patch.2.tgz", + "integrity": "sha512-BjJzOXDNzoEMBOjSks7vadu5f0c39SeorJMi9vUvvWM5dcE22CZqcN9VMRW5DYTifUJiCWszkm5TOyfYfB0bfg==", + "dev": true, + "dependencies": { + "lodash.clone": "^4.5.0", + "lodash.constant": "^3.0.0", + "lodash.filter": "^4.6.0", + "lodash.foreach": "^4.5.0", + "lodash.has": "^4.5.2", + "lodash.isarray": "^4.0.0", + "lodash.isempty": "^4.4.0", + "lodash.isfunction": "^3.0.9", + "lodash.isundefined": "^3.0.1", + "lodash.keys": "^4.2.0", + "lodash.map": "^4.6.0", + "lodash.reduce": "^4.6.0", + "lodash.size": "^4.2.0", + "lodash.transform": "^4.6.0", + "lodash.union": "^4.6.0", + "lodash.values": "^4.3.0" + } + }, + "node_modules/snyk-go-plugin/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/snyk-go-plugin/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/snyk-go-plugin/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/snyk-go-plugin/node_modules/tmp": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.0.tgz", + "integrity": "sha512-spsb5g6EiPmteS5TcOAECU3rltCMDMp4VMU2Sb0+WttN4qGobEkMAd+dkr1cubscN08JGNDX765dPbGImbG7MQ==", + "dev": true, + "dependencies": { + "rimraf": "^3.0.0" + }, + "engines": { + "node": ">=8.17.0" + } + }, + "node_modules/snyk-gradle-plugin": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/snyk-gradle-plugin/-/snyk-gradle-plugin-3.5.1.tgz", + "integrity": "sha512-8tZwQCqRbjp1azvc+bBRXSbn2AjbUpFAM6qoSpM/IZpfGl1RaOtz4/JTkGFxj+iBhTFoAkGxEunT66eO0pHZZw==", + "dev": true, + "dependencies": { + "@snyk/cli-interface": "2.8.0", + "@snyk/dep-graph": "^1.17.0", + "@types/debug": "^4.1.4", + "chalk": "^3.0.0", + "debug": "^4.1.1", + "tmp": "0.2.1", + "tslib": "^2.0.0" + } + }, + "node_modules/snyk-gradle-plugin/node_modules/@snyk/cli-interface": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/@snyk/cli-interface/-/cli-interface-2.8.0.tgz", + "integrity": "sha512-St/G39iJG1zQK15L24kcVYM2gmFc/ylBCcBqU2DMZKJKwOPccKLUO6s+dWIUXMccQ+DFS6TuHPvuAKQNi9C4Yg==", + "dev": true, + "dependencies": { + "@snyk/dep-graph": "1.19.0", + "@snyk/graphlib": "2.1.9-patch", + "tslib": "^1.9.3" + } + }, + "node_modules/snyk-gradle-plugin/node_modules/@snyk/cli-interface/node_modules/@snyk/dep-graph": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/@snyk/dep-graph/-/dep-graph-1.19.0.tgz", + "integrity": "sha512-/0phOICMk4hkX2KtZgi+4KNd5G9oYDIlxQDQk+ui2xl4gonPvK6Q5MFzHP7Xet1YY/XoU33ox41i+IO48qZ+zQ==", + "dev": true, + "dependencies": { + "@snyk/graphlib": "2.1.9-patch", + "lodash.isequal": "^4.5.0", + "object-hash": "^2.0.3", + "semver": "^6.0.0", + "source-map-support": "^0.5.19", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk-gradle-plugin/node_modules/@snyk/cli-interface/node_modules/@snyk/dep-graph/node_modules/tslib": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.0.0.tgz", + "integrity": "sha512-lTqkx847PI7xEDYJntxZH89L2/aXInsyF2luSafe/+0fHOMjlBNXdH6th7f70qxLDhul7KZK0zC8V5ZIyHl0/g==", + "dev": true + }, + "node_modules/snyk-gradle-plugin/node_modules/@snyk/cli-interface/node_modules/tslib": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", + "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==", + "dev": true + }, + "node_modules/snyk-gradle-plugin/node_modules/ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "dependencies": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/snyk-gradle-plugin/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk-gradle-plugin/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/snyk-gradle-plugin/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/snyk-gradle-plugin/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/snyk-gradle-plugin/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk-gradle-plugin/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/snyk-gradle-plugin/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/snyk-gradle-plugin/node_modules/supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk-gradle-plugin/node_modules/tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "dev": true, + "dependencies": { + "rimraf": "^3.0.0" + }, + "engines": { + "node": ">=8.17.0" + } + }, + "node_modules/snyk-gradle-plugin/node_modules/tslib": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.0.0.tgz", + "integrity": "sha512-lTqkx847PI7xEDYJntxZH89L2/aXInsyF2luSafe/+0fHOMjlBNXdH6th7f70qxLDhul7KZK0zC8V5ZIyHl0/g==", + "dev": true + }, + "node_modules/snyk-module": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/snyk-module/-/snyk-module-3.1.0.tgz", + "integrity": "sha512-HHuOYEAACpUpkFgU8HT57mmxmonaJ4O3YADoSkVhnhkmJ+AowqZyJOau703dYHNrq2DvQ7qYw81H7yyxS1Nfjw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "hosted-git-info": "^3.0.4" + } + }, + "node_modules/snyk-module/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/snyk-module/node_modules/hosted-git-info": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.5.tgz", + "integrity": "sha512-i4dpK6xj9BIpVOTboXIlKG9+8HMKggcrMX7WA24xZtKwX0TPelq/rbaS5rCKeNX8sJXZJGdSxpnEGtta+wismQ==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/snyk-module/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/snyk-module/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/snyk-module/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/snyk-mvn-plugin": { + "version": "2.18.0", + "resolved": "https://registry.npmjs.org/snyk-mvn-plugin/-/snyk-mvn-plugin-2.18.0.tgz", + "integrity": "sha512-ika5I/8G3wDUT7L+3mDIyzh6Xc4bK8sBhcfFnhpFS0WvOMRAdF4kpshfZ1HzFRsRfe/4YgA3T/D7EoJRtu7Aiw==", + "dev": true, + "dependencies": { + "@snyk/cli-interface": "2.8.1", + "@snyk/java-call-graph-builder": "1.12.1", + "debug": "^4.1.1", + "needle": "^2.5.0", + "tmp": "^0.1.0", + "tslib": "1.11.1" + } + }, + "node_modules/snyk-mvn-plugin/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/snyk-mvn-plugin/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/snyk-mvn-plugin/node_modules/tmp": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.1.0.tgz", + "integrity": "sha512-J7Z2K08jbGcdA1kkQpJSqLF6T0tdQqpR2pnSUXsIchbPdTI9v3e85cLW0d6WDhwuAleOV71j2xWs8qMPfK7nKw==", + "dev": true, + "dependencies": { + "rimraf": "^2.6.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/snyk-mvn-plugin/node_modules/tslib": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz", + "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==", + "dev": true + }, + "node_modules/snyk-nodejs-lockfile-parser": { + "version": "1.26.3", + "resolved": "https://registry.npmjs.org/snyk-nodejs-lockfile-parser/-/snyk-nodejs-lockfile-parser-1.26.3.tgz", + "integrity": "sha512-mBQ6vhnXAeyMxlnl9amjJWpA+/3qqXwM8Sj/P+9uH2TByOFLxdGzMNQFcl3q/H2yUdcs/epVdXJp09A2dK2glA==", + "dev": true, + "dependencies": { + "@snyk/graphlib": "2.1.9-patch", + "@yarnpkg/core": "^2.0.0-rc.29", + "@yarnpkg/lockfile": "^1.1.0", + "event-loop-spinner": "^2.0.0", + "lodash.clonedeep": "^4.5.0", + "lodash.flatmap": "^4.5.0", + "lodash.isempty": "^4.4.0", + "lodash.set": "^4.3.2", + "lodash.topairs": "^4.3.0", + "p-map": "2.1.0", + "snyk-config": "^3.0.0", + "source-map-support": "^0.5.7", + "tslib": "^1.9.3", + "uuid": "^3.3.2", + "yaml": "^1.9.2" + }, + "bin": { + "parse-nodejs-lockfile": "bin/index.js" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk-nuget-plugin": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/snyk-nuget-plugin/-/snyk-nuget-plugin-1.18.1.tgz", + "integrity": "sha512-Bq+IzbyewxIrUhgdFaDKS5wCNixERC7QBitKsZGM3uCOr9fJM8rr5qg5SS9UIU7eyeKvzuVO/V1yDzjo1cKvUw==", + "dev": true, + "dependencies": { + "@snyk/lodash": "4.17.15-patch", + "debug": "^4.1.1", + "dotnet-deps-parser": "4.10.0", + "jszip": "3.3.0", + "snyk-paket-parser": "1.6.0", + "tslib": "^1.11.2", + "xml2js": "^0.4.17" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk-nuget-plugin/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/snyk-nuget-plugin/node_modules/jszip": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.3.0.tgz", + "integrity": "sha512-EJ9k766htB1ZWnsV5ZMDkKLgA+201r/ouFF8R2OigVjVdcm2rurcBrrdXaeqBJbqnUVMko512PYmlncBKE1Huw==", + "dev": true, + "dependencies": { + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "set-immediate-shim": "~1.0.1" + } + }, + "node_modules/snyk-nuget-plugin/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/snyk-nuget-plugin/node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "dev": true + }, + "node_modules/snyk-paket-parser": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/snyk-paket-parser/-/snyk-paket-parser-1.6.0.tgz", + "integrity": "sha512-6htFynjBe/nakclEHUZ1A3j5Eu32/0pNve5Qm4MFn3YQmJgj7UcAO8hdyK3QfzEY29/kAv/rkJQg+SKshn+N9Q==", + "dev": true, + "dependencies": { + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/snyk-php-plugin": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/snyk-php-plugin/-/snyk-php-plugin-1.9.0.tgz", + "integrity": "sha512-uORrEoC47dw0ITZYu5vKqQtmXnbbQs+ZkWeo5bRHGdf10W8e4rNr1S1R4bReiLrSbSisYhVHeFMkdOAiLIPJVQ==", + "dev": true, + "dependencies": { + "@snyk/cli-interface": "2.3.2", + "@snyk/composer-lockfile-parser": "1.4.0", + "tslib": "1.11.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/snyk-php-plugin/node_modules/@snyk/cli-interface": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/@snyk/cli-interface/-/cli-interface-2.3.2.tgz", + "integrity": "sha512-jmZyxVHqzYU1GfdnWCGdd68WY/lAzpPVyqalHazPj4tFJehrSfEFc82RMTYAMgXEJuvFRFIwhsvXh3sWUhIQmg==", + "dev": true, + "dependencies": { + "tslib": "^1.9.3" + } + }, + "node_modules/snyk-php-plugin/node_modules/tslib": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz", + "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==", + "dev": true + }, + "node_modules/snyk-policy": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/snyk-policy/-/snyk-policy-1.14.1.tgz", + "integrity": "sha512-C5vSkoBYxPnaqb218sm4m6N5s1BhIXlldpIX5xRNnZ0QkDwVj3dy/PfgwxRgVQh7QFGa1ajbvKmsGmm4RRsN8g==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "email-validator": "^2.0.4", + "js-yaml": "^3.13.1", + "lodash.clonedeep": "^4.5.0", + "semver": "^6.0.0", + "snyk-module": "^2.0.2", + "snyk-resolve": "^1.0.1", + "snyk-try-require": "^1.3.1", + "then-fs": "^2.0.0" + } + }, + "node_modules/snyk-policy/node_modules/@types/node": { + "version": "6.14.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-6.14.10.tgz", + "integrity": "sha512-pF4HjZGSog75kGq7B1InK/wt/N08BuPATo+7HRfv7gZUzccebwv/fmWVGs/j6LvSiLWpCuGGhql51M/wcQsNzA==", + "dev": true + }, + "node_modules/snyk-policy/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/snyk-policy/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/snyk-policy/node_modules/snyk-module": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/snyk-module/-/snyk-module-2.1.0.tgz", + "integrity": "sha512-K5xeA39vLbm23Y/29wFEhKGvo7FwV4x9XhCP5gB22dBPyYiCCNiDERX4ofHQvtM6q96cL0hIroMdlbctv/0nPw==", + "dev": true, + "dependencies": { + "@types/hosted-git-info": "^2.7.0", + "@types/node": "^6.14.7", + "debug": "^3.1.0", + "hosted-git-info": "^2.7.1" + } + }, + "node_modules/snyk-policy/node_modules/snyk-module/node_modules/debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/snyk-python-plugin": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/snyk-python-plugin/-/snyk-python-plugin-1.17.1.tgz", + "integrity": "sha512-KKklat9Hfbj4hw2y63LRhgmziYzmyRt+cSuzN5KDmBSAGYck0EAoPDtNpJXjrIs1kPNz28EXnE6NDnadXnOjiQ==", + "dev": true, + "dependencies": { + "@snyk/cli-interface": "^2.0.3", + "tmp": "0.0.33" + } + }, + "node_modules/snyk-resolve": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/snyk-resolve/-/snyk-resolve-1.0.1.tgz", + "integrity": "sha512-7+i+LLhtBo1Pkth01xv+RYJU8a67zmJ8WFFPvSxyCjdlKIcsps4hPQFebhz+0gC5rMemlaeIV6cqwqUf9PEDpw==", + "dev": true, + "dependencies": { + "debug": "^3.1.0", + "then-fs": "^2.0.0" + } + }, + "node_modules/snyk-resolve-deps": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/snyk-resolve-deps/-/snyk-resolve-deps-4.4.0.tgz", + "integrity": "sha512-aFPtN8WLqIk4E1ulMyzvV5reY1Iksz+3oPnUVib1jKdyTHymmOIYF7z8QZ4UUr52UsgmrD9EA/dq7jpytwFoOQ==", + "dev": true, + "dependencies": { + "@types/node": "^6.14.4", + "@types/semver": "^5.5.0", + "ansicolors": "^0.3.2", + "debug": "^3.2.5", + "lodash.assign": "^4.2.0", + "lodash.assignin": "^4.2.0", + "lodash.clone": "^4.5.0", + "lodash.flatten": "^4.4.0", + "lodash.get": "^4.4.2", + "lodash.set": "^4.3.2", + "lru-cache": "^4.0.0", + "semver": "^5.5.1", + "snyk-module": "^1.6.0", + "snyk-resolve": "^1.0.0", + "snyk-tree": "^1.0.0", + "snyk-try-require": "^1.1.1", + "then-fs": "^2.0.0" + } + }, + "node_modules/snyk-resolve-deps/node_modules/@types/node": { + "version": "6.14.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-6.14.10.tgz", + "integrity": "sha512-pF4HjZGSog75kGq7B1InK/wt/N08BuPATo+7HRfv7gZUzccebwv/fmWVGs/j6LvSiLWpCuGGhql51M/wcQsNzA==", + "dev": true + }, + "node_modules/snyk-resolve-deps/node_modules/debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/snyk-resolve-deps/node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "node_modules/snyk-resolve-deps/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/snyk-resolve-deps/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/snyk-resolve-deps/node_modules/snyk-module": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/snyk-module/-/snyk-module-1.9.1.tgz", + "integrity": "sha512-A+CCyBSa4IKok5uEhqT+hV/35RO6APFNLqk9DRRHg7xW2/j//nPX8wTSZUPF8QeRNEk/sX+6df7M1y6PBHGSHA==", + "dev": true, + "dependencies": { + "debug": "^3.1.0", + "hosted-git-info": "^2.7.1" + } + }, + "node_modules/snyk-resolve-deps/node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + }, + "node_modules/snyk-sbt-plugin": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/snyk-sbt-plugin/-/snyk-sbt-plugin-2.11.0.tgz", + "integrity": "sha512-wUqHLAa3MzV6sVO+05MnV+lwc+T6o87FZZaY+43tQPytBI2Wq23O3j4POREM4fa2iFfiQJoEYD6c7xmhiEUsSA==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "semver": "^6.1.2", + "tmp": "^0.1.0", + "tree-kill": "^1.2.2", + "tslib": "^1.10.0" + } + }, + "node_modules/snyk-sbt-plugin/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/snyk-sbt-plugin/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/snyk-sbt-plugin/node_modules/tmp": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.1.0.tgz", + "integrity": "sha512-J7Z2K08jbGcdA1kkQpJSqLF6T0tdQqpR2pnSUXsIchbPdTI9v3e85cLW0d6WDhwuAleOV71j2xWs8qMPfK7nKw==", + "dev": true, + "dependencies": { + "rimraf": "^2.6.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/snyk-tree": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/snyk-tree/-/snyk-tree-1.0.0.tgz", + "integrity": "sha1-D7cxdtvzLngvGRAClBYESPkRHMg=", + "dev": true, + "dependencies": { + "archy": "^1.0.0" + }, + "bin": { + "npm-tree": "lib/index.js" + } + }, + "node_modules/snyk-try-require": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/snyk-try-require/-/snyk-try-require-1.3.1.tgz", + "integrity": "sha1-bgJvkuZK9/zM6h7lPVJIQeQYohI=", + "dev": true, + "dependencies": { + "debug": "^3.1.0", + "lodash.clonedeep": "^4.3.0", + "lru-cache": "^4.0.0", + "then-fs": "^2.0.0" + } + }, + "node_modules/snyk-try-require/node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "node_modules/snyk-try-require/node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + }, + "node_modules/snyk/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/snyk/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/snyk/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/snyk/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/socks": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.3.3.tgz", + "integrity": "sha512-o5t52PCNtVdiOvzMry7wU4aOqYWL0PeCXRWBEiJow4/i/wr+wpsJQ9awEu1EonLIqsfGd5qSgDdxEOvCdmBEpA==", + "dev": true, + "dependencies": { + "ip": "1.1.5", + "smart-buffer": "^4.1.0" + }, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz", + "integrity": "sha512-NT6syHhI9LmuEMSK6Kd2V7gNv5KFZoLE7V5udWmn0de+3Mkj3UMA/AJPLyeNUVmElCurSHtUdM3ETpR3z770Wg==", + "dev": true, + "dependencies": { + "agent-base": "~4.2.1", + "socks": "~2.3.2" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/socks-proxy-agent/node_modules/agent-base": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz", + "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", + "dev": true, + "dependencies": { + "es6-promisify": "^5.0.0" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/solc": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/solc/-/solc-0.7.3.tgz", + "integrity": "sha512-GAsWNAjGzIDg7VxzP6mPjdurby3IkGCjQcM8GFYZT6RyaoUZKmMU6Y7YwG+tFGhv7dwZ8rmR4iwFDrrD99JwqA==", + "dev": true, + "dependencies": { + "command-exists": "^1.2.8", + "commander": "3.0.2", + "follow-redirects": "^1.12.1", + "fs-extra": "^0.30.0", + "js-sha3": "0.8.0", + "memorystream": "^0.3.1", + "require-from-string": "^2.0.0", + "semver": "^5.5.0", + "tmp": "0.0.33" + }, + "bin": { + "solcjs": "solcjs" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/solc/node_modules/commander": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/commander/-/commander-3.0.2.tgz", + "integrity": "sha512-Gar0ASD4BDyKC4hl4DwHqDrmvjoxWKZigVnAbn5H1owvm4CxCPdb0HQDehwNYMJpla5+M2tPmPARzhtYuwpHow==", + "dev": true + }, + "node_modules/solc/node_modules/fs-extra": { + "version": "0.30.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.30.0.tgz", + "integrity": "sha1-8jP/zAjU2n1DLapEl3aYnbHfk/A=", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "jsonfile": "^2.1.0", + "klaw": "^1.0.0", + "path-is-absolute": "^1.0.0", + "rimraf": "^2.2.8" + } + }, + "node_modules/solc/node_modules/js-sha3": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", + "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==", + "dev": true + }, + "node_modules/solc/node_modules/jsonfile": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", + "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=", + "dev": true, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/solc/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/solhint": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/solhint/-/solhint-3.1.0.tgz", + "integrity": "sha512-Cc0wqKzg0NviDF7H5zsrGJ/hVwwkGqi0Hkc3YtedTev4alkJv4YADdJg4y586MpfEvMX4QPp7LugsmJzoeChkQ==", + "dev": true, + "dependencies": { + "@solidity-parser/parser": "^0.6.0", + "ajv": "^6.6.1", + "antlr4": "4.7.1", + "ast-parents": "0.0.1", + "chalk": "^2.4.2", + "commander": "2.18.0", + "cosmiconfig": "^5.0.7", + "eslint": "^5.6.0", + "fast-diff": "^1.1.2", + "glob": "^7.1.3", + "ignore": "^4.0.6", + "js-yaml": "^3.12.0", + "lodash": "^4.17.11", + "semver": "^6.3.0" + }, + "bin": { + "solhint": "solhint.js" + }, + "optionalDependencies": { + "prettier": "^1.14.3" + } + }, + "node_modules/solhint/node_modules/acorn": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", + "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/solhint/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/solhint/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/solhint/node_modules/eslint": { + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.16.0.tgz", + "integrity": "sha512-S3Rz11i7c8AA5JPv7xAH+dOyq/Cu/VXHiHXBPOU1k/JAM5dXqQPt3qcrhpHSorXmrpu2g0gkIBVXAqCpzfoZIg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "ajv": "^6.9.1", + "chalk": "^2.1.0", + "cross-spawn": "^6.0.5", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "eslint-scope": "^4.0.3", + "eslint-utils": "^1.3.1", + "eslint-visitor-keys": "^1.0.0", + "espree": "^5.0.1", + "esquery": "^1.0.1", + "esutils": "^2.0.2", + "file-entry-cache": "^5.0.1", + "functional-red-black-tree": "^1.0.1", + "glob": "^7.1.2", + "globals": "^11.7.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "inquirer": "^6.2.2", + "js-yaml": "^3.13.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.3.0", + "lodash": "^4.17.11", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "optionator": "^0.8.2", + "path-is-inside": "^1.0.2", + "progress": "^2.0.0", + "regexpp": "^2.0.1", + "semver": "^5.5.1", + "strip-ansi": "^4.0.0", + "strip-json-comments": "^2.0.1", + "table": "^5.2.3", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^6.14.0 || ^8.10.0 || >=9.10.0" + } + }, + "node_modules/solhint/node_modules/eslint-scope": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", + "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", + "dev": true, + "dependencies": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/solhint/node_modules/eslint-utils": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", + "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/solhint/node_modules/eslint/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/solhint/node_modules/eslint/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/solhint/node_modules/espree": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-5.0.1.tgz", + "integrity": "sha512-qWAZcWh4XE/RwzLJejfcofscgMc9CamR6Tn1+XRXNzrvUSSbiAjGOI/fggztjIi7y9VLPqnICMIPiGyr8JaZ0A==", + "dev": true, + "dependencies": { + "acorn": "^6.0.7", + "acorn-jsx": "^5.0.0", + "eslint-visitor-keys": "^1.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/solhint/node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/solhint/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/solhint/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/solhint/node_modules/prettier": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.19.1.tgz", + "integrity": "sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==", + "dev": true, + "optional": true, + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/solhint/node_modules/regexpp": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", + "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", + "dev": true, + "engines": { + "node": ">=6.5.0" + } + }, + "node_modules/solhint/node_modules/strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "dependencies": { + "ansi-regex": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/solhint/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/solidity-comments-extractor": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/solidity-comments-extractor/-/solidity-comments-extractor-0.0.4.tgz", + "integrity": "sha512-58glBODwXIKMaQ7rfcJOrWtFQMMOK28tJ0/LcB5Xhu7WtAxk4UX2fpgKPuaL41XjMp/y0gAa1MTLqk018wuSzA==", + "dev": true + }, + "node_modules/solidity-coverage": { + "version": "0.7.20", + "resolved": "https://registry.npmjs.org/solidity-coverage/-/solidity-coverage-0.7.20.tgz", + "integrity": "sha512-edOXTugUYdqxrtEnIn4vgrGjLPxdexcL0WD8LzAvVA3d1dwgcfRO3k8xQR02ZQnOnWMBi8Cqs0F+kAQQp3JW8g==", + "dev": true, + "dependencies": { + "@solidity-parser/parser": "^0.14.0", + "@truffle/provider": "^0.2.24", + "chalk": "^2.4.2", + "death": "^1.1.0", + "detect-port": "^1.3.0", + "fs-extra": "^8.1.0", + "ghost-testrpc": "^0.0.2", + "global-modules": "^2.0.0", + "globby": "^10.0.1", + "jsonschema": "^1.2.4", + "lodash": "^4.17.15", + "node-emoji": "^1.10.0", + "pify": "^4.0.1", + "recursive-readdir": "^2.2.2", + "sc-istanbul": "^0.4.5", + "semver": "^7.3.4", + "shelljs": "^0.8.3", + "web3-utils": "^1.3.0" + }, + "bin": { + "solidity-coverage": "plugins/bin.js" + } + }, + "node_modules/solidity-coverage/node_modules/@solidity-parser/parser": { + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.14.1.tgz", + "integrity": "sha512-eLjj2L6AuQjBB6s/ibwCAc0DwrR5Ge+ys+wgWo+bviU7fV2nTMQhU63CGaDKXg9iTmMxwhkyoggdIR7ZGRfMgw==", + "dev": true, + "dependencies": { + "antlr4ts": "^0.5.0-alpha.4" + } + }, + "node_modules/solidity-coverage/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/solidity-coverage/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/solidity-coverage/node_modules/eth-lib": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", + "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/solidity-coverage/node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/solidity-coverage/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/solidity-coverage/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/solidity-coverage/node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/solidity-coverage/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/solidity-coverage/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "node_modules/solidity-coverage/node_modules/web3-utils": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.3.5.tgz", + "integrity": "sha512-5apMRm8ElYjI/92GHqijmaLC+s+d5lgjpjHft+rJSs/dsnX8I8tQreqev0dmU+wzU+2EEe4Sx9a/OwGWHhQv3A==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "eth-lib": "0.2.8", + "ethereum-bloom-filters": "^1.0.6", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "underscore": "1.9.1", + "utf8": "3.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/solidity-coverage/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/source-list-map": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", + "dev": true + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-resolve": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", + "dev": true, + "dependencies": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", + "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-url": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", + "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", + "deprecated": "See https://github.com/lydell/source-map-url#deprecated", + "dev": true + }, + "node_modules/spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "dev": true, + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "dev": true + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", + "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", + "dev": true + }, + "node_modules/split-ca": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/split-ca/-/split-ca-1.0.1.tgz", + "integrity": "sha1-bIOv82kvphJW4M0ZfgXp3hV2kaY=", + "dev": true + }, + "node_modules/split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dev": true, + "dependencies": { + "extend-shallow": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/split-string/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/split-string/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "node_modules/ssh2": { + "version": "0.8.9", + "resolved": "https://registry.npmjs.org/ssh2/-/ssh2-0.8.9.tgz", + "integrity": "sha512-GmoNPxWDMkVpMFa9LVVzQZHF6EW3WKmBwL+4/GeILf2hFmix5Isxm7Amamo8o7bHiU0tC+wXsGcUXOxp8ChPaw==", + "dev": true, + "dependencies": { + "ssh2-streams": "~0.4.10" + }, + "engines": { + "node": ">=5.2.0" + } + }, + "node_modules/ssh2-streams": { + "version": "0.4.10", + "resolved": "https://registry.npmjs.org/ssh2-streams/-/ssh2-streams-0.4.10.tgz", + "integrity": "sha512-8pnlMjvnIZJvmTzUIIA5nT4jr2ZWNNVHwyXfMGdRJbug9TpI3kd99ffglgfSWqujVv/0gxwMsDn9j9RVst8yhQ==", + "dev": true, + "dependencies": { + "asn1": "~0.2.0", + "bcrypt-pbkdf": "^1.0.2", + "streamsearch": "~0.1.2" + }, + "engines": { + "node": ">=5.2.0" + } + }, + "node_modules/sshpk": { + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.0.tgz", + "integrity": "sha512-Zhev35/y7hRMcID/upReIvRse+I9SVhyVre/KTJSJQWMz3C3+G+HpO7m1wK/yckEtujKZ7dS4hkVxAnmHaIGVQ==", + "dependencies": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + }, + "bin": { + "sshpk-conv": "bin/sshpk-conv", + "sshpk-sign": "bin/sshpk-sign", + "sshpk-verify": "bin/sshpk-verify" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ssri": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz", + "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==", + "dev": true, + "dependencies": { + "figgy-pudding": "^3.5.1" + } + }, + "node_modules/stacktrace-parser": { + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/stacktrace-parser/-/stacktrace-parser-0.1.10.tgz", + "integrity": "sha512-KJP1OCML99+8fhOHxwwzyWrlUuVX5GQ0ZpJTd1DFXhdkrvg1szxfHhawXUZ3g9TkXORQd4/WG68jMlQZ2p8wlg==", + "dev": true, + "dependencies": { + "type-fest": "^0.7.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/stacktrace-parser/node_modules/type-fest": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.7.1.tgz", + "integrity": "sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "dev": true, + "dependencies": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/stream-browserify": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", + "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", + "dev": true, + "dependencies": { + "inherits": "~2.0.1", + "readable-stream": "^2.0.2" + } + }, + "node_modules/stream-buffers": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/stream-buffers/-/stream-buffers-3.0.2.tgz", + "integrity": "sha512-DQi1h8VEBA/lURbSwFtEHnSTb9s2/pwLEaFuNhXwy1Dx3Sa0lOuYT2yNUr4/j2fs8oCAMANtrZ5OrPZtyVs3MQ==", + "dev": true, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/stream-each": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", + "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", + "dev": true, + "dependencies": { + "end-of-stream": "^1.1.0", + "stream-shift": "^1.0.0" + } + }, + "node_modules/stream-http": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", + "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", + "dev": true, + "dependencies": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.3.6", + "to-arraybuffer": "^1.0.0", + "xtend": "^4.0.0" + } + }, + "node_modules/stream-shift": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", + "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", + "dev": true + }, + "node_modules/stream-to-array": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/stream-to-array/-/stream-to-array-2.3.0.tgz", + "integrity": "sha1-u/azn19D7DC8cbq8s3VXrOzzQ1M=", + "dev": true, + "dependencies": { + "any-promise": "^1.1.0" + } + }, + "node_modules/stream-to-promise": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/stream-to-promise/-/stream-to-promise-2.2.0.tgz", + "integrity": "sha1-se2y4cjLESidG1A8CNPyrvUeZQ8=", + "dev": true, + "dependencies": { + "any-promise": "~1.3.0", + "end-of-stream": "~1.1.0", + "stream-to-array": "~2.3.0" + } + }, + "node_modules/stream-to-promise/node_modules/end-of-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.1.0.tgz", + "integrity": "sha1-6TUyWLqpEIll78QcsO+K3i88+wc=", + "dev": true, + "dependencies": { + "once": "~1.3.0" + } + }, + "node_modules/stream-to-promise/node_modules/once": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/once/-/once-1.3.3.tgz", + "integrity": "sha1-suJhVXzkwxTsgwTz+oJmPkKXyiA=", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/streamsearch": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-0.1.2.tgz", + "integrity": "sha1-gIudDlb8Jz2Am6VzOOkpkZoanxo=", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/strict-uri-encode": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", + "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "dependencies": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "dependencies": { + "ansi-regex": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", + "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-ansi/node_modules/ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-dirs": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/strip-dirs/-/strip-dirs-2.1.0.tgz", + "integrity": "sha512-JOCxOeKLm2CAS73y/U4ZeZPTkE+gNVCzKt7Eox84Iej1LT/2pTWYpZKJuxwQpvX1LiZb1xokNR7RLfuBAa7T3g==", + "dev": true, + "dependencies": { + "is-natural-number": "^4.0.1" + } + }, + "node_modules/strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-hex-prefix": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz", + "integrity": "sha1-DF8VX+8RUTczd96du1iNoFUA428=", + "dependencies": { + "is-hex-prefixed": "1.0.0" + }, + "engines": { + "node": ">=6.5.0", + "npm": ">=3" + } + }, + "node_modules/strip-indent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", + "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/super-split": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/super-split/-/super-split-1.1.0.tgz", + "integrity": "sha512-I4bA5mgcb6Fw5UJ+EkpzqXfiuvVGS/7MuND+oBxNFmxu3ugLNrdIatzBLfhFRMVMLxgSsRy+TjIktgkF9RFSNQ==", + "dev": true + }, + "node_modules/supports-color": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz", + "integrity": "sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/swarm-js": { + "version": "0.1.40", + "resolved": "https://registry.npmjs.org/swarm-js/-/swarm-js-0.1.40.tgz", + "integrity": "sha512-yqiOCEoA4/IShXkY3WKwP5PvZhmoOOD8clsKA7EEcRILMkTEYHCQ21HDCAcVpmIxZq4LyZvWeRJ6quIyHk1caA==", + "dev": true, + "dependencies": { + "bluebird": "^3.5.0", + "buffer": "^5.0.5", + "eth-lib": "^0.1.26", + "fs-extra": "^4.0.2", + "got": "^7.1.0", + "mime-types": "^2.1.16", + "mkdirp-promise": "^5.0.1", + "mock-fs": "^4.1.0", + "setimmediate": "^1.0.5", + "tar": "^4.0.2", + "xhr-request": "^1.0.1" + } + }, + "node_modules/swarm-js/node_modules/got": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/got/-/got-7.1.0.tgz", + "integrity": "sha512-Y5WMo7xKKq1muPsxD+KmrR8DH5auG7fBdDVueZwETwV6VytKyU9OX/ddpq2/1hp1vIPvVb4T81dKQz3BivkNLw==", + "dev": true, + "dependencies": { + "decompress-response": "^3.2.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "is-plain-obj": "^1.1.0", + "is-retry-allowed": "^1.0.0", + "is-stream": "^1.0.0", + "isurl": "^1.0.0-alpha5", + "lowercase-keys": "^1.0.0", + "p-cancelable": "^0.3.0", + "p-timeout": "^1.1.1", + "safe-buffer": "^5.0.1", + "timed-out": "^4.0.0", + "url-parse-lax": "^1.0.0", + "url-to-options": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/swarm-js/node_modules/p-cancelable": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz", + "integrity": "sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/swarm-js/node_modules/prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/swarm-js/node_modules/url-parse-lax": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", + "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "dev": true, + "dependencies": { + "prepend-http": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/table": { + "version": "5.4.6", + "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", + "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", + "dev": true, + "dependencies": { + "ajv": "^6.10.2", + "lodash": "^4.17.14", + "slice-ansi": "^2.1.0", + "string-width": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/table/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/table/node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/table/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "dependencies": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tapable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/tar": { + "version": "4.4.13", + "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.13.tgz", + "integrity": "sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA==", + "dev": true, + "dependencies": { + "chownr": "^1.1.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.8.6", + "minizlib": "^1.2.1", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.3" + }, + "engines": { + "node": ">=4.5" + } + }, + "node_modules/tar-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", + "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", + "dev": true, + "dependencies": { + "bl": "^1.0.0", + "buffer-alloc": "^1.2.0", + "end-of-stream": "^1.0.0", + "fs-constants": "^1.0.0", + "readable-stream": "^2.3.0", + "to-buffer": "^1.1.1", + "xtend": "^4.0.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/temp-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", + "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/tempfile": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/tempfile/-/tempfile-2.0.0.tgz", + "integrity": "sha1-awRGhWqbERTRhW/8vlCczLCXcmU=", + "dev": true, + "dependencies": { + "temp-dir": "^1.0.0", + "uuid": "^3.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/tempfile/node_modules/temp-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", + "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/term-size": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/term-size/-/term-size-2.2.0.tgz", + "integrity": "sha512-a6sumDlzyHVJWb8+YofY4TW112G6p2FCPEAFk+59gIYHv3XHRhm9ltVQ9kli4hNWeQBwSpe8cRN25x0ROunMOw==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/terser": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz", + "integrity": "sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==", + "dev": true, + "dependencies": { + "commander": "^2.20.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.12" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz", + "integrity": "sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw==", + "dev": true, + "dependencies": { + "cacache": "^12.0.2", + "find-cache-dir": "^2.1.0", + "is-wsl": "^1.1.0", + "schema-utils": "^1.0.0", + "serialize-javascript": "^4.0.0", + "source-map": "^0.6.1", + "terser": "^4.1.2", + "webpack-sources": "^1.4.0", + "worker-farm": "^1.7.0" + }, + "engines": { + "node": ">= 6.9.0" + }, + "peerDependencies": { + "webpack": "^4.0.0" + } + }, + "node_modules/terser-webpack-plugin/node_modules/is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/terser-webpack-plugin/node_modules/serialize-javascript": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz", + "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", + "dev": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/terser/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "node_modules/then-fs": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/then-fs/-/then-fs-2.0.0.tgz", + "integrity": "sha1-cveS3Z0xcFqRrhnr/Piz+WjIHaI=", + "dev": true, + "dependencies": { + "promise": ">=3.2 <8" + } + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "node_modules/through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dev": true, + "dependencies": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "node_modules/thunkify": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/thunkify/-/thunkify-2.1.2.tgz", + "integrity": "sha1-+qDp0jDFGsyVyhOjYawFyn4EVT0=", + "dev": true + }, + "node_modules/timed-out": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", + "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/timers-browserify": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", + "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", + "dev": true, + "dependencies": { + "setimmediate": "^1.0.4" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/to-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", + "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", + "dev": true + }, + "node_modules/to-buffer": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", + "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==", + "dev": true + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "engines": { + "node": ">=4" + } + }, + "node_modules/to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-object-path/node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "node_modules/to-object-path/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "dev": true, + "dependencies": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/to-regex/node_modules/define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "dependencies": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex/node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex/node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex/node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/toml": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/toml/-/toml-3.0.0.tgz", + "integrity": "sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w==", + "dev": true + }, + "node_modules/toposort": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/toposort/-/toposort-1.0.7.tgz", + "integrity": "sha1-LmhELZ9k7HILjMieZEOsbKqVACk=", + "dev": true + }, + "node_modules/tough-cookie": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", + "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", + "dependencies": { + "psl": "^1.1.24", + "punycode": "^1.4.1" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/tough-cookie/node_modules/punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" + }, + "node_modules/tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", + "dev": true, + "bin": { + "tree-kill": "cli.js" + } + }, + "node_modules/trim": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", + "integrity": "sha1-WFhUf2spB1fulczMZm+1AITEYN0=" + }, + "node_modules/true-case-path": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-2.2.1.tgz", + "integrity": "sha512-0z3j8R7MCjy10kc/g+qg7Ln3alJTodw9aDuVWZa3uiWqfuBMKeAeP2ocWcxoyM3D73yz3Jt/Pu4qPr4wHSdB/Q==", + "dev": true + }, + "node_modules/truffle": { + "version": "5.1.49", + "resolved": "https://registry.npmjs.org/truffle/-/truffle-5.1.49.tgz", + "integrity": "sha512-SkCfYRPhruowxH+qpJBAvM0u5+j/LK51U85ErXeiuRhyCNEWMNjUtISHTlEZ0KLr0Kki68iXk+o2UekN4Nlp5g==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "app-module-path": "^2.2.0", + "mocha": "8.1.2", + "original-require": "1.0.1" + }, + "bin": { + "truffle": "build/cli.bundled.js" + } + }, + "node_modules/truffle-flattener": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/truffle-flattener/-/truffle-flattener-1.4.4.tgz", + "integrity": "sha512-S/WmvubzlUj1mn56wEI6yo1bmPpKDNdEe5rtyVC1C5iNfZWobD/V69pAYI15IBDJrDqUyh+iXgpTkzov50zpQw==", + "dev": true, + "dependencies": { + "@resolver-engine/imports-fs": "^0.2.2", + "@solidity-parser/parser": "^0.6.0", + "find-up": "^2.1.0", + "mkdirp": "^1.0.4", + "tsort": "0.0.1" + }, + "bin": { + "truffle-flattener": "index.js" + } + }, + "node_modules/truffle-flattener/node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/truffle-flattener/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/try-require": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/try-require/-/try-require-1.2.1.tgz", + "integrity": "sha1-NEiaLKwMCcHMEO2RugEVlNQzO+I=", + "dev": true + }, + "node_modules/ts-interface-checker": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", + "dev": true + }, + "node_modules/tsconfig-paths": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz", + "integrity": "sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==", + "dev": true, + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.1", + "minimist": "^1.2.0", + "strip-bom": "^3.0.0" + } + }, + "node_modules/tsconfig-paths/node_modules/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "node_modules/tslib": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", + "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==", + "dev": true + }, + "node_modules/tsort": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/tsort/-/tsort-0.0.1.tgz", + "integrity": "sha1-4igPXoF/i/QnVlf9D5rr1E9aJ4Y=", + "dev": true + }, + "node_modules/tty-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", + "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", + "dev": true + }, + "node_modules/tunnel": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", + "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==", + "dev": true, + "engines": { + "node": ">=0.6.11 <=0.7.0 || >=0.7.3" + } + }, + "node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dependencies": { + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" + }, + "node_modules/tweetnacl-util": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/tweetnacl-util/-/tweetnacl-util-0.15.1.tgz", + "integrity": "sha512-RKJBIj8lySrShN4w6i/BonWp2Z/uxwC3h4y7xsRrpP59ZboCd0GpEVsOnMDYLMmKBpYhb5TgHzZXy7wTfYFBRw==", + "dev": true + }, + "node_modules/type": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", + "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==", + "dev": true + }, + "node_modules/type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "dev": true, + "dependencies": { + "prelude-ls": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dev": true, + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/type-is/node_modules/mime-db": { + "version": "1.44.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", + "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/type-is/node_modules/mime-types": { + "version": "2.1.27", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", + "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", + "dev": true, + "dependencies": { + "mime-db": "1.44.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true + }, + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/uglify-js": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.10.0.tgz", + "integrity": "sha512-Esj5HG5WAyrLIdYU74Z3JdG2PxdIusvj6IWHMtlyESxc7kcDz7zYlYjpnSokn1UbpV0d/QX9fan7gkCNd/9BQA==", + "dev": true, + "optional": true, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/ultron": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", + "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==", + "dev": true + }, + "node_modules/unbox-primitive": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", + "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1", + "has-bigints": "^1.0.1", + "has-symbols": "^1.0.2", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/unbox-primitive/node_modules/has-symbols": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/unbzip2-stream": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz", + "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==", + "dev": true, + "dependencies": { + "buffer": "^5.2.1", + "through": "^2.3.8" + } + }, + "node_modules/underscore": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.10.2.tgz", + "integrity": "sha512-N4P+Q/BuyuEKFJ43B9gYuOj4TQUHXX+j2FqguVOpjkssLUUrnJofCcBccJSCoeturDoZU6GorDTHSvUDlSQbTg==", + "dev": true + }, + "node_modules/union-value": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "dev": true, + "dependencies": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dev": true, + "dependencies": { + "unique-slug": "^2.0.0" + } + }, + "node_modules/unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4" + } + }, + "node_modules/unique-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "dev": true, + "dependencies": { + "crypto-random-string": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "dev": true, + "dependencies": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "dev": true, + "dependencies": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-value/node_modules/isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "dependencies": { + "isarray": "1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/upath": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", + "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=4", + "yarn": "*" + } + }, + "node_modules/update-notifier": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-4.1.0.tgz", + "integrity": "sha512-w3doE1qtI0/ZmgeoDoARmI5fjDoT93IfKgEGqm26dGUOh8oNpaSTsGNdYRN/SjOuo10jcJGwkEL3mroKzktkew==", + "dev": true, + "dependencies": { + "boxen": "^4.2.0", + "chalk": "^3.0.0", + "configstore": "^5.0.1", + "has-yarn": "^2.1.0", + "import-lazy": "^2.1.0", + "is-ci": "^2.0.0", + "is-installed-globally": "^0.3.1", + "is-npm": "^4.0.0", + "is-yarn-global": "^0.3.0", + "latest-version": "^5.0.0", + "pupa": "^2.0.1", + "semver-diff": "^3.1.1", + "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/yeoman/update-notifier?sponsor=1" + } + }, + "node_modules/update-notifier/node_modules/ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "dependencies": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/update-notifier/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/update-notifier/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/update-notifier/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/update-notifier/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/update-notifier/node_modules/is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "dev": true, + "dependencies": { + "ci-info": "^2.0.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/update-notifier/node_modules/supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/upper-case": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz", + "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=", + "dev": true + }, + "node_modules/uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "deprecated": "Please see https://github.com/lydell/urix#deprecated", + "dev": true + }, + "node_modules/url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "dev": true, + "dependencies": { + "punycode": "1.3.2", + "querystring": "0.2.0" + } + }, + "node_modules/url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + "dev": true, + "dependencies": { + "prepend-http": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/url-set-query": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-set-query/-/url-set-query-1.0.0.tgz", + "integrity": "sha1-AW6M/Xwg7gXK/neV6JK9BwL6ozk=", + "dev": true + }, + "node_modules/url-to-options": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz", + "integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/url/node_modules/punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "dev": true + }, + "node_modules/use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/utf-8-validate": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.5.tgz", + "integrity": "sha512-+pnxRYsS/axEpkrrEpzYfNZGXp0IjC/9RIxwM5gntY4Koi8SHmUGSfxfWqxZdRxrtaoVstuOzUp/rbs3JSPELQ==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "node-gyp-build": "^4.2.0" + } + }, + "node_modules/utf8": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/utf8/-/utf8-3.0.0.tgz", + "integrity": "sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==" + }, + "node_modules/util": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", + "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", + "dev": true, + "dependencies": { + "inherits": "2.0.3" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "node_modules/util.promisify": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.1.1.tgz", + "integrity": "sha512-/s3UsZUrIfa6xDhr7zZhnE9SLQ5RIXyYfiVnMMyMDzOc8WhWN4Nbh36H842OyurKbCDAesZOJaVyvmSl6fhGQw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "for-each": "^0.3.3", + "has-symbols": "^1.0.1", + "object.getownpropertydescriptors": "^2.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/utila": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", + "integrity": "sha1-ihagXURWV6Oupe7MWxKk+lN5dyw=", + "dev": true + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "dev": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/v8-compile-cache": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz", + "integrity": "sha512-8OQ9CL+VWyt3JStj7HX7/ciTL2V3Rl1Wf5OL+SNTm0yK1KvtReVulksyeRnCANHHuUxHlQig+JJDlUhBt1NQDQ==", + "dev": true + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/varint": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/varint/-/varint-5.0.0.tgz", + "integrity": "sha1-2Ca4n3SQcy+rwMDtaT7Uddyynr8=", + "dev": true + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "node_modules/vm-browserify": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", + "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", + "dev": true + }, + "node_modules/vscode-languageserver-types": { + "version": "3.15.1", + "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.15.1.tgz", + "integrity": "sha512-+a9MPUQrNGRrGU630OGbYVQ+11iOIovjCkqxajPa9w57Sd5ruK8WQNsslzpa0x/QJqC8kRc2DUxWjIFwoNm4ZQ==", + "dev": true + }, + "node_modules/vue": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/vue/-/vue-2.6.12.tgz", + "integrity": "sha512-uhmLFETqPPNyuLLbsKz6ioJ4q7AZHzD8ZVFNATNyICSZouqP2Sz0rotWQC8UNBF6VGSCs5abnKJoStA6JbCbfg==", + "dev": true + }, + "node_modules/vue-hot-reload-api": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/vue-hot-reload-api/-/vue-hot-reload-api-2.3.4.tgz", + "integrity": "sha512-BXq3jwIagosjgNVae6tkHzzIk6a8MHFtzAdwhnV5VlvPTFxDCvIttgSiHWjdGoTJvXtmRu5HacExfdarRcFhog==", + "dev": true + }, + "node_modules/vue-loader": { + "version": "15.9.7", + "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.9.7.tgz", + "integrity": "sha512-qzlsbLV1HKEMf19IqCJqdNvFJRCI58WNbS6XbPqK13MrLz65es75w392MSQ5TsARAfIjUw+ATm3vlCXUJSOH9Q==", + "dev": true, + "dependencies": { + "@vue/component-compiler-utils": "^3.1.0", + "hash-sum": "^1.0.2", + "loader-utils": "^1.1.0", + "vue-hot-reload-api": "^2.3.0", + "vue-style-loader": "^4.1.0" + }, + "peerDependencies": { + "css-loader": "*", + "webpack": "^3.0.0 || ^4.1.0 || ^5.0.0-0" + }, + "peerDependenciesMeta": { + "cache-loader": { + "optional": true + }, + "vue-template-compiler": { + "optional": true + } + } + }, + "node_modules/vue-router": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.5.1.tgz", + "integrity": "sha512-RRQNLT8Mzr8z7eL4p7BtKvRaTSGdCbTy2+Mm5HTJvLGYSSeG9gDzNasJPP/yOYKLy+/cLG/ftrqq5fvkFwBJEw==", + "dev": true + }, + "node_modules/vue-style-loader": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.3.tgz", + "integrity": "sha512-sFuh0xfbtpRlKfm39ss/ikqs9AbKCoXZBpHeVZ8Tx650o0k0q/YCM7FRvigtxpACezfq6af+a7JeqVTWvncqDg==", + "dev": true, + "dependencies": { + "hash-sum": "^1.0.2", + "loader-utils": "^1.0.2" + } + }, + "node_modules/vue-template-compiler": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.6.12.tgz", + "integrity": "sha512-OzzZ52zS41YUbkCBfdXShQTe69j1gQDZ9HIX8miuC9C3rBCk9wIRjLiZZLrmX9V+Ftq/YEyv1JaVr5Y/hNtByg==", + "dev": true, + "dependencies": { + "de-indent": "^1.0.2", + "he": "^1.1.0" + } + }, + "node_modules/vue-template-es2015-compiler": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.9.1.tgz", + "integrity": "sha512-4gDntzrifFnCEvyoO8PqyJDmguXgVPxKiIxrBKjIowvL9l+N66196+72XVYR8BBf1Uv1Fgt3bGevJ+sEmxfZzw==", + "dev": true + }, + "node_modules/watchpack": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.5.tgz", + "integrity": "sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "neo-async": "^2.5.0" + }, + "optionalDependencies": { + "chokidar": "^3.4.1", + "watchpack-chokidar2": "^2.0.1" + } + }, + "node_modules/watchpack-chokidar2": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.1.tgz", + "integrity": "sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww==", + "dev": true, + "optional": true, + "dependencies": { + "chokidar": "^2.1.8" + } + }, + "node_modules/watchpack-chokidar2/node_modules/anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "dev": true, + "optional": true, + "dependencies": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + } + }, + "node_modules/watchpack-chokidar2/node_modules/anymatch/node_modules/normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "optional": true, + "dependencies": { + "remove-trailing-separator": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "optional": true, + "dependencies": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/chokidar": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", + "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", + "deprecated": "Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies", + "dev": true, + "optional": true, + "dependencies": { + "anymatch": "^2.0.0", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "glob-parent": "^3.1.0", + "inherits": "^2.0.3", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.2.1", + "upath": "^1.1.1" + }, + "optionalDependencies": { + "fsevents": "^1.2.7" + } + }, + "node_modules/watchpack-chokidar2/node_modules/define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "optional": true, + "dependencies": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "optional": true, + "dependencies": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/fsevents": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "deprecated": "fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "dependencies": { + "bindings": "^1.5.0", + "nan": "^2.12.1" + }, + "engines": { + "node": ">= 4.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "optional": true, + "dependencies": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/glob-parent/node_modules/is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "optional": true, + "dependencies": { + "is-extglob": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "optional": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "optional": true, + "dependencies": { + "binary-extensions": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true, + "optional": true + }, + "node_modules/watchpack-chokidar2/node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "optional": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "optional": true, + "dependencies": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "optional": true, + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "optional": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "optional": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "optional": true, + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/micromatch/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "optional": true, + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "dev": true, + "optional": true, + "dependencies": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/watchpack-chokidar2/node_modules/to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "optional": true, + "dependencies": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack/node_modules/chokidar": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", + "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==", + "dev": true, + "optional": true, + "dependencies": { + "anymatch": "~3.1.1", + "braces": "~3.0.2", + "glob-parent": "~5.1.0", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.5.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.1" + } + }, + "node_modules/watchpack/node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/watchpack/node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack/node_modules/readdirp": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz", + "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==", + "dev": true, + "optional": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/web3": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3/-/web3-1.2.11.tgz", + "integrity": "sha512-mjQ8HeU41G6hgOYm1pmeH0mRAeNKJGnJEUzDMoerkpw7QUQT4exVREgF1MYPvL/z6vAshOXei25LE/t/Bxl8yQ==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "web3-bzz": "1.2.11", + "web3-core": "1.2.11", + "web3-eth": "1.2.11", + "web3-eth-personal": "1.2.11", + "web3-net": "1.2.11", + "web3-shh": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-bzz": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-bzz/-/web3-bzz-1.2.11.tgz", + "integrity": "sha512-XGpWUEElGypBjeFyUhTkiPXFbDVD6Nr/S5jznE3t8cWUA0FxRf1n3n/NuIZeb0H9RkN2Ctd/jNma/k8XGa3YKg==", + "dev": true, + "dependencies": { + "@types/node": "^12.12.6", + "got": "9.6.0", + "swarm-js": "^0.1.40", + "underscore": "1.9.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-bzz/node_modules/@types/node": { + "version": "12.12.53", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.53.tgz", + "integrity": "sha512-51MYTDTyCziHb70wtGNFRwB4l+5JNvdqzFSkbDvpbftEgVUBEE+T5f7pROhWMp/fxp07oNIEQZd5bbfAH22ohQ==", + "dev": true + }, + "node_modules/web3-bzz/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "node_modules/web3-core": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core/-/web3-core-1.2.11.tgz", + "integrity": "sha512-CN7MEYOY5ryo5iVleIWRE3a3cZqVaLlIbIzDPsvQRUfzYnvzZQRZBm9Mq+ttDi2STOOzc1MKylspz/o3yq/LjQ==", + "dev": true, + "dependencies": { + "@types/bn.js": "^4.11.5", + "@types/node": "^12.12.6", + "bignumber.js": "^9.0.0", + "web3-core-helpers": "1.2.11", + "web3-core-method": "1.2.11", + "web3-core-requestmanager": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core-helpers": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.2.1.tgz", + "integrity": "sha512-Gx3sTEajD5r96bJgfuW377PZVFmXIH4TdqDhgGwd2lZQCcMi+DA4TgxJNJGxn0R3aUVzyyE76j4LBrh412mXrw==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-eth-iban": "1.2.1", + "web3-utils": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core-helpers/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "node_modules/web3-core-method": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core-method/-/web3-core-method-1.2.11.tgz", + "integrity": "sha512-ff0q76Cde94HAxLDZ6DbdmKniYCQVtvuaYh+rtOUMB6kssa5FX0q3vPmixi7NPooFnbKmmZCM6NvXg4IreTPIw==", + "dev": true, + "dependencies": { + "@ethersproject/transactions": "^5.0.0-beta.135", + "underscore": "1.9.1", + "web3-core-helpers": "1.2.11", + "web3-core-promievent": "1.2.11", + "web3-core-subscriptions": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core-method/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/web3-core-method/node_modules/eth-lib": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", + "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/web3-core-method/node_modules/eventemitter3": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==", + "dev": true + }, + "node_modules/web3-core-method/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "node_modules/web3-core-method/node_modules/web3-core-helpers": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.2.11.tgz", + "integrity": "sha512-PEPoAoZd5ME7UfbnCZBdzIerpe74GEvlwT4AjOmHeCVZoIFk7EqvOZDejJHt+feJA6kMVTdd0xzRNN295UhC1A==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-eth-iban": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core-method/node_modules/web3-core-promievent": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core-promievent/-/web3-core-promievent-1.2.11.tgz", + "integrity": "sha512-il4McoDa/Ox9Agh4kyfQ8Ak/9ABYpnF8poBLL33R/EnxLsJOGQG2nZhkJa3I067hocrPSjEdlPt/0bHXsln4qA==", + "dev": true, + "dependencies": { + "eventemitter3": "4.0.4" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core-method/node_modules/web3-eth-iban": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.2.11.tgz", + "integrity": "sha512-ozuVlZ5jwFC2hJY4+fH9pIcuH1xP0HEFhtWsR69u9uDIANHLPQQtWYmdj7xQ3p2YT4bQLq/axKhZi7EZVetmxQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core-method/node_modules/web3-utils": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.2.11.tgz", + "integrity": "sha512-3Tq09izhD+ThqHEaWYX4VOT7dNPdZiO+c/1QMA0s5X2lDFKK/xHJb7cyTRRVzN2LvlHbR7baS1tmQhSua51TcQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "eth-lib": "0.2.8", + "ethereum-bloom-filters": "^1.0.6", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "underscore": "1.9.1", + "utf8": "3.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core-promievent": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-core-promievent/-/web3-core-promievent-1.2.1.tgz", + "integrity": "sha512-IVUqgpIKoeOYblwpex4Hye6npM0aMR+kU49VP06secPeN0rHMyhGF0ZGveWBrGvf8WDPI7jhqPBFIC6Jf3Q3zw==", + "dev": true, + "dependencies": { + "any-promise": "1.3.0", + "eventemitter3": "3.1.2" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core-requestmanager": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core-requestmanager/-/web3-core-requestmanager-1.2.11.tgz", + "integrity": "sha512-oFhBtLfOiIbmfl6T6gYjjj9igOvtyxJ+fjS+byRxiwFJyJ5BQOz4/9/17gWR1Cq74paTlI7vDGxYfuvfE/mKvA==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-core-helpers": "1.2.11", + "web3-providers-http": "1.2.11", + "web3-providers-ipc": "1.2.11", + "web3-providers-ws": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core-requestmanager/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/web3-core-requestmanager/node_modules/eth-lib": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", + "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/web3-core-requestmanager/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "node_modules/web3-core-requestmanager/node_modules/web3-core-helpers": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.2.11.tgz", + "integrity": "sha512-PEPoAoZd5ME7UfbnCZBdzIerpe74GEvlwT4AjOmHeCVZoIFk7EqvOZDejJHt+feJA6kMVTdd0xzRNN295UhC1A==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-eth-iban": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core-requestmanager/node_modules/web3-eth-iban": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.2.11.tgz", + "integrity": "sha512-ozuVlZ5jwFC2hJY4+fH9pIcuH1xP0HEFhtWsR69u9uDIANHLPQQtWYmdj7xQ3p2YT4bQLq/axKhZi7EZVetmxQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core-requestmanager/node_modules/web3-utils": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.2.11.tgz", + "integrity": "sha512-3Tq09izhD+ThqHEaWYX4VOT7dNPdZiO+c/1QMA0s5X2lDFKK/xHJb7cyTRRVzN2LvlHbR7baS1tmQhSua51TcQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "eth-lib": "0.2.8", + "ethereum-bloom-filters": "^1.0.6", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "underscore": "1.9.1", + "utf8": "3.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core-subscriptions": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core-subscriptions/-/web3-core-subscriptions-1.2.11.tgz", + "integrity": "sha512-qEF/OVqkCvQ7MPs1JylIZCZkin0aKK9lDxpAtQ1F8niEDGFqn7DT8E/vzbIa0GsOjL2fZjDhWJsaW+BSoAW1gg==", + "dev": true, + "dependencies": { + "eventemitter3": "4.0.4", + "underscore": "1.9.1", + "web3-core-helpers": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core-subscriptions/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/web3-core-subscriptions/node_modules/eth-lib": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", + "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/web3-core-subscriptions/node_modules/eventemitter3": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==", + "dev": true + }, + "node_modules/web3-core-subscriptions/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "node_modules/web3-core-subscriptions/node_modules/web3-core-helpers": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.2.11.tgz", + "integrity": "sha512-PEPoAoZd5ME7UfbnCZBdzIerpe74GEvlwT4AjOmHeCVZoIFk7EqvOZDejJHt+feJA6kMVTdd0xzRNN295UhC1A==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-eth-iban": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core-subscriptions/node_modules/web3-eth-iban": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.2.11.tgz", + "integrity": "sha512-ozuVlZ5jwFC2hJY4+fH9pIcuH1xP0HEFhtWsR69u9uDIANHLPQQtWYmdj7xQ3p2YT4bQLq/axKhZi7EZVetmxQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core-subscriptions/node_modules/web3-utils": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.2.11.tgz", + "integrity": "sha512-3Tq09izhD+ThqHEaWYX4VOT7dNPdZiO+c/1QMA0s5X2lDFKK/xHJb7cyTRRVzN2LvlHbR7baS1tmQhSua51TcQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "eth-lib": "0.2.8", + "ethereum-bloom-filters": "^1.0.6", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "underscore": "1.9.1", + "utf8": "3.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core/node_modules/@types/node": { + "version": "12.12.53", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.53.tgz", + "integrity": "sha512-51MYTDTyCziHb70wtGNFRwB4l+5JNvdqzFSkbDvpbftEgVUBEE+T5f7pROhWMp/fxp07oNIEQZd5bbfAH22ohQ==", + "dev": true + }, + "node_modules/web3-core/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/web3-core/node_modules/eth-lib": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", + "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/web3-core/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "node_modules/web3-core/node_modules/web3-core-helpers": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.2.11.tgz", + "integrity": "sha512-PEPoAoZd5ME7UfbnCZBdzIerpe74GEvlwT4AjOmHeCVZoIFk7EqvOZDejJHt+feJA6kMVTdd0xzRNN295UhC1A==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-eth-iban": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core/node_modules/web3-eth-iban": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.2.11.tgz", + "integrity": "sha512-ozuVlZ5jwFC2hJY4+fH9pIcuH1xP0HEFhtWsR69u9uDIANHLPQQtWYmdj7xQ3p2YT4bQLq/axKhZi7EZVetmxQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-core/node_modules/web3-utils": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.2.11.tgz", + "integrity": "sha512-3Tq09izhD+ThqHEaWYX4VOT7dNPdZiO+c/1QMA0s5X2lDFKK/xHJb7cyTRRVzN2LvlHbR7baS1tmQhSua51TcQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "eth-lib": "0.2.8", + "ethereum-bloom-filters": "^1.0.6", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "underscore": "1.9.1", + "utf8": "3.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth/-/web3-eth-1.2.11.tgz", + "integrity": "sha512-REvxW1wJ58AgHPcXPJOL49d1K/dPmuw4LjPLBPStOVkQjzDTVmJEIsiLwn2YeuNDd4pfakBwT8L3bz1G1/wVsQ==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-core": "1.2.11", + "web3-core-helpers": "1.2.11", + "web3-core-method": "1.2.11", + "web3-core-subscriptions": "1.2.11", + "web3-eth-abi": "1.2.11", + "web3-eth-accounts": "1.2.11", + "web3-eth-contract": "1.2.11", + "web3-eth-ens": "1.2.11", + "web3-eth-iban": "1.2.11", + "web3-eth-personal": "1.2.11", + "web3-net": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-abi": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-eth-abi/-/web3-eth-abi-1.2.1.tgz", + "integrity": "sha512-jI/KhU2a/DQPZXHjo2GW0myEljzfiKOn+h1qxK1+Y9OQfTcBMxrQJyH5AP89O6l6NZ1QvNdq99ThAxBFoy5L+g==", + "dev": true, + "dependencies": { + "ethers": "4.0.0-beta.3", + "underscore": "1.9.1", + "web3-utils": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-abi/node_modules/elliptic": { + "version": "6.3.3", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.3.3.tgz", + "integrity": "sha1-VILZZG1UvLif19mU/J4ulWiHbj8=", + "dev": true, + "dependencies": { + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "inherits": "^2.0.1" + } + }, + "node_modules/web3-eth-abi/node_modules/elliptic/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/web3-eth-abi/node_modules/ethers": { + "version": "4.0.0-beta.3", + "resolved": "https://registry.npmjs.org/ethers/-/ethers-4.0.0-beta.3.tgz", + "integrity": "sha512-YYPogooSknTwvHg3+Mv71gM/3Wcrx+ZpCzarBj3mqs9njjRkrOo2/eufzhHloOCo3JSoNI4TQJJ6yU5ABm3Uog==", + "dev": true, + "dependencies": { + "@types/node": "^10.3.2", + "aes-js": "3.0.0", + "bn.js": "^4.4.0", + "elliptic": "6.3.3", + "hash.js": "1.1.3", + "js-sha3": "0.5.7", + "scrypt-js": "2.0.3", + "setimmediate": "1.0.4", + "uuid": "2.0.1", + "xmlhttprequest": "1.8.0" + } + }, + "node_modules/web3-eth-abi/node_modules/ethers/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/web3-eth-abi/node_modules/hash.js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz", + "integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/web3-eth-abi/node_modules/js-sha3": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.5.7.tgz", + "integrity": "sha1-DU/9gALVMzqrr0oj7tL2N0yfKOc=", + "dev": true + }, + "node_modules/web3-eth-abi/node_modules/setimmediate": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.4.tgz", + "integrity": "sha1-IOgd5iLUoCWIzgyNqJc8vPHTE48=", + "dev": true + }, + "node_modules/web3-eth-abi/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "node_modules/web3-eth-abi/node_modules/uuid": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.1.tgz", + "integrity": "sha1-wqMN7bPlNdcsz4LjQ5QaULqFM6w=", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "dev": true + }, + "node_modules/web3-eth-accounts": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-accounts/-/web3-eth-accounts-1.2.11.tgz", + "integrity": "sha512-6FwPqEpCfKIh3nSSGeo3uBm2iFSnFJDfwL3oS9pyegRBXNsGRVpgiW63yhNzL0796StsvjHWwQnQHsZNxWAkGw==", + "dev": true, + "dependencies": { + "crypto-browserify": "3.12.0", + "eth-lib": "0.2.8", + "ethereumjs-common": "^1.3.2", + "ethereumjs-tx": "^2.1.1", + "scrypt-js": "^3.0.1", + "underscore": "1.9.1", + "uuid": "3.3.2", + "web3-core": "1.2.11", + "web3-core-helpers": "1.2.11", + "web3-core-method": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-accounts/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/web3-eth-accounts/node_modules/eth-lib": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", + "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/web3-eth-accounts/node_modules/scrypt-js": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz", + "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==", + "dev": true + }, + "node_modules/web3-eth-accounts/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "node_modules/web3-eth-accounts/node_modules/web3-core-helpers": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.2.11.tgz", + "integrity": "sha512-PEPoAoZd5ME7UfbnCZBdzIerpe74GEvlwT4AjOmHeCVZoIFk7EqvOZDejJHt+feJA6kMVTdd0xzRNN295UhC1A==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-eth-iban": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-accounts/node_modules/web3-eth-iban": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.2.11.tgz", + "integrity": "sha512-ozuVlZ5jwFC2hJY4+fH9pIcuH1xP0HEFhtWsR69u9uDIANHLPQQtWYmdj7xQ3p2YT4bQLq/axKhZi7EZVetmxQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-accounts/node_modules/web3-utils": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.2.11.tgz", + "integrity": "sha512-3Tq09izhD+ThqHEaWYX4VOT7dNPdZiO+c/1QMA0s5X2lDFKK/xHJb7cyTRRVzN2LvlHbR7baS1tmQhSua51TcQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "eth-lib": "0.2.8", + "ethereum-bloom-filters": "^1.0.6", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "underscore": "1.9.1", + "utf8": "3.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-contract": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-contract/-/web3-eth-contract-1.2.11.tgz", + "integrity": "sha512-MzYuI/Rq2o6gn7vCGcnQgco63isPNK5lMAan2E51AJLknjSLnOxwNY3gM8BcKoy4Z+v5Dv00a03Xuk78JowFow==", + "dev": true, + "dependencies": { + "@types/bn.js": "^4.11.5", + "underscore": "1.9.1", + "web3-core": "1.2.11", + "web3-core-helpers": "1.2.11", + "web3-core-method": "1.2.11", + "web3-core-promievent": "1.2.11", + "web3-core-subscriptions": "1.2.11", + "web3-eth-abi": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-contract/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/web3-eth-contract/node_modules/eth-lib": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", + "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/web3-eth-contract/node_modules/eventemitter3": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==", + "dev": true + }, + "node_modules/web3-eth-contract/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "node_modules/web3-eth-contract/node_modules/web3-core-helpers": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.2.11.tgz", + "integrity": "sha512-PEPoAoZd5ME7UfbnCZBdzIerpe74GEvlwT4AjOmHeCVZoIFk7EqvOZDejJHt+feJA6kMVTdd0xzRNN295UhC1A==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-eth-iban": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-contract/node_modules/web3-core-promievent": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core-promievent/-/web3-core-promievent-1.2.11.tgz", + "integrity": "sha512-il4McoDa/Ox9Agh4kyfQ8Ak/9ABYpnF8poBLL33R/EnxLsJOGQG2nZhkJa3I067hocrPSjEdlPt/0bHXsln4qA==", + "dev": true, + "dependencies": { + "eventemitter3": "4.0.4" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-contract/node_modules/web3-eth-abi": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-abi/-/web3-eth-abi-1.2.11.tgz", + "integrity": "sha512-PkRYc0+MjuLSgg03QVWqWlQivJqRwKItKtEpRUaxUAeLE7i/uU39gmzm2keHGcQXo3POXAbOnMqkDvOep89Crg==", + "dev": true, + "dependencies": { + "@ethersproject/abi": "5.0.0-beta.153", + "underscore": "1.9.1", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-contract/node_modules/web3-eth-iban": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.2.11.tgz", + "integrity": "sha512-ozuVlZ5jwFC2hJY4+fH9pIcuH1xP0HEFhtWsR69u9uDIANHLPQQtWYmdj7xQ3p2YT4bQLq/axKhZi7EZVetmxQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-contract/node_modules/web3-utils": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.2.11.tgz", + "integrity": "sha512-3Tq09izhD+ThqHEaWYX4VOT7dNPdZiO+c/1QMA0s5X2lDFKK/xHJb7cyTRRVzN2LvlHbR7baS1tmQhSua51TcQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "eth-lib": "0.2.8", + "ethereum-bloom-filters": "^1.0.6", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "underscore": "1.9.1", + "utf8": "3.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-ens": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-ens/-/web3-eth-ens-1.2.11.tgz", + "integrity": "sha512-dbW7dXP6HqT1EAPvnniZVnmw6TmQEKF6/1KgAxbo8iBBYrVTMDGFQUUnZ+C4VETGrwwaqtX4L9d/FrQhZ6SUiA==", + "dev": true, + "dependencies": { + "content-hash": "^2.5.2", + "eth-ens-namehash": "2.0.8", + "underscore": "1.9.1", + "web3-core": "1.2.11", + "web3-core-helpers": "1.2.11", + "web3-core-promievent": "1.2.11", + "web3-eth-abi": "1.2.11", + "web3-eth-contract": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-ens/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/web3-eth-ens/node_modules/eth-lib": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", + "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/web3-eth-ens/node_modules/eventemitter3": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==", + "dev": true + }, + "node_modules/web3-eth-ens/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "node_modules/web3-eth-ens/node_modules/web3-core-helpers": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.2.11.tgz", + "integrity": "sha512-PEPoAoZd5ME7UfbnCZBdzIerpe74GEvlwT4AjOmHeCVZoIFk7EqvOZDejJHt+feJA6kMVTdd0xzRNN295UhC1A==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-eth-iban": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-ens/node_modules/web3-core-promievent": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core-promievent/-/web3-core-promievent-1.2.11.tgz", + "integrity": "sha512-il4McoDa/Ox9Agh4kyfQ8Ak/9ABYpnF8poBLL33R/EnxLsJOGQG2nZhkJa3I067hocrPSjEdlPt/0bHXsln4qA==", + "dev": true, + "dependencies": { + "eventemitter3": "4.0.4" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-ens/node_modules/web3-eth-abi": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-abi/-/web3-eth-abi-1.2.11.tgz", + "integrity": "sha512-PkRYc0+MjuLSgg03QVWqWlQivJqRwKItKtEpRUaxUAeLE7i/uU39gmzm2keHGcQXo3POXAbOnMqkDvOep89Crg==", + "dev": true, + "dependencies": { + "@ethersproject/abi": "5.0.0-beta.153", + "underscore": "1.9.1", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-ens/node_modules/web3-eth-iban": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.2.11.tgz", + "integrity": "sha512-ozuVlZ5jwFC2hJY4+fH9pIcuH1xP0HEFhtWsR69u9uDIANHLPQQtWYmdj7xQ3p2YT4bQLq/axKhZi7EZVetmxQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-ens/node_modules/web3-utils": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.2.11.tgz", + "integrity": "sha512-3Tq09izhD+ThqHEaWYX4VOT7dNPdZiO+c/1QMA0s5X2lDFKK/xHJb7cyTRRVzN2LvlHbR7baS1tmQhSua51TcQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "eth-lib": "0.2.8", + "ethereum-bloom-filters": "^1.0.6", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "underscore": "1.9.1", + "utf8": "3.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-iban": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.2.1.tgz", + "integrity": "sha512-9gkr4QPl1jCU+wkgmZ8EwODVO3ovVj6d6JKMos52ggdT2YCmlfvFVF6wlGLwi0VvNa/p+0BjJzaqxnnG/JewjQ==", + "dev": true, + "dependencies": { + "bn.js": "4.11.8", + "web3-utils": "1.2.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-iban/node_modules/bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", + "dev": true + }, + "node_modules/web3-eth-personal": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-personal/-/web3-eth-personal-1.2.11.tgz", + "integrity": "sha512-42IzUtKq9iHZ8K9VN0vAI50iSU9tOA1V7XU2BhF/tb7We2iKBVdkley2fg26TxlOcKNEHm7o6HRtiiFsVK4Ifw==", + "dev": true, + "dependencies": { + "@types/node": "^12.12.6", + "web3-core": "1.2.11", + "web3-core-helpers": "1.2.11", + "web3-core-method": "1.2.11", + "web3-net": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-personal/node_modules/@types/node": { + "version": "12.12.53", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.53.tgz", + "integrity": "sha512-51MYTDTyCziHb70wtGNFRwB4l+5JNvdqzFSkbDvpbftEgVUBEE+T5f7pROhWMp/fxp07oNIEQZd5bbfAH22ohQ==", + "dev": true + }, + "node_modules/web3-eth-personal/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/web3-eth-personal/node_modules/eth-lib": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", + "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/web3-eth-personal/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "node_modules/web3-eth-personal/node_modules/web3-core-helpers": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.2.11.tgz", + "integrity": "sha512-PEPoAoZd5ME7UfbnCZBdzIerpe74GEvlwT4AjOmHeCVZoIFk7EqvOZDejJHt+feJA6kMVTdd0xzRNN295UhC1A==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-eth-iban": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-personal/node_modules/web3-eth-iban": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.2.11.tgz", + "integrity": "sha512-ozuVlZ5jwFC2hJY4+fH9pIcuH1xP0HEFhtWsR69u9uDIANHLPQQtWYmdj7xQ3p2YT4bQLq/axKhZi7EZVetmxQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth-personal/node_modules/web3-utils": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.2.11.tgz", + "integrity": "sha512-3Tq09izhD+ThqHEaWYX4VOT7dNPdZiO+c/1QMA0s5X2lDFKK/xHJb7cyTRRVzN2LvlHbR7baS1tmQhSua51TcQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "eth-lib": "0.2.8", + "ethereum-bloom-filters": "^1.0.6", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "underscore": "1.9.1", + "utf8": "3.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/web3-eth/node_modules/eth-lib": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", + "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/web3-eth/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "node_modules/web3-eth/node_modules/web3-core-helpers": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.2.11.tgz", + "integrity": "sha512-PEPoAoZd5ME7UfbnCZBdzIerpe74GEvlwT4AjOmHeCVZoIFk7EqvOZDejJHt+feJA6kMVTdd0xzRNN295UhC1A==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-eth-iban": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth/node_modules/web3-eth-abi": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-abi/-/web3-eth-abi-1.2.11.tgz", + "integrity": "sha512-PkRYc0+MjuLSgg03QVWqWlQivJqRwKItKtEpRUaxUAeLE7i/uU39gmzm2keHGcQXo3POXAbOnMqkDvOep89Crg==", + "dev": true, + "dependencies": { + "@ethersproject/abi": "5.0.0-beta.153", + "underscore": "1.9.1", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth/node_modules/web3-eth-iban": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.2.11.tgz", + "integrity": "sha512-ozuVlZ5jwFC2hJY4+fH9pIcuH1xP0HEFhtWsR69u9uDIANHLPQQtWYmdj7xQ3p2YT4bQLq/axKhZi7EZVetmxQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-eth/node_modules/web3-utils": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.2.11.tgz", + "integrity": "sha512-3Tq09izhD+ThqHEaWYX4VOT7dNPdZiO+c/1QMA0s5X2lDFKK/xHJb7cyTRRVzN2LvlHbR7baS1tmQhSua51TcQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "eth-lib": "0.2.8", + "ethereum-bloom-filters": "^1.0.6", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "underscore": "1.9.1", + "utf8": "3.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-net": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-net/-/web3-net-1.2.11.tgz", + "integrity": "sha512-sjrSDj0pTfZouR5BSTItCuZ5K/oZPVdVciPQ6981PPPIwJJkCMeVjD7I4zO3qDPCnBjBSbWvVnLdwqUBPtHxyg==", + "dev": true, + "dependencies": { + "web3-core": "1.2.11", + "web3-core-method": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-net/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/web3-net/node_modules/eth-lib": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", + "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/web3-net/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "node_modules/web3-net/node_modules/web3-utils": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.2.11.tgz", + "integrity": "sha512-3Tq09izhD+ThqHEaWYX4VOT7dNPdZiO+c/1QMA0s5X2lDFKK/xHJb7cyTRRVzN2LvlHbR7baS1tmQhSua51TcQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "eth-lib": "0.2.8", + "ethereum-bloom-filters": "^1.0.6", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "underscore": "1.9.1", + "utf8": "3.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-providers-http": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-providers-http/-/web3-providers-http-1.2.11.tgz", + "integrity": "sha512-psh4hYGb1+ijWywfwpB2cvvOIMISlR44F/rJtYkRmQ5jMvG4FOCPlQJPiHQZo+2cc3HbktvvSJzIhkWQJdmvrA==", + "dev": true, + "dependencies": { + "web3-core-helpers": "1.2.11", + "xhr2-cookies": "1.1.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-providers-http/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/web3-providers-http/node_modules/eth-lib": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", + "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/web3-providers-http/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "node_modules/web3-providers-http/node_modules/web3-core-helpers": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.2.11.tgz", + "integrity": "sha512-PEPoAoZd5ME7UfbnCZBdzIerpe74GEvlwT4AjOmHeCVZoIFk7EqvOZDejJHt+feJA6kMVTdd0xzRNN295UhC1A==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-eth-iban": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-providers-http/node_modules/web3-eth-iban": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.2.11.tgz", + "integrity": "sha512-ozuVlZ5jwFC2hJY4+fH9pIcuH1xP0HEFhtWsR69u9uDIANHLPQQtWYmdj7xQ3p2YT4bQLq/axKhZi7EZVetmxQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-providers-http/node_modules/web3-utils": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.2.11.tgz", + "integrity": "sha512-3Tq09izhD+ThqHEaWYX4VOT7dNPdZiO+c/1QMA0s5X2lDFKK/xHJb7cyTRRVzN2LvlHbR7baS1tmQhSua51TcQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "eth-lib": "0.2.8", + "ethereum-bloom-filters": "^1.0.6", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "underscore": "1.9.1", + "utf8": "3.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-providers-ipc": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-providers-ipc/-/web3-providers-ipc-1.2.11.tgz", + "integrity": "sha512-yhc7Y/k8hBV/KlELxynWjJDzmgDEDjIjBzXK+e0rHBsYEhdCNdIH5Psa456c+l0qTEU2YzycF8VAjYpWfPnBpQ==", + "dev": true, + "dependencies": { + "oboe": "2.1.4", + "underscore": "1.9.1", + "web3-core-helpers": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-providers-ipc/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/web3-providers-ipc/node_modules/eth-lib": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", + "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/web3-providers-ipc/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "node_modules/web3-providers-ipc/node_modules/web3-core-helpers": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.2.11.tgz", + "integrity": "sha512-PEPoAoZd5ME7UfbnCZBdzIerpe74GEvlwT4AjOmHeCVZoIFk7EqvOZDejJHt+feJA6kMVTdd0xzRNN295UhC1A==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-eth-iban": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-providers-ipc/node_modules/web3-eth-iban": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.2.11.tgz", + "integrity": "sha512-ozuVlZ5jwFC2hJY4+fH9pIcuH1xP0HEFhtWsR69u9uDIANHLPQQtWYmdj7xQ3p2YT4bQLq/axKhZi7EZVetmxQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-providers-ipc/node_modules/web3-utils": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.2.11.tgz", + "integrity": "sha512-3Tq09izhD+ThqHEaWYX4VOT7dNPdZiO+c/1QMA0s5X2lDFKK/xHJb7cyTRRVzN2LvlHbR7baS1tmQhSua51TcQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "eth-lib": "0.2.8", + "ethereum-bloom-filters": "^1.0.6", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "underscore": "1.9.1", + "utf8": "3.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-providers-ws": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-providers-ws/-/web3-providers-ws-1.2.11.tgz", + "integrity": "sha512-ZxnjIY1Er8Ty+cE4migzr43zA/+72AF1myzsLaU5eVgdsfV7Jqx7Dix1hbevNZDKFlSoEyq/3j/jYalh3So1Zg==", + "dev": true, + "dependencies": { + "eventemitter3": "4.0.4", + "underscore": "1.9.1", + "web3-core-helpers": "1.2.11", + "websocket": "^1.0.31" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-providers-ws/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/web3-providers-ws/node_modules/eth-lib": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", + "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/web3-providers-ws/node_modules/eventemitter3": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==", + "dev": true + }, + "node_modules/web3-providers-ws/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "node_modules/web3-providers-ws/node_modules/web3-core-helpers": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.2.11.tgz", + "integrity": "sha512-PEPoAoZd5ME7UfbnCZBdzIerpe74GEvlwT4AjOmHeCVZoIFk7EqvOZDejJHt+feJA6kMVTdd0xzRNN295UhC1A==", + "dev": true, + "dependencies": { + "underscore": "1.9.1", + "web3-eth-iban": "1.2.11", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-providers-ws/node_modules/web3-eth-iban": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.2.11.tgz", + "integrity": "sha512-ozuVlZ5jwFC2hJY4+fH9pIcuH1xP0HEFhtWsR69u9uDIANHLPQQtWYmdj7xQ3p2YT4bQLq/axKhZi7EZVetmxQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "web3-utils": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-providers-ws/node_modules/web3-utils": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.2.11.tgz", + "integrity": "sha512-3Tq09izhD+ThqHEaWYX4VOT7dNPdZiO+c/1QMA0s5X2lDFKK/xHJb7cyTRRVzN2LvlHbR7baS1tmQhSua51TcQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "eth-lib": "0.2.8", + "ethereum-bloom-filters": "^1.0.6", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "underscore": "1.9.1", + "utf8": "3.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-shh": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-shh/-/web3-shh-1.2.11.tgz", + "integrity": "sha512-B3OrO3oG1L+bv3E1sTwCx66injW1A8hhwpknDUbV+sw3fehFazA06z9SGXUefuFI1kVs4q2vRi0n4oCcI4dZDg==", + "dev": true, + "dependencies": { + "web3-core": "1.2.11", + "web3-core-method": "1.2.11", + "web3-core-subscriptions": "1.2.11", + "web3-net": "1.2.11" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-utils": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.2.1.tgz", + "integrity": "sha512-Mrcn3l58L+yCKz3zBryM6JZpNruWuT0OCbag8w+reeNROSGVlXzUQkU+gtAwc9JCZ7tKUyg67+2YUGqUjVcyBA==", + "dev": true, + "dependencies": { + "bn.js": "4.11.8", + "eth-lib": "0.2.7", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randomhex": "0.1.5", + "underscore": "1.9.1", + "utf8": "3.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/web3-utils/node_modules/bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", + "dev": true + }, + "node_modules/web3-utils/node_modules/eth-lib": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.7.tgz", + "integrity": "sha1-L5Pxex4jrsN1nNSj/iDBKGo/wco=", + "dev": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/web3-utils/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "node_modules/web3-utils/node_modules/utf8": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/utf8/-/utf8-3.0.0.tgz", + "integrity": "sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==", + "dev": true + }, + "node_modules/web3/node_modules/bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "dev": true + }, + "node_modules/web3/node_modules/eth-lib": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", + "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/web3/node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "node_modules/web3/node_modules/web3-utils": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.2.11.tgz", + "integrity": "sha512-3Tq09izhD+ThqHEaWYX4VOT7dNPdZiO+c/1QMA0s5X2lDFKK/xHJb7cyTRRVzN2LvlHbR7baS1tmQhSua51TcQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "eth-lib": "0.2.8", + "ethereum-bloom-filters": "^1.0.6", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "underscore": "1.9.1", + "utf8": "3.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/webpack": { + "version": "4.46.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.46.0.tgz", + "integrity": "sha512-6jJuJjg8znb/xRItk7bkT0+Q7AHCYjjFnvKIWQPkNIOyRqoCGvkOs0ipeQzrqz4l5FtN5ZI/ukEHroeX/o1/5Q==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/wasm-edit": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0", + "acorn": "^6.4.1", + "ajv": "^6.10.2", + "ajv-keywords": "^3.4.1", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^4.5.0", + "eslint-scope": "^4.0.3", + "json-parse-better-errors": "^1.0.2", + "loader-runner": "^2.4.0", + "loader-utils": "^1.2.3", + "memory-fs": "^0.4.1", + "micromatch": "^3.1.10", + "mkdirp": "^0.5.3", + "neo-async": "^2.6.1", + "node-libs-browser": "^2.2.1", + "schema-utils": "^1.0.0", + "tapable": "^1.1.3", + "terser-webpack-plugin": "^1.4.3", + "watchpack": "^1.7.4", + "webpack-sources": "^1.4.1" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=6.11.5" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + }, + "webpack-command": { + "optional": true + } + } + }, + "node_modules/webpack-sources": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", + "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", + "dev": true, + "dependencies": { + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" + } + }, + "node_modules/webpack/node_modules/acorn": { + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", + "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/webpack/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/webpack/node_modules/braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "dependencies": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack/node_modules/define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "dependencies": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack/node_modules/eslint-scope": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", + "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", + "dev": true, + "dependencies": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/webpack/node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/webpack/node_modules/fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "dependencies": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack/node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack/node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "node_modules/webpack/node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack/node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack/node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack/node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack/node_modules/micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack/node_modules/micromatch/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack/node_modules/to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "dependencies": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/websocket": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/websocket/-/websocket-1.0.34.tgz", + "integrity": "sha512-PRDso2sGwF6kM75QykIesBijKSVceR6jL2G8NGYyq2XrItNC2P5/qL5XeR056GhA+Ly7JMFvJb9I312mJfmqnQ==", + "dev": true, + "dependencies": { + "bufferutil": "^4.0.1", + "debug": "^2.2.0", + "es5-ext": "^0.10.50", + "typedarray-to-buffer": "^3.1.5", + "utf-8-validate": "^5.0.2", + "yaeti": "^0.0.6" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/websocket/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/whatwg-fetch": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz", + "integrity": "sha512-dcQ1GWpOD/eEQ97k66aiEVpNnapVj90/+R+SXTPYGHpYBBypfKJEQjLrvMZ7YXbKm21gXd4NcuxUTjiv1YtLng==" + }, + "node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "node_modules/which-pm-runs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.0.0.tgz", + "integrity": "sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs=", + "dev": true + }, + "node_modules/which-typed-array": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.4.tgz", + "integrity": "sha512-49E0SpUe90cjpoc7BOJwyPHRqSAd12c10Qm2amdEZrJPCY2NDxaW01zHITrem+rnETY3dwrbH3UUrUwagfCYDA==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.2", + "call-bind": "^1.0.0", + "es-abstract": "^1.18.0-next.1", + "foreach": "^2.0.5", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.1", + "is-typed-array": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/wide-align": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "dev": true, + "dependencies": { + "string-width": "^1.0.2 || 2" + } + }, + "node_modules/widest-line": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", + "dev": true, + "dependencies": { + "string-width": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/widest-line/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/widest-line/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/widest-line/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/widest-line/node_modules/string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/widest-line/node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/window-size": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.4.tgz", + "integrity": "sha1-+OGqHuWlPsW/FR/6CXQqatdpeHY=", + "dev": true, + "bin": { + "window-size": "cli.js" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/windows-release": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/windows-release/-/windows-release-3.3.1.tgz", + "integrity": "sha512-Pngk/RDCaI/DkuHPlGTdIkDiTAnAkyMjoQMZqRsxydNl1qGXNIoZrB7RK8g53F2tEgQBMqQJHQdYZuQEEAu54A==", + "dev": true, + "dependencies": { + "execa": "^1.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", + "dev": true + }, + "node_modules/worker-farm": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", + "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", + "dev": true, + "dependencies": { + "errno": "~0.1.7" + } + }, + "node_modules/workerpool": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.0.0.tgz", + "integrity": "sha512-fU2OcNA/GVAJLLyKUoHkAgIhKb0JoCpSjLC/G2vYKxUjVmQwGbRVeoPJ1a8U4pnVofz4AQV5Y/NEw8oKqxEBtA==", + "dev": true + }, + "node_modules/wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/wrap-ansi/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "dependencies": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "node_modules/write": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", + "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", + "dev": true, + "dependencies": { + "mkdirp": "^0.5.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "node_modules/ws": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", + "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", + "dev": true, + "dependencies": { + "async-limiter": "~1.0.0", + "safe-buffer": "~5.1.0", + "ultron": "~1.1.0" + } + }, + "node_modules/xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/xhr": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.5.0.tgz", + "integrity": "sha512-4nlO/14t3BNUZRXIXfXe+3N6w3s1KoxcJUUURctd64BLRe67E4gRwp4PjywtDY72fXpZ1y6Ch0VZQRY/gMPzzQ==", + "dependencies": { + "global": "~4.3.0", + "is-function": "^1.0.1", + "parse-headers": "^2.0.0", + "xtend": "^4.0.0" + } + }, + "node_modules/xhr-request": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/xhr-request/-/xhr-request-1.1.0.tgz", + "integrity": "sha512-Y7qzEaR3FDtL3fP30k9wO/e+FBnBByZeybKOhASsGP30NIkRAAkKD/sCnLvgEfAIEC1rcmK7YG8f4oEnIrrWzA==", + "dev": true, + "dependencies": { + "buffer-to-arraybuffer": "^0.0.5", + "object-assign": "^4.1.1", + "query-string": "^5.0.1", + "simple-get": "^2.7.0", + "timed-out": "^4.0.1", + "url-set-query": "^1.0.0", + "xhr": "^2.0.4" + } + }, + "node_modules/xhr-request-promise": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/xhr-request-promise/-/xhr-request-promise-0.1.2.tgz", + "integrity": "sha1-NDxE0e53JrhkgGloLQ+EDIO0Jh0=", + "dev": true, + "dependencies": { + "xhr-request": "^1.0.1" + } + }, + "node_modules/xhr2-cookies": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/xhr2-cookies/-/xhr2-cookies-1.1.0.tgz", + "integrity": "sha1-fXdEnQmZGX8VXLc7I99yUF7YnUg=", + "dev": true, + "dependencies": { + "cookiejar": "^2.1.1" + } + }, + "node_modules/xml2js": { + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", + "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", + "dev": true, + "dependencies": { + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/xmlhttprequest": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz", + "integrity": "sha1-Z/4HXFwk/vOfnWX197f+dRcZaPw=", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/xregexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz", + "integrity": "sha1-UqY+VsoLhKfzpfPWGHLxJq16WUM=", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", + "engines": { + "node": ">=0.4" + } + }, + "node_modules/y18n": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", + "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "dev": true + }, + "node_modules/yaeti": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/yaeti/-/yaeti-0.0.6.tgz", + "integrity": "sha1-8m9ITXJoTPQr7ft2lwqhYI+/lXc=", + "dev": true, + "engines": { + "node": ">=0.10.32" + } + }, + "node_modules/yallist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", + "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", + "dev": true + }, + "node_modules/yaml": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz", + "integrity": "sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "3.32.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.32.0.tgz", + "integrity": "sha1-AwiOnr+edWtpdRYR0qXvWRSCyZU=", + "dev": true, + "dependencies": { + "camelcase": "^2.0.1", + "cliui": "^3.0.3", + "decamelize": "^1.1.1", + "os-locale": "^1.4.0", + "string-width": "^1.0.1", + "window-size": "^0.1.4", + "y18n": "^3.2.0" + } + }, + "node_modules/yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "dev": true, + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + }, + "node_modules/yargs-parser/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/yargs-unparser": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.6.1.tgz", + "integrity": "sha512-qZV14lK9MWsGCmcr7u5oXGH0dbGqZAIxTDrWXZDo5zUr6b6iUmelNKO6x6R1dQT24AH3LgRxJpr8meWy2unolA==", + "dev": true, + "dependencies": { + "camelcase": "^5.3.1", + "decamelize": "^1.2.0", + "flat": "^4.1.0", + "is-plain-obj": "^1.1.0", + "yargs": "^14.2.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/yargs-unparser/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/yargs-unparser/node_modules/cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dev": true, + "dependencies": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + } + }, + "node_modules/yargs-unparser/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/yargs-unparser/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/yargs-unparser/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/yargs-unparser/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/yargs-unparser/node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/yargs-unparser/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/yargs-unparser/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "dependencies": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/yargs-unparser/node_modules/y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "dev": true + }, + "node_modules/yargs-unparser/node_modules/yargs": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-14.2.3.tgz", + "integrity": "sha512-ZbotRWhF+lkjijC/VhmOT9wSgyBQ7+zr13+YLkhfsSiTriYsMzkTUFP18pFhWwBeMa5gUc1MzbhrO6/VB7c9Xg==", + "dev": true, + "dependencies": { + "cliui": "^5.0.0", + "decamelize": "^1.2.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^15.0.1" + } + }, + "node_modules/yargs-unparser/node_modules/yargs-parser": { + "version": "15.0.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-15.0.1.tgz", + "integrity": "sha512-0OAMV2mAZQrs3FkNpDQcBk1x5HXb8X4twADss4S0Iuk+2dGnLOE/fRHrsYm542GduMveyA77OF4wrNJuanRCWw==", + "dev": true, + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + }, + "node_modules/yargs/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/yargs/node_modules/camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/yargs/node_modules/is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "dependencies": { + "number-is-nan": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/yargs/node_modules/string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "dependencies": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/yargs/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", + "dev": true, + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + }, "dependencies": { "@arcanis/slice-ansi": { "version": "1.0.2", @@ -945,7 +35366,8 @@ "version": "7.2.3", "resolved": "https://registry.npmjs.org/ws/-/ws-7.2.3.tgz", "integrity": "sha512-HTDl9G9hbkNDk98naoR/cHDws7+EyYMOdL1BmjsZXRUjf7d+MficC4B7HLUPlSiho0vg+CWKrGIt/VJBd1xunQ==", - "dev": true + "dev": true, + "requires": {} } } }, @@ -1133,7 +35555,8 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/@nomiclabs/hardhat-ethers/-/hardhat-ethers-2.0.2.tgz", "integrity": "sha512-6quxWe8wwS4X5v3Au8q1jOvXYEPkS1Fh+cME5u6AwNdnI4uERvPlVjlgRWzpnb+Rrt1l/cEqiNRH9GlsBMSDQg==", - "dev": true + "dev": true, + "requires": {} }, "@nomiclabs/hardhat-ganache": { "version": "2.0.0", @@ -1769,7 +36192,7 @@ "requires": { "underscore": "1.9.1", "web3-core-helpers": "1.2.1", - "websocket": "websocket@github:web3-js/WebSocket-Node#polyfill/globalThis" + "websocket": "github:web3-js/WebSocket-Node#polyfill/globalThis" } }, "web3-shh": { @@ -1786,8 +36209,8 @@ }, "websocket": { "version": "git+ssh://git@github.com/web3-js/WebSocket-Node.git#ef5ea2f41daf4a2113b80c9223df884b4d56c400", - "from": "websocket@github:web3-js/WebSocket-Node#polyfill/globalThis", "dev": true, + "from": "websocket@github:web3-js/WebSocket-Node#polyfill/globalThis", "requires": { "debug": "^2.2.0", "es5-ext": "^0.10.50", @@ -2835,9 +37258,9 @@ } }, "websocket": { - "version": "github:web3-js/WebSocket-Node#ef5ea2f41daf4a2113b80c9223df884b4d56c400", - "from": "github:web3-js/WebSocket-Node#polyfill/globalThis", + "version": "git+ssh://git@github.com/web3-js/WebSocket-Node.git#ef5ea2f41daf4a2113b80c9223df884b4d56c400", "dev": true, + "from": "websocket@github:web3-js/WebSocket-Node#polyfill/globalThis", "requires": { "debug": "^2.2.0", "es5-ext": "^0.10.50", @@ -5066,7 +39489,8 @@ "version": "5.2.0", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz", "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==", - "dev": true + "dev": true, + "requires": {} }, "address": { "version": "1.1.2", @@ -5100,14 +39524,14 @@ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.6.2.tgz", "integrity": "sha512-FBHEW6Jf5TB9MGBgUUA9XHkTbjXYfAUjY43ACMfmdMRHniyoMHjHjzD50OK8LGDWQwp4rWEsIq5kEqq7rvIM1g==", "requires": { + "fast-deep-equal": "^2.0.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", "uri-js": "^4.2.2" }, "dependencies": { "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "version": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" } } @@ -5116,13 +39540,15 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", - "dev": true + "dev": true, + "requires": {} }, "ajv-keywords": { "version": "3.5.2", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true + "dev": true, + "requires": {} }, "amdefine": { "version": "1.0.1", @@ -5215,6 +39641,12 @@ "integrity": "sha512-haHyTW7Y9joE5MVs37P2lNYfU2RWBLfcRDD8OWldcdZm5TiCE91B5Xl1oWSwiDUSd4rlExpt2pu1fksYQjRBYQ==", "dev": true }, + "antlr4ts": { + "version": "0.5.0-alpha.4", + "resolved": "https://registry.npmjs.org/antlr4ts/-/antlr4ts-0.5.0-alpha.4.tgz", + "integrity": "sha512-WPQDt1B74OfPv/IMS2ekXAKkTZIHl88uMetg6q3OTqgFxZ/dxDXI0EWLyZid/1Pe6hTftyg5N7gel5wNAGxXyQ==", + "dev": true + }, "any-promise": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", @@ -6471,13 +40903,15 @@ "version": "0.2.1", "resolved": "https://registry.npmjs.org/chai-bn/-/chai-bn-0.2.1.tgz", "integrity": "sha512-01jt2gSXAw7UYFPT5K8d7HYjdXj2vyeIuE+0T/34FWzlNcVbs1JkPxRu7rYMfQnJhrHT8Nr6qjSf5ZwwLU2EYg==", - "dev": true + "dev": true, + "requires": {} }, "chai-string": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/chai-string/-/chai-string-1.5.0.tgz", "integrity": "sha512-sydDC3S3pNAQMYwJrs6dQX0oBQ6KfIPuOZ78n7rocW0eJJlsHPh2t3kwW7xfwYA/1Bf6/arGtSUo16rxR2JFlw==", - "dev": true + "dev": true, + "requires": {} }, "chalk": { "version": "2.4.1", @@ -7866,7 +42300,8 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/dirty-chai/-/dirty-chai-2.0.1.tgz", "integrity": "sha512-ys79pWKvDMowIDEPC6Fig8d5THiC0DJ2gmTeGzVAoEH18J8OzLud0Jh7I9IWg3NSk8x2UocznUuFmfHCXYZx9w==", - "dev": true + "dev": true, + "requires": {} }, "docker-modem": { "version": "2.1.3", @@ -8674,13 +43109,15 @@ "version": "8.1.0", "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.1.0.tgz", "integrity": "sha512-oKMhGv3ihGbCIimCAjqkdzx2Q+jthoqnXSP+d86M9tptwugycmTFdVR4IpLgq2c4SHifbwO90z2fQ8/Aio73yw==", - "dev": true + "dev": true, + "requires": {} }, "eslint-config-standard": { "version": "14.1.1", "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-14.1.1.tgz", "integrity": "sha512-Z9B+VR+JIXRxz21udPTL9HpFMyoMUEeX1G251EQ6e05WD9aPVtVBn09XUmZ259wCMlCDmYDSZG62Hhm+ZTJcUg==", - "dev": true + "dev": true, + "requires": {} }, "eslint-import-resolver-node": { "version": "0.3.4", @@ -8808,7 +43245,8 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/eslint-plugin-standard/-/eslint-plugin-standard-4.0.1.tgz", "integrity": "sha512-v/KBnfyaOMPmZc/dmc6ozOdWqekGp7bBGq4jLAecEfPGmfKiWS4sA8sC0LqiV9w5qmXAtXVn4M3p1jSyhY85SQ==", - "dev": true + "dev": true, + "requires": {} }, "eslint-scope": { "version": "5.1.0", @@ -10296,598 +44734,6 @@ "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=" }, - "ganache-cli": { - "version": "6.12.2", - "resolved": "https://registry.npmjs.org/ganache-cli/-/ganache-cli-6.12.2.tgz", - "integrity": "sha512-bnmwnJDBDsOWBUP8E/BExWf85TsdDEFelQSzihSJm9VChVO1SHp94YXLP5BlA4j/OTxp0wR4R1Tje9OHOuAJVw==", - "dev": true, - "requires": { - "ethereumjs-util": "6.2.1", - "source-map-support": "0.5.12", - "yargs": "13.2.4" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": false, - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": false, - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "bindings": { - "version": "1.5.0", - "resolved": false, - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", - "requires": { - "file-uri-to-path": "1.0.0" - } - }, - "bip66": { - "version": "1.1.5", - "resolved": false, - "integrity": "sha1-AfqHSHhcpwlV1QESF9GzE5lpyiI=", - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "brorand": { - "version": "1.1.0", - "resolved": false, - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" - }, - "buffer-from": { - "version": "1.1.1", - "resolved": false, - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": false, - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "cliui": { - "version": "5.0.0", - "resolved": false, - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", - "dev": true, - "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": false, - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": false, - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "cross-spawn": { - "version": "6.0.5", - "resolved": false, - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "drbg.js": { - "version": "1.0.1", - "resolved": false, - "integrity": "sha1-Pja2xCs3BDgjzbwzLVjzHiRFSAs=", - "requires": { - "browserify-aes": "^1.0.6", - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4" - } - }, - "elliptic": { - "version": "6.5.0", - "resolved": false, - "integrity": "sha512-eFOJTMyCYb7xtE/caJ6JJu+bhi67WCYNbkGSknu20pmM8Ke/bqOfdnZWxyoGN26JgfxTbXrsCkEw4KheCT/KGg==", - "requires": { - "bn.js": "^4.4.0", - "brorand": "^1.0.1", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.0" - } - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": false, - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "end-of-stream": { - "version": "1.4.1", - "resolved": false, - "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "ethereumjs-util": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-6.2.1.tgz", - "integrity": "sha512-W2Ktez4L01Vexijrm5EB6w7dg4n/TgpoYU4avuT5T3Vmnw/eCRtiBrJfQYS/DCSvDIOLn2k57GcHdeBcgVxAqw==", - "dev": true, - "requires": { - "@types/bn.js": "^4.11.3", - "bn.js": "^4.11.0", - "create-hash": "^1.1.2", - "elliptic": "^6.5.2", - "ethereum-cryptography": "^0.1.3", - "ethjs-util": "0.1.6", - "rlp": "^2.2.3" - }, - "dependencies": { - "elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", - "dev": true, - "requires": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - } - } - } - }, - "execa": { - "version": "1.0.0", - "resolved": false, - "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", - "dev": true, - "requires": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - } - }, - "file-uri-to-path": { - "version": "1.0.0", - "resolved": false, - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==" - }, - "find-up": { - "version": "3.0.0", - "resolved": false, - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": false, - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "get-stream": { - "version": "4.1.0", - "resolved": false, - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": false, - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "invert-kv": { - "version": "2.0.0", - "resolved": false, - "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": false, - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "is-stream": { - "version": "1.1.0", - "resolved": false, - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true - }, - "isexe": { - "version": "2.0.0", - "resolved": false, - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true - }, - "keccak": { - "version": "1.4.0", - "resolved": false, - "integrity": "sha512-eZVaCpblK5formjPjeTBik7TAg+pqnDrMHIffSvi9Lh7PQgM1+hSzakUeZFCk9DVVG0dacZJuaz2ntwlzZUIBw==", - "requires": { - "bindings": "^1.2.1", - "inherits": "^2.0.3", - "nan": "^2.2.1", - "safe-buffer": "^5.1.0" - } - }, - "lcid": { - "version": "2.0.0", - "resolved": false, - "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", - "dev": true, - "requires": { - "invert-kv": "^2.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": false, - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "map-age-cleaner": { - "version": "0.1.3", - "resolved": false, - "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", - "dev": true, - "requires": { - "p-defer": "^1.0.0" - } - }, - "mem": { - "version": "4.3.0", - "resolved": false, - "integrity": "sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==", - "dev": true, - "requires": { - "map-age-cleaner": "^0.1.1", - "mimic-fn": "^2.0.0", - "p-is-promise": "^2.0.0" - } - }, - "mimic-fn": { - "version": "2.1.0", - "resolved": false, - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": false, - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" - }, - "nan": { - "version": "2.14.0", - "resolved": false, - "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==" - }, - "nice-try": { - "version": "1.0.5", - "resolved": false, - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": true - }, - "npm-run-path": { - "version": "2.0.2", - "resolved": false, - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", - "dev": true, - "requires": { - "path-key": "^2.0.0" - } - }, - "once": { - "version": "1.4.0", - "resolved": false, - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "os-locale": { - "version": "3.1.0", - "resolved": false, - "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", - "dev": true, - "requires": { - "execa": "^1.0.0", - "lcid": "^2.0.0", - "mem": "^4.0.0" - } - }, - "p-defer": { - "version": "1.0.0", - "resolved": false, - "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", - "dev": true - }, - "p-finally": { - "version": "1.0.0", - "resolved": false, - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", - "dev": true - }, - "p-is-promise": { - "version": "2.1.0", - "resolved": false, - "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==", - "dev": true - }, - "p-limit": { - "version": "2.2.0", - "resolved": false, - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": false, - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": false, - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "path-exists": { - "version": "3.0.0", - "resolved": false, - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true - }, - "path-key": { - "version": "2.0.1", - "resolved": false, - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true - }, - "pump": { - "version": "3.0.0", - "resolved": false, - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": false, - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": false, - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "secp256k1": { - "version": "3.7.1", - "resolved": false, - "integrity": "sha512-1cf8sbnRreXrQFdH6qsg2H71Xw91fCCS9Yp021GnUNJzWJS/py96fS4lHbnTnouLp08Xj6jBoBB6V78Tdbdu5g==", - "requires": { - "bindings": "^1.5.0", - "bip66": "^1.1.5", - "bn.js": "^4.11.8", - "create-hash": "^1.2.0", - "drbg.js": "^1.0.1", - "elliptic": "^6.4.1", - "nan": "^2.14.0", - "safe-buffer": "^5.1.2" - } - }, - "semver": { - "version": "5.7.0", - "resolved": false, - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - }, - "set-blocking": { - "version": "2.0.0", - "resolved": false, - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "shebang-command": { - "version": "1.2.0", - "resolved": false, - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "dev": true, - "requires": { - "shebang-regex": "^1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "resolved": false, - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "dev": true - }, - "signal-exit": { - "version": "3.0.2", - "resolved": false, - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": false, - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "source-map-support": { - "version": "0.5.12", - "resolved": false, - "integrity": "sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "string-width": { - "version": "3.1.0", - "resolved": false, - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": false, - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - }, - "strip-eof": { - "version": "1.0.0", - "resolved": false, - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", - "dev": true - }, - "which": { - "version": "1.3.1", - "resolved": false, - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": false, - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wrap-ansi": { - "version": "5.1.0", - "resolved": false, - "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": false, - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "y18n": { - "version": "4.0.0", - "resolved": false, - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", - "dev": true - }, - "yargs": { - "version": "13.2.4", - "resolved": false, - "integrity": "sha512-HG/DWAJa1PAnHT9JAhNa8AbAv3FPaiLzioSjCcmuXXhP8MlpHO5vwls4g4j6n30Z74GVQj8Xa62dWVx1QCGklg==", - "dev": true, - "requires": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "os-locale": "^3.1.0", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.0" - } - }, - "yargs-parser": { - "version": "13.1.2", - "bundled": true, - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, "ganache-core": { "version": "2.13.2", "resolved": "https://registry.npmjs.org/ganache-core/-/ganache-core-2.13.2.tgz", @@ -15211,6 +49057,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/keccak/-/keccak-3.0.1.tgz", "integrity": "sha512-epq90L9jlFWCW7+pQa6JOnKn2Xgl2mtI664seYR6MHskvI9agt7AnDqmAlp9TqU4/caMYbA08Hi5DMZAl5zdkA==", + "bundled": true, "dev": true, "requires": { "node-addon-api": "^2.0.0", @@ -15701,6 +49548,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==", + "bundled": true, "dev": true }, "node-fetch": { @@ -15713,6 +49561,7 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.2.3.tgz", "integrity": "sha512-MN6ZpzmfNCRM+3t57PTJHgHyw/h4OWnZ6mR8P5j/uZtqQr46RRuDE/P+g3n0YR/AiYXeWixZZzaip77gdICfRg==", + "bundled": true, "dev": true }, "normalize-url": { @@ -16679,6 +50528,23 @@ "dev": true, "optional": true }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + }, + "dependencies": { + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + } + } + }, "string.prototype.trim": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.3.tgz", @@ -16700,23 +50566,6 @@ "define-properties": "^1.1.3" } }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - } - } - }, "strip-hex-prefix": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz", @@ -17500,14 +51349,14 @@ "integrity": "sha1-jZWCAsftuq6Dlwf7pvCf8ydgYhA=", "dev": true, "requires": { - "ethereumjs-abi": "ethereumjs-abi@git+https://github.com/ethereumjs/ethereumjs-abi.git", + "ethereumjs-abi": "git+https://github.com/ethereumjs/ethereumjs-abi.git", "ethereumjs-util": "^5.1.1" } }, "ethereumjs-abi": { - "version": "git+https://github.com/ethereumjs/ethereumjs-abi.git#ee3994657fa7a427238e6ba92a84d0b529bbcde0", - "from": "ethereumjs-abi@git+https://github.com/ethereumjs/ethereumjs-abi.git", + "version": "git+ssh://git@github.com/ethereumjs/ethereumjs-abi.git#ee3994657fa7a427238e6ba92a84d0b529bbcde0", "dev": true, + "from": "ethereumjs-abi@git+https://github.com/ethereumjs/ethereumjs-abi.git", "requires": { "bn.js": "^4.11.8", "ethereumjs-util": "^6.0.0" @@ -18812,7 +52661,8 @@ "version": "7.4.5", "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.5.tgz", "integrity": "sha512-xzyu3hFvomRfXKH8vOFMU3OguG6oOvhXMo3xsGy3xWExqaM2dxBbVxuD99O7m3ZUFMvvscsZDqxfgMaRr/Nr1g==", - "dev": true + "dev": true, + "requires": {} }, "y18n": { "version": "4.0.3", @@ -19107,7 +52957,8 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/hardhat-log-remover/-/hardhat-log-remover-2.0.1.tgz", "integrity": "sha512-SP2kIU/XjJmoIHvTR2yHOMFIcmdz/72rGSVAG2rzdps6unO9+GekSlQ7msrkMVh18WuUDJMjlgH0jANR/hkpQg==", - "dev": true + "dev": true, + "requires": {} }, "has": { "version": "1.0.3", @@ -21135,6 +54986,12 @@ "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", "dev": true }, + "lru_map": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/lru_map/-/lru_map-0.3.3.tgz", + "integrity": "sha1-tcg1G5Rky9dQM1p5ZQoOwOVhGN0=", + "dev": true + }, "lru-cache": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", @@ -21144,12 +55001,6 @@ "yallist": "^3.0.2" } }, - "lru_map": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/lru_map/-/lru_map-0.3.3.tgz", - "integrity": "sha1-tcg1G5Rky9dQM1p5ZQoOwOVhGN0=", - "dev": true - }, "ltgt": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ltgt/-/ltgt-2.2.1.tgz", @@ -25635,18 +59486,17 @@ "dev": true }, "solidity-coverage": { - "version": "0.7.16", - "resolved": "https://registry.npmjs.org/solidity-coverage/-/solidity-coverage-0.7.16.tgz", - "integrity": "sha512-ttBOStywE6ZOTJmmABSg4b8pwwZfYKG8zxu40Nz+sRF5bQX7JULXWj/XbX0KXps3Fsp8CJXg8P29rH3W54ipxw==", + "version": "0.7.20", + "resolved": "https://registry.npmjs.org/solidity-coverage/-/solidity-coverage-0.7.20.tgz", + "integrity": "sha512-edOXTugUYdqxrtEnIn4vgrGjLPxdexcL0WD8LzAvVA3d1dwgcfRO3k8xQR02ZQnOnWMBi8Cqs0F+kAQQp3JW8g==", "dev": true, "requires": { - "@solidity-parser/parser": "^0.12.0", + "@solidity-parser/parser": "^0.14.0", "@truffle/provider": "^0.2.24", "chalk": "^2.4.2", "death": "^1.1.0", "detect-port": "^1.3.0", "fs-extra": "^8.1.0", - "ganache-cli": "^6.11.0", "ghost-testrpc": "^0.0.2", "global-modules": "^2.0.0", "globby": "^10.0.1", @@ -25662,10 +59512,13 @@ }, "dependencies": { "@solidity-parser/parser": { - "version": "0.12.2", - "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.12.2.tgz", - "integrity": "sha512-d7VS7PxgMosm5NyaiyDJRNID5pK4AWj1l64Dbz0147hJgy5k2C0/ZiKK/9u5c5K+HRUVHmp+RMvGEjGh84oA5Q==", - "dev": true + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.14.1.tgz", + "integrity": "sha512-eLjj2L6AuQjBB6s/ibwCAc0DwrR5Ge+ys+wgWo+bviU7fV2nTMQhU63CGaDKXg9iTmMxwhkyoggdIR7ZGRfMgw==", + "dev": true, + "requires": { + "antlr4ts": "^0.5.0-alpha.4" + } }, "bn.js": { "version": "4.12.0", @@ -26067,6 +59920,14 @@ "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=", "dev": true }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + }, "string-width": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", @@ -26098,14 +59959,6 @@ "define-properties": "^1.1.3" } }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - } - }, "strip-ansi": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", diff --git a/package.json b/package.json index 8f435f2..b177e7e 100644 --- a/package.json +++ b/package.json @@ -64,7 +64,7 @@ "prettier-plugin-solidity": "^1.0.0-beta.2", "snyk": "^1.369.0", "solhint": "^3.1.0", - "solidity-coverage": "^0.7.9", + "solidity-coverage": "^0.7.20", "truffle": "5.1.49", "truffle-flattener": "1.4.4", "web3": "1.2.11" diff --git a/rbtcwrapperproxy/build/contracts/Address.json b/rbtcwrapperproxy/build/contracts/Address.json index 59aa719..887dbae 100644 --- a/rbtcwrapperproxy/build/contracts/Address.json +++ b/rbtcwrapperproxy/build/contracts/Address.json @@ -1,25 +1,25 @@ { "contractName": "Address", "abi": [], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"Collection of functions related to the address type\",\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/Address.sol\":\"Address\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/Address.sol\":{\"keccak256\":\"0xae18dc52a36ed1e5cc674dde1896808c1e236d9359e40d5a158dbbd335dfff77\",\"urls\":[\"bzz-raw://b1acd6304479141ceed2034fd538dc4382ac7fbd30bc394b0389194900f2e5b1\",\"dweb:/ipfs/Qme3Ruddp6CjXG7NNtjpz5e9jVQAcwzzbLr2qp1uqysgLT\"]}},\"version\":1}", - "bytecode": "0x60556023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a72315820b08a007237272c8570889e8a0d222b7d7c5d36462ae057c43bf7fc914f98ef6d64736f6c63430005100032", - "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a72315820b08a007237272c8570889e8a0d222b7d7c5d36462ae057c43bf7fc914f98ef6d64736f6c63430005100032", - "sourceMap": "101:2638:17:-;;132:2:-1;166:7;155:9;146:7;137:37;255:7;249:14;246:1;241:23;235:4;232:33;222:2;;269:9;222:2;293:9;290:1;283:20;323:4;314:7;306:22;347:7;338;331:24", - "deployedSourceMap": "101:2638:17:-;;;;;;;;", + "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"Collection of functions related to the address type\",\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/Address.sol\":\"Address\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/Address.sol\":{\"keccak256\":\"0xae18dc52a36ed1e5cc674dde1896808c1e236d9359e40d5a158dbbd335dfff77\",\"urls\":[\"bzz-raw://b1acd6304479141ceed2034fd538dc4382ac7fbd30bc394b0389194900f2e5b1\",\"dweb:/ipfs/Qme3Ruddp6CjXG7NNtjpz5e9jVQAcwzzbLr2qp1uqysgLT\"]}},\"version\":1}", + "bytecode": "0x60556023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a7231582035ff1a7b55a6761f0600a3ab8c4e5faba19b0100922976ca17422d7e46d8d14b64736f6c63430005100032", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a7231582035ff1a7b55a6761f0600a3ab8c4e5faba19b0100922976ca17422d7e46d8d14b64736f6c63430005100032", + "sourceMap": "101:2638:23:-;;132:2:-1;166:7;155:9;146:7;137:37;255:7;249:14;246:1;241:23;235:4;232:33;222:2;;269:9;222:2;293:9;290:1;283:20;323:4;314:7;306:22;347:7;338;331:24", + "deployedSourceMap": "101:2638:23:-;;;;;;;;", "source": "pragma solidity >=0.5.0 <0.6.0;\n\n/**\n * @dev Collection of functions related to the address type\n */\nlibrary Address {\n\t/**\n\t * @dev Returns true if `account` is a contract.\n\t *\n\t * [IMPORTANT]\n\t * ====\n\t * It is unsafe to assume that an address for which this function returns\n\t * false is an externally-owned account (EOA) and not a contract.\n\t *\n\t * Among others, `isContract` will return false for the following\n\t * types of addresses:\n\t *\n\t * - an externally-owned account\n\t * - a contract in construction\n\t * - an address where a contract will be created\n\t * - an address where a contract lived, but was destroyed\n\t * ====\n\t */\n\tfunction isContract(address account) internal view returns (bool) {\n\t\t// According to EIP-1052, 0x0 is the value returned for not-yet created accounts\n\t\t// and 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470 is returned\n\t\t// for accounts without code, i.e. `keccak256('')`\n\t\tbytes32 codehash;\n\t\tbytes32 accountHash = 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470;\n\t\t// solhint-disable-next-line no-inline-assembly\n\t\tassembly {\n\t\t\tcodehash := extcodehash(account)\n\t\t}\n\t\treturn (codehash != accountHash && codehash != 0x0);\n\t}\n\n\t/**\n\t * @dev Converts an `address` into `address payable`. Note that this is\n\t * simply a type cast: the actual underlying value is not changed.\n\t *\n\t * _Available since v2.4.0._\n\t */\n\tfunction toPayable(address account) internal pure returns (address payable) {\n\t\treturn address(uint160(account));\n\t}\n\n\t/**\n\t * @dev Replacement for Solidity's `transfer`: sends `amount` wei to\n\t * `recipient`, forwarding all available gas and reverting on errors.\n\t *\n\t * https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost\n\t * of certain opcodes, possibly making contracts go over the 2300 gas limit\n\t * imposed by `transfer`, making them unable to receive funds via\n\t * `transfer`. {sendValue} removes this limitation.\n\t *\n\t * https://diligence.consensys.net/posts/2019/09/stop-using-soliditys-transfer-now/[Learn more].\n\t *\n\t * IMPORTANT: because control is transferred to `recipient`, care must be\n\t * taken to not create reentrancy vulnerabilities. Consider using\n\t * {ReentrancyGuard} or the\n\t * https://solidity.readthedocs.io/en/v0.5.11/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern].\n\t *\n\t * _Available since v2.4.0._\n\t */\n\tfunction sendValue(address recipient, uint256 amount) internal {\n\t\trequire(address(this).balance >= amount, \"Address: insufficient balance\");\n\n\t\t// solhint-disable-next-line avoid-call-value\n\t\t(bool success, ) = recipient.call.value(amount)(\"\");\n\t\trequire(success, \"Address: unable to send value, recipient may have reverted\");\n\t}\n}\n", - "sourcePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/Address.sol", + "sourcePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/Address.sol", "ast": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/Address.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/Address.sol", "exportedSymbols": { "Address": [ - 2111 + 3178 ] }, - "id": 2112, + "id": 3179, "nodeType": "SourceUnit", "nodes": [ { - "id": 2038, + "id": 3105, "literals": [ "solidity", ">=", @@ -30,7 +30,7 @@ ".0" ], "nodeType": "PragmaDirective", - "src": "0:31:17" + "src": "0:31:23" }, { "baseContracts": [], @@ -38,31 +38,31 @@ "contractKind": "library", "documentation": "@dev Collection of functions related to the address type", "fullyImplemented": true, - "id": 2111, + "id": 3178, "linearizedBaseContracts": [ - 2111 + 3178 ], "name": "Address", "nodeType": "ContractDefinition", "nodes": [ { "body": { - "id": 2062, + "id": 3129, "nodeType": "Block", - "src": "705:498:17", + "src": "705:498:23", "statements": [ { "assignments": [ - 2046 + 3113 ], "declarations": [ { "constant": false, - "id": 2046, + "id": 3113, "name": "codehash", "nodeType": "VariableDeclaration", - "scope": 2062, - "src": "933:16:17", + "scope": 3129, + "src": "933:16:23", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -70,10 +70,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2045, + "id": 3112, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "933:7:17", + "src": "933:7:23", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -83,23 +83,23 @@ "visibility": "internal" } ], - "id": 2047, + "id": 3114, "initialValue": null, "nodeType": "VariableDeclarationStatement", - "src": "933:16:17" + "src": "933:16:23" }, { "assignments": [ - 2049 + 3116 ], "declarations": [ { "constant": false, - "id": 2049, + "id": 3116, "name": "accountHash", "nodeType": "VariableDeclaration", - "scope": 2062, - "src": "953:19:17", + "scope": 3129, + "src": "953:19:23", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -107,10 +107,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2048, + "id": 3115, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "953:7:17", + "src": "953:7:23", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -120,18 +120,18 @@ "visibility": "internal" } ], - "id": 2051, + "id": 3118, "initialValue": { "argumentTypes": null, "hexValue": "307863356432343630313836663732333363393237653764623264636337303363306535303062363533636138323237336237626661643830343564383561343730", - "id": 2050, + "id": 3117, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "975:66:17", + "src": "975:66:23", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_89477152217924674838424037953991966239322087453347756267410168184682657981552_by_1", @@ -140,33 +140,33 @@ "value": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470" }, "nodeType": "VariableDeclarationStatement", - "src": "953:88:17" + "src": "953:88:23" }, { "externalReferences": [ { "codehash": { - "declaration": 2046, + "declaration": 3113, "isOffset": false, "isSlot": false, - "src": "1109:8:17", + "src": "1109:8:23", "valueSize": 1 } }, { "account": { - "declaration": 2040, + "declaration": 3107, "isOffset": false, "isSlot": false, - "src": "1133:7:17", + "src": "1133:7:23", "valueSize": 1 } } ], - "id": 2052, + "id": 3119, "nodeType": "InlineAssembly", "operations": "{\n codehash := extcodehash(account)\n}", - "src": "1095:50:17" + "src": "1095:50:23" }, { "expression": { @@ -178,7 +178,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2059, + "id": 3126, "isConstant": false, "isLValue": false, "isPure": false, @@ -189,19 +189,19 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 2055, + "id": 3122, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2053, + "id": 3120, "name": "codehash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2046, - "src": "1156:8:17", + "referencedDeclaration": 3113, + "src": "1156:8:23", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -211,18 +211,18 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 2054, + "id": 3121, "name": "accountHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2049, - "src": "1168:11:17", + "referencedDeclaration": 3116, + "src": "1168:11:23", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "1156:23:17", + "src": "1156:23:23", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -236,19 +236,19 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 2058, + "id": 3125, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2056, + "id": 3123, "name": "codehash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2046, - "src": "1183:8:17", + "referencedDeclaration": 3113, + "src": "1183:8:23", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -259,14 +259,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "307830", - "id": 2057, + "id": 3124, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1195:3:17", + "src": "1195:3:23", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -274,57 +274,57 @@ }, "value": "0x0" }, - "src": "1183:15:17", + "src": "1183:15:23", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "1156:42:17", + "src": "1156:42:23", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 2060, + "id": 3127, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "1155:44:17", + "src": "1155:44:23", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 2044, - "id": 2061, + "functionReturnParameters": 3111, + "id": 3128, "nodeType": "Return", - "src": "1148:51:17" + "src": "1148:51:23" } ] }, "documentation": "@dev Returns true if `account` is a contract.\n\t * [IMPORTANT]\n====\nIt is unsafe to assume that an address for which this function returns\nfalse is an externally-owned account (EOA) and not a contract.\n\t * Among others, `isContract` will return false for the following\ntypes of addresses:\n\t * - an externally-owned account\n - a contract in construction\n - an address where a contract will be created\n - an address where a contract lived, but was destroyed\n====", - "id": 2063, + "id": 3130, "implemented": true, "kind": "function", "modifiers": [], "name": "isContract", "nodeType": "FunctionDefinition", "parameters": { - "id": 2041, + "id": 3108, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2040, + "id": 3107, "name": "account", "nodeType": "VariableDeclaration", - "scope": 2063, - "src": "659:15:17", + "scope": 3130, + "src": "659:15:23", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -332,10 +332,10 @@ "typeString": "address" }, "typeName": { - "id": 2039, + "id": 3106, "name": "address", "nodeType": "ElementaryTypeName", - "src": "659:7:17", + "src": "659:7:23", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -346,19 +346,19 @@ "visibility": "internal" } ], - "src": "658:17:17" + "src": "658:17:23" }, "returnParameters": { - "id": 2044, + "id": 3111, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2043, + "id": 3110, "name": "", "nodeType": "VariableDeclaration", - "scope": 2063, - "src": "699:4:17", + "scope": 3130, + "src": "699:4:23", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -366,10 +366,10 @@ "typeString": "bool" }, "typeName": { - "id": 2042, + "id": 3109, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "699:4:17", + "src": "699:4:23", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -379,19 +379,19 @@ "visibility": "internal" } ], - "src": "698:6:17" + "src": "698:6:23" }, - "scope": 2111, - "src": "639:564:17", + "scope": 3178, + "src": "639:564:23", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 2076, + "id": 3143, "nodeType": "Block", - "src": "1467:40:17", + "src": "1467:40:23", "statements": [ { "expression": { @@ -402,12 +402,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2072, + "id": 3139, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2065, - "src": "1494:7:17", + "referencedDeclaration": 3132, + "src": "1494:7:23", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -421,20 +421,20 @@ "typeString": "address" } ], - "id": 2071, + "id": 3138, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1486:7:17", + "src": "1486:7:23", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint160_$", "typeString": "type(uint160)" }, "typeName": "uint160" }, - "id": 2073, + "id": 3140, "isConstant": false, "isLValue": false, "isPure": false, @@ -442,7 +442,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1486:16:17", + "src": "1486:16:23", "typeDescriptions": { "typeIdentifier": "t_uint160", "typeString": "uint160" @@ -456,20 +456,20 @@ "typeString": "uint160" } ], - "id": 2070, + "id": 3137, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1478:7:17", + "src": "1478:7:23", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, - "id": 2074, + "id": 3141, "isConstant": false, "isLValue": false, "isPure": false, @@ -477,37 +477,37 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1478:25:17", + "src": "1478:25:23", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, - "functionReturnParameters": 2069, - "id": 2075, + "functionReturnParameters": 3136, + "id": 3142, "nodeType": "Return", - "src": "1471:32:17" + "src": "1471:32:23" } ] }, "documentation": "@dev Converts an `address` into `address payable`. Note that this is\nsimply a type cast: the actual underlying value is not changed.\n\t * _Available since v2.4.0._", - "id": 2077, + "id": 3144, "implemented": true, "kind": "function", "modifiers": [], "name": "toPayable", "nodeType": "FunctionDefinition", "parameters": { - "id": 2066, + "id": 3133, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2065, + "id": 3132, "name": "account", "nodeType": "VariableDeclaration", - "scope": 2077, - "src": "1410:15:17", + "scope": 3144, + "src": "1410:15:23", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -515,10 +515,10 @@ "typeString": "address" }, "typeName": { - "id": 2064, + "id": 3131, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1410:7:17", + "src": "1410:7:23", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -529,19 +529,19 @@ "visibility": "internal" } ], - "src": "1409:17:17" + "src": "1409:17:23" }, "returnParameters": { - "id": 2069, + "id": 3136, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2068, + "id": 3135, "name": "", "nodeType": "VariableDeclaration", - "scope": 2077, - "src": "1450:15:17", + "scope": 3144, + "src": "1450:15:23", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -549,10 +549,10 @@ "typeString": "address payable" }, "typeName": { - "id": 2067, + "id": 3134, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1450:15:17", + "src": "1450:15:23", "stateMutability": "payable", "typeDescriptions": { "typeIdentifier": "t_address_payable", @@ -563,19 +563,19 @@ "visibility": "internal" } ], - "src": "1449:17:17" + "src": "1449:17:23" }, - "scope": 2111, - "src": "1391:116:17", + "scope": 3178, + "src": "1391:116:23", "stateMutability": "pure", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 2109, + "id": 3176, "nodeType": "Block", - "src": "2470:267:17", + "src": "2470:267:23", "statements": [ { "expression": { @@ -587,7 +587,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2090, + "id": 3157, "isConstant": false, "isLValue": false, "isPure": false, @@ -599,14 +599,14 @@ "arguments": [ { "argumentTypes": null, - "id": 2086, + "id": 3153, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "2490:4:17", + "referencedDeclaration": 3518, + "src": "2490:4:23", "typeDescriptions": { - "typeIdentifier": "t_contract$_Address_$2111", + "typeIdentifier": "t_contract$_Address_$3178", "typeString": "library Address" } } @@ -614,24 +614,24 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Address_$2111", + "typeIdentifier": "t_contract$_Address_$3178", "typeString": "library Address" } ], - "id": 2085, + "id": 3152, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2482:7:17", + "src": "2482:7:23", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, - "id": 2087, + "id": 3154, "isConstant": false, "isLValue": false, "isPure": false, @@ -639,13 +639,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2482:13:17", + "src": "2482:13:23", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 2088, + "id": 3155, "isConstant": false, "isLValue": false, "isPure": false, @@ -653,7 +653,7 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2482:21:17", + "src": "2482:21:23", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -663,18 +663,18 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 2089, + "id": 3156, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2081, - "src": "2507:6:17", + "referencedDeclaration": 3148, + "src": "2507:6:23", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2482:31:17", + "src": "2482:31:23", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -683,14 +683,14 @@ { "argumentTypes": null, "hexValue": "416464726573733a20696e73756666696369656e742062616c616e6365", - "id": 2091, + "id": 3158, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "2515:31:17", + "src": "2515:31:23", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_5597a22abd0ef5332f8053862eb236db7590f17e2b93a53f63a103becfb561f9", @@ -710,21 +710,21 @@ "typeString": "literal_string \"Address: insufficient balance\"" } ], - "id": 2084, + "id": 3151, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 2236, - 2237 + 3497, + 3498 ], - "referencedDeclaration": 2237, - "src": "2474:7:17", + "referencedDeclaration": 3498, + "src": "2474:7:23", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 2092, + "id": 3159, "isConstant": false, "isLValue": false, "isPure": false, @@ -732,29 +732,29 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2474:73:17", + "src": "2474:73:23", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2093, + "id": 3160, "nodeType": "ExpressionStatement", - "src": "2474:73:17" + "src": "2474:73:23" }, { "assignments": [ - 2095, + 3162, null ], "declarations": [ { "constant": false, - "id": 2095, + "id": 3162, "name": "success", "nodeType": "VariableDeclaration", - "scope": 2109, - "src": "2601:12:17", + "scope": 3176, + "src": "2601:12:23", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -762,10 +762,10 @@ "typeString": "bool" }, "typeName": { - "id": 2094, + "id": 3161, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "2601:4:17", + "src": "2601:4:23", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -776,21 +776,21 @@ }, null ], - "id": 2103, + "id": 3170, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "hexValue": "", - "id": 2101, + "id": 3168, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "2648:2:17", + "src": "2648:2:23", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", @@ -809,12 +809,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2099, + "id": 3166, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2081, - "src": "2640:6:17", + "referencedDeclaration": 3148, + "src": "2640:6:23", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -832,18 +832,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2096, + "id": 3163, "name": "recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2079, - "src": "2619:9:17", + "referencedDeclaration": 3146, + "src": "2619:9:23", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 2097, + "id": 3164, "isConstant": false, "isLValue": false, "isPure": false, @@ -851,13 +851,13 @@ "memberName": "call", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2619:14:17", + "src": "2619:14:23", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 2098, + "id": 3165, "isConstant": false, "isLValue": false, "isPure": false, @@ -865,13 +865,13 @@ "memberName": "value", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2619:20:17", + "src": "2619:20:23", "typeDescriptions": { "typeIdentifier": "t_function_setvalue_pure$_t_uint256_$returns$_t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value_$", "typeString": "function (uint256) pure returns (function (bytes memory) payable returns (bool,bytes memory))" } }, - "id": 2100, + "id": 3167, "isConstant": false, "isLValue": false, "isPure": false, @@ -879,13 +879,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2619:28:17", + "src": "2619:28:23", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 2102, + "id": 3169, "isConstant": false, "isLValue": false, "isPure": false, @@ -893,14 +893,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2619:32:17", + "src": "2619:32:23", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "tuple(bool,bytes memory)" } }, "nodeType": "VariableDeclarationStatement", - "src": "2600:51:17" + "src": "2600:51:23" }, { "expression": { @@ -908,12 +908,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2105, + "id": 3172, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2095, - "src": "2663:7:17", + "referencedDeclaration": 3162, + "src": "2663:7:23", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -922,14 +922,14 @@ { "argumentTypes": null, "hexValue": "416464726573733a20756e61626c6520746f2073656e642076616c75652c20726563697069656e74206d61792068617665207265766572746564", - "id": 2106, + "id": 3173, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "2672:60:17", + "src": "2672:60:23", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_51ddaa38748c0a1144620fb5bfe8edab31ea437571ad591a7734bbfd0429aeae", @@ -949,21 +949,21 @@ "typeString": "literal_string \"Address: unable to send value, recipient may have reverted\"" } ], - "id": 2104, + "id": 3171, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 2236, - 2237 + 3497, + 3498 ], - "referencedDeclaration": 2237, - "src": "2655:7:17", + "referencedDeclaration": 3498, + "src": "2655:7:23", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 2107, + "id": 3174, "isConstant": false, "isLValue": false, "isPure": false, @@ -971,36 +971,36 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2655:78:17", + "src": "2655:78:23", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2108, + "id": 3175, "nodeType": "ExpressionStatement", - "src": "2655:78:17" + "src": "2655:78:23" } ] }, "documentation": "@dev Replacement for Solidity's `transfer`: sends `amount` wei to\n`recipient`, forwarding all available gas and reverting on errors.\n\t * https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost\nof certain opcodes, possibly making contracts go over the 2300 gas limit\nimposed by `transfer`, making them unable to receive funds via\n`transfer`. {sendValue} removes this limitation.\n\t * https://diligence.consensys.net/posts/2019/09/stop-using-soliditys-transfer-now/[Learn more].\n\t * IMPORTANT: because control is transferred to `recipient`, care must be\ntaken to not create reentrancy vulnerabilities. Consider using\n{ReentrancyGuard} or the\nhttps://solidity.readthedocs.io/en/v0.5.11/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern].\n\t * _Available since v2.4.0._", - "id": 2110, + "id": 3177, "implemented": true, "kind": "function", "modifiers": [], "name": "sendValue", "nodeType": "FunctionDefinition", "parameters": { - "id": 2082, + "id": 3149, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2079, + "id": 3146, "name": "recipient", "nodeType": "VariableDeclaration", - "scope": 2110, - "src": "2426:17:17", + "scope": 3177, + "src": "2426:17:23", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1008,10 +1008,10 @@ "typeString": "address" }, "typeName": { - "id": 2078, + "id": 3145, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2426:7:17", + "src": "2426:7:23", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1023,11 +1023,11 @@ }, { "constant": false, - "id": 2081, + "id": 3148, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 2110, - "src": "2445:14:17", + "scope": 3177, + "src": "2445:14:23", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1035,10 +1035,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2080, + "id": 3147, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2445:7:17", + "src": "2445:7:23", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1048,1095 +1048,1170 @@ "visibility": "internal" } ], - "src": "2425:35:17" + "src": "2425:35:23" }, "returnParameters": { - "id": 2083, + "id": 3150, "nodeType": "ParameterList", "parameters": [], - "src": "2470:0:17" + "src": "2470:0:23" }, - "scope": 2111, - "src": "2407:330:17", + "scope": 3178, + "src": "2407:330:23", "stateMutability": "nonpayable", "superFunction": null, "visibility": "internal" } ], - "scope": 2112, - "src": "101:2638:17" + "scope": 3179, + "src": "101:2638:23" } ], - "src": "0:2740:17" + "src": "0:2740:23" }, "legacyAST": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/Address.sol", - "exportedSymbols": { - "Address": [ - 2111 - ] + "attributes": { + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/Address.sol", + "exportedSymbols": { + "Address": [ + 3178 + ] + } }, - "id": 2112, - "nodeType": "SourceUnit", - "nodes": [ + "children": [ { - "id": 2038, - "literals": [ - "solidity", - ">=", - "0.5", - ".0", - "<", - "0.6", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "0:31:17" + "attributes": { + "literals": [ + "solidity", + ">=", + "0.5", + ".0", + "<", + "0.6", + ".0" + ] + }, + "id": 3105, + "name": "PragmaDirective", + "src": "0:31:23" }, { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "library", - "documentation": "@dev Collection of functions related to the address type", - "fullyImplemented": true, - "id": 2111, - "linearizedBaseContracts": [ - 2111 - ], - "name": "Address", - "nodeType": "ContractDefinition", - "nodes": [ + "attributes": { + "baseContracts": [ + null + ], + "contractDependencies": [ + null + ], + "contractKind": "library", + "documentation": "@dev Collection of functions related to the address type", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 3178 + ], + "name": "Address", + "scope": 3179 + }, + "children": [ { - "body": { - "id": 2062, - "nodeType": "Block", - "src": "705:498:17", - "statements": [ - { - "assignments": [ - 2046 - ], - "declarations": [ - { + "attributes": { + "documentation": "@dev Returns true if `account` is a contract.\n\t * [IMPORTANT]\n====\nIt is unsafe to assume that an address for which this function returns\nfalse is an externally-owned account (EOA) and not a contract.\n\t * Among others, `isContract` will return false for the following\ntypes of addresses:\n\t * - an externally-owned account\n - a contract in construction\n - an address where a contract will be created\n - an address where a contract lived, but was destroyed\n====", + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "isContract", + "scope": 3178, + "stateMutability": "view", + "superFunction": null, + "visibility": "internal" + }, + "children": [ + { + "children": [ + { + "attributes": { "constant": false, - "id": 2046, - "name": "codehash", - "nodeType": "VariableDeclaration", - "scope": 2062, - "src": "933:16:17", + "name": "account", + "scope": 3130, "stateVariable": false, "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2045, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "933:7:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, + "type": "address", "value": null, "visibility": "internal" - } - ], - "id": 2047, - "initialValue": null, - "nodeType": "VariableDeclarationStatement", - "src": "933:16:17" - }, - { - "assignments": [ - 2049 - ], - "declarations": [ - { + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 3106, + "name": "ElementaryTypeName", + "src": "659:7:23" + } + ], + "id": 3107, + "name": "VariableDeclaration", + "src": "659:15:23" + } + ], + "id": 3108, + "name": "ParameterList", + "src": "658:17:23" + }, + { + "children": [ + { + "attributes": { "constant": false, - "id": 2049, - "name": "accountHash", - "nodeType": "VariableDeclaration", - "scope": 2062, - "src": "953:19:17", + "name": "", + "scope": 3130, "stateVariable": false, "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2048, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "953:7:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, + "type": "bool", "value": null, "visibility": "internal" - } - ], - "id": 2051, - "initialValue": { - "argumentTypes": null, - "hexValue": "307863356432343630313836663732333363393237653764623264636337303363306535303062363533636138323237336237626661643830343564383561343730", - "id": 2050, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "975:66:17", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_89477152217924674838424037953991966239322087453347756267410168184682657981552_by_1", - "typeString": "int_const 8947...(69 digits omitted)...1552" }, - "value": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470" - }, - "nodeType": "VariableDeclarationStatement", - "src": "953:88:17" - }, - { - "externalReferences": [ - { - "codehash": { - "declaration": 2046, - "isOffset": false, - "isSlot": false, - "src": "1109:8:17", - "valueSize": 1 + "children": [ + { + "attributes": { + "name": "bool", + "type": "bool" + }, + "id": 3109, + "name": "ElementaryTypeName", + "src": "699:4:23" } + ], + "id": 3110, + "name": "VariableDeclaration", + "src": "699:4:23" + } + ], + "id": 3111, + "name": "ParameterList", + "src": "698:6:23" + }, + { + "children": [ + { + "attributes": { + "assignments": [ + 3113 + ], + "initialValue": null }, - { - "account": { - "declaration": 2040, - "isOffset": false, - "isSlot": false, - "src": "1133:7:17", - "valueSize": 1 + "children": [ + { + "attributes": { + "constant": false, + "name": "codehash", + "scope": 3129, + "stateVariable": false, + "storageLocation": "default", + "type": "bytes32", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 3112, + "name": "ElementaryTypeName", + "src": "933:7:23" + } + ], + "id": 3113, + "name": "VariableDeclaration", + "src": "933:16:23" } - } - ], - "id": 2052, - "nodeType": "InlineAssembly", - "operations": "{\n codehash := extcodehash(account)\n}", - "src": "1095:50:17" - }, - { - "expression": { - "argumentTypes": null, - "components": [ + ], + "id": 3114, + "name": "VariableDeclarationStatement", + "src": "933:16:23" + }, + { + "attributes": { + "assignments": [ + 3116 + ] + }, + "children": [ { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "attributes": { + "constant": false, + "name": "accountHash", + "scope": 3129, + "stateVariable": false, + "storageLocation": "default", + "type": "bytes32", + "value": null, + "visibility": "internal" }, - "id": 2059, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { + "children": [ + { + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 3115, + "name": "ElementaryTypeName", + "src": "953:7:23" + } + ], + "id": 3116, + "name": "VariableDeclaration", + "src": "953:19:23" + }, + { + "attributes": { "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 2055, + "hexvalue": "307863356432343630313836663732333363393237653764623264636337303363306535303062363533636138323237336237626661643830343564383561343730", "isConstant": false, "isLValue": false, - "isPure": false, + "isPure": true, "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2053, - "name": "codehash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2046, - "src": "1156:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "argumentTypes": null, - "id": 2054, - "name": "accountHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2049, - "src": "1168:11:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "1156:23:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "subdenomination": null, + "token": "number", + "type": "int_const 8947...(69 digits omitted)...1552", + "value": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470" + }, + "id": 3117, + "name": "Literal", + "src": "975:66:23" + } + ], + "id": 3118, + "name": "VariableDeclarationStatement", + "src": "953:88:23" + }, + { + "attributes": { + "externalReferences": [ + { + "codehash": { + "declaration": 3113, + "isOffset": false, + "isSlot": false, + "src": "1109:8:23", + "valueSize": 1 } }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { + { + "account": { + "declaration": 3107, + "isOffset": false, + "isSlot": false, + "src": "1133:7:23", + "valueSize": 1 + } + } + ], + "operations": "{\n codehash := extcodehash(account)\n}" + }, + "children": [], + "id": 3119, + "name": "InlineAssembly", + "src": "1095:50:23" + }, + { + "attributes": { + "functionReturnParameters": 3111 + }, + "children": [ + { + "attributes": { "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 2058, "isConstant": false, + "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2056, - "name": "codehash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2046, - "src": "1183:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "argumentTypes": null, - "hexValue": "307830", - "id": 2057, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1195:3:17", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "&&", + "type": "bool" }, - "value": "0x0" - }, - "src": "1183:15:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "children": [ + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "!=", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3113, + "type": "bytes32", + "value": "codehash" + }, + "id": 3120, + "name": "Identifier", + "src": "1156:8:23" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3116, + "type": "bytes32", + "value": "accountHash" + }, + "id": 3121, + "name": "Identifier", + "src": "1168:11:23" + } + ], + "id": 3122, + "name": "BinaryOperation", + "src": "1156:23:23" + }, + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "!=", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3113, + "type": "bytes32", + "value": "codehash" + }, + "id": 3123, + "name": "Identifier", + "src": "1183:8:23" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "307830", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "number", + "type": "int_const 0", + "value": "0x0" + }, + "id": 3124, + "name": "Literal", + "src": "1195:3:23" + } + ], + "id": 3125, + "name": "BinaryOperation", + "src": "1183:15:23" + } + ], + "id": 3126, + "name": "BinaryOperation", + "src": "1156:42:23" } - }, - "src": "1156:42:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } + ], + "id": 3127, + "name": "TupleExpression", + "src": "1155:44:23" } ], - "id": 2060, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "1155:44:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 2044, - "id": 2061, - "nodeType": "Return", - "src": "1148:51:17" - } - ] - }, - "documentation": "@dev Returns true if `account` is a contract.\n\t * [IMPORTANT]\n====\nIt is unsafe to assume that an address for which this function returns\nfalse is an externally-owned account (EOA) and not a contract.\n\t * Among others, `isContract` will return false for the following\ntypes of addresses:\n\t * - an externally-owned account\n - a contract in construction\n - an address where a contract will be created\n - an address where a contract lived, but was destroyed\n====", - "id": 2063, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isContract", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2041, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2040, - "name": "account", - "nodeType": "VariableDeclaration", - "scope": 2063, - "src": "659:15:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2039, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "659:7:17", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "658:17:17" - }, - "returnParameters": { - "id": 2044, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2043, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2063, - "src": "699:4:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2042, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "699:4:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "698:6:17" - }, - "scope": 2111, - "src": "639:564:17", - "stateMutability": "view", - "superFunction": null, - "visibility": "internal" + "id": 3128, + "name": "Return", + "src": "1148:51:23" + } + ], + "id": 3129, + "name": "Block", + "src": "705:498:23" + } + ], + "id": 3130, + "name": "FunctionDefinition", + "src": "639:564:23" }, { - "body": { - "id": 2076, - "nodeType": "Block", - "src": "1467:40:17", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ + "attributes": { + "documentation": "@dev Converts an `address` into `address payable`. Note that this is\nsimply a type cast: the actual underlying value is not changed.\n\t * _Available since v2.4.0._", + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "toPayable", + "scope": 3178, + "stateMutability": "pure", + "superFunction": null, + "visibility": "internal" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "account", + "scope": 3144, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2072, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2065, - "src": "1494:7:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2071, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1486:7:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint160_$", - "typeString": "type(uint160)" - }, - "typeName": "uint160" + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" }, - "id": 2073, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1486:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint160", - "typeString": "uint160" - } + "id": 3131, + "name": "ElementaryTypeName", + "src": "1410:7:23" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint160", - "typeString": "uint160" - } - ], - "id": 2070, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1478:7:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": "address" + "id": 3132, + "name": "VariableDeclaration", + "src": "1410:15:23" + } + ], + "id": 3133, + "name": "ParameterList", + "src": "1409:17:23" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 3144, + "stateVariable": false, + "storageLocation": "default", + "type": "address payable", + "value": null, + "visibility": "internal" }, - "id": 2074, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1478:25:17", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "functionReturnParameters": 2069, - "id": 2075, - "nodeType": "Return", - "src": "1471:32:17" - } - ] - }, - "documentation": "@dev Converts an `address` into `address payable`. Note that this is\nsimply a type cast: the actual underlying value is not changed.\n\t * _Available since v2.4.0._", - "id": 2077, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "toPayable", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2066, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2065, - "name": "account", - "nodeType": "VariableDeclaration", - "scope": 2077, - "src": "1410:15:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2064, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1410:7:17", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1409:17:17" - }, - "returnParameters": { - "id": 2069, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2068, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2077, - "src": "1450:15:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - "typeName": { - "id": 2067, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1450:15:17", - "stateMutability": "payable", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1449:17:17" - }, - "scope": 2111, - "src": "1391:116:17", - "stateMutability": "pure", - "superFunction": null, - "visibility": "internal" - }, - { - "body": { - "id": 2109, - "nodeType": "Block", - "src": "2470:267:17", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ + "children": [ { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "attributes": { + "name": "address", + "stateMutability": "payable", + "type": "address payable" }, - "id": 2090, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { + "id": 3134, + "name": "ElementaryTypeName", + "src": "1450:15:23" + } + ], + "id": 3135, + "name": "VariableDeclaration", + "src": "1450:15:23" + } + ], + "id": 3136, + "name": "ParameterList", + "src": "1449:17:23" + }, + { + "children": [ + { + "attributes": { + "functionReturnParameters": 3136 + }, + "children": [ + { + "attributes": { "argumentTypes": null, - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2086, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "2490:4:17", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Address_$2111", - "typeString": "library Address" - } - } - ], - "expression": { + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "address payable", + "type_conversion": true + }, + "children": [ + { + "attributes": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Address_$2111", - "typeString": "library Address" + "typeIdentifier": "t_uint160", + "typeString": "uint160" } ], - "id": 2085, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2482:7:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": "address" + "type": "type(address)", + "value": "address" }, - "id": 2087, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2482:13:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + "id": 3137, + "name": "ElementaryTypeNameExpression", + "src": "1478:7:23" }, - "id": 2088, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "balance", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2482:21:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "argumentTypes": null, - "id": 2089, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2081, - "src": "2507:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "uint160", + "type_conversion": true + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "type": "type(uint160)", + "value": "uint160" + }, + "id": 3138, + "name": "ElementaryTypeNameExpression", + "src": "1486:7:23" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3132, + "type": "address", + "value": "account" + }, + "id": 3139, + "name": "Identifier", + "src": "1494:7:23" + } + ], + "id": 3140, + "name": "FunctionCall", + "src": "1486:16:23" } - }, - "src": "2482:31:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "argumentTypes": null, - "hexValue": "416464726573733a20696e73756666696369656e742062616c616e6365", - "id": 2091, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2515:31:17", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5597a22abd0ef5332f8053862eb236db7590f17e2b93a53f63a103becfb561f9", - "typeString": "literal_string \"Address: insufficient balance\"" - }, - "value": "Address: insufficient balance" + ], + "id": 3141, + "name": "FunctionCall", + "src": "1478:25:23" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" + "id": 3142, + "name": "Return", + "src": "1471:32:23" + } + ], + "id": 3143, + "name": "Block", + "src": "1467:40:23" + } + ], + "id": 3144, + "name": "FunctionDefinition", + "src": "1391:116:23" + }, + { + "attributes": { + "documentation": "@dev Replacement for Solidity's `transfer`: sends `amount` wei to\n`recipient`, forwarding all available gas and reverting on errors.\n\t * https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost\nof certain opcodes, possibly making contracts go over the 2300 gas limit\nimposed by `transfer`, making them unable to receive funds via\n`transfer`. {sendValue} removes this limitation.\n\t * https://diligence.consensys.net/posts/2019/09/stop-using-soliditys-transfer-now/[Learn more].\n\t * IMPORTANT: because control is transferred to `recipient`, care must be\ntaken to not create reentrancy vulnerabilities. Consider using\n{ReentrancyGuard} or the\nhttps://solidity.readthedocs.io/en/v0.5.11/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern].\n\t * _Available since v2.4.0._", + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "sendValue", + "scope": 3178, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "internal" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "recipient", + "scope": 3177, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" }, - { - "typeIdentifier": "t_stringliteral_5597a22abd0ef5332f8053862eb236db7590f17e2b93a53f63a103becfb561f9", - "typeString": "literal_string \"Address: insufficient balance\"" - } - ], - "id": 2084, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 2236, - 2237 - ], - "referencedDeclaration": 2237, - "src": "2474:7:17", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" + "id": 3145, + "name": "ElementaryTypeName", + "src": "2426:7:23" } - }, - "id": 2092, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2474:73:17", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } + ], + "id": 3146, + "name": "VariableDeclaration", + "src": "2426:17:23" }, - "id": 2093, - "nodeType": "ExpressionStatement", - "src": "2474:73:17" - }, - { - "assignments": [ - 2095, - null - ], - "declarations": [ - { + { + "attributes": { "constant": false, - "id": 2095, - "name": "success", - "nodeType": "VariableDeclaration", - "scope": 2109, - "src": "2601:12:17", + "name": "amount", + "scope": 3177, "stateVariable": false, "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2094, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2601:4:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, + "type": "uint256", "value": null, "visibility": "internal" }, - null - ], - "id": 2103, - "initialValue": { - "argumentTypes": null, - "arguments": [ + "children": [ { - "argumentTypes": null, - "hexValue": "", - "id": 2101, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2648:2:17", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" + "attributes": { + "name": "uint256", + "type": "uint256" }, - "value": "" + "id": 3147, + "name": "ElementaryTypeName", + "src": "2445:7:23" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "arguments": [ - { + "id": 3148, + "name": "VariableDeclaration", + "src": "2445:14:23" + } + ], + "id": 3149, + "name": "ParameterList", + "src": "2425:35:23" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 3150, + "name": "ParameterList", + "src": "2470:0:23" + }, + { + "children": [ + { + "children": [ + { + "attributes": { "argumentTypes": null, - "id": 2099, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2081, - "src": "2640:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_5597a22abd0ef5332f8053862eb236db7590f17e2b93a53f63a103becfb561f9", + "typeString": "literal_string \"Address: insufficient balance\"" + } + ], + "overloadedDeclarations": [ + 3497, + 3498 + ], + "referencedDeclaration": 3498, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 3151, + "name": "Identifier", + "src": "2474:7:23" + }, + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": ">=", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "balance", + "referencedDeclaration": null, + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "address", + "type_conversion": true + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Address_$3178", + "typeString": "library Address" + } + ], + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "type": "type(address)", + "value": "address" + }, + "id": 3152, + "name": "ElementaryTypeNameExpression", + "src": "2482:7:23" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3518, + "type": "library Address", + "value": "this" + }, + "id": 3153, + "name": "Identifier", + "src": "2490:4:23" + } + ], + "id": 3154, + "name": "FunctionCall", + "src": "2482:13:23" + } + ], + "id": 3155, + "name": "MemberAccess", + "src": "2482:21:23" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3148, + "type": "uint256", + "value": "amount" + }, + "id": 3156, + "name": "Identifier", + "src": "2507:6:23" + } + ], + "id": 3157, + "name": "BinaryOperation", + "src": "2482:31:23" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "416464726573733a20696e73756666696369656e742062616c616e6365", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"Address: insufficient balance\"", + "value": "Address: insufficient balance" + }, + "id": 3158, + "name": "Literal", + "src": "2515:31:23" } - } - ], - "expression": { - "argumentTypes": [ + ], + "id": 3159, + "name": "FunctionCall", + "src": "2474:73:23" + } + ], + "id": 3160, + "name": "ExpressionStatement", + "src": "2474:73:23" + }, + { + "attributes": { + "assignments": [ + 3162, + null + ] + }, + "children": [ + { + "attributes": { + "constant": false, + "name": "success", + "scope": 3176, + "stateVariable": false, + "storageLocation": "default", + "type": "bool", + "value": null, + "visibility": "internal" + }, + "children": [ { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "attributes": { + "name": "bool", + "type": "bool" + }, + "id": 3161, + "name": "ElementaryTypeName", + "src": "2601:4:23" } ], - "expression": { + "id": 3162, + "name": "VariableDeclaration", + "src": "2601:12:23" + }, + { + "attributes": { "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2096, - "name": "recipient", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2079, - "src": "2619:9:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2097, "isConstant": false, "isLValue": false, "isPure": false, + "isStructConstructorCall": false, "lValueRequested": false, - "memberName": "call", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2619:14:17", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } + "names": [ + null + ], + "type": "tuple(bool,bytes memory)", + "type_conversion": false }, - "id": 2098, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2619:20:17", - "typeDescriptions": { - "typeIdentifier": "t_function_setvalue_pure$_t_uint256_$returns$_t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value_$", - "typeString": "function (uint256) pure returns (function (bytes memory) payable returns (bool,bytes memory))" - } - }, - "id": 2100, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2619:28:17", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + } + ], + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "function (bytes memory) payable returns (bool,bytes memory)", + "type_conversion": false + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "value", + "referencedDeclaration": null, + "type": "function (uint256) pure returns (function (bytes memory) payable returns (bool,bytes memory))" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "call", + "referencedDeclaration": null, + "type": "function (bytes memory) payable returns (bool,bytes memory)" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3146, + "type": "address", + "value": "recipient" + }, + "id": 3163, + "name": "Identifier", + "src": "2619:9:23" + } + ], + "id": 3164, + "name": "MemberAccess", + "src": "2619:14:23" + } + ], + "id": 3165, + "name": "MemberAccess", + "src": "2619:20:23" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3148, + "type": "uint256", + "value": "amount" + }, + "id": 3166, + "name": "Identifier", + "src": "2640:6:23" + } + ], + "id": 3167, + "name": "FunctionCall", + "src": "2619:28:23" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"\"", + "value": "" + }, + "id": 3168, + "name": "Literal", + "src": "2648:2:23" + } + ], + "id": 3169, + "name": "FunctionCall", + "src": "2619:32:23" } - }, - "id": 2102, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2619:32:17", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } + ], + "id": 3170, + "name": "VariableDeclarationStatement", + "src": "2600:51:23" }, - "nodeType": "VariableDeclarationStatement", - "src": "2600:51:17" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2105, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2095, - "src": "2663:7:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, + { + "children": [ { - "argumentTypes": null, - "hexValue": "416464726573733a20756e61626c6520746f2073656e642076616c75652c20726563697069656e74206d61792068617665207265766572746564", - "id": 2106, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2672:60:17", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_51ddaa38748c0a1144620fb5bfe8edab31ea437571ad591a7734bbfd0429aeae", - "typeString": "literal_string \"Address: unable to send value, recipient may have reverted\"" + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false }, - "value": "Address: unable to send value, recipient may have reverted" + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_51ddaa38748c0a1144620fb5bfe8edab31ea437571ad591a7734bbfd0429aeae", + "typeString": "literal_string \"Address: unable to send value, recipient may have reverted\"" + } + ], + "overloadedDeclarations": [ + 3497, + 3498 + ], + "referencedDeclaration": 3498, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 3171, + "name": "Identifier", + "src": "2655:7:23" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3162, + "type": "bool", + "value": "success" + }, + "id": 3172, + "name": "Identifier", + "src": "2663:7:23" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "416464726573733a20756e61626c6520746f2073656e642076616c75652c20726563697069656e74206d61792068617665207265766572746564", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"Address: unable to send value, recipient may have reverted\"", + "value": "Address: unable to send value, recipient may have reverted" + }, + "id": 3173, + "name": "Literal", + "src": "2672:60:23" + } + ], + "id": 3174, + "name": "FunctionCall", + "src": "2655:78:23" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_51ddaa38748c0a1144620fb5bfe8edab31ea437571ad591a7734bbfd0429aeae", - "typeString": "literal_string \"Address: unable to send value, recipient may have reverted\"" - } - ], - "id": 2104, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 2236, - 2237 - ], - "referencedDeclaration": 2237, - "src": "2655:7:17", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2107, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2655:78:17", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2108, - "nodeType": "ExpressionStatement", - "src": "2655:78:17" - } - ] - }, - "documentation": "@dev Replacement for Solidity's `transfer`: sends `amount` wei to\n`recipient`, forwarding all available gas and reverting on errors.\n\t * https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost\nof certain opcodes, possibly making contracts go over the 2300 gas limit\nimposed by `transfer`, making them unable to receive funds via\n`transfer`. {sendValue} removes this limitation.\n\t * https://diligence.consensys.net/posts/2019/09/stop-using-soliditys-transfer-now/[Learn more].\n\t * IMPORTANT: because control is transferred to `recipient`, care must be\ntaken to not create reentrancy vulnerabilities. Consider using\n{ReentrancyGuard} or the\nhttps://solidity.readthedocs.io/en/v0.5.11/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern].\n\t * _Available since v2.4.0._", - "id": 2110, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "sendValue", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2082, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2079, - "name": "recipient", - "nodeType": "VariableDeclaration", - "scope": 2110, - "src": "2426:17:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2078, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2426:7:17", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2081, - "name": "amount", - "nodeType": "VariableDeclaration", - "scope": 2110, - "src": "2445:14:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2080, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2445:7:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2425:35:17" - }, - "returnParameters": { - "id": 2083, - "nodeType": "ParameterList", - "parameters": [], - "src": "2470:0:17" - }, - "scope": 2111, - "src": "2407:330:17", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "internal" + "id": 3175, + "name": "ExpressionStatement", + "src": "2655:78:23" + } + ], + "id": 3176, + "name": "Block", + "src": "2470:267:23" + } + ], + "id": 3177, + "name": "FunctionDefinition", + "src": "2407:330:23" } ], - "scope": 2112, - "src": "101:2638:17" + "id": 3178, + "name": "ContractDefinition", + "src": "101:2638:23" } ], - "src": "0:2740:17" + "id": 3179, + "name": "SourceUnit", + "src": "0:2740:23" }, "compiler": { "name": "solc", "version": "0.5.16+commit.9c3226ce.Emscripten.clang" }, "networks": {}, - "schemaVersion": "3.3.2", - "updatedAt": "2021-03-26T10:10:09.426Z", + "schemaVersion": "3.4.1", + "updatedAt": "2022-02-15T06:13:50.488Z", "devdoc": { "details": "Collection of functions related to the address type", "methods": {} diff --git a/rbtcwrapperproxy/build/contracts/ContractRegistryClient.json b/rbtcwrapperproxy/build/contracts/ContractRegistryClient.json index c9e438e..71168ef 100644 --- a/rbtcwrapperproxy/build/contracts/ContractRegistryClient.json +++ b/rbtcwrapperproxy/build/contracts/ContractRegistryClient.json @@ -165,15 +165,15 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IContractRegistry\",\"name\":\"_registry\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_prevOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"OwnerUpdate\",\"type\":\"event\"},{\"constant\":false,\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"newOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"onlyOwnerCanUpdateRegistry\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"prevRegistry\",\"outputs\":[{\"internalType\":\"contract IContractRegistry\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"registry\",\"outputs\":[{\"internalType\":\"contract IContractRegistry\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"restoreRegistry\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_onlyOwnerCanUpdateRegistry\",\"type\":\"bool\"}],\"name\":\"restrictRegistryUpdate\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"updateRegistry\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Base contract for ContractRegistry clients\",\"methods\":{\"acceptOwnership()\":{\"details\":\"used by a new owner to accept an ownership transfer\"},\"constructor\":{\"details\":\"initializes a new ContractRegistryClient instance \",\"params\":{\"_registry\":\"address of a contract-registry contract\"}},\"restoreRegistry()\":{\"details\":\"restores the previous contract-registry\"},\"restrictRegistryUpdate(bool)\":{\"details\":\"restricts the permission to update the contract-registry \",\"params\":{\"_onlyOwnerCanUpdateRegistry\":\"indicates whether or not permission is restricted to owner only\"}},\"transferOwnership(address)\":{\"details\":\"allows transferring the contract ownership the new owner still needs to accept the transfer can only be called by the contract owner \",\"params\":{\"_newOwner\":\"new contract owner\"}},\"updateRegistry()\":{\"details\":\"updates to the new contract-registry\"}}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/ContractRegistryClient.sol\":\"ContractRegistryClient\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/ContractRegistryClient.sol\":{\"keccak256\":\"0x62326cfb7af114828ffac38df5f124723a34ca64d40e105adaa8c41324177550\",\"urls\":[\"bzz-raw://ab49318af700b545c7896fa31fbeea7d79c35d49a657cf40255be8d7ddd129e4\",\"dweb:/ipfs/QmexAejb3prnoCH3DA5FjSYZRLkykw7PnBNazoL86wYwsZ\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IContractRegistry.sol\":{\"keccak256\":\"0x548dcde2af85bea4ee580926d5755632ef6d7eebb7f5f9875b820ca774365d63\",\"urls\":[\"bzz-raw://0a602f049625e8bce211eb5e55694b2882a26714926f79e328f844901c84d775\",\"dweb:/ipfs/QmUE8LDiyVBiqR1Am9iT6FyrwEsfiVs5Kg1PYNBYeRpKHQ\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/Owned.sol\":{\"keccak256\":\"0x66fcb1ed45798b9f4d9f57f34c7d46b598db576ac868b6e308225cb3615f2931\",\"urls\":[\"bzz-raw://e4b2fa7cd8db47b7c62a8caa2cf6fd886b480c1d12bda67b627c2dc351cb1e2b\",\"dweb:/ipfs/QmXt3Fwwjg2ZayQJH6M3YfZXxh3qQzFJtCjNxQMdBrPNrH\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/Utils.sol\":{\"keccak256\":\"0x129c13c988cc49e769159cb47ab533f72daf169a85ced101dddf8b1f7c44ac23\",\"urls\":[\"bzz-raw://955d900ae9d12219e4e95a2ac146c21a6cfd800646d0213a81e22afd6eab8195\",\"dweb:/ipfs/QmRe2nge1iJUsvwRrVSvw8thBFyYKZMeCLDhafxx8zEebC\"]}},\"version\":1}", + "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IContractRegistry\",\"name\":\"_registry\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_prevOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"OwnerUpdate\",\"type\":\"event\"},{\"constant\":false,\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"newOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"onlyOwnerCanUpdateRegistry\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"prevRegistry\",\"outputs\":[{\"internalType\":\"contract IContractRegistry\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"registry\",\"outputs\":[{\"internalType\":\"contract IContractRegistry\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"restoreRegistry\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_onlyOwnerCanUpdateRegistry\",\"type\":\"bool\"}],\"name\":\"restrictRegistryUpdate\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"updateRegistry\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Base contract for ContractRegistry clients\",\"methods\":{\"acceptOwnership()\":{\"details\":\"used by a new owner to accept an ownership transfer\"},\"constructor\":{\"details\":\"initializes a new ContractRegistryClient instance \",\"params\":{\"_registry\":\"address of a contract-registry contract\"}},\"restoreRegistry()\":{\"details\":\"restores the previous contract-registry\"},\"restrictRegistryUpdate(bool)\":{\"details\":\"restricts the permission to update the contract-registry \",\"params\":{\"_onlyOwnerCanUpdateRegistry\":\"indicates whether or not permission is restricted to owner only\"}},\"transferOwnership(address)\":{\"details\":\"allows transferring the contract ownership the new owner still needs to accept the transfer can only be called by the contract owner \",\"params\":{\"_newOwner\":\"new contract owner\"}},\"updateRegistry()\":{\"details\":\"updates to the new contract-registry\"}}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/ContractRegistryClient.sol\":\"ContractRegistryClient\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/ContractRegistryClient.sol\":{\"keccak256\":\"0x62326cfb7af114828ffac38df5f124723a34ca64d40e105adaa8c41324177550\",\"urls\":[\"bzz-raw://ab49318af700b545c7896fa31fbeea7d79c35d49a657cf40255be8d7ddd129e4\",\"dweb:/ipfs/QmexAejb3prnoCH3DA5FjSYZRLkykw7PnBNazoL86wYwsZ\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IContractRegistry.sol\":{\"keccak256\":\"0x548dcde2af85bea4ee580926d5755632ef6d7eebb7f5f9875b820ca774365d63\",\"urls\":[\"bzz-raw://0a602f049625e8bce211eb5e55694b2882a26714926f79e328f844901c84d775\",\"dweb:/ipfs/QmUE8LDiyVBiqR1Am9iT6FyrwEsfiVs5Kg1PYNBYeRpKHQ\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/Owned.sol\":{\"keccak256\":\"0x66fcb1ed45798b9f4d9f57f34c7d46b598db576ac868b6e308225cb3615f2931\",\"urls\":[\"bzz-raw://e4b2fa7cd8db47b7c62a8caa2cf6fd886b480c1d12bda67b627c2dc351cb1e2b\",\"dweb:/ipfs/QmXt3Fwwjg2ZayQJH6M3YfZXxh3qQzFJtCjNxQMdBrPNrH\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/Utils.sol\":{\"keccak256\":\"0x129c13c988cc49e769159cb47ab533f72daf169a85ced101dddf8b1f7c44ac23\",\"urls\":[\"bzz-raw://955d900ae9d12219e4e95a2ac146c21a6cfd800646d0213a81e22afd6eab8195\",\"dweb:/ipfs/QmRe2nge1iJUsvwRrVSvw8thBFyYKZMeCLDhafxx8zEebC\"]}},\"version\":1}", "bytecode": "0x", "deployedBytecode": "0x", "sourceMap": "", "deployedSourceMap": "", "source": "pragma solidity 0.5.16;\r\n\r\nimport \"./openzeppelin/Utils.sol\";\r\nimport \"./openzeppelin/Owned.sol\";\r\nimport \"./interfaces/IContractRegistry.sol\";\r\n\r\n/**\r\n * @dev Base contract for ContractRegistry clients\r\n*/\r\ncontract ContractRegistryClient is Owned, Utils {\r\n bytes32 internal constant CONTRACT_REGISTRY = \"ContractRegistry\";\r\n bytes32 internal constant SOVRYNSWAP_NETWORK = \"SovrynSwapNetwork\";\r\n bytes32 internal constant SOVRYNSWAP_FORMULA = \"SovrynSwapFormula\";\r\n bytes32 internal constant CONVERTER_FACTORY = \"ConverterFactory\";\r\n bytes32 internal constant CONVERSION_PATH_FINDER = \"ConversionPathFinder\";\r\n bytes32 internal constant CONVERTER_UPGRADER = \"SovrynSwapConverterUpgrader\";\r\n bytes32 internal constant CONVERTER_REGISTRY = \"SovrynSwapConverterRegistry\";\r\n bytes32 internal constant CONVERTER_REGISTRY_DATA = \"SovrynSwapConverterRegistryData\";\r\n bytes32 internal constant BNT_TOKEN = \"BNTToken\";\r\n bytes32 internal constant SOVRYNSWAP_X = \"SovrynSwapX\";\r\n bytes32 internal constant SOVRYNSWAP_X_UPGRADER = \"SovrynSwapXUpgrader\";\r\n bytes32 internal constant CHAINLINK_ORACLE_WHITELIST = \"ChainlinkOracleWhitelist\";\r\n\r\n IContractRegistry public registry; // address of the current contract-registry\r\n IContractRegistry public prevRegistry; // address of the previous contract-registry\r\n bool public onlyOwnerCanUpdateRegistry; // only an owner can update the contract-registry\r\n\r\n /**\r\n * @dev verifies that the caller is mapped to the given contract name\r\n *\r\n * @param _contractName contract name\r\n */\r\n modifier only(bytes32 _contractName) {\r\n _only(_contractName);\r\n _;\r\n }\r\n\r\n // error message binary size optimization\r\n function _only(bytes32 _contractName) internal view {\r\n require(msg.sender == addressOf(_contractName), \"ERR_ACCESS_DENIED\");\r\n }\r\n\r\n /**\r\n * @dev initializes a new ContractRegistryClient instance\r\n *\r\n * @param _registry address of a contract-registry contract\r\n */\r\n constructor(IContractRegistry _registry) internal validAddress(address(_registry)) {\r\n registry = IContractRegistry(_registry);\r\n prevRegistry = IContractRegistry(_registry);\r\n }\r\n\r\n /**\r\n * @dev updates to the new contract-registry\r\n */\r\n function updateRegistry() public {\r\n // verify that this function is permitted\r\n require(msg.sender == owner || !onlyOwnerCanUpdateRegistry, \"ERR_ACCESS_DENIED\");\r\n\r\n // get the new contract-registry\r\n IContractRegistry newRegistry = IContractRegistry(addressOf(CONTRACT_REGISTRY));\r\n\r\n // verify that the new contract-registry is different and not zero\r\n require(address(newRegistry) != address(registry) && address(newRegistry) != address(0), \"ERR_INVALID_REGISTRY\");\r\n\r\n // verify that the new contract-registry is pointing to a non-zero contract-registry\r\n require(newRegistry.addressOf(CONTRACT_REGISTRY) != address(0), \"ERR_INVALID_REGISTRY\");\r\n\r\n // save a backup of the current contract-registry before replacing it\r\n prevRegistry = registry;\r\n\r\n // replace the current contract-registry with the new contract-registry\r\n registry = newRegistry;\r\n }\r\n\r\n /**\r\n * @dev restores the previous contract-registry\r\n */\r\n function restoreRegistry() public ownerOnly {\r\n // restore the previous contract-registry\r\n registry = prevRegistry;\r\n }\r\n\r\n /**\r\n * @dev restricts the permission to update the contract-registry\r\n *\r\n * @param _onlyOwnerCanUpdateRegistry indicates whether or not permission is restricted to owner only\r\n */\r\n function restrictRegistryUpdate(bool _onlyOwnerCanUpdateRegistry) public ownerOnly {\r\n // change the permission to update the contract-registry\r\n onlyOwnerCanUpdateRegistry = _onlyOwnerCanUpdateRegistry;\r\n }\r\n\r\n /**\r\n * @dev returns the address associated with the given contract name\r\n *\r\n * @param _contractName contract name\r\n *\r\n * @return contract address\r\n */\r\n function addressOf(bytes32 _contractName) internal view returns (address) {\r\n return registry.addressOf(_contractName);\r\n }\r\n}\r\n", - "sourcePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/ContractRegistryClient.sol", + "sourcePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/ContractRegistryClient.sol", "ast": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/ContractRegistryClient.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/ContractRegistryClient.sol", "exportedSymbols": { "ContractRegistryClient": [ 197 @@ -193,34 +193,34 @@ "src": "0:23:0" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/Utils.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/Utils.sol", "file": "./openzeppelin/Utils.sol", "id": 2, "nodeType": "ImportDirective", "scope": 198, - "sourceUnit": 2928, + "sourceUnit": 3170, "src": "27:34:0", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/Owned.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/Owned.sol", "file": "./openzeppelin/Owned.sol", "id": 3, "nodeType": "ImportDirective", "scope": 198, - "sourceUnit": 2714, + "sourceUnit": 2987, "src": "63:34:0", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IContractRegistry.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IContractRegistry.sol", "file": "./interfaces/IContractRegistry.sol", "id": 4, "nodeType": "ImportDirective", "scope": 198, - "sourceUnit": 1609, + "sourceUnit": 1523, "src": "99:44:0", "symbolAliases": [], "unitAlias": "" @@ -234,10 +234,10 @@ "id": 5, "name": "Owned", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2713, + "referencedDeclaration": 2986, "src": "244:5:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Owned_$2713", + "typeIdentifier": "t_contract$_Owned_$2986", "typeString": "contract Owned" } }, @@ -252,10 +252,10 @@ "id": 7, "name": "Utils", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2927, + "referencedDeclaration": 3169, "src": "251:5:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Utils_$2927", + "typeIdentifier": "t_contract$_Utils_$3169", "typeString": "contract Utils" } }, @@ -265,8 +265,8 @@ } ], "contractDependencies": [ - 2713, - 2927 + 2986, + 3169 ], "contractKind": "contract", "documentation": "@dev Base contract for ContractRegistry clients", @@ -274,8 +274,8 @@ "id": 197, "linearizedBaseContracts": [ 197, - 2927, - 2713 + 3169, + 2986 ], "name": "ContractRegistryClient", "nodeType": "ContractDefinition", @@ -806,7 +806,7 @@ "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" }, "typeName": { @@ -814,10 +814,10 @@ "id": 45, "name": "IContractRegistry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1608, + "referencedDeclaration": 1522, "src": "1174:17:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } }, @@ -834,7 +834,7 @@ "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" }, "typeName": { @@ -842,10 +842,10 @@ "id": 47, "name": "IContractRegistry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1608, + "referencedDeclaration": 1522, "src": "1263:17:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } }, @@ -1014,7 +1014,7 @@ "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2942, + "referencedDeclaration": 3184, "src": "1813:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", @@ -1126,10 +1126,10 @@ "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 2945, - 2946 + 3187, + 3188 ], - "referencedDeclaration": 2946, + "referencedDeclaration": 3188, "src": "1805:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", @@ -1231,7 +1231,7 @@ "referencedDeclaration": 46, "src": "2142:8:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } }, @@ -1249,7 +1249,7 @@ "referencedDeclaration": 78, "src": "2171:9:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } } @@ -1257,7 +1257,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } ], @@ -1265,10 +1265,10 @@ "name": "IContractRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1608, + "referencedDeclaration": 1522, "src": "2153:17:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IContractRegistry_$1608_$", + "typeIdentifier": "t_type$_t_contract$_IContractRegistry_$1522_$", "typeString": "type(contract IContractRegistry)" } }, @@ -1282,13 +1282,13 @@ "nodeType": "FunctionCall", "src": "2153:28:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } }, "src": "2142:39:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } }, @@ -1313,7 +1313,7 @@ "referencedDeclaration": 48, "src": "2192:12:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } }, @@ -1331,7 +1331,7 @@ "referencedDeclaration": 78, "src": "2225:9:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } } @@ -1339,7 +1339,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } ], @@ -1347,10 +1347,10 @@ "name": "IContractRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1608, + "referencedDeclaration": 1522, "src": "2207:17:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IContractRegistry_$1608_$", + "typeIdentifier": "t_type$_t_contract$_IContractRegistry_$1522_$", "typeString": "type(contract IContractRegistry)" } }, @@ -1364,13 +1364,13 @@ "nodeType": "FunctionCall", "src": "2207:28:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } }, "src": "2192:43:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } }, @@ -1399,7 +1399,7 @@ "referencedDeclaration": 78, "src": "2119:9:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } } @@ -1407,7 +1407,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } ], @@ -1446,7 +1446,7 @@ "name": "validAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2886, + "referencedDeclaration": 3128, "src": "2098:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", @@ -1473,7 +1473,7 @@ "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" }, "typeName": { @@ -1481,10 +1481,10 @@ "id": 77, "name": "IContractRegistry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1608, + "referencedDeclaration": 1522, "src": "2060:17:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } }, @@ -1546,7 +1546,7 @@ "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2942, + "referencedDeclaration": 3184, "src": "2423:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", @@ -1575,7 +1575,7 @@ "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2630, + "referencedDeclaration": 2903, "src": "2437:5:0", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1659,10 +1659,10 @@ "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 2945, - 2946 + 3187, + 3188 ], - "referencedDeclaration": 2946, + "referencedDeclaration": 3188, "src": "2415:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", @@ -1702,7 +1702,7 @@ "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" }, "typeName": { @@ -1710,10 +1710,10 @@ "id": 113, "name": "IContractRegistry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1608, + "referencedDeclaration": 1522, "src": "2550:17:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } }, @@ -1786,10 +1786,10 @@ "name": "IContractRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1608, + "referencedDeclaration": 1522, "src": "2582:17:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IContractRegistry_$1608_$", + "typeIdentifier": "t_type$_t_contract$_IContractRegistry_$1522_$", "typeString": "type(contract IContractRegistry)" } }, @@ -1803,7 +1803,7 @@ "nodeType": "FunctionCall", "src": "2582:47:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } }, @@ -1848,7 +1848,7 @@ "referencedDeclaration": 114, "src": "2734:11:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } } @@ -1856,7 +1856,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } ], @@ -1901,7 +1901,7 @@ "referencedDeclaration": 46, "src": "2758:8:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } } @@ -1909,7 +1909,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } ], @@ -1971,7 +1971,7 @@ "referencedDeclaration": 114, "src": "2779:11:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } } @@ -1979,7 +1979,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } ], @@ -2114,10 +2114,10 @@ "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 2945, - 2946 + 3187, + 3188 ], - "referencedDeclaration": 2946, + "referencedDeclaration": 3188, "src": "2718:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", @@ -2190,7 +2190,7 @@ "referencedDeclaration": 114, "src": "2945:11:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } }, @@ -2201,7 +2201,7 @@ "lValueRequested": false, "memberName": "addressOf", "nodeType": "MemberAccess", - "referencedDeclaration": 1600, + "referencedDeclaration": 1514, "src": "2945:21:0", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_address_$", @@ -2320,10 +2320,10 @@ "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 2945, - 2946 + 3187, + 3188 ], - "referencedDeclaration": 2946, + "referencedDeclaration": 3188, "src": "2937:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", @@ -2365,7 +2365,7 @@ "referencedDeclaration": 48, "src": "3116:12:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } }, @@ -2380,13 +2380,13 @@ "referencedDeclaration": 46, "src": "3131:8:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } }, "src": "3116:23:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } }, @@ -2411,7 +2411,7 @@ "referencedDeclaration": 46, "src": "3233:8:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } }, @@ -2426,13 +2426,13 @@ "referencedDeclaration": 114, "src": "3244:11:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } }, "src": "3233:22:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } }, @@ -2490,7 +2490,7 @@ "referencedDeclaration": 46, "src": "3448:8:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } }, @@ -2505,13 +2505,13 @@ "referencedDeclaration": 48, "src": "3459:12:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } }, "src": "3448:23:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } }, @@ -2535,7 +2535,7 @@ "name": "ownerOnly", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2654, + "referencedDeclaration": 2927, "src": "3376:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", @@ -2634,7 +2634,7 @@ "name": "ownerOnly", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2654, + "referencedDeclaration": 2927, "src": "3766:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", @@ -2732,7 +2732,7 @@ "referencedDeclaration": 46, "src": "4207:8:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", + "typeIdentifier": "t_contract$_IContractRegistry_$1522", "typeString": "contract IContractRegistry" } }, @@ -2743,7 +2743,7 @@ "lValueRequested": false, "memberName": "addressOf", "nodeType": "MemberAccess", - "referencedDeclaration": 1600, + "referencedDeclaration": 1514, "src": "4207:18:0", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_address_$", @@ -2859,2689 +2859,2878 @@ "src": "0:4253:0" }, "legacyAST": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/ContractRegistryClient.sol", - "exportedSymbols": { - "ContractRegistryClient": [ - 197 - ] + "attributes": { + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/ContractRegistryClient.sol", + "exportedSymbols": { + "ContractRegistryClient": [ + 197 + ] + } }, - "id": 198, - "nodeType": "SourceUnit", - "nodes": [ + "children": [ { + "attributes": { + "literals": [ + "solidity", + "0.5", + ".16" + ] + }, "id": 1, - "literals": [ - "solidity", - "0.5", - ".16" - ], - "nodeType": "PragmaDirective", + "name": "PragmaDirective", "src": "0:23:0" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/Utils.sol", - "file": "./openzeppelin/Utils.sol", + "attributes": { + "SourceUnit": 3170, + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/Utils.sol", + "file": "./openzeppelin/Utils.sol", + "scope": 198, + "symbolAliases": [ + null + ], + "unitAlias": "" + }, "id": 2, - "nodeType": "ImportDirective", - "scope": 198, - "sourceUnit": 2928, - "src": "27:34:0", - "symbolAliases": [], - "unitAlias": "" + "name": "ImportDirective", + "src": "27:34:0" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/Owned.sol", - "file": "./openzeppelin/Owned.sol", + "attributes": { + "SourceUnit": 2987, + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/Owned.sol", + "file": "./openzeppelin/Owned.sol", + "scope": 198, + "symbolAliases": [ + null + ], + "unitAlias": "" + }, "id": 3, - "nodeType": "ImportDirective", - "scope": 198, - "sourceUnit": 2714, - "src": "63:34:0", - "symbolAliases": [], - "unitAlias": "" + "name": "ImportDirective", + "src": "63:34:0" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IContractRegistry.sol", - "file": "./interfaces/IContractRegistry.sol", + "attributes": { + "SourceUnit": 1523, + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IContractRegistry.sol", + "file": "./interfaces/IContractRegistry.sol", + "scope": 198, + "symbolAliases": [ + null + ], + "unitAlias": "" + }, "id": 4, - "nodeType": "ImportDirective", - "scope": 198, - "sourceUnit": 1609, - "src": "99:44:0", - "symbolAliases": [], - "unitAlias": "" + "name": "ImportDirective", + "src": "99:44:0" }, { - "baseContracts": [ + "attributes": { + "contractDependencies": [ + 2986, + 3169 + ], + "contractKind": "contract", + "documentation": "@dev Base contract for ContractRegistry clients", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 197, + 3169, + 2986 + ], + "name": "ContractRegistryClient", + "scope": 198 + }, + "children": [ { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 5, - "name": "Owned", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2713, - "src": "244:5:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Owned_$2713", - "typeString": "contract Owned" - } + "attributes": { + "arguments": null }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "Owned", + "referencedDeclaration": 2986, + "type": "contract Owned" + }, + "id": 5, + "name": "UserDefinedTypeName", + "src": "244:5:0" + } + ], "id": 6, - "nodeType": "InheritanceSpecifier", + "name": "InheritanceSpecifier", "src": "244:5:0" }, { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 7, - "name": "Utils", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2927, - "src": "251:5:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Utils_$2927", - "typeString": "contract Utils" - } + "attributes": { + "arguments": null }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "Utils", + "referencedDeclaration": 3169, + "type": "contract Utils" + }, + "id": 7, + "name": "UserDefinedTypeName", + "src": "251:5:0" + } + ], "id": 8, - "nodeType": "InheritanceSpecifier", + "name": "InheritanceSpecifier", "src": "251:5:0" - } - ], - "contractDependencies": [ - 2713, - 2927 - ], - "contractKind": "contract", - "documentation": "@dev Base contract for ContractRegistry clients", - "fullyImplemented": true, - "id": 197, - "linearizedBaseContracts": [ - 197, - 2927, - 2713 - ], - "name": "ContractRegistryClient", - "nodeType": "ContractDefinition", - "nodes": [ + }, { - "constant": true, - "id": 11, - "name": "CONTRACT_REGISTRY", - "nodeType": "VariableDeclaration", - "scope": 197, - "src": "264:64:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 9, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "264:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": { - "argumentTypes": null, - "hexValue": "436f6e74726163745265676973747279", - "id": 10, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "310:18:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_014cc675742635098f3843c56f86f2875ab1c0e8ccd166d07159a5036b798b15", - "typeString": "literal_string \"ContractRegistry\"" + "attributes": { + "constant": true, + "name": "CONTRACT_REGISTRY", + "scope": 197, + "stateVariable": true, + "storageLocation": "default", + "type": "bytes32", + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 9, + "name": "ElementaryTypeName", + "src": "264:7:0" }, - "value": "ContractRegistry" - }, - "visibility": "internal" + { + "attributes": { + "argumentTypes": null, + "hexvalue": "436f6e74726163745265676973747279", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"ContractRegistry\"", + "value": "ContractRegistry" + }, + "id": 10, + "name": "Literal", + "src": "310:18:0" + } + ], + "id": 11, + "name": "VariableDeclaration", + "src": "264:64:0" }, { - "constant": true, + "attributes": { + "constant": true, + "name": "SOVRYNSWAP_NETWORK", + "scope": 197, + "stateVariable": true, + "storageLocation": "default", + "type": "bytes32", + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 12, + "name": "ElementaryTypeName", + "src": "335:7:0" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "536f7672796e537761704e6574776f726b", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"SovrynSwapNetwork\"", + "value": "SovrynSwapNetwork" + }, + "id": 13, + "name": "Literal", + "src": "382:19:0" + } + ], "id": 14, - "name": "SOVRYNSWAP_NETWORK", - "nodeType": "VariableDeclaration", - "scope": 197, - "src": "335:66:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 12, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "335:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" + "name": "VariableDeclaration", + "src": "335:66:0" + }, + { + "attributes": { + "constant": true, + "name": "SOVRYNSWAP_FORMULA", + "scope": 197, + "stateVariable": true, + "storageLocation": "default", + "type": "bytes32", + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 15, + "name": "ElementaryTypeName", + "src": "408:7:0" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "536f7672796e53776170466f726d756c61", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"SovrynSwapFormula\"", + "value": "SovrynSwapFormula" + }, + "id": 16, + "name": "Literal", + "src": "455:19:0" } - }, - "value": { - "argumentTypes": null, - "hexValue": "536f7672796e537761704e6574776f726b", - "id": 13, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "382:19:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4ff705ab0486892b54b4d7575a1b01ac0f081cbcc8efcb5919c2f54e2bbfb03c", - "typeString": "literal_string \"SovrynSwapNetwork\"" + ], + "id": 17, + "name": "VariableDeclaration", + "src": "408:66:0" + }, + { + "attributes": { + "constant": true, + "name": "CONVERTER_FACTORY", + "scope": 197, + "stateVariable": true, + "storageLocation": "default", + "type": "bytes32", + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 18, + "name": "ElementaryTypeName", + "src": "481:7:0" }, - "value": "SovrynSwapNetwork" - }, - "visibility": "internal" + { + "attributes": { + "argumentTypes": null, + "hexvalue": "436f6e766572746572466163746f7279", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"ConverterFactory\"", + "value": "ConverterFactory" + }, + "id": 19, + "name": "Literal", + "src": "527:18:0" + } + ], + "id": 20, + "name": "VariableDeclaration", + "src": "481:64:0" }, { - "constant": true, - "id": 17, - "name": "SOVRYNSWAP_FORMULA", - "nodeType": "VariableDeclaration", - "scope": 197, - "src": "408:66:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 15, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "408:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" + "attributes": { + "constant": true, + "name": "CONVERSION_PATH_FINDER", + "scope": 197, + "stateVariable": true, + "storageLocation": "default", + "type": "bytes32", + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 21, + "name": "ElementaryTypeName", + "src": "552:7:0" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "436f6e76657273696f6e5061746846696e646572", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"ConversionPathFinder\"", + "value": "ConversionPathFinder" + }, + "id": 22, + "name": "Literal", + "src": "603:22:0" } - }, - "value": { - "argumentTypes": null, - "hexValue": "536f7672796e53776170466f726d756c61", - "id": 16, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "455:19:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b7dbce58728d586c7cc6290b77cccdd70aca0aa7d0b1ece5974d59bfab779e66", - "typeString": "literal_string \"SovrynSwapFormula\"" + ], + "id": 23, + "name": "VariableDeclaration", + "src": "552:73:0" + }, + { + "attributes": { + "constant": true, + "name": "CONVERTER_UPGRADER", + "scope": 197, + "stateVariable": true, + "storageLocation": "default", + "type": "bytes32", + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 24, + "name": "ElementaryTypeName", + "src": "632:7:0" }, - "value": "SovrynSwapFormula" - }, - "visibility": "internal" + { + "attributes": { + "argumentTypes": null, + "hexvalue": "536f7672796e53776170436f6e7665727465725570677261646572", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"SovrynSwapConverterUpgrader\"", + "value": "SovrynSwapConverterUpgrader" + }, + "id": 25, + "name": "Literal", + "src": "679:29:0" + } + ], + "id": 26, + "name": "VariableDeclaration", + "src": "632:76:0" }, { - "constant": true, - "id": 20, - "name": "CONVERTER_FACTORY", - "nodeType": "VariableDeclaration", - "scope": 197, - "src": "481:64:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 18, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "481:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": { - "argumentTypes": null, - "hexValue": "436f6e766572746572466163746f7279", - "id": 19, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "527:18:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_01f892de917bf09cf6fd04f57ff78c6ca006205a8809769abbeb39a039d3d768", - "typeString": "literal_string \"ConverterFactory\"" + "attributes": { + "constant": true, + "name": "CONVERTER_REGISTRY", + "scope": 197, + "stateVariable": true, + "storageLocation": "default", + "type": "bytes32", + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 27, + "name": "ElementaryTypeName", + "src": "715:7:0" }, - "value": "ConverterFactory" - }, - "visibility": "internal" + { + "attributes": { + "argumentTypes": null, + "hexvalue": "536f7672796e53776170436f6e7665727465725265676973747279", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"SovrynSwapConverterRegistry\"", + "value": "SovrynSwapConverterRegistry" + }, + "id": 28, + "name": "Literal", + "src": "762:29:0" + } + ], + "id": 29, + "name": "VariableDeclaration", + "src": "715:76:0" }, { - "constant": true, - "id": 23, - "name": "CONVERSION_PATH_FINDER", - "nodeType": "VariableDeclaration", - "scope": 197, - "src": "552:73:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 21, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "552:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": { - "argumentTypes": null, - "hexValue": "436f6e76657273696f6e5061746846696e646572", - "id": 22, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "603:22:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_d55bb14cf5551b26acee2cc099a4125a85ce113cb3306082cd15a1b4785376f1", - "typeString": "literal_string \"ConversionPathFinder\"" + "attributes": { + "constant": true, + "name": "CONVERTER_REGISTRY_DATA", + "scope": 197, + "stateVariable": true, + "storageLocation": "default", + "type": "bytes32", + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 30, + "name": "ElementaryTypeName", + "src": "798:7:0" }, - "value": "ConversionPathFinder" - }, - "visibility": "internal" + { + "attributes": { + "argumentTypes": null, + "hexvalue": "536f7672796e53776170436f6e766572746572526567697374727944617461", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"SovrynSwapConverterRegistryData\"", + "value": "SovrynSwapConverterRegistryData" + }, + "id": 31, + "name": "Literal", + "src": "850:33:0" + } + ], + "id": 32, + "name": "VariableDeclaration", + "src": "798:85:0" }, { - "constant": true, - "id": 26, - "name": "CONVERTER_UPGRADER", - "nodeType": "VariableDeclaration", - "scope": 197, - "src": "632:76:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 24, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "632:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" + "attributes": { + "constant": true, + "name": "BNT_TOKEN", + "scope": 197, + "stateVariable": true, + "storageLocation": "default", + "type": "bytes32", + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 33, + "name": "ElementaryTypeName", + "src": "890:7:0" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "424e54546f6b656e", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"BNTToken\"", + "value": "BNTToken" + }, + "id": 34, + "name": "Literal", + "src": "928:10:0" } - }, - "value": { - "argumentTypes": null, - "hexValue": "536f7672796e53776170436f6e7665727465725570677261646572", - "id": 25, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "679:29:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_52f7fb877417cc5310ba2c15764c676b04b3fe649e42fa69fec5ec034d33d844", - "typeString": "literal_string \"SovrynSwapConverterUpgrader\"" + ], + "id": 35, + "name": "VariableDeclaration", + "src": "890:48:0" + }, + { + "attributes": { + "constant": true, + "name": "SOVRYNSWAP_X", + "scope": 197, + "stateVariable": true, + "storageLocation": "default", + "type": "bytes32", + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 36, + "name": "ElementaryTypeName", + "src": "945:7:0" }, - "value": "SovrynSwapConverterUpgrader" - }, - "visibility": "internal" + { + "attributes": { + "argumentTypes": null, + "hexvalue": "536f7672796e5377617058", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"SovrynSwapX\"", + "value": "SovrynSwapX" + }, + "id": 37, + "name": "Literal", + "src": "986:13:0" + } + ], + "id": 38, + "name": "VariableDeclaration", + "src": "945:54:0" }, { - "constant": true, - "id": 29, - "name": "CONVERTER_REGISTRY", - "nodeType": "VariableDeclaration", - "scope": 197, - "src": "715:76:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 27, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "715:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" + "attributes": { + "constant": true, + "name": "SOVRYNSWAP_X_UPGRADER", + "scope": 197, + "stateVariable": true, + "storageLocation": "default", + "type": "bytes32", + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 39, + "name": "ElementaryTypeName", + "src": "1006:7:0" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "536f7672796e53776170585570677261646572", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"SovrynSwapXUpgrader\"", + "value": "SovrynSwapXUpgrader" + }, + "id": 40, + "name": "Literal", + "src": "1056:21:0" } - }, - "value": { - "argumentTypes": null, - "hexValue": "536f7672796e53776170436f6e7665727465725265676973747279", - "id": 28, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "762:29:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_64aa0f5440b142a734c07dc74562a5d23b8bb6666acc05ce9d3816edc6eae8ed", - "typeString": "literal_string \"SovrynSwapConverterRegistry\"" + ], + "id": 41, + "name": "VariableDeclaration", + "src": "1006:71:0" + }, + { + "attributes": { + "constant": true, + "name": "CHAINLINK_ORACLE_WHITELIST", + "scope": 197, + "stateVariable": true, + "storageLocation": "default", + "type": "bytes32", + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 42, + "name": "ElementaryTypeName", + "src": "1084:7:0" }, - "value": "SovrynSwapConverterRegistry" - }, - "visibility": "internal" + { + "attributes": { + "argumentTypes": null, + "hexvalue": "436861696e6c696e6b4f7261636c6557686974656c697374", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"ChainlinkOracleWhitelist\"", + "value": "ChainlinkOracleWhitelist" + }, + "id": 43, + "name": "Literal", + "src": "1139:26:0" + } + ], + "id": 44, + "name": "VariableDeclaration", + "src": "1084:81:0" }, { - "constant": true, - "id": 32, - "name": "CONVERTER_REGISTRY_DATA", - "nodeType": "VariableDeclaration", - "scope": 197, - "src": "798:85:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 30, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "798:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" + "attributes": { + "constant": false, + "name": "registry", + "scope": 197, + "stateVariable": true, + "storageLocation": "default", + "type": "contract IContractRegistry", + "value": null, + "visibility": "public" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IContractRegistry", + "referencedDeclaration": 1522, + "type": "contract IContractRegistry" + }, + "id": 45, + "name": "UserDefinedTypeName", + "src": "1174:17:0" } - }, - "value": { - "argumentTypes": null, - "hexValue": "536f7672796e53776170436f6e766572746572526567697374727944617461", - "id": 31, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "850:33:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a0b4a26eff28196fb34bd04432b43a40b907747b18544d5de2c6084c479ed477", - "typeString": "literal_string \"SovrynSwapConverterRegistryData\"" - }, - "value": "SovrynSwapConverterRegistryData" - }, - "visibility": "internal" + ], + "id": 46, + "name": "VariableDeclaration", + "src": "1174:33:0" }, { - "constant": true, - "id": 35, - "name": "BNT_TOKEN", - "nodeType": "VariableDeclaration", - "scope": 197, - "src": "890:48:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 33, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "890:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": { - "argumentTypes": null, - "hexValue": "424e54546f6b656e", - "id": 34, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "928:10:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4686149f7058d2454e334cfa4ea1a3482469c64fd3d4f50dfc69716086aee66f", - "typeString": "literal_string \"BNTToken\"" - }, - "value": "BNTToken" - }, - "visibility": "internal" - }, - { - "constant": true, - "id": 38, - "name": "SOVRYNSWAP_X", - "nodeType": "VariableDeclaration", - "scope": 197, - "src": "945:54:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 36, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "945:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" + "attributes": { + "constant": false, + "name": "prevRegistry", + "scope": 197, + "stateVariable": true, + "storageLocation": "default", + "type": "contract IContractRegistry", + "value": null, + "visibility": "public" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IContractRegistry", + "referencedDeclaration": 1522, + "type": "contract IContractRegistry" + }, + "id": 47, + "name": "UserDefinedTypeName", + "src": "1263:17:0" } - }, - "value": { - "argumentTypes": null, - "hexValue": "536f7672796e5377617058", - "id": 37, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "986:13:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5191283208d220bd6051723ef33ec466d027e8855d4591756b47f4821ff7fc0d", - "typeString": "literal_string \"SovrynSwapX\"" - }, - "value": "SovrynSwapX" - }, - "visibility": "internal" + ], + "id": 48, + "name": "VariableDeclaration", + "src": "1263:37:0" }, { - "constant": true, - "id": 41, - "name": "SOVRYNSWAP_X_UPGRADER", - "nodeType": "VariableDeclaration", - "scope": 197, - "src": "1006:71:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 39, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1006:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" + "attributes": { + "constant": false, + "name": "onlyOwnerCanUpdateRegistry", + "scope": 197, + "stateVariable": true, + "storageLocation": "default", + "type": "bool", + "value": null, + "visibility": "public" + }, + "children": [ + { + "attributes": { + "name": "bool", + "type": "bool" + }, + "id": 49, + "name": "ElementaryTypeName", + "src": "1353:4:0" } - }, - "value": { - "argumentTypes": null, - "hexValue": "536f7672796e53776170585570677261646572", - "id": 40, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1056:21:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_eb9a81e97f32a3d41499b3e148e6fa13c83a16ad5d4d69eb8e6315f83d8cc15d", - "typeString": "literal_string \"SovrynSwapXUpgrader\"" - }, - "value": "SovrynSwapXUpgrader" - }, - "visibility": "internal" + ], + "id": 50, + "name": "VariableDeclaration", + "src": "1353:38:0" }, { - "constant": true, - "id": 44, - "name": "CHAINLINK_ORACLE_WHITELIST", - "nodeType": "VariableDeclaration", - "scope": 197, - "src": "1084:81:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 42, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1084:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } + "attributes": { + "documentation": "@dev verifies that the caller is mapped to the given contract name\n\n * @param _contractName contract name", + "name": "only", + "visibility": "internal" }, - "value": { - "argumentTypes": null, - "hexValue": "436861696e6c696e6b4f7261636c6557686974656c697374", - "id": 43, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1139:26:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_f1d302dc7d7d6451424d658039558f1ea7e3cbf7255a10240557f430d300feb3", - "typeString": "literal_string \"ChainlinkOracleWhitelist\"" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_contractName", + "scope": 60, + "stateVariable": false, + "storageLocation": "default", + "type": "bytes32", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 51, + "name": "ElementaryTypeName", + "src": "1613:7:0" + } + ], + "id": 52, + "name": "VariableDeclaration", + "src": "1613:21:0" + } + ], + "id": 53, + "name": "ParameterList", + "src": "1612:23:0" }, - "value": "ChainlinkOracleWhitelist" - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 46, - "name": "registry", - "nodeType": "VariableDeclaration", - "scope": 197, - "src": "1174:33:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - }, - "typeName": { - "contractScope": null, - "id": 45, - "name": "IContractRegistry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1608, - "src": "1174:17:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 76, + "type": "function (bytes32) view", + "value": "_only" + }, + "id": 54, + "name": "Identifier", + "src": "1647:5:0" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 52, + "type": "bytes32", + "value": "_contractName" + }, + "id": 55, + "name": "Identifier", + "src": "1653:13:0" + } + ], + "id": 56, + "name": "FunctionCall", + "src": "1647:20:0" + } + ], + "id": 57, + "name": "ExpressionStatement", + "src": "1647:20:0" + }, + { + "id": 58, + "name": "PlaceholderStatement", + "src": "1678:1:0" + } + ], + "id": 59, + "name": "Block", + "src": "1636:51:0" } - }, - "value": null, - "visibility": "public" + ], + "id": 60, + "name": "ModifierDefinition", + "src": "1599:88:0" }, { - "constant": false, - "id": 48, - "name": "prevRegistry", - "nodeType": "VariableDeclaration", - "scope": 197, - "src": "1263:37:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "_only", + "scope": 197, + "stateMutability": "view", + "superFunction": null, + "visibility": "internal" }, - "typeName": { - "contractScope": null, - "id": 47, - "name": "IContractRegistry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1608, - "src": "1263:17:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 50, - "name": "onlyOwnerCanUpdateRegistry", - "nodeType": "VariableDeclaration", - "scope": 197, - "src": "1353:38:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 49, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1353:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "public" - }, - { - "body": { - "id": 59, - "nodeType": "Block", - "src": "1636:51:0", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_contractName", + "scope": 76, + "stateVariable": false, + "storageLocation": "default", + "type": "bytes32", + "value": null, + "visibility": "internal" + }, + "children": [ { - "argumentTypes": null, - "id": 55, - "name": "_contractName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 52, - "src": "1653:13:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 61, + "name": "ElementaryTypeName", + "src": "1757:7:0" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 54, - "name": "_only", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 76, - "src": "1647:5:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$__$", - "typeString": "function (bytes32) view" - } - }, - "id": 56, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1647:20:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 57, - "nodeType": "ExpressionStatement", - "src": "1647:20:0" + "id": 62, + "name": "VariableDeclaration", + "src": "1757:21:0" + } + ], + "id": 63, + "name": "ParameterList", + "src": "1756:23:0" + }, + { + "attributes": { + "parameters": [ + null + ] }, - { - "id": 58, - "nodeType": "PlaceholderStatement", - "src": "1678:1:0" - } - ] - }, - "documentation": "@dev verifies that the caller is mapped to the given contract name\n\n * @param _contractName contract name", - "id": 60, - "name": "only", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 53, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 52, - "name": "_contractName", - "nodeType": "VariableDeclaration", - "scope": 60, - "src": "1613:21:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 51, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1613:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1612:23:0" - }, - "src": "1599:88:0", - "visibility": "internal" - }, - { - "body": { - "id": 75, - "nodeType": "Block", - "src": "1794:87:0", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ + "children": [], + "id": 64, + "name": "ParameterList", + "src": "1794:0:0" + }, + { + "children": [ + { + "children": [ { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 71, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { + "attributes": { "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 66, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2942, - "src": "1813:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 67, "isConstant": false, "isLValue": false, "isPure": false, + "isStructConstructorCall": false, "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1813:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_f5894269650d3e1726ed81a4f48c5b62c7dd6fa025b89d639952a7012960d666", + "typeString": "literal_string \"ERR_ACCESS_DENIED\"" + } + ], + "overloadedDeclarations": [ + 3187, + 3188 + ], + "referencedDeclaration": 3188, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 65, + "name": "Identifier", + "src": "1805:7:0" + }, + { + "attributes": { "argumentTypes": null, - "id": 69, - "name": "_contractName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 62, - "src": "1837:13:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "==", + "type": "bool" + }, + "children": [ { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3184, + "type": "msg", + "value": "msg" + }, + "id": 66, + "name": "Identifier", + "src": "1813:3:0" + } + ], + "id": 67, + "name": "MemberAccess", + "src": "1813:10:0" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "address", + "type_conversion": false + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 196, + "type": "function (bytes32) view returns (address)", + "value": "addressOf" + }, + "id": 68, + "name": "Identifier", + "src": "1827:9:0" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 62, + "type": "bytes32", + "value": "_contractName" + }, + "id": 69, + "name": "Identifier", + "src": "1837:13:0" + } + ], + "id": 70, + "name": "FunctionCall", + "src": "1827:24:0" } ], - "id": 68, - "name": "addressOf", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 196, - "src": "1827:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_address_$", - "typeString": "function (bytes32) view returns (address)" - } + "id": 71, + "name": "BinaryOperation", + "src": "1813:38:0" }, - "id": 70, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1827:24:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + { + "attributes": { + "argumentTypes": null, + "hexvalue": "4552525f4143434553535f44454e494544", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"ERR_ACCESS_DENIED\"", + "value": "ERR_ACCESS_DENIED" + }, + "id": 72, + "name": "Literal", + "src": "1853:19:0" } - }, - "src": "1813:38:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, + ], + "id": 73, + "name": "FunctionCall", + "src": "1805:68:0" + } + ], + "id": 74, + "name": "ExpressionStatement", + "src": "1805:68:0" + } + ], + "id": 75, + "name": "Block", + "src": "1794:87:0" + } + ], + "id": 76, + "name": "FunctionDefinition", + "src": "1742:139:0" + }, + { + "attributes": { + "documentation": "@dev initializes a new ContractRegistryClient instance\n\n * @param _registry address of a contract-registry contract", + "implemented": true, + "isConstructor": true, + "kind": "constructor", + "name": "", + "scope": 197, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "internal" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_registry", + "scope": 99, + "stateVariable": false, + "storageLocation": "default", + "type": "contract IContractRegistry", + "value": null, + "visibility": "internal" + }, + "children": [ { - "argumentTypes": null, - "hexValue": "4552525f4143434553535f44454e494544", - "id": 72, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1853:19:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_f5894269650d3e1726ed81a4f48c5b62c7dd6fa025b89d639952a7012960d666", - "typeString": "literal_string \"ERR_ACCESS_DENIED\"" + "attributes": { + "contractScope": null, + "name": "IContractRegistry", + "referencedDeclaration": 1522, + "type": "contract IContractRegistry" }, - "value": "ERR_ACCESS_DENIED" + "id": 77, + "name": "UserDefinedTypeName", + "src": "2060:17:0" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_f5894269650d3e1726ed81a4f48c5b62c7dd6fa025b89d639952a7012960d666", - "typeString": "literal_string \"ERR_ACCESS_DENIED\"" - } - ], - "id": 65, - "name": "require", - "nodeType": "Identifier", + "id": 78, + "name": "VariableDeclaration", + "src": "2060:27:0" + } + ], + "id": 79, + "name": "ParameterList", + "src": "2059:29:0" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 85, + "name": "ParameterList", + "src": "2131:0:0" + }, + { + "children": [ + { + "attributes": { + "argumentTypes": null, "overloadedDeclarations": [ - 2945, - 2946 + null ], - "referencedDeclaration": 2946, - "src": "1805:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } + "referencedDeclaration": 3128, + "type": "modifier (address)", + "value": "validAddress" }, - "id": 73, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1805:68:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 74, - "nodeType": "ExpressionStatement", - "src": "1805:68:0" - } - ] - }, - "documentation": null, - "id": 76, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_only", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 63, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 62, - "name": "_contractName", - "nodeType": "VariableDeclaration", - "scope": 76, - "src": "1757:21:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 61, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1757:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } + "id": 80, + "name": "Identifier", + "src": "2098:12:0" }, - "value": null, - "visibility": "internal" - } - ], - "src": "1756:23:0" - }, - "returnParameters": { - "id": 64, - "nodeType": "ParameterList", - "parameters": [], - "src": "1794:0:0" - }, - "scope": 197, - "src": "1742:139:0", - "stateMutability": "view", - "superFunction": null, - "visibility": "internal" - }, - { - "body": { - "id": 98, - "nodeType": "Block", - "src": "2131:112:0", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 90, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { + { + "attributes": { "argumentTypes": null, - "id": 86, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 46, - "src": "2142:8:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "address", + "type_conversion": true }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_IContractRegistry_$1522", + "typeString": "contract IContractRegistry" + } + ], + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "type": "type(address)", + "value": "address" + }, + "id": 81, + "name": "ElementaryTypeNameExpression", + "src": "2111:7:0" + }, + { + "attributes": { "argumentTypes": null, - "id": 88, - "name": "_registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], + "overloadedDeclarations": [ + null + ], "referencedDeclaration": 78, - "src": "2171:9:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } - } - ], - "expression": { - "argumentTypes": [ + "type": "contract IContractRegistry", + "value": "_registry" + }, + "id": 82, + "name": "Identifier", + "src": "2119:9:0" + } + ], + "id": 83, + "name": "FunctionCall", + "src": "2111:18:0" + } + ], + "id": 84, + "name": "ModifierInvocation", + "src": "2098:32:0" + }, + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "=", + "type": "contract IContractRegistry" + }, + "children": [ { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 46, + "type": "contract IContractRegistry", + "value": "registry" + }, + "id": 86, + "name": "Identifier", + "src": "2142:8:0" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "contract IContractRegistry", + "type_conversion": true + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_IContractRegistry_$1522", + "typeString": "contract IContractRegistry" + } + ], + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1522, + "type": "type(contract IContractRegistry)", + "value": "IContractRegistry" + }, + "id": 87, + "name": "Identifier", + "src": "2153:17:0" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 78, + "type": "contract IContractRegistry", + "value": "_registry" + }, + "id": 88, + "name": "Identifier", + "src": "2171:9:0" + } + ], + "id": 89, + "name": "FunctionCall", + "src": "2153:28:0" } ], - "id": 87, - "name": "IContractRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1608, - "src": "2153:17:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IContractRegistry_$1608_$", - "typeString": "type(contract IContractRegistry)" - } - }, - "id": 89, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2153:28:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" + "id": 90, + "name": "Assignment", + "src": "2142:39:0" } - }, - "src": "2142:39:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } + ], + "id": 91, + "name": "ExpressionStatement", + "src": "2142:39:0" }, - "id": 91, - "nodeType": "ExpressionStatement", - "src": "2142:39:0" - }, - { - "expression": { - "argumentTypes": null, - "id": 96, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 92, - "name": "prevRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 48, - "src": "2192:12:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { + { + "children": [ + { + "attributes": { "argumentTypes": null, - "id": 94, - "name": "_registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 78, - "src": "2225:9:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } - } - ], - "expression": { - "argumentTypes": [ + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "=", + "type": "contract IContractRegistry" + }, + "children": [ { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 48, + "type": "contract IContractRegistry", + "value": "prevRegistry" + }, + "id": 92, + "name": "Identifier", + "src": "2192:12:0" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "contract IContractRegistry", + "type_conversion": true + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_IContractRegistry_$1522", + "typeString": "contract IContractRegistry" + } + ], + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1522, + "type": "type(contract IContractRegistry)", + "value": "IContractRegistry" + }, + "id": 93, + "name": "Identifier", + "src": "2207:17:0" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 78, + "type": "contract IContractRegistry", + "value": "_registry" + }, + "id": 94, + "name": "Identifier", + "src": "2225:9:0" + } + ], + "id": 95, + "name": "FunctionCall", + "src": "2207:28:0" } ], - "id": 93, - "name": "IContractRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1608, - "src": "2207:17:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IContractRegistry_$1608_$", - "typeString": "type(contract IContractRegistry)" - } - }, - "id": 95, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2207:28:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } - }, - "src": "2192:43:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } - }, - "id": 97, - "nodeType": "ExpressionStatement", - "src": "2192:43:0" - } - ] - }, - "documentation": "@dev initializes a new ContractRegistryClient instance\n\n * @param _registry address of a contract-registry contract", - "id": 99, - "implemented": true, - "kind": "constructor", - "modifiers": [ - { - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 82, - "name": "_registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 78, - "src": "2119:9:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } + "id": 96, + "name": "Assignment", + "src": "2192:43:0" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } - ], - "id": 81, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2111:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": "address" - }, - "id": 83, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2111:18:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + "id": 97, + "name": "ExpressionStatement", + "src": "2192:43:0" } ], - "id": 84, - "modifierName": { - "argumentTypes": null, - "id": 80, - "name": "validAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2886, - "src": "2098:12:0", - "typeDescriptions": { - "typeIdentifier": "t_modifier$_t_address_$", - "typeString": "modifier (address)" - } - }, - "nodeType": "ModifierInvocation", - "src": "2098:32:0" + "id": 98, + "name": "Block", + "src": "2131:112:0" } ], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 79, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 78, - "name": "_registry", - "nodeType": "VariableDeclaration", - "scope": 99, - "src": "2060:27:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - }, - "typeName": { - "contractScope": null, - "id": 77, - "name": "IContractRegistry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1608, - "src": "2060:17:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2059:29:0" - }, - "returnParameters": { - "id": 85, - "nodeType": "ParameterList", - "parameters": [], - "src": "2131:0:0" - }, - "scope": 197, - "src": "2048:195:0", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "internal" + "id": 99, + "name": "FunctionDefinition", + "src": "2048:195:0" }, { - "body": { - "id": 160, - "nodeType": "Block", - "src": "2353:910:0", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ + "attributes": { + "documentation": "@dev updates to the new contract-registry", + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "updateRegistry", + "scope": 197, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 100, + "name": "ParameterList", + "src": "2343:2:0" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 101, + "name": "ParameterList", + "src": "2353:0:0" + }, + { + "children": [ + { + "children": [ { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 109, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { + "attributes": { "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 106, "isConstant": false, "isLValue": false, "isPure": false, + "isStructConstructorCall": false, "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 103, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2942, - "src": "2423:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_f5894269650d3e1726ed81a4f48c5b62c7dd6fa025b89d639952a7012960d666", + "typeString": "literal_string \"ERR_ACCESS_DENIED\"" + } + ], + "overloadedDeclarations": [ + 3187, + 3188 + ], + "referencedDeclaration": 3188, + "type": "function (bool,string memory) pure", + "value": "require" }, - "id": 104, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2423:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } + "id": 102, + "name": "Identifier", + "src": "2415:7:0" }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 105, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2630, - "src": "2437:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "||", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "==", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3184, + "type": "msg", + "value": "msg" + }, + "id": 103, + "name": "Identifier", + "src": "2423:3:0" + } + ], + "id": 104, + "name": "MemberAccess", + "src": "2423:10:0" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 2903, + "type": "address", + "value": "owner" + }, + "id": 105, + "name": "Identifier", + "src": "2437:5:0" + } + ], + "id": 106, + "name": "BinaryOperation", + "src": "2423:19:0" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "!", + "prefix": true, + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 50, + "type": "bool", + "value": "onlyOwnerCanUpdateRegistry" + }, + "id": 107, + "name": "Identifier", + "src": "2447:26:0" + } + ], + "id": 108, + "name": "UnaryOperation", + "src": "2446:27:0" + } + ], + "id": 109, + "name": "BinaryOperation", + "src": "2423:50:0" }, - "src": "2423:19:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + { + "attributes": { + "argumentTypes": null, + "hexvalue": "4552525f4143434553535f44454e494544", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"ERR_ACCESS_DENIED\"", + "value": "ERR_ACCESS_DENIED" + }, + "id": 110, + "name": "Literal", + "src": "2475:19:0" } + ], + "id": 111, + "name": "FunctionCall", + "src": "2415:80:0" + } + ], + "id": 112, + "name": "ExpressionStatement", + "src": "2415:80:0" + }, + { + "attributes": { + "assignments": [ + 114 + ] + }, + "children": [ + { + "attributes": { + "constant": false, + "name": "newRegistry", + "scope": 160, + "stateVariable": false, + "storageLocation": "default", + "type": "contract IContractRegistry", + "value": null, + "visibility": "internal" }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IContractRegistry", + "referencedDeclaration": 1522, + "type": "contract IContractRegistry" + }, + "id": 113, + "name": "UserDefinedTypeName", + "src": "2550:17:0" + } + ], + "id": 114, + "name": "VariableDeclaration", + "src": "2550:29:0" + }, + { + "attributes": { "argumentTypes": null, - "id": 108, "isConstant": false, "isLValue": false, "isPure": false, + "isStructConstructorCall": false, "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "2446:27:0", - "subExpression": { - "argumentTypes": null, - "id": 107, - "name": "onlyOwnerCanUpdateRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 50, - "src": "2447:26:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } + "names": [ + null + ], + "type": "contract IContractRegistry", + "type_conversion": true + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1522, + "type": "type(contract IContractRegistry)", + "value": "IContractRegistry" + }, + "id": 115, + "name": "Identifier", + "src": "2582:17:0" }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "address", + "type_conversion": false + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 196, + "type": "function (bytes32) view returns (address)", + "value": "addressOf" + }, + "id": 116, + "name": "Identifier", + "src": "2600:9:0" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 11, + "type": "bytes32", + "value": "CONTRACT_REGISTRY" + }, + "id": 117, + "name": "Identifier", + "src": "2610:17:0" + } + ], + "id": 118, + "name": "FunctionCall", + "src": "2600:28:0" } - }, - "src": "2423:50:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "argumentTypes": null, - "hexValue": "4552525f4143434553535f44454e494544", - "id": 110, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2475:19:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_f5894269650d3e1726ed81a4f48c5b62c7dd6fa025b89d639952a7012960d666", - "typeString": "literal_string \"ERR_ACCESS_DENIED\"" - }, - "value": "ERR_ACCESS_DENIED" + ], + "id": 119, + "name": "FunctionCall", + "src": "2582:47:0" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_f5894269650d3e1726ed81a4f48c5b62c7dd6fa025b89d639952a7012960d666", - "typeString": "literal_string \"ERR_ACCESS_DENIED\"" - } - ], - "id": 102, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 2945, - 2946 - ], - "referencedDeclaration": 2946, - "src": "2415:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 111, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2415:80:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } + "id": 120, + "name": "VariableDeclarationStatement", + "src": "2550:79:0" }, - "id": 112, - "nodeType": "ExpressionStatement", - "src": "2415:80:0" - }, - { - "assignments": [ - 114 - ], - "declarations": [ - { - "constant": false, - "id": 114, - "name": "newRegistry", - "nodeType": "VariableDeclaration", - "scope": 160, - "src": "2550:29:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - }, - "typeName": { - "contractScope": null, - "id": 113, - "name": "IContractRegistry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1608, - "src": "2550:17:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 120, - "initialValue": { - "argumentTypes": null, - "arguments": [ + { + "children": [ { - "argumentTypes": null, - "arguments": [ + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false + }, + "children": [ { - "argumentTypes": null, - "id": 117, - "name": "CONTRACT_REGISTRY", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11, - "src": "2610:17:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_75b9212739e68843904752f41fb54f1609594bc4b84683da2a4384aeff5c191d", + "typeString": "literal_string \"ERR_INVALID_REGISTRY\"" + } + ], + "overloadedDeclarations": [ + 3187, + 3188 + ], + "referencedDeclaration": 3188, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 121, + "name": "Identifier", + "src": "2718:7:0" + }, + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "&&", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "!=", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "address", + "type_conversion": true + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_IContractRegistry_$1522", + "typeString": "contract IContractRegistry" + } + ], + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "type": "type(address)", + "value": "address" + }, + "id": 122, + "name": "ElementaryTypeNameExpression", + "src": "2726:7:0" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 114, + "type": "contract IContractRegistry", + "value": "newRegistry" + }, + "id": 123, + "name": "Identifier", + "src": "2734:11:0" + } + ], + "id": 124, + "name": "FunctionCall", + "src": "2726:20:0" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "address", + "type_conversion": true + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_IContractRegistry_$1522", + "typeString": "contract IContractRegistry" + } + ], + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "type": "type(address)", + "value": "address" + }, + "id": 125, + "name": "ElementaryTypeNameExpression", + "src": "2750:7:0" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 46, + "type": "contract IContractRegistry", + "value": "registry" + }, + "id": 126, + "name": "Identifier", + "src": "2758:8:0" + } + ], + "id": 127, + "name": "FunctionCall", + "src": "2750:17:0" + } + ], + "id": 128, + "name": "BinaryOperation", + "src": "2726:41:0" + }, + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "!=", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "address", + "type_conversion": true + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_IContractRegistry_$1522", + "typeString": "contract IContractRegistry" + } + ], + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "type": "type(address)", + "value": "address" + }, + "id": 129, + "name": "ElementaryTypeNameExpression", + "src": "2771:7:0" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 114, + "type": "contract IContractRegistry", + "value": "newRegistry" + }, + "id": 130, + "name": "Identifier", + "src": "2779:11:0" + } + ], + "id": 131, + "name": "FunctionCall", + "src": "2771:20:0" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": true, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "address payable", + "type_conversion": true + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "type": "type(address)", + "value": "address" + }, + "id": 132, + "name": "ElementaryTypeNameExpression", + "src": "2795:7:0" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "30", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "number", + "type": "int_const 0", + "value": "0" + }, + "id": 133, + "name": "Literal", + "src": "2803:1:0" + } + ], + "id": 134, + "name": "FunctionCall", + "src": "2795:10:0" + } + ], + "id": 135, + "name": "BinaryOperation", + "src": "2771:34:0" + } + ], + "id": 136, + "name": "BinaryOperation", + "src": "2726:79:0" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "4552525f494e56414c49445f5245474953545259", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"ERR_INVALID_REGISTRY\"", + "value": "ERR_INVALID_REGISTRY" + }, + "id": 137, + "name": "Literal", + "src": "2807:22:0" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 116, - "name": "addressOf", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 196, - "src": "2600:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_address_$", - "typeString": "function (bytes32) view returns (address)" - } - }, - "id": 118, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2600:28:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + "id": 138, + "name": "FunctionCall", + "src": "2718:112:0" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 115, - "name": "IContractRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1608, - "src": "2582:17:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IContractRegistry_$1608_$", - "typeString": "type(contract IContractRegistry)" - } - }, - "id": 119, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2582:47:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } + "id": 139, + "name": "ExpressionStatement", + "src": "2718:112:0" }, - "nodeType": "VariableDeclarationStatement", - "src": "2550:79:0" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ + { + "children": [ { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 136, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { + "attributes": { "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 128, "isConstant": false, "isLValue": false, "isPure": false, + "isStructConstructorCall": false, "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 123, - "name": "newRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 114, - "src": "2734:11:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } - } - ], - "expression": { + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false + }, + "children": [ + { + "attributes": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_75b9212739e68843904752f41fb54f1609594bc4b84683da2a4384aeff5c191d", + "typeString": "literal_string \"ERR_INVALID_REGISTRY\"" } ], - "id": 122, + "overloadedDeclarations": [ + 3187, + 3188 + ], + "referencedDeclaration": 3188, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 140, + "name": "Identifier", + "src": "2937:7:0" + }, + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, "isConstant": false, "isLValue": false, - "isPure": true, + "isPure": false, "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2726:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": "address" + "operator": "!=", + "type": "bool" }, - "id": 124, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2726:20:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "argumentTypes": null, - "arguments": [ + "children": [ { - "argumentTypes": null, - "id": 126, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 46, - "src": "2758:8:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "address", + "type_conversion": false + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "addressOf", + "referencedDeclaration": 1514, + "type": "function (bytes32) view external returns (address)" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 114, + "type": "contract IContractRegistry", + "value": "newRegistry" + }, + "id": 141, + "name": "Identifier", + "src": "2945:11:0" + } + ], + "id": 142, + "name": "MemberAccess", + "src": "2945:21:0" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 11, + "type": "bytes32", + "value": "CONTRACT_REGISTRY" + }, + "id": 143, + "name": "Identifier", + "src": "2967:17:0" + } + ], + "id": 144, + "name": "FunctionCall", + "src": "2945:40:0" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": true, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "address payable", + "type_conversion": true + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "type": "type(address)", + "value": "address" + }, + "id": 145, + "name": "ElementaryTypeNameExpression", + "src": "2989:7:0" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "30", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "number", + "type": "int_const 0", + "value": "0" + }, + "id": 146, + "name": "Literal", + "src": "2997:1:0" + } + ], + "id": 147, + "name": "FunctionCall", + "src": "2989:10:0" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } - ], - "id": 125, + "id": 148, + "name": "BinaryOperation", + "src": "2945:54:0" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "4552525f494e56414c49445f5245474953545259", "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2750:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": "address" + "subdenomination": null, + "token": "string", + "type": "literal_string \"ERR_INVALID_REGISTRY\"", + "value": "ERR_INVALID_REGISTRY" }, - "id": 127, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2750:17:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2726:41:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "id": 149, + "name": "Literal", + "src": "3001:22:0" } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { + ], + "id": 150, + "name": "FunctionCall", + "src": "2937:87:0" + } + ], + "id": 151, + "name": "ExpressionStatement", + "src": "2937:87:0" + }, + { + "children": [ + { + "attributes": { "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 135, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 130, - "name": "newRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 114, - "src": "2779:11:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } - ], - "id": 129, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2771:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": "address" - }, - "id": 131, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2771:20:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "30", - "id": 133, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2803:1:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 132, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2795:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": "address" - }, - "id": 134, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2795:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "src": "2771:34:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "2726:79:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "argumentTypes": null, - "hexValue": "4552525f494e56414c49445f5245474953545259", - "id": 137, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2807:22:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_75b9212739e68843904752f41fb54f1609594bc4b84683da2a4384aeff5c191d", - "typeString": "literal_string \"ERR_INVALID_REGISTRY\"" - }, - "value": "ERR_INVALID_REGISTRY" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_75b9212739e68843904752f41fb54f1609594bc4b84683da2a4384aeff5c191d", - "typeString": "literal_string \"ERR_INVALID_REGISTRY\"" - } - ], - "id": 121, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 2945, - 2946 - ], - "referencedDeclaration": 2946, - "src": "2718:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 138, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2718:112:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 139, - "nodeType": "ExpressionStatement", - "src": "2718:112:0" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" + "operator": "=", + "type": "contract IContractRegistry" }, - "id": 148, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 143, - "name": "CONTRACT_REGISTRY", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11, - "src": "2967:17:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "expression": { + "children": [ + { + "attributes": { "argumentTypes": null, - "id": 141, - "name": "newRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 114, - "src": "2945:11:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 48, + "type": "contract IContractRegistry", + "value": "prevRegistry" }, - "id": 142, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "addressOf", - "nodeType": "MemberAccess", - "referencedDeclaration": 1600, - "src": "2945:21:0", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_address_$", - "typeString": "function (bytes32) view external returns (address)" - } + "id": 152, + "name": "Identifier", + "src": "3116:12:0" }, - "id": 144, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2945:40:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { + { + "attributes": { "argumentTypes": null, - "hexValue": "30", - "id": 146, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2997:1:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 145, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2989:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": "address" - }, - "id": 147, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2989:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "src": "2945:54:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "argumentTypes": null, - "hexValue": "4552525f494e56414c49445f5245474953545259", - "id": 149, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3001:22:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_75b9212739e68843904752f41fb54f1609594bc4b84683da2a4384aeff5c191d", - "typeString": "literal_string \"ERR_INVALID_REGISTRY\"" - }, - "value": "ERR_INVALID_REGISTRY" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_75b9212739e68843904752f41fb54f1609594bc4b84683da2a4384aeff5c191d", - "typeString": "literal_string \"ERR_INVALID_REGISTRY\"" - } - ], - "id": 140, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 2945, - 2946 - ], - "referencedDeclaration": 2946, - "src": "2937:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 150, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2937:87:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 151, - "nodeType": "ExpressionStatement", - "src": "2937:87:0" - }, - { - "expression": { - "argumentTypes": null, - "id": 154, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 152, - "name": "prevRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 48, - "src": "3116:12:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 153, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 46, - "src": "3131:8:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } - }, - "src": "3116:23:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } - }, - "id": 155, - "nodeType": "ExpressionStatement", - "src": "3116:23:0" - }, - { - "expression": { - "argumentTypes": null, - "id": 158, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 156, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 46, - "src": "3233:8:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 157, - "name": "newRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 114, - "src": "3244:11:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } - }, - "src": "3233:22:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } - }, - "id": 159, - "nodeType": "ExpressionStatement", - "src": "3233:22:0" - } - ] - }, - "documentation": "@dev updates to the new contract-registry", - "id": 161, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "updateRegistry", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 100, - "nodeType": "ParameterList", - "parameters": [], - "src": "2343:2:0" - }, - "returnParameters": { - "id": 101, - "nodeType": "ParameterList", - "parameters": [], - "src": "2353:0:0" - }, - "scope": 197, - "src": "2320:943:0", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 170, - "nodeType": "Block", - "src": "3386:93:0", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 168, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 166, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 46, - "src": "3448:8:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 167, - "name": "prevRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 48, - "src": "3459:12:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 46, + "type": "contract IContractRegistry", + "value": "registry" + }, + "id": 153, + "name": "Identifier", + "src": "3131:8:0" + } + ], + "id": 154, + "name": "Assignment", + "src": "3116:23:0" } - }, - "src": "3448:23:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } + ], + "id": 155, + "name": "ExpressionStatement", + "src": "3116:23:0" }, - "id": 169, - "nodeType": "ExpressionStatement", - "src": "3448:23:0" - } - ] - }, - "documentation": "@dev restores the previous contract-registry", - "id": 171, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": null, - "id": 164, - "modifierName": { - "argumentTypes": null, - "id": 163, - "name": "ownerOnly", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2654, - "src": "3376:9:0", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "=", + "type": "contract IContractRegistry" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 46, + "type": "contract IContractRegistry", + "value": "registry" + }, + "id": 156, + "name": "Identifier", + "src": "3233:8:0" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 114, + "type": "contract IContractRegistry", + "value": "newRegistry" + }, + "id": 157, + "name": "Identifier", + "src": "3244:11:0" + } + ], + "id": 158, + "name": "Assignment", + "src": "3233:22:0" + } + ], + "id": 159, + "name": "ExpressionStatement", + "src": "3233:22:0" } - }, - "nodeType": "ModifierInvocation", - "src": "3376:9:0" + ], + "id": 160, + "name": "Block", + "src": "2353:910:0" } ], - "name": "restoreRegistry", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 162, - "nodeType": "ParameterList", - "parameters": [], - "src": "3366:2:0" - }, - "returnParameters": { - "id": 165, - "nodeType": "ParameterList", - "parameters": [], - "src": "3386:0:0" - }, - "scope": 197, - "src": "3342:137:0", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" + "id": 161, + "name": "FunctionDefinition", + "src": "2320:943:0" }, { - "body": { - "id": 182, - "nodeType": "Block", - "src": "3776:141:0", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 180, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 178, - "name": "onlyOwnerCanUpdateRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 50, - "src": "3853:26:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { + "attributes": { + "documentation": "@dev restores the previous contract-registry", + "implemented": true, + "isConstructor": false, + "kind": "function", + "name": "restoreRegistry", + "scope": 197, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 162, + "name": "ParameterList", + "src": "3366:2:0" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 165, + "name": "ParameterList", + "src": "3386:0:0" + }, + { + "attributes": { + "arguments": null + }, + "children": [ + { + "attributes": { "argumentTypes": null, - "id": 179, - "name": "_onlyOwnerCanUpdateRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 173, - "src": "3882:27:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 2927, + "type": "modifier ()", + "value": "ownerOnly" }, - "src": "3853:56:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 181, - "nodeType": "ExpressionStatement", - "src": "3853:56:0" - } - ] - }, - "documentation": "@dev restricts the permission to update the contract-registry\n\n * @param _onlyOwnerCanUpdateRegistry indicates whether or not permission is restricted to owner only", - "id": 183, - "implemented": true, - "kind": "function", - "modifiers": [ + "id": 163, + "name": "Identifier", + "src": "3376:9:0" + } + ], + "id": 164, + "name": "ModifierInvocation", + "src": "3376:9:0" + }, { - "arguments": null, - "id": 176, - "modifierName": { - "argumentTypes": null, - "id": 175, - "name": "ownerOnly", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2654, - "src": "3766:9:0", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "=", + "type": "contract IContractRegistry" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 46, + "type": "contract IContractRegistry", + "value": "registry" + }, + "id": 166, + "name": "Identifier", + "src": "3448:8:0" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 48, + "type": "contract IContractRegistry", + "value": "prevRegistry" + }, + "id": 167, + "name": "Identifier", + "src": "3459:12:0" + } + ], + "id": 168, + "name": "Assignment", + "src": "3448:23:0" + } + ], + "id": 169, + "name": "ExpressionStatement", + "src": "3448:23:0" } - }, - "nodeType": "ModifierInvocation", - "src": "3766:9:0" + ], + "id": 170, + "name": "Block", + "src": "3386:93:0" } ], - "name": "restrictRegistryUpdate", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 174, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 173, - "name": "_onlyOwnerCanUpdateRegistry", - "nodeType": "VariableDeclaration", - "scope": 183, - "src": "3725:32:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 172, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "3725:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3724:34:0" - }, - "returnParameters": { - "id": 177, - "nodeType": "ParameterList", - "parameters": [], - "src": "3776:0:0" - }, - "scope": 197, - "src": "3693:224:0", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" + "id": 171, + "name": "FunctionDefinition", + "src": "3342:137:0" + }, + { + "attributes": { + "documentation": "@dev restricts the permission to update the contract-registry\n\n * @param _onlyOwnerCanUpdateRegistry indicates whether or not permission is restricted to owner only", + "implemented": true, + "isConstructor": false, + "kind": "function", + "name": "restrictRegistryUpdate", + "scope": 197, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_onlyOwnerCanUpdateRegistry", + "scope": 183, + "stateVariable": false, + "storageLocation": "default", + "type": "bool", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bool", + "type": "bool" + }, + "id": 172, + "name": "ElementaryTypeName", + "src": "3725:4:0" + } + ], + "id": 173, + "name": "VariableDeclaration", + "src": "3725:32:0" + } + ], + "id": 174, + "name": "ParameterList", + "src": "3724:34:0" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 177, + "name": "ParameterList", + "src": "3776:0:0" + }, + { + "attributes": { + "arguments": null + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 2927, + "type": "modifier ()", + "value": "ownerOnly" + }, + "id": 175, + "name": "Identifier", + "src": "3766:9:0" + } + ], + "id": 176, + "name": "ModifierInvocation", + "src": "3766:9:0" + }, + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "=", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 50, + "type": "bool", + "value": "onlyOwnerCanUpdateRegistry" + }, + "id": 178, + "name": "Identifier", + "src": "3853:26:0" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 173, + "type": "bool", + "value": "_onlyOwnerCanUpdateRegistry" + }, + "id": 179, + "name": "Identifier", + "src": "3882:27:0" + } + ], + "id": 180, + "name": "Assignment", + "src": "3853:56:0" + } + ], + "id": 181, + "name": "ExpressionStatement", + "src": "3853:56:0" + } + ], + "id": 182, + "name": "Block", + "src": "3776:141:0" + } + ], + "id": 183, + "name": "FunctionDefinition", + "src": "3693:224:0" }, { - "body": { - "id": 195, - "nodeType": "Block", - "src": "4189:59:0", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ + "attributes": { + "documentation": "@dev returns the address associated with the given contract name\n\n * @param _contractName contract name\n\n * @return contract address", + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "addressOf", + "scope": 197, + "stateMutability": "view", + "superFunction": null, + "visibility": "internal" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_contractName", + "scope": 196, + "stateVariable": false, + "storageLocation": "default", + "type": "bytes32", + "value": null, + "visibility": "internal" + }, + "children": [ { - "argumentTypes": null, - "id": 192, - "name": "_contractName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 185, - "src": "4226:13:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 184, + "name": "ElementaryTypeName", + "src": "4134:7:0" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "expression": { - "argumentTypes": null, - "id": 190, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 46, - "src": "4207:8:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IContractRegistry_$1608", - "typeString": "contract IContractRegistry" - } - }, - "id": 191, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "addressOf", - "nodeType": "MemberAccess", - "referencedDeclaration": 1600, - "src": "4207:18:0", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_address_$", - "typeString": "function (bytes32) view external returns (address)" + "id": 185, + "name": "VariableDeclaration", + "src": "4134:21:0" + } + ], + "id": 186, + "name": "ParameterList", + "src": "4133:23:0" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 196, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 187, + "name": "ElementaryTypeName", + "src": "4180:7:0" } + ], + "id": 188, + "name": "VariableDeclaration", + "src": "4180:7:0" + } + ], + "id": 189, + "name": "ParameterList", + "src": "4179:9:0" + }, + { + "children": [ + { + "attributes": { + "functionReturnParameters": 189 }, - "id": 193, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4207:33:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 189, - "id": 194, - "nodeType": "Return", - "src": "4200:40:0" - } - ] - }, - "documentation": "@dev returns the address associated with the given contract name\n\n * @param _contractName contract name\n\n * @return contract address", + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "address", + "type_conversion": false + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "addressOf", + "referencedDeclaration": 1514, + "type": "function (bytes32) view external returns (address)" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 46, + "type": "contract IContractRegistry", + "value": "registry" + }, + "id": 190, + "name": "Identifier", + "src": "4207:8:0" + } + ], + "id": 191, + "name": "MemberAccess", + "src": "4207:18:0" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 185, + "type": "bytes32", + "value": "_contractName" + }, + "id": 192, + "name": "Identifier", + "src": "4226:13:0" + } + ], + "id": 193, + "name": "FunctionCall", + "src": "4207:33:0" + } + ], + "id": 194, + "name": "Return", + "src": "4200:40:0" + } + ], + "id": 195, + "name": "Block", + "src": "4189:59:0" + } + ], "id": 196, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "addressOf", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 186, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 185, - "name": "_contractName", - "nodeType": "VariableDeclaration", - "scope": 196, - "src": "4134:21:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 184, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4134:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "4133:23:0" - }, - "returnParameters": { - "id": 189, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 188, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 196, - "src": "4180:7:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 187, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4180:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "4179:9:0" - }, - "scope": 197, - "src": "4115:133:0", - "stateMutability": "view", - "superFunction": null, - "visibility": "internal" + "name": "FunctionDefinition", + "src": "4115:133:0" } ], - "scope": 198, + "id": 197, + "name": "ContractDefinition", "src": "209:4042:0" } ], + "id": 198, + "name": "SourceUnit", "src": "0:4253:0" }, "compiler": { @@ -5549,8 +5738,8 @@ "version": "0.5.16+commit.9c3226ce.Emscripten.clang" }, "networks": {}, - "schemaVersion": "3.3.2", - "updatedAt": "2021-04-07T07:37:58.276Z", + "schemaVersion": "3.4.1", + "updatedAt": "2022-02-16T07:18:27.840Z", "devdoc": { "details": "Base contract for ContractRegistry clients", "methods": { diff --git a/rbtcwrapperproxy/build/contracts/IConsumerPriceOracle.json b/rbtcwrapperproxy/build/contracts/IConsumerPriceOracle.json index 9dcd71d..70aeb7e 100644 --- a/rbtcwrapperproxy/build/contracts/IConsumerPriceOracle.json +++ b/rbtcwrapperproxy/build/contracts/IConsumerPriceOracle.json @@ -32,25 +32,25 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[],\"name\":\"latestAnswer\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"latestTimestamp\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IConsumerPriceOracle.sol\":\"IConsumerPriceOracle\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IConsumerPriceOracle.sol\":{\"keccak256\":\"0x5e8188aa66742b15bc828e3c5b023fedd981d9651777cccd1a912d4b8e986a0d\",\"urls\":[\"bzz-raw://64f5b7400ad684dea6db427299708f689f474d8698a929320a70913b5071fa29\",\"dweb:/ipfs/QmZzNBXWhvo7BMDSSx7VPVH91M7d2uET4nWRFoRJteZB1o\"]}},\"version\":1}", + "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[],\"name\":\"latestAnswer\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"latestTimestamp\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IConsumerPriceOracle.sol\":\"IConsumerPriceOracle\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IConsumerPriceOracle.sol\":{\"keccak256\":\"0x5e8188aa66742b15bc828e3c5b023fedd981d9651777cccd1a912d4b8e986a0d\",\"urls\":[\"bzz-raw://64f5b7400ad684dea6db427299708f689f474d8698a929320a70913b5071fa29\",\"dweb:/ipfs/QmZzNBXWhvo7BMDSSx7VPVH91M7d2uET4nWRFoRJteZB1o\"]}},\"version\":1}", "bytecode": "0x", "deployedBytecode": "0x", "sourceMap": "", "deployedSourceMap": "", "source": "pragma solidity >=0.5.0 <0.6.0;\n\n/*\n Chainlink Price Oracle interface\n*/\ninterface IConsumerPriceOracle {\n\tfunction latestAnswer() external view returns (int256);\n\n\tfunction latestTimestamp() external view returns (uint256);\n}\n", - "sourcePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IConsumerPriceOracle.sol", + "sourcePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IConsumerPriceOracle.sol", "ast": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IConsumerPriceOracle.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IConsumerPriceOracle.sol", "exportedSymbols": { "IConsumerPriceOracle": [ - 1210 + 1784 ] }, - "id": 1211, + "id": 1785, "nodeType": "SourceUnit", "nodes": [ { - "id": 1199, + "id": 1773, "literals": [ "solidity", ">=", @@ -61,7 +61,7 @@ ".0" ], "nodeType": "PragmaDirective", - "src": "0:31:3" + "src": "0:31:4" }, { "baseContracts": [], @@ -69,9 +69,9 @@ "contractKind": "interface", "documentation": null, "fullyImplemented": false, - "id": 1210, + "id": 1784, "linearizedBaseContracts": [ - 1210 + 1784 ], "name": "IConsumerPriceOracle", "nodeType": "ContractDefinition", @@ -79,29 +79,29 @@ { "body": null, "documentation": null, - "id": 1204, + "id": 1778, "implemented": false, "kind": "function", "modifiers": [], "name": "latestAnswer", "nodeType": "FunctionDefinition", "parameters": { - "id": 1200, + "id": 1774, "nodeType": "ParameterList", "parameters": [], - "src": "131:2:3" + "src": "131:2:4" }, "returnParameters": { - "id": 1203, + "id": 1777, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1202, + "id": 1776, "name": "", "nodeType": "VariableDeclaration", - "scope": 1204, - "src": "157:6:3", + "scope": 1778, + "src": "157:6:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -109,10 +109,10 @@ "typeString": "int256" }, "typeName": { - "id": 1201, + "id": 1775, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "157:6:3", + "src": "157:6:4", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -122,10 +122,10 @@ "visibility": "internal" } ], - "src": "156:8:3" + "src": "156:8:4" }, - "scope": 1210, - "src": "110:55:3", + "scope": 1784, + "src": "110:55:4", "stateMutability": "view", "superFunction": null, "visibility": "external" @@ -133,29 +133,29 @@ { "body": null, "documentation": null, - "id": 1209, + "id": 1783, "implemented": false, "kind": "function", "modifiers": [], "name": "latestTimestamp", "nodeType": "FunctionDefinition", "parameters": { - "id": 1205, + "id": 1779, "nodeType": "ParameterList", "parameters": [], - "src": "192:2:3" + "src": "192:2:4" }, "returnParameters": { - "id": 1208, + "id": 1782, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1207, + "id": 1781, "name": "", "nodeType": "VariableDeclaration", - "scope": 1209, - "src": "218:7:3", + "scope": 1783, + "src": "218:7:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -163,10 +163,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1206, + "id": 1780, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "218:7:3", + "src": "218:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -176,180 +176,214 @@ "visibility": "internal" } ], - "src": "217:9:3" + "src": "217:9:4" }, - "scope": 1210, - "src": "168:59:3", + "scope": 1784, + "src": "168:59:4", "stateMutability": "view", "superFunction": null, "visibility": "external" } ], - "scope": 1211, - "src": "76:153:3" + "scope": 1785, + "src": "76:153:4" } ], - "src": "0:230:3" + "src": "0:230:4" }, "legacyAST": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IConsumerPriceOracle.sol", - "exportedSymbols": { - "IConsumerPriceOracle": [ - 1210 - ] + "attributes": { + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IConsumerPriceOracle.sol", + "exportedSymbols": { + "IConsumerPriceOracle": [ + 1784 + ] + } }, - "id": 1211, - "nodeType": "SourceUnit", - "nodes": [ + "children": [ { - "id": 1199, - "literals": [ - "solidity", - ">=", - "0.5", - ".0", - "<", - "0.6", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "0:31:3" + "attributes": { + "literals": [ + "solidity", + ">=", + "0.5", + ".0", + "<", + "0.6", + ".0" + ] + }, + "id": 1773, + "name": "PragmaDirective", + "src": "0:31:4" }, { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "interface", - "documentation": null, - "fullyImplemented": false, - "id": 1210, - "linearizedBaseContracts": [ - 1210 - ], - "name": "IConsumerPriceOracle", - "nodeType": "ContractDefinition", - "nodes": [ + "attributes": { + "baseContracts": [ + null + ], + "contractDependencies": [ + null + ], + "contractKind": "interface", + "documentation": null, + "fullyImplemented": false, + "linearizedBaseContracts": [ + 1784 + ], + "name": "IConsumerPriceOracle", + "scope": 1785 + }, + "children": [ { - "body": null, - "documentation": null, - "id": 1204, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "latestAnswer", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1200, - "nodeType": "ParameterList", - "parameters": [], - "src": "131:2:3" - }, - "returnParameters": { - "id": 1203, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1202, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1204, - "src": "157:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1201, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "157:6:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "156:8:3" + "name": "latestAnswer", + "scope": 1784, + "stateMutability": "view", + "superFunction": null, + "visibility": "external" }, - "scope": 1210, - "src": "110:55:3", - "stateMutability": "view", - "superFunction": null, - "visibility": "external" + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 1774, + "name": "ParameterList", + "src": "131:2:4" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 1778, + "stateVariable": false, + "storageLocation": "default", + "type": "int256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "int256", + "type": "int256" + }, + "id": 1775, + "name": "ElementaryTypeName", + "src": "157:6:4" + } + ], + "id": 1776, + "name": "VariableDeclaration", + "src": "157:6:4" + } + ], + "id": 1777, + "name": "ParameterList", + "src": "156:8:4" + } + ], + "id": 1778, + "name": "FunctionDefinition", + "src": "110:55:4" }, { - "body": null, - "documentation": null, - "id": 1209, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "latestTimestamp", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1205, - "nodeType": "ParameterList", - "parameters": [], - "src": "192:2:3" - }, - "returnParameters": { - "id": 1208, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1207, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1209, - "src": "218:7:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1206, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "218:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "217:9:3" + "name": "latestTimestamp", + "scope": 1784, + "stateMutability": "view", + "superFunction": null, + "visibility": "external" }, - "scope": 1210, - "src": "168:59:3", - "stateMutability": "view", - "superFunction": null, - "visibility": "external" + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 1779, + "name": "ParameterList", + "src": "192:2:4" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 1783, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 1780, + "name": "ElementaryTypeName", + "src": "218:7:4" + } + ], + "id": 1781, + "name": "VariableDeclaration", + "src": "218:7:4" + } + ], + "id": 1782, + "name": "ParameterList", + "src": "217:9:4" + } + ], + "id": 1783, + "name": "FunctionDefinition", + "src": "168:59:4" } ], - "scope": 1211, - "src": "76:153:3" + "id": 1784, + "name": "ContractDefinition", + "src": "76:153:4" } ], - "src": "0:230:3" + "id": 1785, + "name": "SourceUnit", + "src": "0:230:4" }, "compiler": { "name": "solc", "version": "0.5.16+commit.9c3226ce.Emscripten.clang" }, "networks": {}, - "schemaVersion": "3.3.2", - "updatedAt": "2021-03-26T10:10:09.409Z", + "schemaVersion": "3.4.1", + "updatedAt": "2022-02-15T06:13:50.453Z", "devdoc": { "methods": {} }, diff --git a/rbtcwrapperproxy/build/contracts/IContractRegistry.json b/rbtcwrapperproxy/build/contracts/IContractRegistry.json index cb62103..b28db1f 100644 --- a/rbtcwrapperproxy/build/contracts/IContractRegistry.json +++ b/rbtcwrapperproxy/build/contracts/IContractRegistry.json @@ -44,25 +44,25 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_contractName\",\"type\":\"bytes32\"}],\"name\":\"addressOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_contractName\",\"type\":\"bytes32\"}],\"name\":\"getAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IContractRegistry.sol\":\"IContractRegistry\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IContractRegistry.sol\":{\"keccak256\":\"0x548dcde2af85bea4ee580926d5755632ef6d7eebb7f5f9875b820ca774365d63\",\"urls\":[\"bzz-raw://0a602f049625e8bce211eb5e55694b2882a26714926f79e328f844901c84d775\",\"dweb:/ipfs/QmUE8LDiyVBiqR1Am9iT6FyrwEsfiVs5Kg1PYNBYeRpKHQ\"]}},\"version\":1}", + "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_contractName\",\"type\":\"bytes32\"}],\"name\":\"addressOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_contractName\",\"type\":\"bytes32\"}],\"name\":\"getAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IContractRegistry.sol\":\"IContractRegistry\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IContractRegistry.sol\":{\"keccak256\":\"0x548dcde2af85bea4ee580926d5755632ef6d7eebb7f5f9875b820ca774365d63\",\"urls\":[\"bzz-raw://0a602f049625e8bce211eb5e55694b2882a26714926f79e328f844901c84d775\",\"dweb:/ipfs/QmUE8LDiyVBiqR1Am9iT6FyrwEsfiVs5Kg1PYNBYeRpKHQ\"]}},\"version\":1}", "bytecode": "0x", "deployedBytecode": "0x", "sourceMap": "", "deployedSourceMap": "", "source": "pragma solidity 0.5.16;\n\n/*\n Contract Registry interface\n*/\ncontract IContractRegistry {\n function addressOf(bytes32 _contractName) public view returns (address);\n\n // deprecated, backward compatibility\n function getAddress(bytes32 _contractName) public view returns (address);\n}\n", - "sourcePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IContractRegistry.sol", + "sourcePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IContractRegistry.sol", "ast": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IContractRegistry.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IContractRegistry.sol", "exportedSymbols": { "IContractRegistry": [ - 1608 + 1801 ] }, - "id": 1609, + "id": 1802, "nodeType": "SourceUnit", "nodes": [ { - "id": 1593, + "id": 1786, "literals": [ "solidity", "0.5", @@ -77,9 +77,9 @@ "contractKind": "contract", "documentation": null, "fullyImplemented": false, - "id": 1608, + "id": 1801, "linearizedBaseContracts": [ - 1608 + 1801 ], "name": "IContractRegistry", "nodeType": "ContractDefinition", @@ -87,22 +87,22 @@ { "body": null, "documentation": null, - "id": 1600, + "id": 1793, "implemented": false, "kind": "function", "modifiers": [], "name": "addressOf", "nodeType": "FunctionDefinition", "parameters": { - "id": 1596, + "id": 1789, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1595, + "id": 1788, "name": "_contractName", "nodeType": "VariableDeclaration", - "scope": 1600, + "scope": 1793, "src": "115:21:5", "stateVariable": false, "storageLocation": "default", @@ -111,7 +111,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 1594, + "id": 1787, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "115:7:5", @@ -127,15 +127,15 @@ "src": "114:23:5" }, "returnParameters": { - "id": 1599, + "id": 1792, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1598, + "id": 1791, "name": "", "nodeType": "VariableDeclaration", - "scope": 1600, + "scope": 1793, "src": "159:7:5", "stateVariable": false, "storageLocation": "default", @@ -144,7 +144,7 @@ "typeString": "address" }, "typeName": { - "id": 1597, + "id": 1790, "name": "address", "nodeType": "ElementaryTypeName", "src": "159:7:5", @@ -160,7 +160,7 @@ ], "src": "158:9:5" }, - "scope": 1608, + "scope": 1801, "src": "96:72:5", "stateMutability": "view", "superFunction": null, @@ -169,22 +169,22 @@ { "body": null, "documentation": null, - "id": 1607, + "id": 1800, "implemented": false, "kind": "function", "modifiers": [], "name": "getAddress", "nodeType": "FunctionDefinition", "parameters": { - "id": 1603, + "id": 1796, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1602, + "id": 1795, "name": "_contractName", "nodeType": "VariableDeclaration", - "scope": 1607, + "scope": 1800, "src": "236:21:5", "stateVariable": false, "storageLocation": "default", @@ -193,7 +193,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 1601, + "id": 1794, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "236:7:5", @@ -209,15 +209,15 @@ "src": "235:23:5" }, "returnParameters": { - "id": 1606, + "id": 1799, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1605, + "id": 1798, "name": "", "nodeType": "VariableDeclaration", - "scope": 1607, + "scope": 1800, "src": "280:7:5", "stateVariable": false, "storageLocation": "default", @@ -226,7 +226,7 @@ "typeString": "address" }, "typeName": { - "id": 1604, + "id": 1797, "name": "address", "nodeType": "ElementaryTypeName", "src": "280:7:5", @@ -242,221 +242,245 @@ ], "src": "279:9:5" }, - "scope": 1608, + "scope": 1801, "src": "216:73:5", "stateMutability": "view", "superFunction": null, "visibility": "public" } ], - "scope": 1609, + "scope": 1802, "src": "63:228:5" } ], "src": "0:292:5" }, "legacyAST": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IContractRegistry.sol", - "exportedSymbols": { - "IContractRegistry": [ - 1608 - ] + "attributes": { + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IContractRegistry.sol", + "exportedSymbols": { + "IContractRegistry": [ + 1801 + ] + } }, - "id": 1609, - "nodeType": "SourceUnit", - "nodes": [ + "children": [ { - "id": 1593, - "literals": [ - "solidity", - "0.5", - ".16" - ], - "nodeType": "PragmaDirective", + "attributes": { + "literals": [ + "solidity", + "0.5", + ".16" + ] + }, + "id": 1786, + "name": "PragmaDirective", "src": "0:23:5" }, { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": false, - "id": 1608, - "linearizedBaseContracts": [ - 1608 - ], - "name": "IContractRegistry", - "nodeType": "ContractDefinition", - "nodes": [ + "attributes": { + "baseContracts": [ + null + ], + "contractDependencies": [ + null + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": false, + "linearizedBaseContracts": [ + 1801 + ], + "name": "IContractRegistry", + "scope": 1802 + }, + "children": [ { - "body": null, - "documentation": null, - "id": 1600, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "addressOf", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1596, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1595, - "name": "_contractName", - "nodeType": "VariableDeclaration", - "scope": 1600, - "src": "115:21:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1594, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "115:7:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "114:23:5" - }, - "returnParameters": { - "id": 1599, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1598, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1600, - "src": "159:7:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1597, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "159:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "158:9:5" + "name": "addressOf", + "scope": 1801, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" }, - "scope": 1608, - "src": "96:72:5", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_contractName", + "scope": 1793, + "stateVariable": false, + "storageLocation": "default", + "type": "bytes32", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 1787, + "name": "ElementaryTypeName", + "src": "115:7:5" + } + ], + "id": 1788, + "name": "VariableDeclaration", + "src": "115:21:5" + } + ], + "id": 1789, + "name": "ParameterList", + "src": "114:23:5" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 1793, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1790, + "name": "ElementaryTypeName", + "src": "159:7:5" + } + ], + "id": 1791, + "name": "VariableDeclaration", + "src": "159:7:5" + } + ], + "id": 1792, + "name": "ParameterList", + "src": "158:9:5" + } + ], + "id": 1793, + "name": "FunctionDefinition", + "src": "96:72:5" }, { - "body": null, - "documentation": null, - "id": 1607, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getAddress", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1603, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1602, - "name": "_contractName", - "nodeType": "VariableDeclaration", - "scope": 1607, - "src": "236:21:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1601, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "236:7:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "235:23:5" + "name": "getAddress", + "scope": 1801, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" }, - "returnParameters": { - "id": 1606, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1605, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1607, - "src": "280:7:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1604, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "280:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "279:9:5" - }, - "scope": 1608, - "src": "216:73:5", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_contractName", + "scope": 1800, + "stateVariable": false, + "storageLocation": "default", + "type": "bytes32", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 1794, + "name": "ElementaryTypeName", + "src": "236:7:5" + } + ], + "id": 1795, + "name": "VariableDeclaration", + "src": "236:21:5" + } + ], + "id": 1796, + "name": "ParameterList", + "src": "235:23:5" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 1800, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1797, + "name": "ElementaryTypeName", + "src": "280:7:5" + } + ], + "id": 1798, + "name": "VariableDeclaration", + "src": "280:7:5" + } + ], + "id": 1799, + "name": "ParameterList", + "src": "279:9:5" + } + ], + "id": 1800, + "name": "FunctionDefinition", + "src": "216:73:5" } ], - "scope": 1609, + "id": 1801, + "name": "ContractDefinition", "src": "63:228:5" } ], + "id": 1802, + "name": "SourceUnit", "src": "0:292:5" }, "compiler": { @@ -464,8 +488,8 @@ "version": "0.5.16+commit.9c3226ce.Emscripten.clang" }, "networks": {}, - "schemaVersion": "3.3.2", - "updatedAt": "2021-04-07T07:37:58.295Z", + "schemaVersion": "3.4.1", + "updatedAt": "2022-02-15T06:13:50.455Z", "devdoc": { "methods": {} }, diff --git a/rbtcwrapperproxy/build/contracts/IConverterAnchor.json b/rbtcwrapperproxy/build/contracts/IConverterAnchor.json index e13a80e..8f876db 100644 --- a/rbtcwrapperproxy/build/contracts/IConverterAnchor.json +++ b/rbtcwrapperproxy/build/contracts/IConverterAnchor.json @@ -66,25 +66,25 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":false,\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"withdrawTokens\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IConverterAnchor.sol\":\"IConverterAnchor\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IConverterAnchor.sol\":{\"keccak256\":\"0x17f5e4e68c5770edff2f1656e46fbf57158fc96343c0de21353c57ec0e655cce\",\"urls\":[\"bzz-raw://862ffe6813ee3d52401e0ad29c39f4b43f8fdcac83564c578cdebee0730bd58f\",\"dweb:/ipfs/QmatYop16pX7xPzQEo68Bg9pR21i75XxqNYyRkALYwDYK7\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol\":{\"keccak256\":\"0x85f3acaf53418f63817c8b5d8e047203891bbb9c3fc9558a541a8c446857783b\",\"urls\":[\"bzz-raw://b80d05aeb3fc866a791d3de7f7a8d7c2a65dddc72ad436920e3f043414c82158\",\"dweb:/ipfs/QmVXNmZfw6pQ2xg6xJwHR5ptCxGKx9PRzX9dgQWK7KUTTE\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IOwned.sol\":{\"keccak256\":\"0xa82c5cce1bb1c13dccdcb590bcbfeda3409efb67adc55fce3a301c76075e320c\",\"urls\":[\"bzz-raw://272cd112c211795db57e41fd9c49aae08ead3f7169e73dd8f594c1a8ca3932ad\",\"dweb:/ipfs/QmVTXpDDZEJ6aPUt9f6dTLupE16Rh4HembDTNR2X678svt\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ITokenHolder.sol\":{\"keccak256\":\"0xf4285fadaccd2065e9373f7e9ba9e9d510450ef5b00a297b04b35236f3ae8021\",\"urls\":[\"bzz-raw://52c708e32e441410130ef32316924621cf2daef5d94e043e5d2dba47df89500f\",\"dweb:/ipfs/QmXzFDueMA48Y2Cvyx9cdtSTcM6c3b2Y437BhGsfACvRsG\"]}},\"version\":1}", + "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":false,\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"withdrawTokens\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IConverterAnchor.sol\":\"IConverterAnchor\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IConverterAnchor.sol\":{\"keccak256\":\"0x17f5e4e68c5770edff2f1656e46fbf57158fc96343c0de21353c57ec0e655cce\",\"urls\":[\"bzz-raw://862ffe6813ee3d52401e0ad29c39f4b43f8fdcac83564c578cdebee0730bd58f\",\"dweb:/ipfs/QmatYop16pX7xPzQEo68Bg9pR21i75XxqNYyRkALYwDYK7\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol\":{\"keccak256\":\"0x85f3acaf53418f63817c8b5d8e047203891bbb9c3fc9558a541a8c446857783b\",\"urls\":[\"bzz-raw://b80d05aeb3fc866a791d3de7f7a8d7c2a65dddc72ad436920e3f043414c82158\",\"dweb:/ipfs/QmVXNmZfw6pQ2xg6xJwHR5ptCxGKx9PRzX9dgQWK7KUTTE\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IOwned.sol\":{\"keccak256\":\"0xa82c5cce1bb1c13dccdcb590bcbfeda3409efb67adc55fce3a301c76075e320c\",\"urls\":[\"bzz-raw://272cd112c211795db57e41fd9c49aae08ead3f7169e73dd8f594c1a8ca3932ad\",\"dweb:/ipfs/QmVTXpDDZEJ6aPUt9f6dTLupE16Rh4HembDTNR2X678svt\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ITokenHolder.sol\":{\"keccak256\":\"0xf4285fadaccd2065e9373f7e9ba9e9d510450ef5b00a297b04b35236f3ae8021\",\"urls\":[\"bzz-raw://52c708e32e441410130ef32316924621cf2daef5d94e043e5d2dba47df89500f\",\"dweb:/ipfs/QmXzFDueMA48Y2Cvyx9cdtSTcM6c3b2Y437BhGsfACvRsG\"]}},\"version\":1}", "bytecode": "0x", "deployedBytecode": "0x", "sourceMap": "", "deployedSourceMap": "", "source": "pragma solidity >=0.5.0 <0.6.0;\n\nimport \"./IOwned.sol\";\nimport \"./ITokenHolder.sol\";\n\n/*\n Converter Anchor interface\n*/\ncontract IConverterAnchor is IOwned, ITokenHolder {\n\n}\n", - "sourcePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IConverterAnchor.sol", + "sourcePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IConverterAnchor.sol", "ast": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IConverterAnchor.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IConverterAnchor.sol", "exportedSymbols": { "IConverterAnchor": [ - 1219 + 1810 ] }, - "id": 1220, + "id": 1811, "nodeType": "SourceUnit", "nodes": [ { - "id": 1212, + "id": 1803, "literals": [ "solidity", ">=", @@ -95,27 +95,27 @@ ".0" ], "nodeType": "PragmaDirective", - "src": "0:31:4" + "src": "0:31:6" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IOwned.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IOwned.sol", "file": "./IOwned.sol", - "id": 1213, + "id": 1804, "nodeType": "ImportDirective", - "scope": 1220, - "sourceUnit": 1682, - "src": "33:22:4", + "scope": 1811, + "sourceUnit": 2332, + "src": "33:22:6", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ITokenHolder.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ITokenHolder.sol", "file": "./ITokenHolder.sol", - "id": 1214, + "id": 1805, "nodeType": "ImportDirective", - "scope": 1220, - "sourceUnit": 2017, - "src": "56:28:4", + "scope": 1811, + "sourceUnit": 2767, + "src": "56:28:6", "symbolAliases": [], "unitAlias": "" }, @@ -125,175 +125,197 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 1215, + "id": 1806, "name": "IOwned", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1681, - "src": "152:6:4", + "referencedDeclaration": 2331, + "src": "152:6:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_IOwned_$1681", + "typeIdentifier": "t_contract$_IOwned_$2331", "typeString": "contract IOwned" } }, - "id": 1216, + "id": 1807, "nodeType": "InheritanceSpecifier", - "src": "152:6:4" + "src": "152:6:6" }, { "arguments": null, "baseName": { "contractScope": null, - "id": 1217, + "id": 1808, "name": "ITokenHolder", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2016, - "src": "160:12:4", + "referencedDeclaration": 2766, + "src": "160:12:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_ITokenHolder_$2016", + "typeIdentifier": "t_contract$_ITokenHolder_$2766", "typeString": "contract ITokenHolder" } }, - "id": 1218, + "id": 1809, "nodeType": "InheritanceSpecifier", - "src": "160:12:4" + "src": "160:12:6" } ], "contractDependencies": [ - 1681, - 2016 + 2331, + 2766 ], "contractKind": "contract", "documentation": null, "fullyImplemented": false, - "id": 1219, + "id": 1810, "linearizedBaseContracts": [ - 1219, - 2016, - 1681 + 1810, + 2766, + 2331 ], "name": "IConverterAnchor", "nodeType": "ContractDefinition", "nodes": [], - "scope": 1220, - "src": "123:54:4" + "scope": 1811, + "src": "123:54:6" } ], - "src": "0:178:4" + "src": "0:178:6" }, "legacyAST": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IConverterAnchor.sol", - "exportedSymbols": { - "IConverterAnchor": [ - 1219 - ] + "attributes": { + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IConverterAnchor.sol", + "exportedSymbols": { + "IConverterAnchor": [ + 1810 + ] + } }, - "id": 1220, - "nodeType": "SourceUnit", - "nodes": [ + "children": [ { - "id": 1212, - "literals": [ - "solidity", - ">=", - "0.5", - ".0", - "<", - "0.6", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "0:31:4" + "attributes": { + "literals": [ + "solidity", + ">=", + "0.5", + ".0", + "<", + "0.6", + ".0" + ] + }, + "id": 1803, + "name": "PragmaDirective", + "src": "0:31:6" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IOwned.sol", - "file": "./IOwned.sol", - "id": 1213, - "nodeType": "ImportDirective", - "scope": 1220, - "sourceUnit": 1682, - "src": "33:22:4", - "symbolAliases": [], - "unitAlias": "" + "attributes": { + "SourceUnit": 2332, + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IOwned.sol", + "file": "./IOwned.sol", + "scope": 1811, + "symbolAliases": [ + null + ], + "unitAlias": "" + }, + "id": 1804, + "name": "ImportDirective", + "src": "33:22:6" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ITokenHolder.sol", - "file": "./ITokenHolder.sol", - "id": 1214, - "nodeType": "ImportDirective", - "scope": 1220, - "sourceUnit": 2017, - "src": "56:28:4", - "symbolAliases": [], - "unitAlias": "" + "attributes": { + "SourceUnit": 2767, + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ITokenHolder.sol", + "file": "./ITokenHolder.sol", + "scope": 1811, + "symbolAliases": [ + null + ], + "unitAlias": "" + }, + "id": 1805, + "name": "ImportDirective", + "src": "56:28:6" }, { - "baseContracts": [ + "attributes": { + "contractDependencies": [ + 2331, + 2766 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": false, + "linearizedBaseContracts": [ + 1810, + 2766, + 2331 + ], + "name": "IConverterAnchor", + "nodes": [ + null + ], + "scope": 1811 + }, + "children": [ { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 1215, - "name": "IOwned", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1681, - "src": "152:6:4", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IOwned_$1681", - "typeString": "contract IOwned" - } + "attributes": { + "arguments": null }, - "id": 1216, - "nodeType": "InheritanceSpecifier", - "src": "152:6:4" + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IOwned", + "referencedDeclaration": 2331, + "type": "contract IOwned" + }, + "id": 1806, + "name": "UserDefinedTypeName", + "src": "152:6:6" + } + ], + "id": 1807, + "name": "InheritanceSpecifier", + "src": "152:6:6" }, { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 1217, - "name": "ITokenHolder", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2016, - "src": "160:12:4", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITokenHolder_$2016", - "typeString": "contract ITokenHolder" - } + "attributes": { + "arguments": null }, - "id": 1218, - "nodeType": "InheritanceSpecifier", - "src": "160:12:4" + "children": [ + { + "attributes": { + "contractScope": null, + "name": "ITokenHolder", + "referencedDeclaration": 2766, + "type": "contract ITokenHolder" + }, + "id": 1808, + "name": "UserDefinedTypeName", + "src": "160:12:6" + } + ], + "id": 1809, + "name": "InheritanceSpecifier", + "src": "160:12:6" } ], - "contractDependencies": [ - 1681, - 2016 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": false, - "id": 1219, - "linearizedBaseContracts": [ - 1219, - 2016, - 1681 - ], - "name": "IConverterAnchor", - "nodeType": "ContractDefinition", - "nodes": [], - "scope": 1220, - "src": "123:54:4" + "id": 1810, + "name": "ContractDefinition", + "src": "123:54:6" } ], - "src": "0:178:4" + "id": 1811, + "name": "SourceUnit", + "src": "0:178:6" }, "compiler": { "name": "solc", "version": "0.5.16+commit.9c3226ce.Emscripten.clang" }, "networks": {}, - "schemaVersion": "3.3.2", - "updatedAt": "2021-03-26T10:10:09.409Z", + "schemaVersion": "3.4.1", + "updatedAt": "2022-02-15T06:13:50.456Z", "devdoc": { "methods": {} }, diff --git a/rbtcwrapperproxy/build/contracts/IERC20.json b/rbtcwrapperproxy/build/contracts/IERC20.json index 5f25bbf..7024779 100644 --- a/rbtcwrapperproxy/build/contracts/IERC20.json +++ b/rbtcwrapperproxy/build/contracts/IERC20.json @@ -242,25 +242,25 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_who\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20.sol\":\"IERC20\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20.sol\":{\"keccak256\":\"0x3b6b0238755a6e5ab7b12e67736f5b0ccb6953960725bacee18d6fd53532bf66\",\"urls\":[\"bzz-raw://ebaa11bee8b232757af0b7486d185d6c4f745c0ec10ac4d65223b17143eb2f85\",\"dweb:/ipfs/QmUMt1FNEopfayCC45nvimhWqC7zegcCv54y89N5g8nx6t\"]}},\"version\":1}", + "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_who\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20.sol\":\"IERC20\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20.sol\":{\"keccak256\":\"0x3b6b0238755a6e5ab7b12e67736f5b0ccb6953960725bacee18d6fd53532bf66\",\"urls\":[\"bzz-raw://ebaa11bee8b232757af0b7486d185d6c4f745c0ec10ac4d65223b17143eb2f85\",\"dweb:/ipfs/QmUMt1FNEopfayCC45nvimhWqC7zegcCv54y89N5g8nx6t\"]}},\"version\":1}", "bytecode": "0x", "deployedBytecode": "0x", "sourceMap": "", "deployedSourceMap": "", "source": "/**\n * Copyright 2017-2020, bZeroX, LLC. All Rights Reserved.\n * Licensed under the Apache License, Version 2.0.\n */\n\npragma solidity >=0.5.0 <0.6.0;\n\ncontract IERC20 {\n\tstring public name;\n\tuint8 public decimals;\n\tstring public symbol;\n\n\tfunction totalSupply() public view returns (uint256);\n\n\tfunction balanceOf(address _who) public view returns (uint256);\n\n\tfunction transfer(address _to, uint256 _value) public returns (bool);\n\n\tfunction allowance(address _owner, address _spender) public view returns (uint256);\n\n\tfunction transferFrom(\n\t\taddress _from,\n\t\taddress _to,\n\t\tuint256 _value\n\t) public returns (bool);\n\n\tfunction approve(address _spender, uint256 _value) public returns (bool);\n\n\tevent Transfer(address indexed from, address indexed to, uint256 value);\n\tevent Approval(address indexed owner, address indexed spender, uint256 value);\n}\n", - "sourcePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20.sol", + "sourcePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20.sol", "ast": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20.sol", "exportedSymbols": { "IERC20": [ - 1294 + 1885 ] }, - "id": 1295, + "id": 1886, "nodeType": "SourceUnit", "nodes": [ { - "id": 1221, + "id": 1812, "literals": [ "solidity", ">=", @@ -271,7 +271,7 @@ ".0" ], "nodeType": "PragmaDirective", - "src": "118:31:5" + "src": "118:31:7" }, { "baseContracts": [], @@ -279,20 +279,20 @@ "contractKind": "contract", "documentation": null, "fullyImplemented": false, - "id": 1294, + "id": 1885, "linearizedBaseContracts": [ - 1294 + 1885 ], "name": "IERC20", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 1223, + "id": 1814, "name": "name", "nodeType": "VariableDeclaration", - "scope": 1294, - "src": "170:18:5", + "scope": 1885, + "src": "170:18:7", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -300,10 +300,10 @@ "typeString": "string" }, "typeName": { - "id": 1222, + "id": 1813, "name": "string", "nodeType": "ElementaryTypeName", - "src": "170:6:5", + "src": "170:6:7", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -314,11 +314,11 @@ }, { "constant": false, - "id": 1225, + "id": 1816, "name": "decimals", "nodeType": "VariableDeclaration", - "scope": 1294, - "src": "191:21:5", + "scope": 1885, + "src": "191:21:7", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -326,10 +326,10 @@ "typeString": "uint8" }, "typeName": { - "id": 1224, + "id": 1815, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "191:5:5", + "src": "191:5:7", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -340,11 +340,11 @@ }, { "constant": false, - "id": 1227, + "id": 1818, "name": "symbol", "nodeType": "VariableDeclaration", - "scope": 1294, - "src": "215:20:5", + "scope": 1885, + "src": "215:20:7", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -352,10 +352,10 @@ "typeString": "string" }, "typeName": { - "id": 1226, + "id": 1817, "name": "string", "nodeType": "ElementaryTypeName", - "src": "215:6:5", + "src": "215:6:7", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -367,29 +367,29 @@ { "body": null, "documentation": null, - "id": 1232, + "id": 1823, "implemented": false, "kind": "function", "modifiers": [], "name": "totalSupply", "nodeType": "FunctionDefinition", "parameters": { - "id": 1228, + "id": 1819, "nodeType": "ParameterList", "parameters": [], - "src": "259:2:5" + "src": "259:2:7" }, "returnParameters": { - "id": 1231, + "id": 1822, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1230, + "id": 1821, "name": "", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "283:7:5", + "scope": 1823, + "src": "283:7:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -397,10 +397,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1229, + "id": 1820, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "283:7:5", + "src": "283:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -410,10 +410,10 @@ "visibility": "internal" } ], - "src": "282:9:5" + "src": "282:9:7" }, - "scope": 1294, - "src": "239:53:5", + "scope": 1885, + "src": "239:53:7", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -421,23 +421,23 @@ { "body": null, "documentation": null, - "id": 1239, + "id": 1830, "implemented": false, "kind": "function", "modifiers": [], "name": "balanceOf", "nodeType": "FunctionDefinition", "parameters": { - "id": 1235, + "id": 1826, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1234, + "id": 1825, "name": "_who", "nodeType": "VariableDeclaration", - "scope": 1239, - "src": "314:12:5", + "scope": 1830, + "src": "314:12:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -445,10 +445,10 @@ "typeString": "address" }, "typeName": { - "id": 1233, + "id": 1824, "name": "address", "nodeType": "ElementaryTypeName", - "src": "314:7:5", + "src": "314:7:7", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -459,19 +459,19 @@ "visibility": "internal" } ], - "src": "313:14:5" + "src": "313:14:7" }, "returnParameters": { - "id": 1238, + "id": 1829, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1237, + "id": 1828, "name": "", "nodeType": "VariableDeclaration", - "scope": 1239, - "src": "349:7:5", + "scope": 1830, + "src": "349:7:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -479,10 +479,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1236, + "id": 1827, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "349:7:5", + "src": "349:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -492,10 +492,10 @@ "visibility": "internal" } ], - "src": "348:9:5" + "src": "348:9:7" }, - "scope": 1294, - "src": "295:63:5", + "scope": 1885, + "src": "295:63:7", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -503,23 +503,23 @@ { "body": null, "documentation": null, - "id": 1248, + "id": 1839, "implemented": false, "kind": "function", "modifiers": [], "name": "transfer", "nodeType": "FunctionDefinition", "parameters": { - "id": 1244, + "id": 1835, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1241, + "id": 1832, "name": "_to", "nodeType": "VariableDeclaration", - "scope": 1248, - "src": "379:11:5", + "scope": 1839, + "src": "379:11:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -527,10 +527,10 @@ "typeString": "address" }, "typeName": { - "id": 1240, + "id": 1831, "name": "address", "nodeType": "ElementaryTypeName", - "src": "379:7:5", + "src": "379:7:7", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -542,11 +542,11 @@ }, { "constant": false, - "id": 1243, + "id": 1834, "name": "_value", "nodeType": "VariableDeclaration", - "scope": 1248, - "src": "392:14:5", + "scope": 1839, + "src": "392:14:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -554,10 +554,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1242, + "id": 1833, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "392:7:5", + "src": "392:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -567,19 +567,19 @@ "visibility": "internal" } ], - "src": "378:29:5" + "src": "378:29:7" }, "returnParameters": { - "id": 1247, + "id": 1838, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1246, + "id": 1837, "name": "", "nodeType": "VariableDeclaration", - "scope": 1248, - "src": "424:4:5", + "scope": 1839, + "src": "424:4:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -587,10 +587,10 @@ "typeString": "bool" }, "typeName": { - "id": 1245, + "id": 1836, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "424:4:5", + "src": "424:4:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -600,10 +600,10 @@ "visibility": "internal" } ], - "src": "423:6:5" + "src": "423:6:7" }, - "scope": 1294, - "src": "361:69:5", + "scope": 1885, + "src": "361:69:7", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -611,23 +611,23 @@ { "body": null, "documentation": null, - "id": 1257, + "id": 1848, "implemented": false, "kind": "function", "modifiers": [], "name": "allowance", "nodeType": "FunctionDefinition", "parameters": { - "id": 1253, + "id": 1844, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1250, + "id": 1841, "name": "_owner", "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "452:14:5", + "scope": 1848, + "src": "452:14:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -635,10 +635,10 @@ "typeString": "address" }, "typeName": { - "id": 1249, + "id": 1840, "name": "address", "nodeType": "ElementaryTypeName", - "src": "452:7:5", + "src": "452:7:7", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -650,11 +650,11 @@ }, { "constant": false, - "id": 1252, + "id": 1843, "name": "_spender", "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "468:16:5", + "scope": 1848, + "src": "468:16:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -662,10 +662,10 @@ "typeString": "address" }, "typeName": { - "id": 1251, + "id": 1842, "name": "address", "nodeType": "ElementaryTypeName", - "src": "468:7:5", + "src": "468:7:7", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -676,19 +676,19 @@ "visibility": "internal" } ], - "src": "451:34:5" + "src": "451:34:7" }, "returnParameters": { - "id": 1256, + "id": 1847, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1255, + "id": 1846, "name": "", "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "507:7:5", + "scope": 1848, + "src": "507:7:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -696,10 +696,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1254, + "id": 1845, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "507:7:5", + "src": "507:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -709,10 +709,10 @@ "visibility": "internal" } ], - "src": "506:9:5" + "src": "506:9:7" }, - "scope": 1294, - "src": "433:83:5", + "scope": 1885, + "src": "433:83:7", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -720,23 +720,23 @@ { "body": null, "documentation": null, - "id": 1268, + "id": 1859, "implemented": false, "kind": "function", "modifiers": [], "name": "transferFrom", "nodeType": "FunctionDefinition", "parameters": { - "id": 1264, + "id": 1855, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1259, + "id": 1850, "name": "_from", "nodeType": "VariableDeclaration", - "scope": 1268, - "src": "544:13:5", + "scope": 1859, + "src": "544:13:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -744,10 +744,10 @@ "typeString": "address" }, "typeName": { - "id": 1258, + "id": 1849, "name": "address", "nodeType": "ElementaryTypeName", - "src": "544:7:5", + "src": "544:7:7", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -759,11 +759,11 @@ }, { "constant": false, - "id": 1261, + "id": 1852, "name": "_to", "nodeType": "VariableDeclaration", - "scope": 1268, - "src": "561:11:5", + "scope": 1859, + "src": "561:11:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -771,10 +771,10 @@ "typeString": "address" }, "typeName": { - "id": 1260, + "id": 1851, "name": "address", "nodeType": "ElementaryTypeName", - "src": "561:7:5", + "src": "561:7:7", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -786,11 +786,11 @@ }, { "constant": false, - "id": 1263, + "id": 1854, "name": "_value", "nodeType": "VariableDeclaration", - "scope": 1268, - "src": "576:14:5", + "scope": 1859, + "src": "576:14:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -798,10 +798,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1262, + "id": 1853, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "576:7:5", + "src": "576:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -811,19 +811,19 @@ "visibility": "internal" } ], - "src": "540:53:5" + "src": "540:53:7" }, "returnParameters": { - "id": 1267, + "id": 1858, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1266, + "id": 1857, "name": "", "nodeType": "VariableDeclaration", - "scope": 1268, - "src": "610:4:5", + "scope": 1859, + "src": "610:4:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -831,10 +831,10 @@ "typeString": "bool" }, "typeName": { - "id": 1265, + "id": 1856, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "610:4:5", + "src": "610:4:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -844,10 +844,10 @@ "visibility": "internal" } ], - "src": "609:6:5" + "src": "609:6:7" }, - "scope": 1294, - "src": "519:97:5", + "scope": 1885, + "src": "519:97:7", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -855,23 +855,23 @@ { "body": null, "documentation": null, - "id": 1277, + "id": 1868, "implemented": false, "kind": "function", "modifiers": [], "name": "approve", "nodeType": "FunctionDefinition", "parameters": { - "id": 1273, + "id": 1864, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1270, + "id": 1861, "name": "_spender", "nodeType": "VariableDeclaration", - "scope": 1277, - "src": "636:16:5", + "scope": 1868, + "src": "636:16:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -879,10 +879,10 @@ "typeString": "address" }, "typeName": { - "id": 1269, + "id": 1860, "name": "address", "nodeType": "ElementaryTypeName", - "src": "636:7:5", + "src": "636:7:7", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -894,11 +894,11 @@ }, { "constant": false, - "id": 1272, + "id": 1863, "name": "_value", "nodeType": "VariableDeclaration", - "scope": 1277, - "src": "654:14:5", + "scope": 1868, + "src": "654:14:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -906,10 +906,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1271, + "id": 1862, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "654:7:5", + "src": "654:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -919,19 +919,19 @@ "visibility": "internal" } ], - "src": "635:34:5" + "src": "635:34:7" }, "returnParameters": { - "id": 1276, + "id": 1867, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1275, + "id": 1866, "name": "", "nodeType": "VariableDeclaration", - "scope": 1277, - "src": "686:4:5", + "scope": 1868, + "src": "686:4:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -939,10 +939,10 @@ "typeString": "bool" }, "typeName": { - "id": 1274, + "id": 1865, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "686:4:5", + "src": "686:4:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -952,10 +952,10 @@ "visibility": "internal" } ], - "src": "685:6:5" + "src": "685:6:7" }, - "scope": 1294, - "src": "619:73:5", + "scope": 1885, + "src": "619:73:7", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -963,21 +963,21 @@ { "anonymous": false, "documentation": null, - "id": 1285, + "id": 1876, "name": "Transfer", "nodeType": "EventDefinition", "parameters": { - "id": 1284, + "id": 1875, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1279, + "id": 1870, "indexed": true, "name": "from", "nodeType": "VariableDeclaration", - "scope": 1285, - "src": "710:20:5", + "scope": 1876, + "src": "710:20:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -985,10 +985,10 @@ "typeString": "address" }, "typeName": { - "id": 1278, + "id": 1869, "name": "address", "nodeType": "ElementaryTypeName", - "src": "710:7:5", + "src": "710:7:7", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1000,12 +1000,12 @@ }, { "constant": false, - "id": 1281, + "id": 1872, "indexed": true, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1285, - "src": "732:18:5", + "scope": 1876, + "src": "732:18:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1013,10 +1013,10 @@ "typeString": "address" }, "typeName": { - "id": 1280, + "id": 1871, "name": "address", "nodeType": "ElementaryTypeName", - "src": "732:7:5", + "src": "732:7:7", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1028,12 +1028,12 @@ }, { "constant": false, - "id": 1283, + "id": 1874, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1285, - "src": "752:13:5", + "scope": 1876, + "src": "752:13:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1041,10 +1041,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1282, + "id": 1873, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "752:7:5", + "src": "752:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1054,28 +1054,28 @@ "visibility": "internal" } ], - "src": "709:57:5" + "src": "709:57:7" }, - "src": "695:72:5" + "src": "695:72:7" }, { "anonymous": false, "documentation": null, - "id": 1293, + "id": 1884, "name": "Approval", "nodeType": "EventDefinition", "parameters": { - "id": 1292, + "id": 1883, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1287, + "id": 1878, "indexed": true, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1293, - "src": "784:21:5", + "scope": 1884, + "src": "784:21:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1083,10 +1083,10 @@ "typeString": "address" }, "typeName": { - "id": 1286, + "id": 1877, "name": "address", "nodeType": "ElementaryTypeName", - "src": "784:7:5", + "src": "784:7:7", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1098,12 +1098,12 @@ }, { "constant": false, - "id": 1289, + "id": 1880, "indexed": true, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1293, - "src": "807:23:5", + "scope": 1884, + "src": "807:23:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1111,10 +1111,10 @@ "typeString": "address" }, "typeName": { - "id": 1288, + "id": 1879, "name": "address", "nodeType": "ElementaryTypeName", - "src": "807:7:5", + "src": "807:7:7", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1126,12 +1126,12 @@ }, { "constant": false, - "id": 1291, + "id": 1882, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1293, - "src": "832:13:5", + "scope": 1884, + "src": "832:13:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1139,10 +1139,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1290, + "id": 1881, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "832:7:5", + "src": "832:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1152,938 +1152,1003 @@ "visibility": "internal" } ], - "src": "783:63:5" + "src": "783:63:7" }, - "src": "769:78:5" + "src": "769:78:7" } ], - "scope": 1295, - "src": "151:698:5" + "scope": 1886, + "src": "151:698:7" } ], - "src": "118:732:5" + "src": "118:732:7" }, "legacyAST": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20.sol", - "exportedSymbols": { - "IERC20": [ - 1294 - ] + "attributes": { + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20.sol", + "exportedSymbols": { + "IERC20": [ + 1885 + ] + } }, - "id": 1295, - "nodeType": "SourceUnit", - "nodes": [ + "children": [ { - "id": 1221, - "literals": [ - "solidity", - ">=", - "0.5", - ".0", - "<", - "0.6", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "118:31:5" + "attributes": { + "literals": [ + "solidity", + ">=", + "0.5", + ".0", + "<", + "0.6", + ".0" + ] + }, + "id": 1812, + "name": "PragmaDirective", + "src": "118:31:7" }, { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": false, - "id": 1294, - "linearizedBaseContracts": [ - 1294 - ], - "name": "IERC20", - "nodeType": "ContractDefinition", - "nodes": [ + "attributes": { + "baseContracts": [ + null + ], + "contractDependencies": [ + null + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": false, + "linearizedBaseContracts": [ + 1885 + ], + "name": "IERC20", + "scope": 1886 + }, + "children": [ { - "constant": false, - "id": 1223, - "name": "name", - "nodeType": "VariableDeclaration", - "scope": 1294, - "src": "170:18:5", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string" + "attributes": { + "constant": false, + "name": "name", + "scope": 1885, + "stateVariable": true, + "storageLocation": "default", + "type": "string", + "value": null, + "visibility": "public" }, - "typeName": { - "id": 1222, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "170:6:5", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" + "children": [ + { + "attributes": { + "name": "string", + "type": "string" + }, + "id": 1813, + "name": "ElementaryTypeName", + "src": "170:6:7" } - }, - "value": null, - "visibility": "public" + ], + "id": 1814, + "name": "VariableDeclaration", + "src": "170:18:7" }, { - "constant": false, - "id": 1225, - "name": "decimals", - "nodeType": "VariableDeclaration", - "scope": 1294, - "src": "191:21:5", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "attributes": { + "constant": false, + "name": "decimals", + "scope": 1885, + "stateVariable": true, + "storageLocation": "default", + "type": "uint8", + "value": null, + "visibility": "public" }, - "typeName": { - "id": 1224, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "191:5:5", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "children": [ + { + "attributes": { + "name": "uint8", + "type": "uint8" + }, + "id": 1815, + "name": "ElementaryTypeName", + "src": "191:5:7" } - }, - "value": null, - "visibility": "public" + ], + "id": 1816, + "name": "VariableDeclaration", + "src": "191:21:7" }, { - "constant": false, - "id": 1227, - "name": "symbol", - "nodeType": "VariableDeclaration", - "scope": 1294, - "src": "215:20:5", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string" + "attributes": { + "constant": false, + "name": "symbol", + "scope": 1885, + "stateVariable": true, + "storageLocation": "default", + "type": "string", + "value": null, + "visibility": "public" }, - "typeName": { - "id": 1226, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "215:6:5", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" + "children": [ + { + "attributes": { + "name": "string", + "type": "string" + }, + "id": 1817, + "name": "ElementaryTypeName", + "src": "215:6:7" } + ], + "id": 1818, + "name": "VariableDeclaration", + "src": "215:20:7" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "totalSupply", + "scope": 1885, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" }, - "value": null, - "visibility": "public" + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 1819, + "name": "ParameterList", + "src": "259:2:7" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 1823, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 1820, + "name": "ElementaryTypeName", + "src": "283:7:7" + } + ], + "id": 1821, + "name": "VariableDeclaration", + "src": "283:7:7" + } + ], + "id": 1822, + "name": "ParameterList", + "src": "282:9:7" + } + ], + "id": 1823, + "name": "FunctionDefinition", + "src": "239:53:7" }, { - "body": null, - "documentation": null, - "id": 1232, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "totalSupply", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1228, - "nodeType": "ParameterList", - "parameters": [], - "src": "259:2:5" + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "balanceOf", + "scope": 1885, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" }, - "returnParameters": { - "id": 1231, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1230, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "283:7:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1229, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "283:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_who", + "scope": 1830, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1824, + "name": "ElementaryTypeName", + "src": "314:7:7" + } + ], + "id": 1825, + "name": "VariableDeclaration", + "src": "314:12:7" + } + ], + "id": 1826, + "name": "ParameterList", + "src": "313:14:7" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 1830, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 1827, + "name": "ElementaryTypeName", + "src": "349:7:7" + } + ], + "id": 1828, + "name": "VariableDeclaration", + "src": "349:7:7" + } + ], + "id": 1829, + "name": "ParameterList", + "src": "348:9:7" + } + ], + "id": 1830, + "name": "FunctionDefinition", + "src": "295:63:7" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "282:9:5" + "name": "transfer", + "scope": 1885, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" }, - "scope": 1294, - "src": "239:53:5", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_to", + "scope": 1839, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1831, + "name": "ElementaryTypeName", + "src": "379:7:7" + } + ], + "id": 1832, + "name": "VariableDeclaration", + "src": "379:11:7" + }, + { + "attributes": { + "constant": false, + "name": "_value", + "scope": 1839, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 1833, + "name": "ElementaryTypeName", + "src": "392:7:7" + } + ], + "id": 1834, + "name": "VariableDeclaration", + "src": "392:14:7" + } + ], + "id": 1835, + "name": "ParameterList", + "src": "378:29:7" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 1839, + "stateVariable": false, + "storageLocation": "default", + "type": "bool", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bool", + "type": "bool" + }, + "id": 1836, + "name": "ElementaryTypeName", + "src": "424:4:7" + } + ], + "id": 1837, + "name": "VariableDeclaration", + "src": "424:4:7" + } + ], + "id": 1838, + "name": "ParameterList", + "src": "423:6:7" + } + ], + "id": 1839, + "name": "FunctionDefinition", + "src": "361:69:7" }, { - "body": null, - "documentation": null, - "id": 1239, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "balanceOf", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1235, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1234, - "name": "_who", - "nodeType": "VariableDeclaration", - "scope": 1239, - "src": "314:12:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1233, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "314:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "313:14:5" + "name": "allowance", + "scope": 1885, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" }, - "returnParameters": { - "id": 1238, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1237, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1239, - "src": "349:7:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1236, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "349:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_owner", + "scope": 1848, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1840, + "name": "ElementaryTypeName", + "src": "452:7:7" + } + ], + "id": 1841, + "name": "VariableDeclaration", + "src": "452:14:7" + }, + { + "attributes": { + "constant": false, + "name": "_spender", + "scope": 1848, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1842, + "name": "ElementaryTypeName", + "src": "468:7:7" + } + ], + "id": 1843, + "name": "VariableDeclaration", + "src": "468:16:7" + } + ], + "id": 1844, + "name": "ParameterList", + "src": "451:34:7" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 1848, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 1845, + "name": "ElementaryTypeName", + "src": "507:7:7" + } + ], + "id": 1846, + "name": "VariableDeclaration", + "src": "507:7:7" + } + ], + "id": 1847, + "name": "ParameterList", + "src": "506:9:7" + } + ], + "id": 1848, + "name": "FunctionDefinition", + "src": "433:83:7" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "348:9:5" + "name": "transferFrom", + "scope": 1885, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" }, - "scope": 1294, - "src": "295:63:5", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_from", + "scope": 1859, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1849, + "name": "ElementaryTypeName", + "src": "544:7:7" + } + ], + "id": 1850, + "name": "VariableDeclaration", + "src": "544:13:7" + }, + { + "attributes": { + "constant": false, + "name": "_to", + "scope": 1859, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1851, + "name": "ElementaryTypeName", + "src": "561:7:7" + } + ], + "id": 1852, + "name": "VariableDeclaration", + "src": "561:11:7" + }, + { + "attributes": { + "constant": false, + "name": "_value", + "scope": 1859, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 1853, + "name": "ElementaryTypeName", + "src": "576:7:7" + } + ], + "id": 1854, + "name": "VariableDeclaration", + "src": "576:14:7" + } + ], + "id": 1855, + "name": "ParameterList", + "src": "540:53:7" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 1859, + "stateVariable": false, + "storageLocation": "default", + "type": "bool", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bool", + "type": "bool" + }, + "id": 1856, + "name": "ElementaryTypeName", + "src": "610:4:7" + } + ], + "id": 1857, + "name": "VariableDeclaration", + "src": "610:4:7" + } + ], + "id": 1858, + "name": "ParameterList", + "src": "609:6:7" + } + ], + "id": 1859, + "name": "FunctionDefinition", + "src": "519:97:7" }, { - "body": null, - "documentation": null, - "id": 1248, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "transfer", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1244, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1241, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 1248, - "src": "379:11:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1240, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "379:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1243, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 1248, - "src": "392:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1242, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "392:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "378:29:5" + "name": "approve", + "scope": 1885, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" }, - "returnParameters": { - "id": 1247, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1246, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1248, - "src": "424:4:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1245, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "424:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "423:6:5" - }, - "scope": 1294, - "src": "361:69:5", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": null, - "documentation": null, - "id": 1257, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "allowance", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1253, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1250, - "name": "_owner", - "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "452:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1249, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "452:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1252, - "name": "_spender", - "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "468:16:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1251, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "468:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "451:34:5" - }, - "returnParameters": { - "id": 1256, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1255, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "507:7:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1254, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "507:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "506:9:5" - }, - "scope": 1294, - "src": "433:83:5", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": null, - "documentation": null, - "id": 1268, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "transferFrom", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1264, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1259, - "name": "_from", - "nodeType": "VariableDeclaration", - "scope": 1268, - "src": "544:13:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1258, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "544:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1261, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 1268, - "src": "561:11:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1260, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "561:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1263, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 1268, - "src": "576:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1262, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "576:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "540:53:5" - }, - "returnParameters": { - "id": 1267, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1266, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1268, - "src": "610:4:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1265, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "610:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "609:6:5" - }, - "scope": 1294, - "src": "519:97:5", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": null, - "documentation": null, - "id": 1277, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "approve", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1273, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1270, - "name": "_spender", - "nodeType": "VariableDeclaration", - "scope": 1277, - "src": "636:16:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1269, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "636:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1272, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 1277, - "src": "654:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1271, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "654:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "635:34:5" - }, - "returnParameters": { - "id": 1276, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1275, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1277, - "src": "686:4:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1274, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "686:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "685:6:5" - }, - "scope": 1294, - "src": "619:73:5", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_spender", + "scope": 1868, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1860, + "name": "ElementaryTypeName", + "src": "636:7:7" + } + ], + "id": 1861, + "name": "VariableDeclaration", + "src": "636:16:7" + }, + { + "attributes": { + "constant": false, + "name": "_value", + "scope": 1868, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 1862, + "name": "ElementaryTypeName", + "src": "654:7:7" + } + ], + "id": 1863, + "name": "VariableDeclaration", + "src": "654:14:7" + } + ], + "id": 1864, + "name": "ParameterList", + "src": "635:34:7" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 1868, + "stateVariable": false, + "storageLocation": "default", + "type": "bool", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bool", + "type": "bool" + }, + "id": 1865, + "name": "ElementaryTypeName", + "src": "686:4:7" + } + ], + "id": 1866, + "name": "VariableDeclaration", + "src": "686:4:7" + } + ], + "id": 1867, + "name": "ParameterList", + "src": "685:6:7" + } + ], + "id": 1868, + "name": "FunctionDefinition", + "src": "619:73:7" }, { - "anonymous": false, - "documentation": null, - "id": 1285, - "name": "Transfer", - "nodeType": "EventDefinition", - "parameters": { - "id": 1284, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1279, - "indexed": true, - "name": "from", - "nodeType": "VariableDeclaration", - "scope": 1285, - "src": "710:20:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1278, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "710:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1281, - "indexed": true, - "name": "to", - "nodeType": "VariableDeclaration", - "scope": 1285, - "src": "732:18:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1280, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "732:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1283, - "indexed": false, - "name": "value", - "nodeType": "VariableDeclaration", - "scope": 1285, - "src": "752:13:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1282, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "752:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "709:57:5" + "attributes": { + "anonymous": false, + "documentation": null, + "name": "Transfer" }, - "src": "695:72:5" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "indexed": true, + "name": "from", + "scope": 1876, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1869, + "name": "ElementaryTypeName", + "src": "710:7:7" + } + ], + "id": 1870, + "name": "VariableDeclaration", + "src": "710:20:7" + }, + { + "attributes": { + "constant": false, + "indexed": true, + "name": "to", + "scope": 1876, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1871, + "name": "ElementaryTypeName", + "src": "732:7:7" + } + ], + "id": 1872, + "name": "VariableDeclaration", + "src": "732:18:7" + }, + { + "attributes": { + "constant": false, + "indexed": false, + "name": "value", + "scope": 1876, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 1873, + "name": "ElementaryTypeName", + "src": "752:7:7" + } + ], + "id": 1874, + "name": "VariableDeclaration", + "src": "752:13:7" + } + ], + "id": 1875, + "name": "ParameterList", + "src": "709:57:7" + } + ], + "id": 1876, + "name": "EventDefinition", + "src": "695:72:7" }, { - "anonymous": false, - "documentation": null, - "id": 1293, - "name": "Approval", - "nodeType": "EventDefinition", - "parameters": { - "id": 1292, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1287, - "indexed": true, - "name": "owner", - "nodeType": "VariableDeclaration", - "scope": 1293, - "src": "784:21:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1286, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "784:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1289, - "indexed": true, - "name": "spender", - "nodeType": "VariableDeclaration", - "scope": 1293, - "src": "807:23:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1288, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "807:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1291, - "indexed": false, - "name": "value", - "nodeType": "VariableDeclaration", - "scope": 1293, - "src": "832:13:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1290, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "832:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "783:63:5" + "attributes": { + "anonymous": false, + "documentation": null, + "name": "Approval" }, - "src": "769:78:5" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "indexed": true, + "name": "owner", + "scope": 1884, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1877, + "name": "ElementaryTypeName", + "src": "784:7:7" + } + ], + "id": 1878, + "name": "VariableDeclaration", + "src": "784:21:7" + }, + { + "attributes": { + "constant": false, + "indexed": true, + "name": "spender", + "scope": 1884, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1879, + "name": "ElementaryTypeName", + "src": "807:7:7" + } + ], + "id": 1880, + "name": "VariableDeclaration", + "src": "807:23:7" + }, + { + "attributes": { + "constant": false, + "indexed": false, + "name": "value", + "scope": 1884, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 1881, + "name": "ElementaryTypeName", + "src": "832:7:7" + } + ], + "id": 1882, + "name": "VariableDeclaration", + "src": "832:13:7" + } + ], + "id": 1883, + "name": "ParameterList", + "src": "783:63:7" + } + ], + "id": 1884, + "name": "EventDefinition", + "src": "769:78:7" } ], - "scope": 1295, - "src": "151:698:5" + "id": 1885, + "name": "ContractDefinition", + "src": "151:698:7" } ], - "src": "118:732:5" + "id": 1886, + "name": "SourceUnit", + "src": "118:732:7" }, "compiler": { "name": "solc", "version": "0.5.16+commit.9c3226ce.Emscripten.clang" }, "networks": {}, - "schemaVersion": "3.3.2", - "updatedAt": "2021-03-26T10:10:09.410Z", + "schemaVersion": "3.4.1", + "updatedAt": "2022-02-15T06:13:50.457Z", "devdoc": { "methods": {} }, diff --git a/rbtcwrapperproxy/build/contracts/IERC20Token.json b/rbtcwrapperproxy/build/contracts/IERC20Token.json index 6533f8c..e876dcf 100644 --- a/rbtcwrapperproxy/build/contracts/IERC20Token.json +++ b/rbtcwrapperproxy/build/contracts/IERC20Token.json @@ -192,25 +192,25 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol\":\"IERC20Token\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol\":{\"keccak256\":\"0x85f3acaf53418f63817c8b5d8e047203891bbb9c3fc9558a541a8c446857783b\",\"urls\":[\"bzz-raw://b80d05aeb3fc866a791d3de7f7a8d7c2a65dddc72ad436920e3f043414c82158\",\"dweb:/ipfs/QmVXNmZfw6pQ2xg6xJwHR5ptCxGKx9PRzX9dgQWK7KUTTE\"]}},\"version\":1}", + "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol\":\"IERC20Token\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol\":{\"keccak256\":\"0x85f3acaf53418f63817c8b5d8e047203891bbb9c3fc9558a541a8c446857783b\",\"urls\":[\"bzz-raw://b80d05aeb3fc866a791d3de7f7a8d7c2a65dddc72ad436920e3f043414c82158\",\"dweb:/ipfs/QmVXNmZfw6pQ2xg6xJwHR5ptCxGKx9PRzX9dgQWK7KUTTE\"]}},\"version\":1}", "bytecode": "0x", "deployedBytecode": "0x", "sourceMap": "", "deployedSourceMap": "", "source": "pragma solidity >=0.5.0 <0.6.0;\n\n/*\n ERC20 Standard Token interface\n*/\ncontract IERC20Token {\n\t// these functions aren't abstract since the compiler emits automatically generated getter functions as external\n\tfunction name() public view returns (string memory) {\n\t\tthis;\n\t}\n\n\tfunction symbol() public view returns (string memory) {\n\t\tthis;\n\t}\n\n\tfunction decimals() public view returns (uint8) {\n\t\tthis;\n\t}\n\n\tfunction totalSupply() public view returns (uint256) {\n\t\tthis;\n\t}\n\n\tfunction balanceOf(address _owner) public view returns (uint256) {\n\t\t_owner;\n\t\tthis;\n\t}\n\n\tfunction allowance(address _owner, address _spender) public view returns (uint256) {\n\t\t_owner;\n\t\t_spender;\n\t\tthis;\n\t}\n\n\tfunction transfer(address _to, uint256 _value) public returns (bool success);\n\n\tfunction transferFrom(\n\t\taddress _from,\n\t\taddress _to,\n\t\tuint256 _value\n\t) public returns (bool success);\n\n\tfunction approve(address _spender, uint256 _value) public returns (bool success);\n}\n", - "sourcePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol", + "sourcePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol", "ast": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol", "exportedSymbols": { "IERC20Token": [ - 1386 + 1977 ] }, - "id": 1387, + "id": 1978, "nodeType": "SourceUnit", "nodes": [ { - "id": 1296, + "id": 1887, "literals": [ "solidity", ">=", @@ -221,7 +221,7 @@ ".0" ], "nodeType": "PragmaDirective", - "src": "0:31:6" + "src": "0:31:8" }, { "baseContracts": [], @@ -229,63 +229,63 @@ "contractKind": "contract", "documentation": null, "fullyImplemented": false, - "id": 1386, + "id": 1977, "linearizedBaseContracts": [ - 1386 + 1977 ], "name": "IERC20Token", "nodeType": "ContractDefinition", "nodes": [ { "body": { - "id": 1303, + "id": 1894, "nodeType": "Block", - "src": "264:12:6", + "src": "264:12:8", "statements": [ { "expression": { "argumentTypes": null, - "id": 1301, + "id": 1892, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2257, - "src": "268:4:6", + "referencedDeclaration": 3522, + "src": "268:4:8", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" } }, - "id": 1302, + "id": 1893, "nodeType": "ExpressionStatement", - "src": "268:4:6" + "src": "268:4:8" } ] }, "documentation": null, - "id": 1304, + "id": 1895, "implemented": true, "kind": "function", "modifiers": [], "name": "name", "nodeType": "FunctionDefinition", "parameters": { - "id": 1297, + "id": 1888, "nodeType": "ParameterList", "parameters": [], - "src": "225:2:6" + "src": "225:2:8" }, "returnParameters": { - "id": 1300, + "id": 1891, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1299, + "id": 1890, "name": "", "nodeType": "VariableDeclaration", - "scope": 1304, - "src": "249:13:6", + "scope": 1895, + "src": "249:13:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -293,10 +293,10 @@ "typeString": "string" }, "typeName": { - "id": 1298, + "id": 1889, "name": "string", "nodeType": "ElementaryTypeName", - "src": "249:6:6", + "src": "249:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -306,64 +306,64 @@ "visibility": "internal" } ], - "src": "248:15:6" + "src": "248:15:8" }, - "scope": 1386, - "src": "212:64:6", + "scope": 1977, + "src": "212:64:8", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1311, + "id": 1902, "nodeType": "Block", - "src": "333:12:6", + "src": "333:12:8", "statements": [ { "expression": { "argumentTypes": null, - "id": 1309, + "id": 1900, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2257, - "src": "337:4:6", + "referencedDeclaration": 3522, + "src": "337:4:8", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" } }, - "id": 1310, + "id": 1901, "nodeType": "ExpressionStatement", - "src": "337:4:6" + "src": "337:4:8" } ] }, "documentation": null, - "id": 1312, + "id": 1903, "implemented": true, "kind": "function", "modifiers": [], "name": "symbol", "nodeType": "FunctionDefinition", "parameters": { - "id": 1305, + "id": 1896, "nodeType": "ParameterList", "parameters": [], - "src": "294:2:6" + "src": "294:2:8" }, "returnParameters": { - "id": 1308, + "id": 1899, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1307, + "id": 1898, "name": "", "nodeType": "VariableDeclaration", - "scope": 1312, - "src": "318:13:6", + "scope": 1903, + "src": "318:13:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -371,10 +371,10 @@ "typeString": "string" }, "typeName": { - "id": 1306, + "id": 1897, "name": "string", "nodeType": "ElementaryTypeName", - "src": "318:6:6", + "src": "318:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -384,64 +384,64 @@ "visibility": "internal" } ], - "src": "317:15:6" + "src": "317:15:8" }, - "scope": 1386, - "src": "279:66:6", + "scope": 1977, + "src": "279:66:8", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1319, + "id": 1910, "nodeType": "Block", - "src": "396:12:6", + "src": "396:12:8", "statements": [ { "expression": { "argumentTypes": null, - "id": 1317, + "id": 1908, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2257, - "src": "400:4:6", + "referencedDeclaration": 3522, + "src": "400:4:8", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" } }, - "id": 1318, + "id": 1909, "nodeType": "ExpressionStatement", - "src": "400:4:6" + "src": "400:4:8" } ] }, "documentation": null, - "id": 1320, + "id": 1911, "implemented": true, "kind": "function", "modifiers": [], "name": "decimals", "nodeType": "FunctionDefinition", "parameters": { - "id": 1313, + "id": 1904, "nodeType": "ParameterList", "parameters": [], - "src": "365:2:6" + "src": "365:2:8" }, "returnParameters": { - "id": 1316, + "id": 1907, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1315, + "id": 1906, "name": "", "nodeType": "VariableDeclaration", - "scope": 1320, - "src": "389:5:6", + "scope": 1911, + "src": "389:5:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -449,10 +449,10 @@ "typeString": "uint8" }, "typeName": { - "id": 1314, + "id": 1905, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "389:5:6", + "src": "389:5:8", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -462,64 +462,64 @@ "visibility": "internal" } ], - "src": "388:7:6" + "src": "388:7:8" }, - "scope": 1386, - "src": "348:60:6", + "scope": 1977, + "src": "348:60:8", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1327, + "id": 1918, "nodeType": "Block", - "src": "464:12:6", + "src": "464:12:8", "statements": [ { "expression": { "argumentTypes": null, - "id": 1325, + "id": 1916, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2257, - "src": "468:4:6", + "referencedDeclaration": 3522, + "src": "468:4:8", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" } }, - "id": 1326, + "id": 1917, "nodeType": "ExpressionStatement", - "src": "468:4:6" + "src": "468:4:8" } ] }, "documentation": null, - "id": 1328, + "id": 1919, "implemented": true, "kind": "function", "modifiers": [], "name": "totalSupply", "nodeType": "FunctionDefinition", "parameters": { - "id": 1321, + "id": 1912, "nodeType": "ParameterList", "parameters": [], - "src": "431:2:6" + "src": "431:2:8" }, "returnParameters": { - "id": 1324, + "id": 1915, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1323, + "id": 1914, "name": "", "nodeType": "VariableDeclaration", - "scope": 1328, - "src": "455:7:6", + "scope": 1919, + "src": "455:7:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -527,10 +527,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1322, + "id": 1913, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "455:7:6", + "src": "455:7:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -540,76 +540,76 @@ "visibility": "internal" } ], - "src": "454:9:6" + "src": "454:9:8" }, - "scope": 1386, - "src": "411:65:6", + "scope": 1977, + "src": "411:65:8", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1339, + "id": 1930, "nodeType": "Block", - "src": "544:22:6", + "src": "544:22:8", "statements": [ { "expression": { "argumentTypes": null, - "id": 1335, + "id": 1926, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1330, - "src": "548:6:6", + "referencedDeclaration": 1921, + "src": "548:6:8", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1336, + "id": 1927, "nodeType": "ExpressionStatement", - "src": "548:6:6" + "src": "548:6:8" }, { "expression": { "argumentTypes": null, - "id": 1337, + "id": 1928, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2257, - "src": "558:4:6", + "referencedDeclaration": 3522, + "src": "558:4:8", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" } }, - "id": 1338, + "id": 1929, "nodeType": "ExpressionStatement", - "src": "558:4:6" + "src": "558:4:8" } ] }, "documentation": null, - "id": 1340, + "id": 1931, "implemented": true, "kind": "function", "modifiers": [], "name": "balanceOf", "nodeType": "FunctionDefinition", "parameters": { - "id": 1331, + "id": 1922, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1330, + "id": 1921, "name": "_owner", "nodeType": "VariableDeclaration", - "scope": 1340, - "src": "498:14:6", + "scope": 1931, + "src": "498:14:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -617,10 +617,10 @@ "typeString": "address" }, "typeName": { - "id": 1329, + "id": 1920, "name": "address", "nodeType": "ElementaryTypeName", - "src": "498:7:6", + "src": "498:7:8", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -631,19 +631,19 @@ "visibility": "internal" } ], - "src": "497:16:6" + "src": "497:16:8" }, "returnParameters": { - "id": 1334, + "id": 1925, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1333, + "id": 1924, "name": "", "nodeType": "VariableDeclaration", - "scope": 1340, - "src": "535:7:6", + "scope": 1931, + "src": "535:7:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -651,10 +651,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1332, + "id": 1923, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "535:7:6", + "src": "535:7:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -664,94 +664,94 @@ "visibility": "internal" } ], - "src": "534:9:6" + "src": "534:9:8" }, - "scope": 1386, - "src": "479:87:6", + "scope": 1977, + "src": "479:87:8", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1355, + "id": 1946, "nodeType": "Block", - "src": "652:34:6", + "src": "652:34:8", "statements": [ { "expression": { "argumentTypes": null, - "id": 1349, + "id": 1940, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1342, - "src": "656:6:6", + "referencedDeclaration": 1933, + "src": "656:6:8", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1350, + "id": 1941, "nodeType": "ExpressionStatement", - "src": "656:6:6" + "src": "656:6:8" }, { "expression": { "argumentTypes": null, - "id": 1351, + "id": 1942, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1344, - "src": "666:8:6", + "referencedDeclaration": 1935, + "src": "666:8:8", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1352, + "id": 1943, "nodeType": "ExpressionStatement", - "src": "666:8:6" + "src": "666:8:8" }, { "expression": { "argumentTypes": null, - "id": 1353, + "id": 1944, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2257, - "src": "678:4:6", + "referencedDeclaration": 3522, + "src": "678:4:8", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" } }, - "id": 1354, + "id": 1945, "nodeType": "ExpressionStatement", - "src": "678:4:6" + "src": "678:4:8" } ] }, "documentation": null, - "id": 1356, + "id": 1947, "implemented": true, "kind": "function", "modifiers": [], "name": "allowance", "nodeType": "FunctionDefinition", "parameters": { - "id": 1345, + "id": 1936, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1342, + "id": 1933, "name": "_owner", "nodeType": "VariableDeclaration", - "scope": 1356, - "src": "588:14:6", + "scope": 1947, + "src": "588:14:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -759,10 +759,10 @@ "typeString": "address" }, "typeName": { - "id": 1341, + "id": 1932, "name": "address", "nodeType": "ElementaryTypeName", - "src": "588:7:6", + "src": "588:7:8", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -774,11 +774,11 @@ }, { "constant": false, - "id": 1344, + "id": 1935, "name": "_spender", "nodeType": "VariableDeclaration", - "scope": 1356, - "src": "604:16:6", + "scope": 1947, + "src": "604:16:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -786,10 +786,10 @@ "typeString": "address" }, "typeName": { - "id": 1343, + "id": 1934, "name": "address", "nodeType": "ElementaryTypeName", - "src": "604:7:6", + "src": "604:7:8", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -800,19 +800,19 @@ "visibility": "internal" } ], - "src": "587:34:6" + "src": "587:34:8" }, "returnParameters": { - "id": 1348, + "id": 1939, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1347, + "id": 1938, "name": "", "nodeType": "VariableDeclaration", - "scope": 1356, - "src": "643:7:6", + "scope": 1947, + "src": "643:7:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -820,10 +820,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1346, + "id": 1937, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "643:7:6", + "src": "643:7:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -833,10 +833,10 @@ "visibility": "internal" } ], - "src": "642:9:6" + "src": "642:9:8" }, - "scope": 1386, - "src": "569:117:6", + "scope": 1977, + "src": "569:117:8", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -844,23 +844,23 @@ { "body": null, "documentation": null, - "id": 1365, + "id": 1956, "implemented": false, "kind": "function", "modifiers": [], "name": "transfer", "nodeType": "FunctionDefinition", "parameters": { - "id": 1361, + "id": 1952, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1358, + "id": 1949, "name": "_to", "nodeType": "VariableDeclaration", - "scope": 1365, - "src": "707:11:6", + "scope": 1956, + "src": "707:11:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -868,10 +868,10 @@ "typeString": "address" }, "typeName": { - "id": 1357, + "id": 1948, "name": "address", "nodeType": "ElementaryTypeName", - "src": "707:7:6", + "src": "707:7:8", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -883,11 +883,11 @@ }, { "constant": false, - "id": 1360, + "id": 1951, "name": "_value", "nodeType": "VariableDeclaration", - "scope": 1365, - "src": "720:14:6", + "scope": 1956, + "src": "720:14:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -895,10 +895,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1359, + "id": 1950, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "720:7:6", + "src": "720:7:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -908,19 +908,19 @@ "visibility": "internal" } ], - "src": "706:29:6" + "src": "706:29:8" }, "returnParameters": { - "id": 1364, + "id": 1955, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1363, + "id": 1954, "name": "success", "nodeType": "VariableDeclaration", - "scope": 1365, - "src": "752:12:6", + "scope": 1956, + "src": "752:12:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -928,10 +928,10 @@ "typeString": "bool" }, "typeName": { - "id": 1362, + "id": 1953, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "752:4:6", + "src": "752:4:8", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -941,10 +941,10 @@ "visibility": "internal" } ], - "src": "751:14:6" + "src": "751:14:8" }, - "scope": 1386, - "src": "689:77:6", + "scope": 1977, + "src": "689:77:8", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -952,23 +952,23 @@ { "body": null, "documentation": null, - "id": 1376, + "id": 1967, "implemented": false, "kind": "function", "modifiers": [], "name": "transferFrom", "nodeType": "FunctionDefinition", "parameters": { - "id": 1372, + "id": 1963, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1367, + "id": 1958, "name": "_from", "nodeType": "VariableDeclaration", - "scope": 1376, - "src": "794:13:6", + "scope": 1967, + "src": "794:13:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -976,10 +976,10 @@ "typeString": "address" }, "typeName": { - "id": 1366, + "id": 1957, "name": "address", "nodeType": "ElementaryTypeName", - "src": "794:7:6", + "src": "794:7:8", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -991,11 +991,11 @@ }, { "constant": false, - "id": 1369, + "id": 1960, "name": "_to", "nodeType": "VariableDeclaration", - "scope": 1376, - "src": "811:11:6", + "scope": 1967, + "src": "811:11:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1003,10 +1003,10 @@ "typeString": "address" }, "typeName": { - "id": 1368, + "id": 1959, "name": "address", "nodeType": "ElementaryTypeName", - "src": "811:7:6", + "src": "811:7:8", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1018,11 +1018,11 @@ }, { "constant": false, - "id": 1371, + "id": 1962, "name": "_value", "nodeType": "VariableDeclaration", - "scope": 1376, - "src": "826:14:6", + "scope": 1967, + "src": "826:14:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1030,10 +1030,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1370, + "id": 1961, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "826:7:6", + "src": "826:7:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1043,19 +1043,19 @@ "visibility": "internal" } ], - "src": "790:53:6" + "src": "790:53:8" }, "returnParameters": { - "id": 1375, + "id": 1966, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1374, + "id": 1965, "name": "success", "nodeType": "VariableDeclaration", - "scope": 1376, - "src": "860:12:6", + "scope": 1967, + "src": "860:12:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1063,10 +1063,10 @@ "typeString": "bool" }, "typeName": { - "id": 1373, + "id": 1964, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "860:4:6", + "src": "860:4:8", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1076,10 +1076,10 @@ "visibility": "internal" } ], - "src": "859:14:6" + "src": "859:14:8" }, - "scope": 1386, - "src": "769:105:6", + "scope": 1977, + "src": "769:105:8", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -1087,23 +1087,23 @@ { "body": null, "documentation": null, - "id": 1385, + "id": 1976, "implemented": false, "kind": "function", "modifiers": [], "name": "approve", "nodeType": "FunctionDefinition", "parameters": { - "id": 1381, + "id": 1972, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1378, + "id": 1969, "name": "_spender", "nodeType": "VariableDeclaration", - "scope": 1385, - "src": "894:16:6", + "scope": 1976, + "src": "894:16:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1111,10 +1111,10 @@ "typeString": "address" }, "typeName": { - "id": 1377, + "id": 1968, "name": "address", "nodeType": "ElementaryTypeName", - "src": "894:7:6", + "src": "894:7:8", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1126,11 +1126,11 @@ }, { "constant": false, - "id": 1380, + "id": 1971, "name": "_value", "nodeType": "VariableDeclaration", - "scope": 1385, - "src": "912:14:6", + "scope": 1976, + "src": "912:14:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1138,10 +1138,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1379, + "id": 1970, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "912:7:6", + "src": "912:7:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1151,19 +1151,19 @@ "visibility": "internal" } ], - "src": "893:34:6" + "src": "893:34:8" }, "returnParameters": { - "id": 1384, + "id": 1975, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1383, + "id": 1974, "name": "success", "nodeType": "VariableDeclaration", - "scope": 1385, - "src": "944:12:6", + "scope": 1976, + "src": "944:12:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1171,10 +1171,10 @@ "typeString": "bool" }, "typeName": { - "id": 1382, + "id": 1973, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "944:4:6", + "src": "944:4:8", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1184,1028 +1184,1148 @@ "visibility": "internal" } ], - "src": "943:14:6" + "src": "943:14:8" }, - "scope": 1386, - "src": "877:81:6", + "scope": 1977, + "src": "877:81:8", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" } ], - "scope": 1387, - "src": "74:886:6" + "scope": 1978, + "src": "74:886:8" } ], - "src": "0:961:6" + "src": "0:961:8" }, "legacyAST": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol", - "exportedSymbols": { - "IERC20Token": [ - 1386 - ] + "attributes": { + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol", + "exportedSymbols": { + "IERC20Token": [ + 1977 + ] + } }, - "id": 1387, - "nodeType": "SourceUnit", - "nodes": [ + "children": [ { - "id": 1296, - "literals": [ - "solidity", - ">=", - "0.5", - ".0", - "<", - "0.6", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "0:31:6" + "attributes": { + "literals": [ + "solidity", + ">=", + "0.5", + ".0", + "<", + "0.6", + ".0" + ] + }, + "id": 1887, + "name": "PragmaDirective", + "src": "0:31:8" }, { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": false, - "id": 1386, - "linearizedBaseContracts": [ - 1386 - ], - "name": "IERC20Token", - "nodeType": "ContractDefinition", - "nodes": [ + "attributes": { + "baseContracts": [ + null + ], + "contractDependencies": [ + null + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": false, + "linearizedBaseContracts": [ + 1977 + ], + "name": "IERC20Token", + "scope": 1978 + }, + "children": [ { - "body": { - "id": 1303, - "nodeType": "Block", - "src": "264:12:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1301, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2257, - "src": "268:4:6", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "id": 1302, - "nodeType": "ExpressionStatement", - "src": "268:4:6" - } - ] - }, - "documentation": null, - "id": 1304, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "name", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1297, - "nodeType": "ParameterList", - "parameters": [], - "src": "225:2:6" - }, - "returnParameters": { - "id": 1300, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1299, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1304, - "src": "249:13:6", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1298, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "249:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "248:15:6" + "name": "name", + "scope": 1977, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" }, - "scope": 1386, - "src": "212:64:6", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 1888, + "name": "ParameterList", + "src": "225:2:8" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 1895, + "stateVariable": false, + "storageLocation": "memory", + "type": "string", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "string", + "type": "string" + }, + "id": 1889, + "name": "ElementaryTypeName", + "src": "249:6:8" + } + ], + "id": 1890, + "name": "VariableDeclaration", + "src": "249:13:8" + } + ], + "id": 1891, + "name": "ParameterList", + "src": "248:15:8" + }, + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3522, + "type": "contract IERC20Token", + "value": "this" + }, + "id": 1892, + "name": "Identifier", + "src": "268:4:8" + } + ], + "id": 1893, + "name": "ExpressionStatement", + "src": "268:4:8" + } + ], + "id": 1894, + "name": "Block", + "src": "264:12:8" + } + ], + "id": 1895, + "name": "FunctionDefinition", + "src": "212:64:8" }, { - "body": { - "id": 1311, - "nodeType": "Block", - "src": "333:12:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1309, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2257, - "src": "337:4:6", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "id": 1310, - "nodeType": "ExpressionStatement", - "src": "337:4:6" - } - ] - }, - "documentation": null, - "id": 1312, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "symbol", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1305, - "nodeType": "ParameterList", - "parameters": [], - "src": "294:2:6" - }, - "returnParameters": { - "id": 1308, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1307, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1312, - "src": "318:13:6", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1306, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "318:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "317:15:6" + "name": "symbol", + "scope": 1977, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" }, - "scope": 1386, - "src": "279:66:6", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 1896, + "name": "ParameterList", + "src": "294:2:8" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 1903, + "stateVariable": false, + "storageLocation": "memory", + "type": "string", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "string", + "type": "string" + }, + "id": 1897, + "name": "ElementaryTypeName", + "src": "318:6:8" + } + ], + "id": 1898, + "name": "VariableDeclaration", + "src": "318:13:8" + } + ], + "id": 1899, + "name": "ParameterList", + "src": "317:15:8" + }, + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3522, + "type": "contract IERC20Token", + "value": "this" + }, + "id": 1900, + "name": "Identifier", + "src": "337:4:8" + } + ], + "id": 1901, + "name": "ExpressionStatement", + "src": "337:4:8" + } + ], + "id": 1902, + "name": "Block", + "src": "333:12:8" + } + ], + "id": 1903, + "name": "FunctionDefinition", + "src": "279:66:8" }, { - "body": { - "id": 1319, - "nodeType": "Block", - "src": "396:12:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1317, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2257, - "src": "400:4:6", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "id": 1318, - "nodeType": "ExpressionStatement", - "src": "400:4:6" - } - ] + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "decimals", + "scope": 1977, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" }, - "documentation": null, - "id": 1320, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "decimals", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1313, - "nodeType": "ParameterList", - "parameters": [], - "src": "365:2:6" + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 1904, + "name": "ParameterList", + "src": "365:2:8" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 1911, + "stateVariable": false, + "storageLocation": "default", + "type": "uint8", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint8", + "type": "uint8" + }, + "id": 1905, + "name": "ElementaryTypeName", + "src": "389:5:8" + } + ], + "id": 1906, + "name": "VariableDeclaration", + "src": "389:5:8" + } + ], + "id": 1907, + "name": "ParameterList", + "src": "388:7:8" + }, + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3522, + "type": "contract IERC20Token", + "value": "this" + }, + "id": 1908, + "name": "Identifier", + "src": "400:4:8" + } + ], + "id": 1909, + "name": "ExpressionStatement", + "src": "400:4:8" + } + ], + "id": 1910, + "name": "Block", + "src": "396:12:8" + } + ], + "id": 1911, + "name": "FunctionDefinition", + "src": "348:60:8" + }, + { + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "totalSupply", + "scope": 1977, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" }, - "returnParameters": { - "id": 1316, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1315, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1320, - "src": "389:5:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 1314, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "389:5:6", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": null, - "visibility": "internal" - } + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 1912, + "name": "ParameterList", + "src": "431:2:8" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 1919, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 1913, + "name": "ElementaryTypeName", + "src": "455:7:8" + } + ], + "id": 1914, + "name": "VariableDeclaration", + "src": "455:7:8" + } + ], + "id": 1915, + "name": "ParameterList", + "src": "454:9:8" + }, + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3522, + "type": "contract IERC20Token", + "value": "this" + }, + "id": 1916, + "name": "Identifier", + "src": "468:4:8" + } + ], + "id": 1917, + "name": "ExpressionStatement", + "src": "468:4:8" + } + ], + "id": 1918, + "name": "Block", + "src": "464:12:8" + } + ], + "id": 1919, + "name": "FunctionDefinition", + "src": "411:65:8" + }, + { + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "388:7:6" + "name": "balanceOf", + "scope": 1977, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" }, - "scope": 1386, - "src": "348:60:6", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_owner", + "scope": 1931, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1920, + "name": "ElementaryTypeName", + "src": "498:7:8" + } + ], + "id": 1921, + "name": "VariableDeclaration", + "src": "498:14:8" + } + ], + "id": 1922, + "name": "ParameterList", + "src": "497:16:8" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 1931, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 1923, + "name": "ElementaryTypeName", + "src": "535:7:8" + } + ], + "id": 1924, + "name": "VariableDeclaration", + "src": "535:7:8" + } + ], + "id": 1925, + "name": "ParameterList", + "src": "534:9:8" + }, + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1921, + "type": "address", + "value": "_owner" + }, + "id": 1926, + "name": "Identifier", + "src": "548:6:8" + } + ], + "id": 1927, + "name": "ExpressionStatement", + "src": "548:6:8" + }, + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3522, + "type": "contract IERC20Token", + "value": "this" + }, + "id": 1928, + "name": "Identifier", + "src": "558:4:8" + } + ], + "id": 1929, + "name": "ExpressionStatement", + "src": "558:4:8" + } + ], + "id": 1930, + "name": "Block", + "src": "544:22:8" + } + ], + "id": 1931, + "name": "FunctionDefinition", + "src": "479:87:8" }, { - "body": { - "id": 1327, - "nodeType": "Block", - "src": "464:12:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1325, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2257, - "src": "468:4:6", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "id": 1326, - "nodeType": "ExpressionStatement", - "src": "468:4:6" - } - ] + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "allowance", + "scope": 1977, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" }, - "documentation": null, - "id": 1328, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "totalSupply", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1321, - "nodeType": "ParameterList", - "parameters": [], - "src": "431:2:6" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_owner", + "scope": 1947, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1932, + "name": "ElementaryTypeName", + "src": "588:7:8" + } + ], + "id": 1933, + "name": "VariableDeclaration", + "src": "588:14:8" + }, + { + "attributes": { + "constant": false, + "name": "_spender", + "scope": 1947, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1934, + "name": "ElementaryTypeName", + "src": "604:7:8" + } + ], + "id": 1935, + "name": "VariableDeclaration", + "src": "604:16:8" + } + ], + "id": 1936, + "name": "ParameterList", + "src": "587:34:8" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 1947, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 1937, + "name": "ElementaryTypeName", + "src": "643:7:8" + } + ], + "id": 1938, + "name": "VariableDeclaration", + "src": "643:7:8" + } + ], + "id": 1939, + "name": "ParameterList", + "src": "642:9:8" + }, + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1933, + "type": "address", + "value": "_owner" + }, + "id": 1940, + "name": "Identifier", + "src": "656:6:8" + } + ], + "id": 1941, + "name": "ExpressionStatement", + "src": "656:6:8" + }, + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1935, + "type": "address", + "value": "_spender" + }, + "id": 1942, + "name": "Identifier", + "src": "666:8:8" + } + ], + "id": 1943, + "name": "ExpressionStatement", + "src": "666:8:8" + }, + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3522, + "type": "contract IERC20Token", + "value": "this" + }, + "id": 1944, + "name": "Identifier", + "src": "678:4:8" + } + ], + "id": 1945, + "name": "ExpressionStatement", + "src": "678:4:8" + } + ], + "id": 1946, + "name": "Block", + "src": "652:34:8" + } + ], + "id": 1947, + "name": "FunctionDefinition", + "src": "569:117:8" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "transfer", + "scope": 1977, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" }, - "returnParameters": { - "id": 1324, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1323, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1328, - "src": "455:7:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1322, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "455:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_to", + "scope": 1956, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1948, + "name": "ElementaryTypeName", + "src": "707:7:8" + } + ], + "id": 1949, + "name": "VariableDeclaration", + "src": "707:11:8" + }, + { + "attributes": { + "constant": false, + "name": "_value", + "scope": 1956, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 1950, + "name": "ElementaryTypeName", + "src": "720:7:8" + } + ], + "id": 1951, + "name": "VariableDeclaration", + "src": "720:14:8" + } + ], + "id": 1952, + "name": "ParameterList", + "src": "706:29:8" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "success", + "scope": 1956, + "stateVariable": false, + "storageLocation": "default", + "type": "bool", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bool", + "type": "bool" + }, + "id": 1953, + "name": "ElementaryTypeName", + "src": "752:4:8" + } + ], + "id": 1954, + "name": "VariableDeclaration", + "src": "752:12:8" + } + ], + "id": 1955, + "name": "ParameterList", + "src": "751:14:8" + } + ], + "id": 1956, + "name": "FunctionDefinition", + "src": "689:77:8" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "454:9:6" + "name": "transferFrom", + "scope": 1977, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" }, - "scope": 1386, - "src": "411:65:6", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_from", + "scope": 1967, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1957, + "name": "ElementaryTypeName", + "src": "794:7:8" + } + ], + "id": 1958, + "name": "VariableDeclaration", + "src": "794:13:8" + }, + { + "attributes": { + "constant": false, + "name": "_to", + "scope": 1967, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1959, + "name": "ElementaryTypeName", + "src": "811:7:8" + } + ], + "id": 1960, + "name": "VariableDeclaration", + "src": "811:11:8" + }, + { + "attributes": { + "constant": false, + "name": "_value", + "scope": 1967, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 1961, + "name": "ElementaryTypeName", + "src": "826:7:8" + } + ], + "id": 1962, + "name": "VariableDeclaration", + "src": "826:14:8" + } + ], + "id": 1963, + "name": "ParameterList", + "src": "790:53:8" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "success", + "scope": 1967, + "stateVariable": false, + "storageLocation": "default", + "type": "bool", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bool", + "type": "bool" + }, + "id": 1964, + "name": "ElementaryTypeName", + "src": "860:4:8" + } + ], + "id": 1965, + "name": "VariableDeclaration", + "src": "860:12:8" + } + ], + "id": 1966, + "name": "ParameterList", + "src": "859:14:8" + } + ], + "id": 1967, + "name": "FunctionDefinition", + "src": "769:105:8" }, { - "body": { - "id": 1339, - "nodeType": "Block", - "src": "544:22:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1335, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1330, - "src": "548:6:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1336, - "nodeType": "ExpressionStatement", - "src": "548:6:6" - }, - { - "expression": { - "argumentTypes": null, - "id": 1337, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2257, - "src": "558:4:6", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "id": 1338, - "nodeType": "ExpressionStatement", - "src": "558:4:6" - } - ] - }, - "documentation": null, - "id": 1340, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "balanceOf", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1331, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1330, - "name": "_owner", - "nodeType": "VariableDeclaration", - "scope": 1340, - "src": "498:14:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1329, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "498:7:6", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "497:16:6" - }, - "returnParameters": { - "id": 1334, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1333, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1340, - "src": "535:7:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1332, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "535:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "534:9:6" - }, - "scope": 1386, - "src": "479:87:6", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1355, - "nodeType": "Block", - "src": "652:34:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1349, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1342, - "src": "656:6:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1350, - "nodeType": "ExpressionStatement", - "src": "656:6:6" - }, - { - "expression": { - "argumentTypes": null, - "id": 1351, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1344, - "src": "666:8:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1352, - "nodeType": "ExpressionStatement", - "src": "666:8:6" - }, - { - "expression": { - "argumentTypes": null, - "id": 1353, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2257, - "src": "678:4:6", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "id": 1354, - "nodeType": "ExpressionStatement", - "src": "678:4:6" - } - ] - }, - "documentation": null, - "id": 1356, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "allowance", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1345, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1342, - "name": "_owner", - "nodeType": "VariableDeclaration", - "scope": 1356, - "src": "588:14:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1341, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "588:7:6", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1344, - "name": "_spender", - "nodeType": "VariableDeclaration", - "scope": 1356, - "src": "604:16:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1343, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "604:7:6", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "587:34:6" + "name": "approve", + "scope": 1977, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" }, - "returnParameters": { - "id": 1348, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1347, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1356, - "src": "643:7:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1346, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "643:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "642:9:6" - }, - "scope": 1386, - "src": "569:117:6", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": null, - "documentation": null, - "id": 1365, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "transfer", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1361, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1358, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 1365, - "src": "707:11:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1357, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "707:7:6", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1360, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 1365, - "src": "720:14:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1359, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "720:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "706:29:6" - }, - "returnParameters": { - "id": 1364, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1363, - "name": "success", - "nodeType": "VariableDeclaration", - "scope": 1365, - "src": "752:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1362, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "752:4:6", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "751:14:6" - }, - "scope": 1386, - "src": "689:77:6", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": null, - "documentation": null, - "id": 1376, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "transferFrom", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1372, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1367, - "name": "_from", - "nodeType": "VariableDeclaration", - "scope": 1376, - "src": "794:13:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1366, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "794:7:6", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1369, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 1376, - "src": "811:11:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1368, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "811:7:6", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1371, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 1376, - "src": "826:14:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1370, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "826:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "790:53:6" - }, - "returnParameters": { - "id": 1375, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1374, - "name": "success", - "nodeType": "VariableDeclaration", - "scope": 1376, - "src": "860:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1373, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "860:4:6", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "859:14:6" - }, - "scope": 1386, - "src": "769:105:6", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": null, - "documentation": null, - "id": 1385, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "approve", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1381, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1378, - "name": "_spender", - "nodeType": "VariableDeclaration", - "scope": 1385, - "src": "894:16:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1377, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "894:7:6", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1380, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 1385, - "src": "912:14:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1379, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "912:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "893:34:6" - }, - "returnParameters": { - "id": 1384, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1383, - "name": "success", - "nodeType": "VariableDeclaration", - "scope": 1385, - "src": "944:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1382, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "944:4:6", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "943:14:6" - }, - "scope": 1386, - "src": "877:81:6", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_spender", + "scope": 1976, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1968, + "name": "ElementaryTypeName", + "src": "894:7:8" + } + ], + "id": 1969, + "name": "VariableDeclaration", + "src": "894:16:8" + }, + { + "attributes": { + "constant": false, + "name": "_value", + "scope": 1976, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 1970, + "name": "ElementaryTypeName", + "src": "912:7:8" + } + ], + "id": 1971, + "name": "VariableDeclaration", + "src": "912:14:8" + } + ], + "id": 1972, + "name": "ParameterList", + "src": "893:34:8" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "success", + "scope": 1976, + "stateVariable": false, + "storageLocation": "default", + "type": "bool", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bool", + "type": "bool" + }, + "id": 1973, + "name": "ElementaryTypeName", + "src": "944:4:8" + } + ], + "id": 1974, + "name": "VariableDeclaration", + "src": "944:12:8" + } + ], + "id": 1975, + "name": "ParameterList", + "src": "943:14:8" + } + ], + "id": 1976, + "name": "FunctionDefinition", + "src": "877:81:8" } ], - "scope": 1387, - "src": "74:886:6" + "id": 1977, + "name": "ContractDefinition", + "src": "74:886:8" } ], - "src": "0:961:6" + "id": 1978, + "name": "SourceUnit", + "src": "0:961:8" }, "compiler": { "name": "solc", "version": "0.5.16+commit.9c3226ce.Emscripten.clang" }, "networks": {}, - "schemaVersion": "3.3.2", - "updatedAt": "2021-03-26T10:10:09.411Z", + "schemaVersion": "3.4.1", + "updatedAt": "2022-02-15T06:13:50.459Z", "devdoc": { "methods": {} }, diff --git a/rbtcwrapperproxy/build/contracts/IEtherToken.json b/rbtcwrapperproxy/build/contracts/IEtherToken.json index fb02de7..063f2a5 100644 --- a/rbtcwrapperproxy/build/contracts/IEtherToken.json +++ b/rbtcwrapperproxy/build/contracts/IEtherToken.json @@ -251,25 +251,25 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"deposit\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"}],\"name\":\"depositTo\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"withdraw\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"withdrawTo\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IEtherToken.sol\":\"IEtherToken\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol\":{\"keccak256\":\"0x85f3acaf53418f63817c8b5d8e047203891bbb9c3fc9558a541a8c446857783b\",\"urls\":[\"bzz-raw://b80d05aeb3fc866a791d3de7f7a8d7c2a65dddc72ad436920e3f043414c82158\",\"dweb:/ipfs/QmVXNmZfw6pQ2xg6xJwHR5ptCxGKx9PRzX9dgQWK7KUTTE\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IEtherToken.sol\":{\"keccak256\":\"0xbbc20de544fdc89944c1a5b7b32efb878b32c7099289b1070463edb1cfba20cc\",\"urls\":[\"bzz-raw://75be51b2a24b6cad151b8bb1c8fdc1d7bfa79095d40e7de4219cf8b765e35818\",\"dweb:/ipfs/QmVGBTAct72PcdGmJpbpdD8PS7CAFKV6wpJhbxERoTTcYr\"]}},\"version\":1}", + "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"deposit\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"}],\"name\":\"depositTo\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"withdraw\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"withdrawTo\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IEtherToken.sol\":\"IEtherToken\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol\":{\"keccak256\":\"0x85f3acaf53418f63817c8b5d8e047203891bbb9c3fc9558a541a8c446857783b\",\"urls\":[\"bzz-raw://b80d05aeb3fc866a791d3de7f7a8d7c2a65dddc72ad436920e3f043414c82158\",\"dweb:/ipfs/QmVXNmZfw6pQ2xg6xJwHR5ptCxGKx9PRzX9dgQWK7KUTTE\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IEtherToken.sol\":{\"keccak256\":\"0xbbc20de544fdc89944c1a5b7b32efb878b32c7099289b1070463edb1cfba20cc\",\"urls\":[\"bzz-raw://75be51b2a24b6cad151b8bb1c8fdc1d7bfa79095d40e7de4219cf8b765e35818\",\"dweb:/ipfs/QmVGBTAct72PcdGmJpbpdD8PS7CAFKV6wpJhbxERoTTcYr\"]}},\"version\":1}", "bytecode": "0x", "deployedBytecode": "0x", "sourceMap": "", "deployedSourceMap": "", "source": "pragma solidity >=0.5.0 <0.6.0;\nimport \"./IERC20Token.sol\";\n\n/*\n Ether Token interface\n*/\ncontract IEtherToken is IERC20Token {\n\tfunction deposit() public payable;\n\n\tfunction withdraw(uint256 _amount) public;\n\n\tfunction depositTo(address _to) public payable;\n\n\tfunction withdrawTo(address _to, uint256 _amount) public;\n}\n", - "sourcePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IEtherToken.sol", + "sourcePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IEtherToken.sol", "ast": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IEtherToken.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IEtherToken.sol", "exportedSymbols": { "IEtherToken": [ - 1412 + 2003 ] }, - "id": 1413, + "id": 2004, "nodeType": "SourceUnit", "nodes": [ { - "id": 1388, + "id": 1979, "literals": [ "solidity", ">=", @@ -280,16 +280,16 @@ ".0" ], "nodeType": "PragmaDirective", - "src": "0:31:7" + "src": "0:31:9" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol", "file": "./IERC20Token.sol", - "id": 1389, + "id": 1980, "nodeType": "ImportDirective", - "scope": 1413, - "sourceUnit": 1387, - "src": "32:27:7", + "scope": 2004, + "sourceUnit": 1978, + "src": "32:27:9", "symbolAliases": [], "unitAlias": "" }, @@ -299,31 +299,31 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 1390, + "id": 1981, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "117:11:7", + "referencedDeclaration": 1977, + "src": "117:11:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" } }, - "id": 1391, + "id": 1982, "nodeType": "InheritanceSpecifier", - "src": "117:11:7" + "src": "117:11:9" } ], "contractDependencies": [ - 1386 + 1977 ], "contractKind": "contract", "documentation": null, "fullyImplemented": false, - "id": 1412, + "id": 2003, "linearizedBaseContracts": [ - 1412, - 1386 + 2003, + 1977 ], "name": "IEtherToken", "nodeType": "ContractDefinition", @@ -331,26 +331,26 @@ { "body": null, "documentation": null, - "id": 1394, + "id": 1985, "implemented": false, "kind": "function", "modifiers": [], "name": "deposit", "nodeType": "FunctionDefinition", "parameters": { - "id": 1392, + "id": 1983, "nodeType": "ParameterList", "parameters": [], - "src": "148:2:7" + "src": "148:2:9" }, "returnParameters": { - "id": 1393, + "id": 1984, "nodeType": "ParameterList", "parameters": [], - "src": "165:0:7" + "src": "165:0:9" }, - "scope": 1412, - "src": "132:34:7", + "scope": 2003, + "src": "132:34:9", "stateMutability": "payable", "superFunction": null, "visibility": "public" @@ -358,23 +358,23 @@ { "body": null, "documentation": null, - "id": 1399, + "id": 1990, "implemented": false, "kind": "function", "modifiers": [], "name": "withdraw", "nodeType": "FunctionDefinition", "parameters": { - "id": 1397, + "id": 1988, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1396, + "id": 1987, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1399, - "src": "187:15:7", + "scope": 1990, + "src": "187:15:9", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -382,10 +382,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1395, + "id": 1986, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "187:7:7", + "src": "187:7:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -395,16 +395,16 @@ "visibility": "internal" } ], - "src": "186:17:7" + "src": "186:17:9" }, "returnParameters": { - "id": 1398, + "id": 1989, "nodeType": "ParameterList", "parameters": [], - "src": "210:0:7" + "src": "210:0:9" }, - "scope": 1412, - "src": "169:42:7", + "scope": 2003, + "src": "169:42:9", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -412,23 +412,23 @@ { "body": null, "documentation": null, - "id": 1404, + "id": 1995, "implemented": false, "kind": "function", "modifiers": [], "name": "depositTo", "nodeType": "FunctionDefinition", "parameters": { - "id": 1402, + "id": 1993, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1401, + "id": 1992, "name": "_to", "nodeType": "VariableDeclaration", - "scope": 1404, - "src": "233:11:7", + "scope": 1995, + "src": "233:11:9", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -436,10 +436,10 @@ "typeString": "address" }, "typeName": { - "id": 1400, + "id": 1991, "name": "address", "nodeType": "ElementaryTypeName", - "src": "233:7:7", + "src": "233:7:9", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -450,16 +450,16 @@ "visibility": "internal" } ], - "src": "232:13:7" + "src": "232:13:9" }, "returnParameters": { - "id": 1403, + "id": 1994, "nodeType": "ParameterList", "parameters": [], - "src": "260:0:7" + "src": "260:0:9" }, - "scope": 1412, - "src": "214:47:7", + "scope": 2003, + "src": "214:47:9", "stateMutability": "payable", "superFunction": null, "visibility": "public" @@ -467,23 +467,23 @@ { "body": null, "documentation": null, - "id": 1411, + "id": 2002, "implemented": false, "kind": "function", "modifiers": [], "name": "withdrawTo", "nodeType": "FunctionDefinition", "parameters": { - "id": 1409, + "id": 2000, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1406, + "id": 1997, "name": "_to", "nodeType": "VariableDeclaration", - "scope": 1411, - "src": "284:11:7", + "scope": 2002, + "src": "284:11:9", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -491,10 +491,10 @@ "typeString": "address" }, "typeName": { - "id": 1405, + "id": 1996, "name": "address", "nodeType": "ElementaryTypeName", - "src": "284:7:7", + "src": "284:7:9", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -506,11 +506,11 @@ }, { "constant": false, - "id": 1408, + "id": 1999, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1411, - "src": "297:15:7", + "scope": 2002, + "src": "297:15:9", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -518,10 +518,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1407, + "id": 1998, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "297:7:7", + "src": "297:7:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -531,328 +531,392 @@ "visibility": "internal" } ], - "src": "283:30:7" + "src": "283:30:9" }, "returnParameters": { - "id": 1410, + "id": 2001, "nodeType": "ParameterList", "parameters": [], - "src": "320:0:7" + "src": "320:0:9" }, - "scope": 1412, - "src": "264:57:7", + "scope": 2003, + "src": "264:57:9", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" } ], - "scope": 1413, - "src": "93:230:7" + "scope": 2004, + "src": "93:230:9" } ], - "src": "0:324:7" + "src": "0:324:9" }, "legacyAST": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IEtherToken.sol", - "exportedSymbols": { - "IEtherToken": [ - 1412 - ] + "attributes": { + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IEtherToken.sol", + "exportedSymbols": { + "IEtherToken": [ + 2003 + ] + } }, - "id": 1413, - "nodeType": "SourceUnit", - "nodes": [ + "children": [ { - "id": 1388, - "literals": [ - "solidity", - ">=", - "0.5", - ".0", - "<", - "0.6", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "0:31:7" + "attributes": { + "literals": [ + "solidity", + ">=", + "0.5", + ".0", + "<", + "0.6", + ".0" + ] + }, + "id": 1979, + "name": "PragmaDirective", + "src": "0:31:9" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol", - "file": "./IERC20Token.sol", - "id": 1389, - "nodeType": "ImportDirective", - "scope": 1413, - "sourceUnit": 1387, - "src": "32:27:7", - "symbolAliases": [], - "unitAlias": "" + "attributes": { + "SourceUnit": 1978, + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol", + "file": "./IERC20Token.sol", + "scope": 2004, + "symbolAliases": [ + null + ], + "unitAlias": "" + }, + "id": 1980, + "name": "ImportDirective", + "src": "32:27:9" }, { - "baseContracts": [ + "attributes": { + "contractDependencies": [ + 1977 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": false, + "linearizedBaseContracts": [ + 2003, + 1977 + ], + "name": "IEtherToken", + "scope": 2004 + }, + "children": [ { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 1390, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "117:11:7", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } + "attributes": { + "arguments": null }, - "id": 1391, - "nodeType": "InheritanceSpecifier", - "src": "117:11:7" - } - ], - "contractDependencies": [ - 1386 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": false, - "id": 1412, - "linearizedBaseContracts": [ - 1412, - 1386 - ], - "name": "IEtherToken", - "nodeType": "ContractDefinition", - "nodes": [ + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1977, + "type": "contract IERC20Token" + }, + "id": 1981, + "name": "UserDefinedTypeName", + "src": "117:11:9" + } + ], + "id": 1982, + "name": "InheritanceSpecifier", + "src": "117:11:9" + }, { - "body": null, - "documentation": null, - "id": 1394, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "deposit", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1392, - "nodeType": "ParameterList", - "parameters": [], - "src": "148:2:7" - }, - "returnParameters": { - "id": 1393, - "nodeType": "ParameterList", - "parameters": [], - "src": "165:0:7" + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "deposit", + "scope": 2003, + "stateMutability": "payable", + "superFunction": null, + "visibility": "public" }, - "scope": 1412, - "src": "132:34:7", - "stateMutability": "payable", - "superFunction": null, - "visibility": "public" + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 1983, + "name": "ParameterList", + "src": "148:2:9" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 1984, + "name": "ParameterList", + "src": "165:0:9" + } + ], + "id": 1985, + "name": "FunctionDefinition", + "src": "132:34:9" }, { - "body": null, - "documentation": null, - "id": 1399, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "withdraw", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1397, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1396, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1399, - "src": "187:15:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1395, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "187:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "186:17:7" + "name": "withdraw", + "scope": 2003, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" }, - "returnParameters": { - "id": 1398, - "nodeType": "ParameterList", - "parameters": [], - "src": "210:0:7" - }, - "scope": 1412, - "src": "169:42:7", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 1990, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 1986, + "name": "ElementaryTypeName", + "src": "187:7:9" + } + ], + "id": 1987, + "name": "VariableDeclaration", + "src": "187:15:9" + } + ], + "id": 1988, + "name": "ParameterList", + "src": "186:17:9" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 1989, + "name": "ParameterList", + "src": "210:0:9" + } + ], + "id": 1990, + "name": "FunctionDefinition", + "src": "169:42:9" }, { - "body": null, - "documentation": null, - "id": 1404, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "depositTo", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1402, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1401, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 1404, - "src": "233:11:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1400, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "233:7:7", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "232:13:7" + "name": "depositTo", + "scope": 2003, + "stateMutability": "payable", + "superFunction": null, + "visibility": "public" }, - "returnParameters": { - "id": 1403, - "nodeType": "ParameterList", - "parameters": [], - "src": "260:0:7" - }, - "scope": 1412, - "src": "214:47:7", - "stateMutability": "payable", - "superFunction": null, - "visibility": "public" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_to", + "scope": 1995, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1991, + "name": "ElementaryTypeName", + "src": "233:7:9" + } + ], + "id": 1992, + "name": "VariableDeclaration", + "src": "233:11:9" + } + ], + "id": 1993, + "name": "ParameterList", + "src": "232:13:9" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 1994, + "name": "ParameterList", + "src": "260:0:9" + } + ], + "id": 1995, + "name": "FunctionDefinition", + "src": "214:47:9" }, { - "body": null, - "documentation": null, - "id": 1411, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "withdrawTo", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1409, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1406, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 1411, - "src": "284:11:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1405, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "284:7:7", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1408, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1411, - "src": "297:15:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1407, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "297:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "283:30:7" - }, - "returnParameters": { - "id": 1410, - "nodeType": "ParameterList", - "parameters": [], - "src": "320:0:7" + "name": "withdrawTo", + "scope": 2003, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" }, - "scope": 1412, - "src": "264:57:7", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_to", + "scope": 2002, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1996, + "name": "ElementaryTypeName", + "src": "284:7:9" + } + ], + "id": 1997, + "name": "VariableDeclaration", + "src": "284:11:9" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2002, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 1998, + "name": "ElementaryTypeName", + "src": "297:7:9" + } + ], + "id": 1999, + "name": "VariableDeclaration", + "src": "297:15:9" + } + ], + "id": 2000, + "name": "ParameterList", + "src": "283:30:9" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2001, + "name": "ParameterList", + "src": "320:0:9" + } + ], + "id": 2002, + "name": "FunctionDefinition", + "src": "264:57:9" } ], - "scope": 1413, - "src": "93:230:7" + "id": 2003, + "name": "ContractDefinition", + "src": "93:230:9" } ], - "src": "0:324:7" + "id": 2004, + "name": "SourceUnit", + "src": "0:324:9" }, "compiler": { "name": "solc", "version": "0.5.16+commit.9c3226ce.Emscripten.clang" }, "networks": {}, - "schemaVersion": "3.3.2", - "updatedAt": "2021-03-26T10:10:09.412Z", + "schemaVersion": "3.4.1", + "updatedAt": "2022-02-15T06:13:50.462Z", "devdoc": { "methods": {} }, diff --git a/rbtcwrapperproxy/build/contracts/ILiquidityPoolV1Converter.json b/rbtcwrapperproxy/build/contracts/ILiquidityPoolV1Converter.json index 8cfc09b..0311be3 100644 --- a/rbtcwrapperproxy/build/contracts/ILiquidityPoolV1Converter.json +++ b/rbtcwrapperproxy/build/contracts/ILiquidityPoolV1Converter.json @@ -312,25 +312,25 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_connectorToken\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_tokenSupply\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_connectorBalance\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint32\",\"name\":\"_connectorWeight\",\"type\":\"uint32\"}],\"name\":\"PriceDataUpdate\",\"type\":\"event\"},{\"constant\":false,\"inputs\":[],\"name\":\"acceptAnchorOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_reserveTokens\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"_reserveAmounts\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"}],\"name\":\"addLiquidity\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"converterType\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_x\",\"type\":\"uint256\"}],\"name\":\"decimalLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"fund\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256[]\",\"name\":\"_values\",\"type\":\"uint256[]\"}],\"name\":\"geometricMean\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"liquidate\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_reserveTokens\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"_reserveMinReturnAmounts\",\"type\":\"uint256[]\"}],\"name\":\"removeLiquidity\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"reserveRatio\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"reserves\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_n\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_d\",\"type\":\"uint256\"}],\"name\":\"roundDiv\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_sourceToken\",\"type\":\"address\"},{\"internalType\":\"contract IERC20Token\",\"name\":\"_targetToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"targetAmountAndFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"token\",\"outputs\":[{\"internalType\":\"contract IConverterAnchor\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Liquidity Pool v1 Converter * The liquidity pool v1 converter is a specialized version of a converter that manages a classic SovrynSwap liquidity pool. * Even though classic pools can have many reserves, the most common configuration of the pool has 2 reserves with 50%/50% weights.\",\"methods\":{\"acceptAnchorOwnership()\":{\"details\":\"accepts ownership of the anchor after an ownership transfer also activates the converter can only be called by the contract owner note that prior to version 28, you should use 'acceptTokenOwnership' instead\"},\"addLiquidity(address[],uint256[],uint256)\":{\"details\":\"increases the pool's liquidity and mints new shares in the pool to the caller note that prior to version 28, you should use 'fund' instead \",\"params\":{\"_minReturn\":\"token minimum return-amount\",\"_reserveAmounts\":\"amount of each reserve token\",\"_reserveTokens\":\"address of each reserve token\"}},\"converterType()\":{\"details\":\"returns the converter type \",\"return\":\"see the converter types in the the main contract doc\"},\"decimalLength(uint256)\":{\"details\":\"calculates the number of decimal digits in a given value \",\"params\":{\"_x\":\"value (assumed positive)\"},\"return\":\"the number of decimal digits in the given value\"},\"fund(uint256)\":{\"details\":\"increases the pool's liquidity and mints new shares in the pool to the caller for example, if the caller increases the supply by 10%, then it will cost an amount equal to 10% of each reserve token balance note that starting from version 28, you should use 'addLiquidity' instead \",\"params\":{\"_amount\":\"amount to increase the supply by (in the pool token)\"}},\"geometricMean(uint256[])\":{\"details\":\"calculates the average number of decimal digits in a given list of values \",\"params\":{\"_values\":\"list of values (each of which assumed positive)\"},\"return\":\"the average number of decimal digits in the given list of values\"},\"liquidate(uint256)\":{\"details\":\"decreases the pool's liquidity and burns the caller's shares in the pool for example, if the holder sells 10% of the supply, then they will receive 10% of each reserve token balance in return note that starting from version 28, you should use 'removeLiquidity' instead \",\"params\":{\"_amount\":\"amount to liquidate (in the pool token)\"}},\"removeLiquidity(uint256,address[],uint256[])\":{\"details\":\"decreases the pool's liquidity and burns the caller's shares in the pool note that prior to version 28, you should use 'liquidate' instead \",\"params\":{\"_amount\":\"token amount\",\"_reserveMinReturnAmounts\":\"minimum return-amount of each reserve token\",\"_reserveTokens\":\"address of each reserve token\"}},\"roundDiv(uint256,uint256)\":{\"details\":\"calculates the nearest integer to a given quotient \",\"params\":{\"_d\":\"quotient denominator\",\"_n\":\"quotient numerator\"},\"return\":\"the nearest integer to the given quotient\"},\"targetAmountAndFee(address,address,uint256)\":{\"details\":\"returns the expected target amount of converting one reserve to another along with the fee \",\"params\":{\"_amount\":\"amount of tokens received from the user \",\"_sourceToken\":\"contract address of the source reserve token\",\"_targetToken\":\"contract address of the target reserve token\"},\"return\":\"expected target amountexpected fee\"},\"token()\":{\"details\":\"deprecated since version 28, backward compatibility - use only for earlier versions\"}}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ILiquidityPoolV1Converter.sol\":\"ILiquidityPoolV1Converter\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IConverterAnchor.sol\":{\"keccak256\":\"0x17f5e4e68c5770edff2f1656e46fbf57158fc96343c0de21353c57ec0e655cce\",\"urls\":[\"bzz-raw://862ffe6813ee3d52401e0ad29c39f4b43f8fdcac83564c578cdebee0730bd58f\",\"dweb:/ipfs/QmatYop16pX7xPzQEo68Bg9pR21i75XxqNYyRkALYwDYK7\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol\":{\"keccak256\":\"0x85f3acaf53418f63817c8b5d8e047203891bbb9c3fc9558a541a8c446857783b\",\"urls\":[\"bzz-raw://b80d05aeb3fc866a791d3de7f7a8d7c2a65dddc72ad436920e3f043414c82158\",\"dweb:/ipfs/QmVXNmZfw6pQ2xg6xJwHR5ptCxGKx9PRzX9dgQWK7KUTTE\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ILiquidityPoolV1Converter.sol\":{\"keccak256\":\"0xdb7c19fe20114f01f982fc31427be8f7e8c109a8c36bc0fd1d6d044bb2ad06e8\",\"urls\":[\"bzz-raw://83f7bbcbb516c5c2cb46624e7a79358bdb66201200d2da222565b452d5b66f4e\",\"dweb:/ipfs/QmTvz1UzHbBTKvNKms7XnxmMeWMehKwwBVGdi3LNQMWuSc\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IOwned.sol\":{\"keccak256\":\"0xa82c5cce1bb1c13dccdcb590bcbfeda3409efb67adc55fce3a301c76075e320c\",\"urls\":[\"bzz-raw://272cd112c211795db57e41fd9c49aae08ead3f7169e73dd8f594c1a8ca3932ad\",\"dweb:/ipfs/QmVTXpDDZEJ6aPUt9f6dTLupE16Rh4HembDTNR2X678svt\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ITokenHolder.sol\":{\"keccak256\":\"0xf4285fadaccd2065e9373f7e9ba9e9d510450ef5b00a297b04b35236f3ae8021\",\"urls\":[\"bzz-raw://52c708e32e441410130ef32316924621cf2daef5d94e043e5d2dba47df89500f\",\"dweb:/ipfs/QmXzFDueMA48Y2Cvyx9cdtSTcM6c3b2Y437BhGsfACvRsG\"]}},\"version\":1}", + "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_connectorToken\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_tokenSupply\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_connectorBalance\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint32\",\"name\":\"_connectorWeight\",\"type\":\"uint32\"}],\"name\":\"PriceDataUpdate\",\"type\":\"event\"},{\"constant\":false,\"inputs\":[],\"name\":\"acceptAnchorOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_reserveTokens\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"_reserveAmounts\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"}],\"name\":\"addLiquidity\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"converterType\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_x\",\"type\":\"uint256\"}],\"name\":\"decimalLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"fund\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256[]\",\"name\":\"_values\",\"type\":\"uint256[]\"}],\"name\":\"geometricMean\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"liquidate\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_reserveTokens\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"_reserveMinReturnAmounts\",\"type\":\"uint256[]\"}],\"name\":\"removeLiquidity\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"reserveRatio\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"reserves\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_n\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_d\",\"type\":\"uint256\"}],\"name\":\"roundDiv\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_sourceToken\",\"type\":\"address\"},{\"internalType\":\"contract IERC20Token\",\"name\":\"_targetToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"targetAmountAndFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"token\",\"outputs\":[{\"internalType\":\"contract IConverterAnchor\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Liquidity Pool v1 Converter * The liquidity pool v1 converter is a specialized version of a converter that manages a classic SovrynSwap liquidity pool. * Even though classic pools can have many reserves, the most common configuration of the pool has 2 reserves with 50%/50% weights.\",\"methods\":{\"acceptAnchorOwnership()\":{\"details\":\"accepts ownership of the anchor after an ownership transfer also activates the converter can only be called by the contract owner note that prior to version 28, you should use 'acceptTokenOwnership' instead\"},\"addLiquidity(address[],uint256[],uint256)\":{\"details\":\"increases the pool's liquidity and mints new shares in the pool to the caller note that prior to version 28, you should use 'fund' instead \",\"params\":{\"_minReturn\":\"token minimum return-amount\",\"_reserveAmounts\":\"amount of each reserve token\",\"_reserveTokens\":\"address of each reserve token\"}},\"converterType()\":{\"details\":\"returns the converter type \",\"return\":\"see the converter types in the the main contract doc\"},\"decimalLength(uint256)\":{\"details\":\"calculates the number of decimal digits in a given value \",\"params\":{\"_x\":\"value (assumed positive)\"},\"return\":\"the number of decimal digits in the given value\"},\"fund(uint256)\":{\"details\":\"increases the pool's liquidity and mints new shares in the pool to the caller for example, if the caller increases the supply by 10%, then it will cost an amount equal to 10% of each reserve token balance note that starting from version 28, you should use 'addLiquidity' instead \",\"params\":{\"_amount\":\"amount to increase the supply by (in the pool token)\"}},\"geometricMean(uint256[])\":{\"details\":\"calculates the average number of decimal digits in a given list of values \",\"params\":{\"_values\":\"list of values (each of which assumed positive)\"},\"return\":\"the average number of decimal digits in the given list of values\"},\"liquidate(uint256)\":{\"details\":\"decreases the pool's liquidity and burns the caller's shares in the pool for example, if the holder sells 10% of the supply, then they will receive 10% of each reserve token balance in return note that starting from version 28, you should use 'removeLiquidity' instead \",\"params\":{\"_amount\":\"amount to liquidate (in the pool token)\"}},\"removeLiquidity(uint256,address[],uint256[])\":{\"details\":\"decreases the pool's liquidity and burns the caller's shares in the pool note that prior to version 28, you should use 'liquidate' instead \",\"params\":{\"_amount\":\"token amount\",\"_reserveMinReturnAmounts\":\"minimum return-amount of each reserve token\",\"_reserveTokens\":\"address of each reserve token\"}},\"roundDiv(uint256,uint256)\":{\"details\":\"calculates the nearest integer to a given quotient \",\"params\":{\"_d\":\"quotient denominator\",\"_n\":\"quotient numerator\"},\"return\":\"the nearest integer to the given quotient\"},\"targetAmountAndFee(address,address,uint256)\":{\"details\":\"returns the expected target amount of converting one reserve to another along with the fee \",\"params\":{\"_amount\":\"amount of tokens received from the user \",\"_sourceToken\":\"contract address of the source reserve token\",\"_targetToken\":\"contract address of the target reserve token\"},\"return\":\"expected target amountexpected fee\"},\"token()\":{\"details\":\"deprecated since version 28, backward compatibility - use only for earlier versions\"}}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ILiquidityPoolV1Converter.sol\":\"ILiquidityPoolV1Converter\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IConverterAnchor.sol\":{\"keccak256\":\"0x17f5e4e68c5770edff2f1656e46fbf57158fc96343c0de21353c57ec0e655cce\",\"urls\":[\"bzz-raw://862ffe6813ee3d52401e0ad29c39f4b43f8fdcac83564c578cdebee0730bd58f\",\"dweb:/ipfs/QmatYop16pX7xPzQEo68Bg9pR21i75XxqNYyRkALYwDYK7\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol\":{\"keccak256\":\"0x85f3acaf53418f63817c8b5d8e047203891bbb9c3fc9558a541a8c446857783b\",\"urls\":[\"bzz-raw://b80d05aeb3fc866a791d3de7f7a8d7c2a65dddc72ad436920e3f043414c82158\",\"dweb:/ipfs/QmVXNmZfw6pQ2xg6xJwHR5ptCxGKx9PRzX9dgQWK7KUTTE\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ILiquidityPoolV1Converter.sol\":{\"keccak256\":\"0xdb7c19fe20114f01f982fc31427be8f7e8c109a8c36bc0fd1d6d044bb2ad06e8\",\"urls\":[\"bzz-raw://83f7bbcbb516c5c2cb46624e7a79358bdb66201200d2da222565b452d5b66f4e\",\"dweb:/ipfs/QmTvz1UzHbBTKvNKms7XnxmMeWMehKwwBVGdi3LNQMWuSc\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IOwned.sol\":{\"keccak256\":\"0xa82c5cce1bb1c13dccdcb590bcbfeda3409efb67adc55fce3a301c76075e320c\",\"urls\":[\"bzz-raw://272cd112c211795db57e41fd9c49aae08ead3f7169e73dd8f594c1a8ca3932ad\",\"dweb:/ipfs/QmVTXpDDZEJ6aPUt9f6dTLupE16Rh4HembDTNR2X678svt\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ITokenHolder.sol\":{\"keccak256\":\"0xf4285fadaccd2065e9373f7e9ba9e9d510450ef5b00a297b04b35236f3ae8021\",\"urls\":[\"bzz-raw://52c708e32e441410130ef32316924621cf2daef5d94e043e5d2dba47df89500f\",\"dweb:/ipfs/QmXzFDueMA48Y2Cvyx9cdtSTcM6c3b2Y437BhGsfACvRsG\"]}},\"version\":1}", "bytecode": "0x", "deployedBytecode": "0x", "sourceMap": "", "deployedSourceMap": "", "source": "pragma solidity 0.5.16;\r\n\r\nimport \"./IERC20Token.sol\";\r\nimport \"./IConverterAnchor.sol\";\r\n\r\n/**\r\n * @dev Liquidity Pool v1 Converter\r\n *\r\n * The liquidity pool v1 converter is a specialized version of a converter that manages\r\n * a classic SovrynSwap liquidity pool.\r\n *\r\n * Even though classic pools can have many reserves, the most common configuration of\r\n * the pool has 2 reserves with 50%/50% weights.\r\n*/\r\ninterface ILiquidityPoolV1Converter {\r\n /**\r\n * @dev triggered after a conversion with new price data\r\n * deprecated, use `TokenRateUpdate` from version 28 and up\r\n *\r\n * @param _connectorToken reserve token\r\n * @param _tokenSupply smart token supply\r\n * @param _connectorBalance reserve balance\r\n * @param _connectorWeight reserve weight\r\n */\r\n event PriceDataUpdate(\r\n address indexed _connectorToken,\r\n uint256 _tokenSupply,\r\n uint256 _connectorBalance,\r\n uint32 _connectorWeight\r\n );\r\n\r\n /**\r\n * @dev returns the converter type\r\n *\r\n * @return see the converter types in the the main contract doc\r\n */\r\n function converterType() external pure returns (uint16);\r\n\r\n /**\r\n * @dev accepts ownership of the anchor after an ownership transfer\r\n * also activates the converter\r\n * can only be called by the contract owner\r\n * note that prior to version 28, you should use 'acceptTokenOwnership' instead\r\n */\r\n function acceptAnchorOwnership() external;\r\n\r\n /**\r\n * @dev returns the expected target amount of converting one reserve to another along with the fee\r\n *\r\n * @param _sourceToken contract address of the source reserve token\r\n * @param _targetToken contract address of the target reserve token\r\n * @param _amount amount of tokens received from the user\r\n *\r\n * @return expected target amount\r\n * @return expected fee\r\n */\r\n function targetAmountAndFee(IERC20Token _sourceToken, IERC20Token _targetToken, uint256 _amount) external view returns (uint256, uint256);\r\n\r\n\r\n /**\r\n * @dev increases the pool's liquidity and mints new shares in the pool to the caller\r\n * note that prior to version 28, you should use 'fund' instead\r\n *\r\n * @param _reserveTokens address of each reserve token\r\n * @param _reserveAmounts amount of each reserve token\r\n * @param _minReturn token minimum return-amount\r\n */\r\n function addLiquidity(IERC20Token[] calldata _reserveTokens, uint256[] calldata _reserveAmounts, uint256 _minReturn) external payable;\r\n\r\n /**\r\n * @dev decreases the pool's liquidity and burns the caller's shares in the pool\r\n * note that prior to version 28, you should use 'liquidate' instead\r\n *\r\n * @param _amount token amount\r\n * @param _reserveTokens address of each reserve token\r\n * @param _reserveMinReturnAmounts minimum return-amount of each reserve token\r\n */\r\n function removeLiquidity(uint256 _amount, IERC20Token[] calldata _reserveTokens, uint256[] calldata _reserveMinReturnAmounts) external;\r\n\r\n /**\r\n * @dev increases the pool's liquidity and mints new shares in the pool to the caller\r\n * for example, if the caller increases the supply by 10%,\r\n * then it will cost an amount equal to 10% of each reserve token balance\r\n * note that starting from version 28, you should use 'addLiquidity' instead\r\n *\r\n * @param _amount amount to increase the supply by (in the pool token)\r\n */\r\n function fund(uint256 _amount) external payable;\r\n\r\n /**\r\n * @dev decreases the pool's liquidity and burns the caller's shares in the pool\r\n * for example, if the holder sells 10% of the supply,\r\n * then they will receive 10% of each reserve token balance in return\r\n * note that starting from version 28, you should use 'removeLiquidity' instead\r\n *\r\n * @param _amount amount to liquidate (in the pool token)\r\n */\r\n function liquidate(uint256 _amount) external;\r\n\r\n /**\r\n * @dev calculates the number of decimal digits in a given value\r\n *\r\n * @param _x value (assumed positive)\r\n * @return the number of decimal digits in the given value\r\n */\r\n function decimalLength(uint256 _x) external pure returns (uint256);\r\n\r\n /**\r\n * @dev calculates the nearest integer to a given quotient\r\n *\r\n * @param _n quotient numerator\r\n * @param _d quotient denominator\r\n * @return the nearest integer to the given quotient\r\n */\r\n function roundDiv(uint256 _n, uint256 _d) external pure returns (uint256);\r\n\r\n /**\r\n * @dev calculates the average number of decimal digits in a given list of values\r\n *\r\n * @param _values list of values (each of which assumed positive)\r\n * @return the average number of decimal digits in the given list of values\r\n */\r\n function geometricMean(uint256[] calldata _values) external pure returns (uint256);\r\n\r\n /**\r\n * @dev deprecated since version 28, backward compatibility - use only for earlier versions\r\n */\r\n function token() external view returns (IConverterAnchor);\r\n\r\n function reserveRatio() external view returns (uint32);\r\n\r\n struct Reserve {\r\n uint256 balance; // reserve balance\r\n uint32 weight; // reserve weight, represented in ppm, 1-1000000\r\n bool deprecated1; // deprecated\r\n bool deprecated2; // deprecated\r\n bool isSet; // true if the reserve is valid, false otherwise\r\n }\r\n function reserves(address) external view returns (uint256, uint32, bool, bool, bool); \r\n}\r\n", - "sourcePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ILiquidityPoolV1Converter.sol", + "sourcePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ILiquidityPoolV1Converter.sol", "ast": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ILiquidityPoolV1Converter.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ILiquidityPoolV1Converter.sol", "exportedSymbols": { "ILiquidityPoolV1Converter": [ - 1939 + 2131 ] }, - "id": 1940, + "id": 2132, "nodeType": "SourceUnit", "nodes": [ { - "id": 1813, + "id": 2005, "literals": [ "solidity", "0.5", @@ -340,23 +340,23 @@ "src": "0:23:10" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol", "file": "./IERC20Token.sol", - "id": 1814, + "id": 2006, "nodeType": "ImportDirective", - "scope": 1940, - "sourceUnit": 1786, + "scope": 2132, + "sourceUnit": 1978, "src": "27:27:10", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IConverterAnchor.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IConverterAnchor.sol", "file": "./IConverterAnchor.sol", - "id": 1815, + "id": 2007, "nodeType": "ImportDirective", - "scope": 1940, - "sourceUnit": 1619, + "scope": 2132, + "sourceUnit": 1811, "src": "56:32:10", "symbolAliases": [], "unitAlias": "" @@ -367,9 +367,9 @@ "contractKind": "interface", "documentation": "@dev Liquidity Pool v1 Converter\n\n * The liquidity pool v1 converter is a specialized version of a converter that manages\na classic SovrynSwap liquidity pool.\n\n * Even though classic pools can have many reserves, the most common configuration of\nthe pool has 2 reserves with 50%/50% weights.", "fullyImplemented": false, - "id": 1939, + "id": 2131, "linearizedBaseContracts": [ - 1939 + 2131 ], "name": "ILiquidityPoolV1Converter", "nodeType": "ContractDefinition", @@ -377,20 +377,20 @@ { "anonymous": false, "documentation": "@dev triggered after a conversion with new price data\ndeprecated, use `TokenRateUpdate` from version 28 and up\n\n * @param _connectorToken reserve token\n@param _tokenSupply smart token supply\n@param _connectorBalance reserve balance\n@param _connectorWeight reserve weight", - "id": 1825, + "id": 2017, "name": "PriceDataUpdate", "nodeType": "EventDefinition", "parameters": { - "id": 1824, + "id": 2016, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1817, + "id": 2009, "indexed": true, "name": "_connectorToken", "nodeType": "VariableDeclaration", - "scope": 1825, + "scope": 2017, "src": "862:31:10", "stateVariable": false, "storageLocation": "default", @@ -399,7 +399,7 @@ "typeString": "address" }, "typeName": { - "id": 1816, + "id": 2008, "name": "address", "nodeType": "ElementaryTypeName", "src": "862:7:10", @@ -414,11 +414,11 @@ }, { "constant": false, - "id": 1819, + "id": 2011, "indexed": false, "name": "_tokenSupply", "nodeType": "VariableDeclaration", - "scope": 1825, + "scope": 2017, "src": "904:20:10", "stateVariable": false, "storageLocation": "default", @@ -427,7 +427,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1818, + "id": 2010, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "904:7:10", @@ -441,11 +441,11 @@ }, { "constant": false, - "id": 1821, + "id": 2013, "indexed": false, "name": "_connectorBalance", "nodeType": "VariableDeclaration", - "scope": 1825, + "scope": 2017, "src": "935:25:10", "stateVariable": false, "storageLocation": "default", @@ -454,7 +454,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1820, + "id": 2012, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "935:7:10", @@ -468,11 +468,11 @@ }, { "constant": false, - "id": 1823, + "id": 2015, "indexed": false, "name": "_connectorWeight", "nodeType": "VariableDeclaration", - "scope": 1825, + "scope": 2017, "src": "971:23:10", "stateVariable": false, "storageLocation": "default", @@ -481,7 +481,7 @@ "typeString": "uint32" }, "typeName": { - "id": 1822, + "id": 2014, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "971:6:10", @@ -501,28 +501,28 @@ { "body": null, "documentation": "@dev returns the converter type\n\n * @return see the converter types in the the main contract doc", - "id": 1830, + "id": 2022, "implemented": false, "kind": "function", "modifiers": [], "name": "converterType", "nodeType": "FunctionDefinition", "parameters": { - "id": 1826, + "id": 2018, "nodeType": "ParameterList", "parameters": [], "src": "1169:2:10" }, "returnParameters": { - "id": 1829, + "id": 2021, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1828, + "id": 2020, "name": "", "nodeType": "VariableDeclaration", - "scope": 1830, + "scope": 2022, "src": "1195:6:10", "stateVariable": false, "storageLocation": "default", @@ -531,7 +531,7 @@ "typeString": "uint16" }, "typeName": { - "id": 1827, + "id": 2019, "name": "uint16", "nodeType": "ElementaryTypeName", "src": "1195:6:10", @@ -546,7 +546,7 @@ ], "src": "1194:8:10" }, - "scope": 1939, + "scope": 2131, "src": "1147:56:10", "stateMutability": "pure", "superFunction": null, @@ -555,25 +555,25 @@ { "body": null, "documentation": "@dev accepts ownership of the anchor after an ownership transfer\nalso activates the converter\ncan only be called by the contract owner\nnote that prior to version 28, you should use 'acceptTokenOwnership' instead", - "id": 1833, + "id": 2025, "implemented": false, "kind": "function", "modifiers": [], "name": "acceptAnchorOwnership", "nodeType": "FunctionDefinition", "parameters": { - "id": 1831, + "id": 2023, "nodeType": "ParameterList", "parameters": [], "src": "1506:2:10" }, "returnParameters": { - "id": 1832, + "id": 2024, "nodeType": "ParameterList", "parameters": [], "src": "1517:0:10" }, - "scope": 1939, + "scope": 2131, "src": "1476:42:10", "stateMutability": "nonpayable", "superFunction": null, @@ -582,38 +582,38 @@ { "body": null, "documentation": "@dev returns the expected target amount of converting one reserve to another along with the fee\n\n * @param _sourceToken contract address of the source reserve token\n@param _targetToken contract address of the target reserve token\n@param _amount amount of tokens received from the user\n\n * @return expected target amount\n@return expected fee", - "id": 1846, + "id": 2038, "implemented": false, "kind": "function", "modifiers": [], "name": "targetAmountAndFee", "nodeType": "FunctionDefinition", "parameters": { - "id": 1840, + "id": 2032, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1835, + "id": 2027, "name": "_sourceToken", "nodeType": "VariableDeclaration", - "scope": 1846, + "scope": 2038, "src": "1981:24:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1785", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" }, "typeName": { "contractScope": null, - "id": 1834, + "id": 2026, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1785, + "referencedDeclaration": 1977, "src": "1981:11:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1785", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" } }, @@ -622,26 +622,26 @@ }, { "constant": false, - "id": 1837, + "id": 2029, "name": "_targetToken", "nodeType": "VariableDeclaration", - "scope": 1846, + "scope": 2038, "src": "2007:24:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1785", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" }, "typeName": { "contractScope": null, - "id": 1836, + "id": 2028, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1785, + "referencedDeclaration": 1977, "src": "2007:11:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1785", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" } }, @@ -650,10 +650,10 @@ }, { "constant": false, - "id": 1839, + "id": 2031, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1846, + "scope": 2038, "src": "2033:15:10", "stateVariable": false, "storageLocation": "default", @@ -662,7 +662,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1838, + "id": 2030, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2033:7:10", @@ -678,15 +678,15 @@ "src": "1980:69:10" }, "returnParameters": { - "id": 1845, + "id": 2037, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1842, + "id": 2034, "name": "", "nodeType": "VariableDeclaration", - "scope": 1846, + "scope": 2038, "src": "2073:7:10", "stateVariable": false, "storageLocation": "default", @@ -695,7 +695,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1841, + "id": 2033, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2073:7:10", @@ -709,10 +709,10 @@ }, { "constant": false, - "id": 1844, + "id": 2036, "name": "", "nodeType": "VariableDeclaration", - "scope": 1846, + "scope": 2038, "src": "2082:7:10", "stateVariable": false, "storageLocation": "default", @@ -721,7 +721,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1843, + "id": 2035, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2082:7:10", @@ -736,7 +736,7 @@ ], "src": "2072:18:10" }, - "scope": 1939, + "scope": 2131, "src": "1953:138:10", "stateMutability": "view", "superFunction": null, @@ -745,48 +745,48 @@ { "body": null, "documentation": "@dev increases the pool's liquidity and mints new shares in the pool to the caller\nnote that prior to version 28, you should use 'fund' instead\n\n * @param _reserveTokens address of each reserve token\n@param _reserveAmounts amount of each reserve token\n@param _minReturn token minimum return-amount", - "id": 1857, + "id": 2049, "implemented": false, "kind": "function", "modifiers": [], "name": "addLiquidity", "nodeType": "FunctionDefinition", "parameters": { - "id": 1855, + "id": 2047, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1849, + "id": 2041, "name": "_reserveTokens", "nodeType": "VariableDeclaration", - "scope": 1857, + "scope": 2049, "src": "2497:37:10", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1785_$dyn_calldata_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1977_$dyn_calldata_ptr", "typeString": "contract IERC20Token[]" }, "typeName": { "baseType": { "contractScope": null, - "id": 1847, + "id": 2039, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1785, + "referencedDeclaration": 1977, "src": "2497:11:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1785", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" } }, - "id": 1848, + "id": 2040, "length": null, "nodeType": "ArrayTypeName", "src": "2497:13:10", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1785_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1977_$dyn_storage_ptr", "typeString": "contract IERC20Token[]" } }, @@ -795,10 +795,10 @@ }, { "constant": false, - "id": 1852, + "id": 2044, "name": "_reserveAmounts", "nodeType": "VariableDeclaration", - "scope": 1857, + "scope": 2049, "src": "2536:34:10", "stateVariable": false, "storageLocation": "calldata", @@ -808,7 +808,7 @@ }, "typeName": { "baseType": { - "id": 1850, + "id": 2042, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2536:7:10", @@ -817,7 +817,7 @@ "typeString": "uint256" } }, - "id": 1851, + "id": 2043, "length": null, "nodeType": "ArrayTypeName", "src": "2536:9:10", @@ -831,10 +831,10 @@ }, { "constant": false, - "id": 1854, + "id": 2046, "name": "_minReturn", "nodeType": "VariableDeclaration", - "scope": 1857, + "scope": 2049, "src": "2572:18:10", "stateVariable": false, "storageLocation": "default", @@ -843,7 +843,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1853, + "id": 2045, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2572:7:10", @@ -859,12 +859,12 @@ "src": "2496:95:10" }, "returnParameters": { - "id": 1856, + "id": 2048, "nodeType": "ParameterList", "parameters": [], "src": "2608:0:10" }, - "scope": 1939, + "scope": 2131, "src": "2475:134:10", "stateMutability": "payable", "superFunction": null, @@ -873,22 +873,22 @@ { "body": null, "documentation": "@dev decreases the pool's liquidity and burns the caller's shares in the pool\nnote that prior to version 28, you should use 'liquidate' instead\n\n * @param _amount token amount\n@param _reserveTokens address of each reserve token\n@param _reserveMinReturnAmounts minimum return-amount of each reserve token", - "id": 1868, + "id": 2060, "implemented": false, "kind": "function", "modifiers": [], "name": "removeLiquidity", "nodeType": "FunctionDefinition", "parameters": { - "id": 1866, + "id": 2058, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1859, + "id": 2051, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1868, + "scope": 2060, "src": "3040:15:10", "stateVariable": false, "storageLocation": "default", @@ -897,7 +897,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1858, + "id": 2050, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3040:7:10", @@ -911,36 +911,36 @@ }, { "constant": false, - "id": 1862, + "id": 2054, "name": "_reserveTokens", "nodeType": "VariableDeclaration", - "scope": 1868, + "scope": 2060, "src": "3057:37:10", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1785_$dyn_calldata_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1977_$dyn_calldata_ptr", "typeString": "contract IERC20Token[]" }, "typeName": { "baseType": { "contractScope": null, - "id": 1860, + "id": 2052, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1785, + "referencedDeclaration": 1977, "src": "3057:11:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1785", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" } }, - "id": 1861, + "id": 2053, "length": null, "nodeType": "ArrayTypeName", "src": "3057:13:10", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1785_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1977_$dyn_storage_ptr", "typeString": "contract IERC20Token[]" } }, @@ -949,10 +949,10 @@ }, { "constant": false, - "id": 1865, + "id": 2057, "name": "_reserveMinReturnAmounts", "nodeType": "VariableDeclaration", - "scope": 1868, + "scope": 2060, "src": "3096:43:10", "stateVariable": false, "storageLocation": "calldata", @@ -962,7 +962,7 @@ }, "typeName": { "baseType": { - "id": 1863, + "id": 2055, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3096:7:10", @@ -971,7 +971,7 @@ "typeString": "uint256" } }, - "id": 1864, + "id": 2056, "length": null, "nodeType": "ArrayTypeName", "src": "3096:9:10", @@ -987,12 +987,12 @@ "src": "3039:101:10" }, "returnParameters": { - "id": 1867, + "id": 2059, "nodeType": "ParameterList", "parameters": [], "src": "3149:0:10" }, - "scope": 1939, + "scope": 2131, "src": "3015:135:10", "stateMutability": "nonpayable", "superFunction": null, @@ -1001,22 +1001,22 @@ { "body": null, "documentation": "@dev increases the pool's liquidity and mints new shares in the pool to the caller\nfor example, if the caller increases the supply by 10%,\nthen it will cost an amount equal to 10% of each reserve token balance\nnote that starting from version 28, you should use 'addLiquidity' instead\n\n * @param _amount amount to increase the supply by (in the pool token)", - "id": 1873, + "id": 2065, "implemented": false, "kind": "function", "modifiers": [], "name": "fund", "nodeType": "FunctionDefinition", "parameters": { - "id": 1871, + "id": 2063, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1870, + "id": 2062, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1873, + "scope": 2065, "src": "3596:15:10", "stateVariable": false, "storageLocation": "default", @@ -1025,7 +1025,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1869, + "id": 2061, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3596:7:10", @@ -1041,12 +1041,12 @@ "src": "3595:17:10" }, "returnParameters": { - "id": 1872, + "id": 2064, "nodeType": "ParameterList", "parameters": [], "src": "3629:0:10" }, - "scope": 1939, + "scope": 2131, "src": "3582:48:10", "stateMutability": "payable", "superFunction": null, @@ -1055,22 +1055,22 @@ { "body": null, "documentation": "@dev decreases the pool's liquidity and burns the caller's shares in the pool\nfor example, if the holder sells 10% of the supply,\nthen they will receive 10% of each reserve token balance in return\nnote that starting from version 28, you should use 'removeLiquidity' instead\n\n * @param _amount amount to liquidate (in the pool token)", - "id": 1878, + "id": 2070, "implemented": false, "kind": "function", "modifiers": [], "name": "liquidate", "nodeType": "FunctionDefinition", "parameters": { - "id": 1876, + "id": 2068, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1875, + "id": 2067, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1878, + "scope": 2070, "src": "4058:15:10", "stateVariable": false, "storageLocation": "default", @@ -1079,7 +1079,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1874, + "id": 2066, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4058:7:10", @@ -1095,12 +1095,12 @@ "src": "4057:17:10" }, "returnParameters": { - "id": 1877, + "id": 2069, "nodeType": "ParameterList", "parameters": [], "src": "4083:0:10" }, - "scope": 1939, + "scope": 2131, "src": "4039:45:10", "stateMutability": "nonpayable", "superFunction": null, @@ -1109,22 +1109,22 @@ { "body": null, "documentation": "@dev calculates the number of decimal digits in a given value\n\n * @param _x value (assumed positive)\n@return the number of decimal digits in the given value", - "id": 1885, + "id": 2077, "implemented": false, "kind": "function", "modifiers": [], "name": "decimalLength", "nodeType": "FunctionDefinition", "parameters": { - "id": 1881, + "id": 2073, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1880, + "id": 2072, "name": "_x", "nodeType": "VariableDeclaration", - "scope": 1885, + "scope": 2077, "src": "4323:10:10", "stateVariable": false, "storageLocation": "default", @@ -1133,7 +1133,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1879, + "id": 2071, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4323:7:10", @@ -1149,15 +1149,15 @@ "src": "4322:12:10" }, "returnParameters": { - "id": 1884, + "id": 2076, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1883, + "id": 2075, "name": "", "nodeType": "VariableDeclaration", - "scope": 1885, + "scope": 2077, "src": "4358:7:10", "stateVariable": false, "storageLocation": "default", @@ -1166,7 +1166,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1882, + "id": 2074, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4358:7:10", @@ -1181,7 +1181,7 @@ ], "src": "4357:9:10" }, - "scope": 1939, + "scope": 2131, "src": "4300:67:10", "stateMutability": "pure", "superFunction": null, @@ -1190,22 +1190,22 @@ { "body": null, "documentation": "@dev calculates the nearest integer to a given quotient\n\n * @param _n quotient numerator\n@param _d quotient denominator\n@return the nearest integer to the given quotient", - "id": 1894, + "id": 2086, "implemented": false, "kind": "function", "modifiers": [], "name": "roundDiv", "nodeType": "FunctionDefinition", "parameters": { - "id": 1890, + "id": 2082, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1887, + "id": 2079, "name": "_n", "nodeType": "VariableDeclaration", - "scope": 1894, + "scope": 2086, "src": "4625:10:10", "stateVariable": false, "storageLocation": "default", @@ -1214,7 +1214,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1886, + "id": 2078, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4625:7:10", @@ -1228,10 +1228,10 @@ }, { "constant": false, - "id": 1889, + "id": 2081, "name": "_d", "nodeType": "VariableDeclaration", - "scope": 1894, + "scope": 2086, "src": "4637:10:10", "stateVariable": false, "storageLocation": "default", @@ -1240,7 +1240,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1888, + "id": 2080, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4637:7:10", @@ -1256,15 +1256,15 @@ "src": "4624:24:10" }, "returnParameters": { - "id": 1893, + "id": 2085, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1892, + "id": 2084, "name": "", "nodeType": "VariableDeclaration", - "scope": 1894, + "scope": 2086, "src": "4672:7:10", "stateVariable": false, "storageLocation": "default", @@ -1273,7 +1273,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1891, + "id": 2083, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4672:7:10", @@ -1288,7 +1288,7 @@ ], "src": "4671:9:10" }, - "scope": 1939, + "scope": 2131, "src": "4607:74:10", "stateMutability": "pure", "superFunction": null, @@ -1297,22 +1297,22 @@ { "body": null, "documentation": "@dev calculates the average number of decimal digits in a given list of values\n\n * @param _values list of values (each of which assumed positive)\n@return the average number of decimal digits in the given list of values", - "id": 1902, + "id": 2094, "implemented": false, "kind": "function", "modifiers": [], "name": "geometricMean", "nodeType": "FunctionDefinition", "parameters": { - "id": 1898, + "id": 2090, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1897, + "id": 2089, "name": "_values", "nodeType": "VariableDeclaration", - "scope": 1902, + "scope": 2094, "src": "4981:26:10", "stateVariable": false, "storageLocation": "calldata", @@ -1322,7 +1322,7 @@ }, "typeName": { "baseType": { - "id": 1895, + "id": 2087, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4981:7:10", @@ -1331,7 +1331,7 @@ "typeString": "uint256" } }, - "id": 1896, + "id": 2088, "length": null, "nodeType": "ArrayTypeName", "src": "4981:9:10", @@ -1347,15 +1347,15 @@ "src": "4980:28:10" }, "returnParameters": { - "id": 1901, + "id": 2093, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1900, + "id": 2092, "name": "", "nodeType": "VariableDeclaration", - "scope": 1902, + "scope": 2094, "src": "5032:7:10", "stateVariable": false, "storageLocation": "default", @@ -1364,7 +1364,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1899, + "id": 2091, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5032:7:10", @@ -1379,7 +1379,7 @@ ], "src": "5031:9:10" }, - "scope": 1939, + "scope": 2131, "src": "4958:83:10", "stateMutability": "pure", "superFunction": null, @@ -1388,44 +1388,44 @@ { "body": null, "documentation": "@dev deprecated since version 28, backward compatibility - use only for earlier versions", - "id": 1907, + "id": 2099, "implemented": false, "kind": "function", "modifiers": [], "name": "token", "nodeType": "FunctionDefinition", "parameters": { - "id": 1903, + "id": 2095, "nodeType": "ParameterList", "parameters": [], "src": "5178:2:10" }, "returnParameters": { - "id": 1906, + "id": 2098, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1905, + "id": 2097, "name": "", "nodeType": "VariableDeclaration", - "scope": 1907, + "scope": 2099, "src": "5204:16:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IConverterAnchor_$1618", + "typeIdentifier": "t_contract$_IConverterAnchor_$1810", "typeString": "contract IConverterAnchor" }, "typeName": { "contractScope": null, - "id": 1904, + "id": 2096, "name": "IConverterAnchor", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1618, + "referencedDeclaration": 1810, "src": "5204:16:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_IConverterAnchor_$1618", + "typeIdentifier": "t_contract$_IConverterAnchor_$1810", "typeString": "contract IConverterAnchor" } }, @@ -1435,7 +1435,7 @@ ], "src": "5203:18:10" }, - "scope": 1939, + "scope": 2131, "src": "5164:58:10", "stateMutability": "view", "superFunction": null, @@ -1444,28 +1444,28 @@ { "body": null, "documentation": null, - "id": 1912, + "id": 2104, "implemented": false, "kind": "function", "modifiers": [], "name": "reserveRatio", "nodeType": "FunctionDefinition", "parameters": { - "id": 1908, + "id": 2100, "nodeType": "ParameterList", "parameters": [], "src": "5251:2:10" }, "returnParameters": { - "id": 1911, + "id": 2103, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1910, + "id": 2102, "name": "", "nodeType": "VariableDeclaration", - "scope": 1912, + "scope": 2104, "src": "5277:6:10", "stateVariable": false, "storageLocation": "default", @@ -1474,7 +1474,7 @@ "typeString": "uint32" }, "typeName": { - "id": 1909, + "id": 2101, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "5277:6:10", @@ -1489,7 +1489,7 @@ ], "src": "5276:8:10" }, - "scope": 1939, + "scope": 2131, "src": "5230:55:10", "stateMutability": "view", "superFunction": null, @@ -1497,14 +1497,14 @@ }, { "canonicalName": "ILiquidityPoolV1Converter.Reserve", - "id": 1923, + "id": 2115, "members": [ { "constant": false, - "id": 1914, + "id": 2106, "name": "balance", "nodeType": "VariableDeclaration", - "scope": 1923, + "scope": 2115, "src": "5317:15:10", "stateVariable": false, "storageLocation": "default", @@ -1513,7 +1513,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1913, + "id": 2105, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5317:7:10", @@ -1527,10 +1527,10 @@ }, { "constant": false, - "id": 1916, + "id": 2108, "name": "weight", "nodeType": "VariableDeclaration", - "scope": 1923, + "scope": 2115, "src": "5363:13:10", "stateVariable": false, "storageLocation": "default", @@ -1539,7 +1539,7 @@ "typeString": "uint32" }, "typeName": { - "id": 1915, + "id": 2107, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "5363:6:10", @@ -1553,10 +1553,10 @@ }, { "constant": false, - "id": 1918, + "id": 2110, "name": "deprecated1", "nodeType": "VariableDeclaration", - "scope": 1923, + "scope": 2115, "src": "5439:16:10", "stateVariable": false, "storageLocation": "default", @@ -1565,7 +1565,7 @@ "typeString": "bool" }, "typeName": { - "id": 1917, + "id": 2109, "name": "bool", "nodeType": "ElementaryTypeName", "src": "5439:4:10", @@ -1579,10 +1579,10 @@ }, { "constant": false, - "id": 1920, + "id": 2112, "name": "deprecated2", "nodeType": "VariableDeclaration", - "scope": 1923, + "scope": 2115, "src": "5480:16:10", "stateVariable": false, "storageLocation": "default", @@ -1591,7 +1591,7 @@ "typeString": "bool" }, "typeName": { - "id": 1919, + "id": 2111, "name": "bool", "nodeType": "ElementaryTypeName", "src": "5480:4:10", @@ -1605,10 +1605,10 @@ }, { "constant": false, - "id": 1922, + "id": 2114, "name": "isSet", "nodeType": "VariableDeclaration", - "scope": 1923, + "scope": 2115, "src": "5521:10:10", "stateVariable": false, "storageLocation": "default", @@ -1617,7 +1617,7 @@ "typeString": "bool" }, "typeName": { - "id": 1921, + "id": 2113, "name": "bool", "nodeType": "ElementaryTypeName", "src": "5521:4:10", @@ -1632,29 +1632,29 @@ ], "name": "Reserve", "nodeType": "StructDefinition", - "scope": 1939, + "scope": 2131, "src": "5293:303:10", "visibility": "public" }, { "body": null, "documentation": null, - "id": 1938, + "id": 2130, "implemented": false, "kind": "function", "modifiers": [], "name": "reserves", "nodeType": "FunctionDefinition", "parameters": { - "id": 1926, + "id": 2118, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1925, + "id": 2117, "name": "", "nodeType": "VariableDeclaration", - "scope": 1938, + "scope": 2130, "src": "5620:7:10", "stateVariable": false, "storageLocation": "default", @@ -1663,7 +1663,7 @@ "typeString": "address" }, "typeName": { - "id": 1924, + "id": 2116, "name": "address", "nodeType": "ElementaryTypeName", "src": "5620:7:10", @@ -1680,15 +1680,15 @@ "src": "5619:9:10" }, "returnParameters": { - "id": 1937, + "id": 2129, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1928, + "id": 2120, "name": "", "nodeType": "VariableDeclaration", - "scope": 1938, + "scope": 2130, "src": "5652:7:10", "stateVariable": false, "storageLocation": "default", @@ -1697,7 +1697,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1927, + "id": 2119, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5652:7:10", @@ -1711,10 +1711,10 @@ }, { "constant": false, - "id": 1930, + "id": 2122, "name": "", "nodeType": "VariableDeclaration", - "scope": 1938, + "scope": 2130, "src": "5661:6:10", "stateVariable": false, "storageLocation": "default", @@ -1723,7 +1723,7 @@ "typeString": "uint32" }, "typeName": { - "id": 1929, + "id": 2121, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "5661:6:10", @@ -1737,10 +1737,10 @@ }, { "constant": false, - "id": 1932, + "id": 2124, "name": "", "nodeType": "VariableDeclaration", - "scope": 1938, + "scope": 2130, "src": "5669:4:10", "stateVariable": false, "storageLocation": "default", @@ -1749,7 +1749,7 @@ "typeString": "bool" }, "typeName": { - "id": 1931, + "id": 2123, "name": "bool", "nodeType": "ElementaryTypeName", "src": "5669:4:10", @@ -1763,10 +1763,10 @@ }, { "constant": false, - "id": 1934, + "id": 2126, "name": "", "nodeType": "VariableDeclaration", - "scope": 1938, + "scope": 2130, "src": "5675:4:10", "stateVariable": false, "storageLocation": "default", @@ -1775,7 +1775,7 @@ "typeString": "bool" }, "typeName": { - "id": 1933, + "id": 2125, "name": "bool", "nodeType": "ElementaryTypeName", "src": "5675:4:10", @@ -1789,10 +1789,10 @@ }, { "constant": false, - "id": 1936, + "id": 2128, "name": "", "nodeType": "VariableDeclaration", - "scope": 1938, + "scope": 2130, "src": "5681:4:10", "stateVariable": false, "storageLocation": "default", @@ -1801,7 +1801,7 @@ "typeString": "bool" }, "typeName": { - "id": 1935, + "id": 2127, "name": "bool", "nodeType": "ElementaryTypeName", "src": "5681:4:10", @@ -1816,1527 +1816,1692 @@ ], "src": "5651:35:10" }, - "scope": 1939, + "scope": 2131, "src": "5602:85:10", "stateMutability": "view", "superFunction": null, "visibility": "external" } ], - "scope": 1940, + "scope": 2132, "src": "420:5272:10" } ], "src": "0:5694:10" }, "legacyAST": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ILiquidityPoolV1Converter.sol", - "exportedSymbols": { - "ILiquidityPoolV1Converter": [ - 1939 - ] + "attributes": { + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ILiquidityPoolV1Converter.sol", + "exportedSymbols": { + "ILiquidityPoolV1Converter": [ + 2131 + ] + } }, - "id": 1940, - "nodeType": "SourceUnit", - "nodes": [ + "children": [ { - "id": 1813, - "literals": [ - "solidity", - "0.5", - ".16" - ], - "nodeType": "PragmaDirective", + "attributes": { + "literals": [ + "solidity", + "0.5", + ".16" + ] + }, + "id": 2005, + "name": "PragmaDirective", "src": "0:23:10" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol", - "file": "./IERC20Token.sol", - "id": 1814, - "nodeType": "ImportDirective", - "scope": 1940, - "sourceUnit": 1786, - "src": "27:27:10", - "symbolAliases": [], - "unitAlias": "" + "attributes": { + "SourceUnit": 1978, + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol", + "file": "./IERC20Token.sol", + "scope": 2132, + "symbolAliases": [ + null + ], + "unitAlias": "" + }, + "id": 2006, + "name": "ImportDirective", + "src": "27:27:10" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IConverterAnchor.sol", - "file": "./IConverterAnchor.sol", - "id": 1815, - "nodeType": "ImportDirective", - "scope": 1940, - "sourceUnit": 1619, - "src": "56:32:10", - "symbolAliases": [], - "unitAlias": "" + "attributes": { + "SourceUnit": 1811, + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IConverterAnchor.sol", + "file": "./IConverterAnchor.sol", + "scope": 2132, + "symbolAliases": [ + null + ], + "unitAlias": "" + }, + "id": 2007, + "name": "ImportDirective", + "src": "56:32:10" }, { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "interface", - "documentation": "@dev Liquidity Pool v1 Converter\n\n * The liquidity pool v1 converter is a specialized version of a converter that manages\na classic SovrynSwap liquidity pool.\n\n * Even though classic pools can have many reserves, the most common configuration of\nthe pool has 2 reserves with 50%/50% weights.", - "fullyImplemented": false, - "id": 1939, - "linearizedBaseContracts": [ - 1939 - ], - "name": "ILiquidityPoolV1Converter", - "nodeType": "ContractDefinition", - "nodes": [ + "attributes": { + "baseContracts": [ + null + ], + "contractDependencies": [ + null + ], + "contractKind": "interface", + "documentation": "@dev Liquidity Pool v1 Converter\n\n * The liquidity pool v1 converter is a specialized version of a converter that manages\na classic SovrynSwap liquidity pool.\n\n * Even though classic pools can have many reserves, the most common configuration of\nthe pool has 2 reserves with 50%/50% weights.", + "fullyImplemented": false, + "linearizedBaseContracts": [ + 2131 + ], + "name": "ILiquidityPoolV1Converter", + "scope": 2132 + }, + "children": [ { - "anonymous": false, - "documentation": "@dev triggered after a conversion with new price data\ndeprecated, use `TokenRateUpdate` from version 28 and up\n\n * @param _connectorToken reserve token\n@param _tokenSupply smart token supply\n@param _connectorBalance reserve balance\n@param _connectorWeight reserve weight", - "id": 1825, - "name": "PriceDataUpdate", - "nodeType": "EventDefinition", - "parameters": { - "id": 1824, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1817, - "indexed": true, - "name": "_connectorToken", - "nodeType": "VariableDeclaration", - "scope": 1825, - "src": "862:31:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1816, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "862:7:10", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1819, - "indexed": false, - "name": "_tokenSupply", - "nodeType": "VariableDeclaration", - "scope": 1825, - "src": "904:20:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1818, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "904:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1821, - "indexed": false, - "name": "_connectorBalance", - "nodeType": "VariableDeclaration", - "scope": 1825, - "src": "935:25:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1820, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "935:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1823, - "indexed": false, - "name": "_connectorWeight", - "nodeType": "VariableDeclaration", - "scope": 1825, - "src": "971:23:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 1822, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "971:6:10", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "851:150:10" + "attributes": { + "anonymous": false, + "documentation": "@dev triggered after a conversion with new price data\ndeprecated, use `TokenRateUpdate` from version 28 and up\n\n * @param _connectorToken reserve token\n@param _tokenSupply smart token supply\n@param _connectorBalance reserve balance\n@param _connectorWeight reserve weight", + "name": "PriceDataUpdate" }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "indexed": true, + "name": "_connectorToken", + "scope": 2017, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 2008, + "name": "ElementaryTypeName", + "src": "862:7:10" + } + ], + "id": 2009, + "name": "VariableDeclaration", + "src": "862:31:10" + }, + { + "attributes": { + "constant": false, + "indexed": false, + "name": "_tokenSupply", + "scope": 2017, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2010, + "name": "ElementaryTypeName", + "src": "904:7:10" + } + ], + "id": 2011, + "name": "VariableDeclaration", + "src": "904:20:10" + }, + { + "attributes": { + "constant": false, + "indexed": false, + "name": "_connectorBalance", + "scope": 2017, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2012, + "name": "ElementaryTypeName", + "src": "935:7:10" + } + ], + "id": 2013, + "name": "VariableDeclaration", + "src": "935:25:10" + }, + { + "attributes": { + "constant": false, + "indexed": false, + "name": "_connectorWeight", + "scope": 2017, + "stateVariable": false, + "storageLocation": "default", + "type": "uint32", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint32", + "type": "uint32" + }, + "id": 2014, + "name": "ElementaryTypeName", + "src": "971:6:10" + } + ], + "id": 2015, + "name": "VariableDeclaration", + "src": "971:23:10" + } + ], + "id": 2016, + "name": "ParameterList", + "src": "851:150:10" + } + ], + "id": 2017, + "name": "EventDefinition", "src": "830:172:10" }, { - "body": null, - "documentation": "@dev returns the converter type\n\n * @return see the converter types in the the main contract doc", - "id": 1830, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "converterType", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1826, - "nodeType": "ParameterList", - "parameters": [], - "src": "1169:2:10" - }, - "returnParameters": { - "id": 1829, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1828, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1830, - "src": "1195:6:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "typeName": { - "id": 1827, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "1195:6:10", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": "@dev returns the converter type\n\n * @return see the converter types in the the main contract doc", + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "1194:8:10" + "name": "converterType", + "scope": 2131, + "stateMutability": "pure", + "superFunction": null, + "visibility": "external" }, - "scope": 1939, - "src": "1147:56:10", - "stateMutability": "pure", - "superFunction": null, - "visibility": "external" + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2018, + "name": "ParameterList", + "src": "1169:2:10" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2022, + "stateVariable": false, + "storageLocation": "default", + "type": "uint16", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint16", + "type": "uint16" + }, + "id": 2019, + "name": "ElementaryTypeName", + "src": "1195:6:10" + } + ], + "id": 2020, + "name": "VariableDeclaration", + "src": "1195:6:10" + } + ], + "id": 2021, + "name": "ParameterList", + "src": "1194:8:10" + } + ], + "id": 2022, + "name": "FunctionDefinition", + "src": "1147:56:10" }, { - "body": null, - "documentation": "@dev accepts ownership of the anchor after an ownership transfer\nalso activates the converter\ncan only be called by the contract owner\nnote that prior to version 28, you should use 'acceptTokenOwnership' instead", - "id": 1833, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "acceptAnchorOwnership", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1831, - "nodeType": "ParameterList", - "parameters": [], - "src": "1506:2:10" - }, - "returnParameters": { - "id": 1832, - "nodeType": "ParameterList", - "parameters": [], - "src": "1517:0:10" + "attributes": { + "body": null, + "documentation": "@dev accepts ownership of the anchor after an ownership transfer\nalso activates the converter\ncan only be called by the contract owner\nnote that prior to version 28, you should use 'acceptTokenOwnership' instead", + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "acceptAnchorOwnership", + "scope": 2131, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" }, - "scope": 1939, - "src": "1476:42:10", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2023, + "name": "ParameterList", + "src": "1506:2:10" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2024, + "name": "ParameterList", + "src": "1517:0:10" + } + ], + "id": 2025, + "name": "FunctionDefinition", + "src": "1476:42:10" }, { - "body": null, - "documentation": "@dev returns the expected target amount of converting one reserve to another along with the fee\n\n * @param _sourceToken contract address of the source reserve token\n@param _targetToken contract address of the target reserve token\n@param _amount amount of tokens received from the user\n\n * @return expected target amount\n@return expected fee", - "id": 1846, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "targetAmountAndFee", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1840, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1835, - "name": "_sourceToken", - "nodeType": "VariableDeclaration", - "scope": 1846, - "src": "1981:24:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1785", - "typeString": "contract IERC20Token" - }, - "typeName": { - "contractScope": null, - "id": 1834, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1785, - "src": "1981:11:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1785", - "typeString": "contract IERC20Token" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1837, - "name": "_targetToken", - "nodeType": "VariableDeclaration", - "scope": 1846, - "src": "2007:24:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1785", - "typeString": "contract IERC20Token" - }, - "typeName": { - "contractScope": null, - "id": 1836, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1785, - "src": "2007:11:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1785", - "typeString": "contract IERC20Token" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1839, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1846, - "src": "2033:15:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1838, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2033:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1980:69:10" - }, - "returnParameters": { - "id": 1845, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1842, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1846, - "src": "2073:7:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1841, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2073:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1844, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1846, - "src": "2082:7:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1843, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2082:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": "@dev returns the expected target amount of converting one reserve to another along with the fee\n\n * @param _sourceToken contract address of the source reserve token\n@param _targetToken contract address of the target reserve token\n@param _amount amount of tokens received from the user\n\n * @return expected target amount\n@return expected fee", + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "2072:18:10" + "name": "targetAmountAndFee", + "scope": 2131, + "stateMutability": "view", + "superFunction": null, + "visibility": "external" }, - "scope": 1939, - "src": "1953:138:10", - "stateMutability": "view", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": "@dev increases the pool's liquidity and mints new shares in the pool to the caller\nnote that prior to version 28, you should use 'fund' instead\n\n * @param _reserveTokens address of each reserve token\n@param _reserveAmounts amount of each reserve token\n@param _minReturn token minimum return-amount", - "id": 1857, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "addLiquidity", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1855, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1849, - "name": "_reserveTokens", - "nodeType": "VariableDeclaration", - "scope": 1857, - "src": "2497:37:10", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1785_$dyn_calldata_ptr", - "typeString": "contract IERC20Token[]" - }, - "typeName": { - "baseType": { - "contractScope": null, - "id": 1847, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1785, - "src": "2497:11:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1785", - "typeString": "contract IERC20Token" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_sourceToken", + "scope": 2038, + "stateVariable": false, + "storageLocation": "default", + "type": "contract IERC20Token", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1977, + "type": "contract IERC20Token" + }, + "id": 2026, + "name": "UserDefinedTypeName", + "src": "1981:11:10" } + ], + "id": 2027, + "name": "VariableDeclaration", + "src": "1981:24:10" + }, + { + "attributes": { + "constant": false, + "name": "_targetToken", + "scope": 2038, + "stateVariable": false, + "storageLocation": "default", + "type": "contract IERC20Token", + "value": null, + "visibility": "internal" }, - "id": 1848, - "length": null, - "nodeType": "ArrayTypeName", - "src": "2497:13:10", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1785_$dyn_storage_ptr", - "typeString": "contract IERC20Token[]" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1852, - "name": "_reserveAmounts", - "nodeType": "VariableDeclaration", - "scope": 1857, - "src": "2536:34:10", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[]" - }, - "typeName": { - "baseType": { - "id": 1850, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2536:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1977, + "type": "contract IERC20Token" + }, + "id": 2028, + "name": "UserDefinedTypeName", + "src": "2007:11:10" } + ], + "id": 2029, + "name": "VariableDeclaration", + "src": "2007:24:10" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2038, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" }, - "id": 1851, - "length": null, - "nodeType": "ArrayTypeName", - "src": "2536:9:10", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", - "typeString": "uint256[]" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1854, - "name": "_minReturn", - "nodeType": "VariableDeclaration", - "scope": 1857, - "src": "2572:18:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1853, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2572:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2496:95:10" - }, - "returnParameters": { - "id": 1856, - "nodeType": "ParameterList", - "parameters": [], - "src": "2608:0:10" - }, - "scope": 1939, - "src": "2475:134:10", - "stateMutability": "payable", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": "@dev decreases the pool's liquidity and burns the caller's shares in the pool\nnote that prior to version 28, you should use 'liquidate' instead\n\n * @param _amount token amount\n@param _reserveTokens address of each reserve token\n@param _reserveMinReturnAmounts minimum return-amount of each reserve token", - "id": 1868, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "removeLiquidity", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1866, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1859, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1868, - "src": "3040:15:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1858, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3040:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1862, - "name": "_reserveTokens", - "nodeType": "VariableDeclaration", - "scope": 1868, - "src": "3057:37:10", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1785_$dyn_calldata_ptr", - "typeString": "contract IERC20Token[]" - }, - "typeName": { - "baseType": { - "contractScope": null, - "id": 1860, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1785, - "src": "3057:11:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1785", - "typeString": "contract IERC20Token" + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2030, + "name": "ElementaryTypeName", + "src": "2033:7:10" } - }, - "id": 1861, - "length": null, - "nodeType": "ArrayTypeName", - "src": "3057:13:10", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1785_$dyn_storage_ptr", - "typeString": "contract IERC20Token[]" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1865, - "name": "_reserveMinReturnAmounts", - "nodeType": "VariableDeclaration", - "scope": 1868, - "src": "3096:43:10", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[]" - }, - "typeName": { - "baseType": { - "id": 1863, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3096:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1864, - "length": null, - "nodeType": "ArrayTypeName", - "src": "3096:9:10", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", - "typeString": "uint256[]" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3039:101:10" - }, - "returnParameters": { - "id": 1867, - "nodeType": "ParameterList", - "parameters": [], - "src": "3149:0:10" - }, - "scope": 1939, - "src": "3015:135:10", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": "@dev increases the pool's liquidity and mints new shares in the pool to the caller\nfor example, if the caller increases the supply by 10%,\nthen it will cost an amount equal to 10% of each reserve token balance\nnote that starting from version 28, you should use 'addLiquidity' instead\n\n * @param _amount amount to increase the supply by (in the pool token)", - "id": 1873, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "fund", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1871, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1870, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1873, - "src": "3596:15:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1869, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3596:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3595:17:10" - }, - "returnParameters": { - "id": 1872, - "nodeType": "ParameterList", - "parameters": [], - "src": "3629:0:10" - }, - "scope": 1939, - "src": "3582:48:10", - "stateMutability": "payable", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": "@dev decreases the pool's liquidity and burns the caller's shares in the pool\nfor example, if the holder sells 10% of the supply,\nthen they will receive 10% of each reserve token balance in return\nnote that starting from version 28, you should use 'removeLiquidity' instead\n\n * @param _amount amount to liquidate (in the pool token)", - "id": 1878, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "liquidate", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1876, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1875, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1878, - "src": "4058:15:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1874, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4058:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "4057:17:10" - }, - "returnParameters": { - "id": 1877, - "nodeType": "ParameterList", - "parameters": [], - "src": "4083:0:10" - }, - "scope": 1939, - "src": "4039:45:10", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": "@dev calculates the number of decimal digits in a given value\n\n * @param _x value (assumed positive)\n@return the number of decimal digits in the given value", - "id": 1885, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "decimalLength", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1881, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1880, - "name": "_x", - "nodeType": "VariableDeclaration", - "scope": 1885, - "src": "4323:10:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1879, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4323:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "4322:12:10" - }, - "returnParameters": { - "id": 1884, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1883, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1885, - "src": "4358:7:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1882, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4358:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "4357:9:10" - }, - "scope": 1939, - "src": "4300:67:10", - "stateMutability": "pure", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": "@dev calculates the nearest integer to a given quotient\n\n * @param _n quotient numerator\n@param _d quotient denominator\n@return the nearest integer to the given quotient", - "id": 1894, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "roundDiv", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1890, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1887, - "name": "_n", - "nodeType": "VariableDeclaration", - "scope": 1894, - "src": "4625:10:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1886, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4625:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1889, - "name": "_d", - "nodeType": "VariableDeclaration", - "scope": 1894, - "src": "4637:10:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1888, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4637:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "4624:24:10" - }, - "returnParameters": { - "id": 1893, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1892, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1894, - "src": "4672:7:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1891, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4672:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "4671:9:10" - }, - "scope": 1939, - "src": "4607:74:10", - "stateMutability": "pure", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": "@dev calculates the average number of decimal digits in a given list of values\n\n * @param _values list of values (each of which assumed positive)\n@return the average number of decimal digits in the given list of values", - "id": 1902, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "geometricMean", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1898, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1897, - "name": "_values", - "nodeType": "VariableDeclaration", - "scope": 1902, - "src": "4981:26:10", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[]" - }, - "typeName": { - "baseType": { - "id": 1895, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4981:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + ], + "id": 2031, + "name": "VariableDeclaration", + "src": "2033:15:10" + } + ], + "id": 2032, + "name": "ParameterList", + "src": "1980:69:10" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2038, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2033, + "name": "ElementaryTypeName", + "src": "2073:7:10" } + ], + "id": 2034, + "name": "VariableDeclaration", + "src": "2073:7:10" + }, + { + "attributes": { + "constant": false, + "name": "", + "scope": 2038, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" }, - "id": 1896, - "length": null, - "nodeType": "ArrayTypeName", - "src": "4981:9:10", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", - "typeString": "uint256[]" - } - }, - "value": null, - "visibility": "internal" - } + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2035, + "name": "ElementaryTypeName", + "src": "2082:7:10" + } + ], + "id": 2036, + "name": "VariableDeclaration", + "src": "2082:7:10" + } + ], + "id": 2037, + "name": "ParameterList", + "src": "2072:18:10" + } + ], + "id": 2038, + "name": "FunctionDefinition", + "src": "1953:138:10" + }, + { + "attributes": { + "body": null, + "documentation": "@dev increases the pool's liquidity and mints new shares in the pool to the caller\nnote that prior to version 28, you should use 'fund' instead\n\n * @param _reserveTokens address of each reserve token\n@param _reserveAmounts amount of each reserve token\n@param _minReturn token minimum return-amount", + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "4980:28:10" + "name": "addLiquidity", + "scope": 2131, + "stateMutability": "payable", + "superFunction": null, + "visibility": "external" }, - "returnParameters": { - "id": 1901, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1900, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1902, - "src": "5032:7:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1899, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5032:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_reserveTokens", + "scope": 2049, + "stateVariable": false, + "storageLocation": "calldata", + "type": "contract IERC20Token[]", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "length": null, + "type": "contract IERC20Token[]" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1977, + "type": "contract IERC20Token" + }, + "id": 2039, + "name": "UserDefinedTypeName", + "src": "2497:11:10" + } + ], + "id": 2040, + "name": "ArrayTypeName", + "src": "2497:13:10" + } + ], + "id": 2041, + "name": "VariableDeclaration", + "src": "2497:37:10" + }, + { + "attributes": { + "constant": false, + "name": "_reserveAmounts", + "scope": 2049, + "stateVariable": false, + "storageLocation": "calldata", + "type": "uint256[]", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "length": null, + "type": "uint256[]" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2042, + "name": "ElementaryTypeName", + "src": "2536:7:10" + } + ], + "id": 2043, + "name": "ArrayTypeName", + "src": "2536:9:10" + } + ], + "id": 2044, + "name": "VariableDeclaration", + "src": "2536:34:10" + }, + { + "attributes": { + "constant": false, + "name": "_minReturn", + "scope": 2049, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2045, + "name": "ElementaryTypeName", + "src": "2572:7:10" + } + ], + "id": 2046, + "name": "VariableDeclaration", + "src": "2572:18:10" + } + ], + "id": 2047, + "name": "ParameterList", + "src": "2496:95:10" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2048, + "name": "ParameterList", + "src": "2608:0:10" + } + ], + "id": 2049, + "name": "FunctionDefinition", + "src": "2475:134:10" + }, + { + "attributes": { + "body": null, + "documentation": "@dev decreases the pool's liquidity and burns the caller's shares in the pool\nnote that prior to version 28, you should use 'liquidate' instead\n\n * @param _amount token amount\n@param _reserveTokens address of each reserve token\n@param _reserveMinReturnAmounts minimum return-amount of each reserve token", + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "5031:9:10" + "name": "removeLiquidity", + "scope": 2131, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" }, - "scope": 1939, - "src": "4958:83:10", - "stateMutability": "pure", - "superFunction": null, - "visibility": "external" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2060, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2050, + "name": "ElementaryTypeName", + "src": "3040:7:10" + } + ], + "id": 2051, + "name": "VariableDeclaration", + "src": "3040:15:10" + }, + { + "attributes": { + "constant": false, + "name": "_reserveTokens", + "scope": 2060, + "stateVariable": false, + "storageLocation": "calldata", + "type": "contract IERC20Token[]", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "length": null, + "type": "contract IERC20Token[]" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1977, + "type": "contract IERC20Token" + }, + "id": 2052, + "name": "UserDefinedTypeName", + "src": "3057:11:10" + } + ], + "id": 2053, + "name": "ArrayTypeName", + "src": "3057:13:10" + } + ], + "id": 2054, + "name": "VariableDeclaration", + "src": "3057:37:10" + }, + { + "attributes": { + "constant": false, + "name": "_reserveMinReturnAmounts", + "scope": 2060, + "stateVariable": false, + "storageLocation": "calldata", + "type": "uint256[]", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "length": null, + "type": "uint256[]" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2055, + "name": "ElementaryTypeName", + "src": "3096:7:10" + } + ], + "id": 2056, + "name": "ArrayTypeName", + "src": "3096:9:10" + } + ], + "id": 2057, + "name": "VariableDeclaration", + "src": "3096:43:10" + } + ], + "id": 2058, + "name": "ParameterList", + "src": "3039:101:10" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2059, + "name": "ParameterList", + "src": "3149:0:10" + } + ], + "id": 2060, + "name": "FunctionDefinition", + "src": "3015:135:10" }, { - "body": null, - "documentation": "@dev deprecated since version 28, backward compatibility - use only for earlier versions", - "id": 1907, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "token", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1903, - "nodeType": "ParameterList", - "parameters": [], - "src": "5178:2:10" - }, - "returnParameters": { - "id": 1906, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1905, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1907, - "src": "5204:16:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IConverterAnchor_$1618", - "typeString": "contract IConverterAnchor" - }, - "typeName": { - "contractScope": null, - "id": 1904, - "name": "IConverterAnchor", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1618, - "src": "5204:16:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IConverterAnchor_$1618", - "typeString": "contract IConverterAnchor" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": "@dev increases the pool's liquidity and mints new shares in the pool to the caller\nfor example, if the caller increases the supply by 10%,\nthen it will cost an amount equal to 10% of each reserve token balance\nnote that starting from version 28, you should use 'addLiquidity' instead\n\n * @param _amount amount to increase the supply by (in the pool token)", + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "5203:18:10" + "name": "fund", + "scope": 2131, + "stateMutability": "payable", + "superFunction": null, + "visibility": "external" }, - "scope": 1939, - "src": "5164:58:10", - "stateMutability": "view", - "superFunction": null, - "visibility": "external" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2065, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2061, + "name": "ElementaryTypeName", + "src": "3596:7:10" + } + ], + "id": 2062, + "name": "VariableDeclaration", + "src": "3596:15:10" + } + ], + "id": 2063, + "name": "ParameterList", + "src": "3595:17:10" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2064, + "name": "ParameterList", + "src": "3629:0:10" + } + ], + "id": 2065, + "name": "FunctionDefinition", + "src": "3582:48:10" }, { - "body": null, - "documentation": null, - "id": 1912, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "reserveRatio", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1908, - "nodeType": "ParameterList", - "parameters": [], - "src": "5251:2:10" + "attributes": { + "body": null, + "documentation": "@dev decreases the pool's liquidity and burns the caller's shares in the pool\nfor example, if the holder sells 10% of the supply,\nthen they will receive 10% of each reserve token balance in return\nnote that starting from version 28, you should use 'removeLiquidity' instead\n\n * @param _amount amount to liquidate (in the pool token)", + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "liquidate", + "scope": 2131, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" }, - "returnParameters": { - "id": 1911, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1910, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1912, - "src": "5277:6:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 1909, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "5277:6:10", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "value": null, - "visibility": "internal" - } + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2070, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2066, + "name": "ElementaryTypeName", + "src": "4058:7:10" + } + ], + "id": 2067, + "name": "VariableDeclaration", + "src": "4058:15:10" + } + ], + "id": 2068, + "name": "ParameterList", + "src": "4057:17:10" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2069, + "name": "ParameterList", + "src": "4083:0:10" + } + ], + "id": 2070, + "name": "FunctionDefinition", + "src": "4039:45:10" + }, + { + "attributes": { + "body": null, + "documentation": "@dev calculates the number of decimal digits in a given value\n\n * @param _x value (assumed positive)\n@return the number of decimal digits in the given value", + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "5276:8:10" + "name": "decimalLength", + "scope": 2131, + "stateMutability": "pure", + "superFunction": null, + "visibility": "external" }, - "scope": 1939, - "src": "5230:55:10", - "stateMutability": "view", - "superFunction": null, - "visibility": "external" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_x", + "scope": 2077, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2071, + "name": "ElementaryTypeName", + "src": "4323:7:10" + } + ], + "id": 2072, + "name": "VariableDeclaration", + "src": "4323:10:10" + } + ], + "id": 2073, + "name": "ParameterList", + "src": "4322:12:10" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2077, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2074, + "name": "ElementaryTypeName", + "src": "4358:7:10" + } + ], + "id": 2075, + "name": "VariableDeclaration", + "src": "4358:7:10" + } + ], + "id": 2076, + "name": "ParameterList", + "src": "4357:9:10" + } + ], + "id": 2077, + "name": "FunctionDefinition", + "src": "4300:67:10" }, { - "canonicalName": "ILiquidityPoolV1Converter.Reserve", - "id": 1923, - "members": [ + "attributes": { + "body": null, + "documentation": "@dev calculates the nearest integer to a given quotient\n\n * @param _n quotient numerator\n@param _d quotient denominator\n@return the nearest integer to the given quotient", + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "roundDiv", + "scope": 2131, + "stateMutability": "pure", + "superFunction": null, + "visibility": "external" + }, + "children": [ { - "constant": false, - "id": 1914, - "name": "balance", - "nodeType": "VariableDeclaration", - "scope": 1923, - "src": "5317:15:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1913, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5317:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "children": [ + { + "attributes": { + "constant": false, + "name": "_n", + "scope": 2086, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2078, + "name": "ElementaryTypeName", + "src": "4625:7:10" + } + ], + "id": 2079, + "name": "VariableDeclaration", + "src": "4625:10:10" + }, + { + "attributes": { + "constant": false, + "name": "_d", + "scope": 2086, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2080, + "name": "ElementaryTypeName", + "src": "4637:7:10" + } + ], + "id": 2081, + "name": "VariableDeclaration", + "src": "4637:10:10" } - }, - "value": null, - "visibility": "internal" + ], + "id": 2082, + "name": "ParameterList", + "src": "4624:24:10" }, { - "constant": false, - "id": 1916, - "name": "weight", - "nodeType": "VariableDeclaration", - "scope": 1923, - "src": "5363:13:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 1915, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "5363:6:10", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2086, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2083, + "name": "ElementaryTypeName", + "src": "4672:7:10" + } + ], + "id": 2084, + "name": "VariableDeclaration", + "src": "4672:7:10" } - }, - "value": null, - "visibility": "internal" + ], + "id": 2085, + "name": "ParameterList", + "src": "4671:9:10" + } + ], + "id": 2086, + "name": "FunctionDefinition", + "src": "4607:74:10" + }, + { + "attributes": { + "body": null, + "documentation": "@dev calculates the average number of decimal digits in a given list of values\n\n * @param _values list of values (each of which assumed positive)\n@return the average number of decimal digits in the given list of values", + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "geometricMean", + "scope": 2131, + "stateMutability": "pure", + "superFunction": null, + "visibility": "external" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_values", + "scope": 2094, + "stateVariable": false, + "storageLocation": "calldata", + "type": "uint256[]", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "length": null, + "type": "uint256[]" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2087, + "name": "ElementaryTypeName", + "src": "4981:7:10" + } + ], + "id": 2088, + "name": "ArrayTypeName", + "src": "4981:9:10" + } + ], + "id": 2089, + "name": "VariableDeclaration", + "src": "4981:26:10" + } + ], + "id": 2090, + "name": "ParameterList", + "src": "4980:28:10" }, { - "constant": false, - "id": 1918, - "name": "deprecated1", - "nodeType": "VariableDeclaration", - "scope": 1923, - "src": "5439:16:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1917, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "5439:4:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2094, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2091, + "name": "ElementaryTypeName", + "src": "5032:7:10" + } + ], + "id": 2092, + "name": "VariableDeclaration", + "src": "5032:7:10" } + ], + "id": 2093, + "name": "ParameterList", + "src": "5031:9:10" + } + ], + "id": 2094, + "name": "FunctionDefinition", + "src": "4958:83:10" + }, + { + "attributes": { + "body": null, + "documentation": "@dev deprecated since version 28, backward compatibility - use only for earlier versions", + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "token", + "scope": 2131, + "stateMutability": "view", + "superFunction": null, + "visibility": "external" + }, + "children": [ + { + "attributes": { + "parameters": [ + null + ] }, - "value": null, - "visibility": "internal" + "children": [], + "id": 2095, + "name": "ParameterList", + "src": "5178:2:10" }, { - "constant": false, - "id": 1920, - "name": "deprecated2", - "nodeType": "VariableDeclaration", - "scope": 1923, - "src": "5480:16:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1919, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "5480:4:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2099, + "stateVariable": false, + "storageLocation": "default", + "type": "contract IConverterAnchor", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IConverterAnchor", + "referencedDeclaration": 1810, + "type": "contract IConverterAnchor" + }, + "id": 2096, + "name": "UserDefinedTypeName", + "src": "5204:16:10" + } + ], + "id": 2097, + "name": "VariableDeclaration", + "src": "5204:16:10" } + ], + "id": 2098, + "name": "ParameterList", + "src": "5203:18:10" + } + ], + "id": 2099, + "name": "FunctionDefinition", + "src": "5164:58:10" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "reserveRatio", + "scope": 2131, + "stateMutability": "view", + "superFunction": null, + "visibility": "external" + }, + "children": [ + { + "attributes": { + "parameters": [ + null + ] }, - "value": null, - "visibility": "internal" + "children": [], + "id": 2100, + "name": "ParameterList", + "src": "5251:2:10" }, { - "constant": false, - "id": 1922, - "name": "isSet", - "nodeType": "VariableDeclaration", - "scope": 1923, - "src": "5521:10:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1921, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "5521:4:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2104, + "stateVariable": false, + "storageLocation": "default", + "type": "uint32", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint32", + "type": "uint32" + }, + "id": 2101, + "name": "ElementaryTypeName", + "src": "5277:6:10" + } + ], + "id": 2102, + "name": "VariableDeclaration", + "src": "5277:6:10" } - }, - "value": null, - "visibility": "internal" + ], + "id": 2103, + "name": "ParameterList", + "src": "5276:8:10" } ], - "name": "Reserve", - "nodeType": "StructDefinition", - "scope": 1939, - "src": "5293:303:10", - "visibility": "public" + "id": 2104, + "name": "FunctionDefinition", + "src": "5230:55:10" }, { - "body": null, - "documentation": null, - "id": 1938, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "reserves", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1926, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1925, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1938, - "src": "5620:7:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1924, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5620:7:10", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "5619:9:10" + "attributes": { + "canonicalName": "ILiquidityPoolV1Converter.Reserve", + "name": "Reserve", + "scope": 2131, + "visibility": "public" }, - "returnParameters": { - "id": 1937, - "nodeType": "ParameterList", - "parameters": [ - { + "children": [ + { + "attributes": { "constant": false, - "id": 1928, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1938, - "src": "5652:7:10", + "name": "balance", + "scope": 2115, "stateVariable": false, "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1927, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5652:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, + "type": "uint256", "value": null, "visibility": "internal" }, - { + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2105, + "name": "ElementaryTypeName", + "src": "5317:7:10" + } + ], + "id": 2106, + "name": "VariableDeclaration", + "src": "5317:15:10" + }, + { + "attributes": { "constant": false, - "id": 1930, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1938, - "src": "5661:6:10", + "name": "weight", + "scope": 2115, "stateVariable": false, "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 1929, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "5661:6:10", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, + "type": "uint32", "value": null, "visibility": "internal" }, - { + "children": [ + { + "attributes": { + "name": "uint32", + "type": "uint32" + }, + "id": 2107, + "name": "ElementaryTypeName", + "src": "5363:6:10" + } + ], + "id": 2108, + "name": "VariableDeclaration", + "src": "5363:13:10" + }, + { + "attributes": { "constant": false, - "id": 1932, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1938, - "src": "5669:4:10", + "name": "deprecated1", + "scope": 2115, "stateVariable": false, "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1931, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "5669:4:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, + "type": "bool", "value": null, "visibility": "internal" }, - { + "children": [ + { + "attributes": { + "name": "bool", + "type": "bool" + }, + "id": 2109, + "name": "ElementaryTypeName", + "src": "5439:4:10" + } + ], + "id": 2110, + "name": "VariableDeclaration", + "src": "5439:16:10" + }, + { + "attributes": { "constant": false, - "id": 1934, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1938, - "src": "5675:4:10", + "name": "deprecated2", + "scope": 2115, "stateVariable": false, "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1933, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "5675:4:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, + "type": "bool", "value": null, "visibility": "internal" }, - { + "children": [ + { + "attributes": { + "name": "bool", + "type": "bool" + }, + "id": 2111, + "name": "ElementaryTypeName", + "src": "5480:4:10" + } + ], + "id": 2112, + "name": "VariableDeclaration", + "src": "5480:16:10" + }, + { + "attributes": { "constant": false, - "id": 1936, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1938, - "src": "5681:4:10", + "name": "isSet", + "scope": 2115, "stateVariable": false, "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1935, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "5681:4:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, + "type": "bool", "value": null, "visibility": "internal" - } + }, + "children": [ + { + "attributes": { + "name": "bool", + "type": "bool" + }, + "id": 2113, + "name": "ElementaryTypeName", + "src": "5521:4:10" + } + ], + "id": 2114, + "name": "VariableDeclaration", + "src": "5521:10:10" + } + ], + "id": 2115, + "name": "StructDefinition", + "src": "5293:303:10" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "5651:35:10" + "name": "reserves", + "scope": 2131, + "stateMutability": "view", + "superFunction": null, + "visibility": "external" }, - "scope": 1939, - "src": "5602:85:10", - "stateMutability": "view", - "superFunction": null, - "visibility": "external" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2130, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 2116, + "name": "ElementaryTypeName", + "src": "5620:7:10" + } + ], + "id": 2117, + "name": "VariableDeclaration", + "src": "5620:7:10" + } + ], + "id": 2118, + "name": "ParameterList", + "src": "5619:9:10" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2130, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2119, + "name": "ElementaryTypeName", + "src": "5652:7:10" + } + ], + "id": 2120, + "name": "VariableDeclaration", + "src": "5652:7:10" + }, + { + "attributes": { + "constant": false, + "name": "", + "scope": 2130, + "stateVariable": false, + "storageLocation": "default", + "type": "uint32", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint32", + "type": "uint32" + }, + "id": 2121, + "name": "ElementaryTypeName", + "src": "5661:6:10" + } + ], + "id": 2122, + "name": "VariableDeclaration", + "src": "5661:6:10" + }, + { + "attributes": { + "constant": false, + "name": "", + "scope": 2130, + "stateVariable": false, + "storageLocation": "default", + "type": "bool", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bool", + "type": "bool" + }, + "id": 2123, + "name": "ElementaryTypeName", + "src": "5669:4:10" + } + ], + "id": 2124, + "name": "VariableDeclaration", + "src": "5669:4:10" + }, + { + "attributes": { + "constant": false, + "name": "", + "scope": 2130, + "stateVariable": false, + "storageLocation": "default", + "type": "bool", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bool", + "type": "bool" + }, + "id": 2125, + "name": "ElementaryTypeName", + "src": "5675:4:10" + } + ], + "id": 2126, + "name": "VariableDeclaration", + "src": "5675:4:10" + }, + { + "attributes": { + "constant": false, + "name": "", + "scope": 2130, + "stateVariable": false, + "storageLocation": "default", + "type": "bool", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bool", + "type": "bool" + }, + "id": 2127, + "name": "ElementaryTypeName", + "src": "5681:4:10" + } + ], + "id": 2128, + "name": "VariableDeclaration", + "src": "5681:4:10" + } + ], + "id": 2129, + "name": "ParameterList", + "src": "5651:35:10" + } + ], + "id": 2130, + "name": "FunctionDefinition", + "src": "5602:85:10" } ], - "scope": 1940, + "id": 2131, + "name": "ContractDefinition", "src": "420:5272:10" } ], + "id": 2132, + "name": "SourceUnit", "src": "0:5694:10" }, "compiler": { @@ -3344,8 +3509,8 @@ "version": "0.5.16+commit.9c3226ce.Emscripten.clang" }, "networks": {}, - "schemaVersion": "3.3.2", - "updatedAt": "2021-04-08T03:07:12.769Z", + "schemaVersion": "3.4.1", + "updatedAt": "2022-02-15T06:13:50.463Z", "devdoc": { "details": "Liquidity Pool v1 Converter * The liquidity pool v1 converter is a specialized version of a converter that manages a classic SovrynSwap liquidity pool. * Even though classic pools can have many reserves, the most common configuration of the pool has 2 reserves with 50%/50% weights.", "methods": { diff --git a/rbtcwrapperproxy/build/contracts/ILiquidityPoolV2Converter.json b/rbtcwrapperproxy/build/contracts/ILiquidityPoolV2Converter.json index e3d47fa..de29d33 100644 --- a/rbtcwrapperproxy/build/contracts/ILiquidityPoolV2Converter.json +++ b/rbtcwrapperproxy/build/contracts/ILiquidityPoolV2Converter.json @@ -428,25 +428,25 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_prevFactor\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newFactor\",\"type\":\"uint256\"}],\"name\":\"DynamicFeeFactorUpdate\",\"type\":\"event\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_primaryReserveToken\",\"type\":\"address\"},{\"internalType\":\"contract IConsumerPriceOracle\",\"name\":\"_primaryReserveOracle\",\"type\":\"address\"},{\"internalType\":\"contract IConsumerPriceOracle\",\"name\":\"_secondaryReserveOracle\",\"type\":\"address\"}],\"name\":\"activate\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_reserveToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"}],\"name\":\"addLiquidity\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"uint32\",\"name\":\"_weight\",\"type\":\"uint32\"}],\"name\":\"addReserve\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"amplificationFactor\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"converterType\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"disableMaxStakedBalances\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"effectiveReserveWeights\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"effectiveTokensRate\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isActive\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"contract ISmartToken\",\"name\":\"_poolToken\",\"type\":\"address\"}],\"name\":\"liquidationLimit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_reserveToken\",\"type\":\"address\"}],\"name\":\"poolToken\",\"outputs\":[{\"internalType\":\"contract ISmartToken\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract ISmartToken\",\"name\":\"_poolToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"}],\"name\":\"removeLiquidity\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"contract ISmartToken\",\"name\":\"_poolToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"removeLiquidityReturnAndFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_reserveToken\",\"type\":\"address\"}],\"name\":\"reserveAmplifiedBalance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_reserveToken\",\"type\":\"address\"}],\"name\":\"reserveStakedBalance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"setDynamicFeeFactor\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_reserve1MaxStakedBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_reserve2MaxStakedBalance\",\"type\":\"uint256\"}],\"name\":\"setMaxStakedBalances\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_reserveToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_balance\",\"type\":\"uint256\"}],\"name\":\"setReserveStakedBalance\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_sourceToken\",\"type\":\"address\"},{\"internalType\":\"contract IERC20Token\",\"name\":\"_targetToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"targetAmountAndFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ILiquidityPoolV2Converter.sol\":\"ILiquidityPoolV2Converter\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IConsumerPriceOracle.sol\":{\"keccak256\":\"0x5e8188aa66742b15bc828e3c5b023fedd981d9651777cccd1a912d4b8e986a0d\",\"urls\":[\"bzz-raw://64f5b7400ad684dea6db427299708f689f474d8698a929320a70913b5071fa29\",\"dweb:/ipfs/QmZzNBXWhvo7BMDSSx7VPVH91M7d2uET4nWRFoRJteZB1o\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IConverterAnchor.sol\":{\"keccak256\":\"0x17f5e4e68c5770edff2f1656e46fbf57158fc96343c0de21353c57ec0e655cce\",\"urls\":[\"bzz-raw://862ffe6813ee3d52401e0ad29c39f4b43f8fdcac83564c578cdebee0730bd58f\",\"dweb:/ipfs/QmatYop16pX7xPzQEo68Bg9pR21i75XxqNYyRkALYwDYK7\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol\":{\"keccak256\":\"0x85f3acaf53418f63817c8b5d8e047203891bbb9c3fc9558a541a8c446857783b\",\"urls\":[\"bzz-raw://b80d05aeb3fc866a791d3de7f7a8d7c2a65dddc72ad436920e3f043414c82158\",\"dweb:/ipfs/QmVXNmZfw6pQ2xg6xJwHR5ptCxGKx9PRzX9dgQWK7KUTTE\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ILiquidityPoolV2Converter.sol\":{\"keccak256\":\"0xd9f5fe0afcbc76072130120d6bab76df09bed31928cca24b87d70ce04d494b61\",\"urls\":[\"bzz-raw://10641652172fb5769151e60661f14c6e7347d6a7afbc76276b02f1fcb7cf8deb\",\"dweb:/ipfs/QmRVp3myRfNf8djPeq5S6dNYEvj95Rzvn4dBqLJyaPoALf\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IOwned.sol\":{\"keccak256\":\"0xa82c5cce1bb1c13dccdcb590bcbfeda3409efb67adc55fce3a301c76075e320c\",\"urls\":[\"bzz-raw://272cd112c211795db57e41fd9c49aae08ead3f7169e73dd8f594c1a8ca3932ad\",\"dweb:/ipfs/QmVTXpDDZEJ6aPUt9f6dTLupE16Rh4HembDTNR2X678svt\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISmartToken.sol\":{\"keccak256\":\"0x672dcb5066382595cf8f9fb8a3d9db531838eec6da3546e314426da94b78a9bf\",\"urls\":[\"bzz-raw://39d7646dbdfb0e7a092b27f94f1420e7bb2e030a215455a00ba418f4f1d74293\",\"dweb:/ipfs/QmXF3fV14yEcZrM9hpMoaXskbyJccxX5V4C7b5iBuRsKkP\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ITokenHolder.sol\":{\"keccak256\":\"0xf4285fadaccd2065e9373f7e9ba9e9d510450ef5b00a297b04b35236f3ae8021\",\"urls\":[\"bzz-raw://52c708e32e441410130ef32316924621cf2daef5d94e043e5d2dba47df89500f\",\"dweb:/ipfs/QmXzFDueMA48Y2Cvyx9cdtSTcM6c3b2Y437BhGsfACvRsG\"]}},\"version\":1}", + "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_prevFactor\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newFactor\",\"type\":\"uint256\"}],\"name\":\"DynamicFeeFactorUpdate\",\"type\":\"event\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_primaryReserveToken\",\"type\":\"address\"},{\"internalType\":\"contract IConsumerPriceOracle\",\"name\":\"_primaryReserveOracle\",\"type\":\"address\"},{\"internalType\":\"contract IConsumerPriceOracle\",\"name\":\"_secondaryReserveOracle\",\"type\":\"address\"}],\"name\":\"activate\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_reserveToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"}],\"name\":\"addLiquidity\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"uint32\",\"name\":\"_weight\",\"type\":\"uint32\"}],\"name\":\"addReserve\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"amplificationFactor\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"converterType\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"disableMaxStakedBalances\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"effectiveReserveWeights\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"effectiveTokensRate\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isActive\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"contract ISmartToken\",\"name\":\"_poolToken\",\"type\":\"address\"}],\"name\":\"liquidationLimit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_reserveToken\",\"type\":\"address\"}],\"name\":\"poolToken\",\"outputs\":[{\"internalType\":\"contract ISmartToken\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract ISmartToken\",\"name\":\"_poolToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"}],\"name\":\"removeLiquidity\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"contract ISmartToken\",\"name\":\"_poolToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"removeLiquidityReturnAndFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_reserveToken\",\"type\":\"address\"}],\"name\":\"reserveAmplifiedBalance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_reserveToken\",\"type\":\"address\"}],\"name\":\"reserveStakedBalance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"setDynamicFeeFactor\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_reserve1MaxStakedBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_reserve2MaxStakedBalance\",\"type\":\"uint256\"}],\"name\":\"setMaxStakedBalances\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_reserveToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_balance\",\"type\":\"uint256\"}],\"name\":\"setReserveStakedBalance\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_sourceToken\",\"type\":\"address\"},{\"internalType\":\"contract IERC20Token\",\"name\":\"_targetToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"targetAmountAndFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ILiquidityPoolV2Converter.sol\":\"ILiquidityPoolV2Converter\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IConsumerPriceOracle.sol\":{\"keccak256\":\"0x5e8188aa66742b15bc828e3c5b023fedd981d9651777cccd1a912d4b8e986a0d\",\"urls\":[\"bzz-raw://64f5b7400ad684dea6db427299708f689f474d8698a929320a70913b5071fa29\",\"dweb:/ipfs/QmZzNBXWhvo7BMDSSx7VPVH91M7d2uET4nWRFoRJteZB1o\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IConverterAnchor.sol\":{\"keccak256\":\"0x17f5e4e68c5770edff2f1656e46fbf57158fc96343c0de21353c57ec0e655cce\",\"urls\":[\"bzz-raw://862ffe6813ee3d52401e0ad29c39f4b43f8fdcac83564c578cdebee0730bd58f\",\"dweb:/ipfs/QmatYop16pX7xPzQEo68Bg9pR21i75XxqNYyRkALYwDYK7\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol\":{\"keccak256\":\"0x85f3acaf53418f63817c8b5d8e047203891bbb9c3fc9558a541a8c446857783b\",\"urls\":[\"bzz-raw://b80d05aeb3fc866a791d3de7f7a8d7c2a65dddc72ad436920e3f043414c82158\",\"dweb:/ipfs/QmVXNmZfw6pQ2xg6xJwHR5ptCxGKx9PRzX9dgQWK7KUTTE\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ILiquidityPoolV2Converter.sol\":{\"keccak256\":\"0xd9f5fe0afcbc76072130120d6bab76df09bed31928cca24b87d70ce04d494b61\",\"urls\":[\"bzz-raw://10641652172fb5769151e60661f14c6e7347d6a7afbc76276b02f1fcb7cf8deb\",\"dweb:/ipfs/QmRVp3myRfNf8djPeq5S6dNYEvj95Rzvn4dBqLJyaPoALf\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IOwned.sol\":{\"keccak256\":\"0xa82c5cce1bb1c13dccdcb590bcbfeda3409efb67adc55fce3a301c76075e320c\",\"urls\":[\"bzz-raw://272cd112c211795db57e41fd9c49aae08ead3f7169e73dd8f594c1a8ca3932ad\",\"dweb:/ipfs/QmVTXpDDZEJ6aPUt9f6dTLupE16Rh4HembDTNR2X678svt\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISmartToken.sol\":{\"keccak256\":\"0x672dcb5066382595cf8f9fb8a3d9db531838eec6da3546e314426da94b78a9bf\",\"urls\":[\"bzz-raw://39d7646dbdfb0e7a092b27f94f1420e7bb2e030a215455a00ba418f4f1d74293\",\"dweb:/ipfs/QmXF3fV14yEcZrM9hpMoaXskbyJccxX5V4C7b5iBuRsKkP\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ITokenHolder.sol\":{\"keccak256\":\"0xf4285fadaccd2065e9373f7e9ba9e9d510450ef5b00a297b04b35236f3ae8021\",\"urls\":[\"bzz-raw://52c708e32e441410130ef32316924621cf2daef5d94e043e5d2dba47df89500f\",\"dweb:/ipfs/QmXzFDueMA48Y2Cvyx9cdtSTcM6c3b2Y437BhGsfACvRsG\"]}},\"version\":1}", "bytecode": "0x", "deployedBytecode": "0x", "sourceMap": "", "deployedSourceMap": "", "source": "pragma solidity >=0.5.0 <0.6.0;\n\nimport \"./IERC20Token.sol\";\nimport \"./ISmartToken.sol\";\nimport \"./IConsumerPriceOracle.sol\";\n\ninterface ILiquidityPoolV2Converter {\n\tevent DynamicFeeFactorUpdate(uint256 _prevFactor, uint256 _newFactor);\n\n\tfunction converterType() external pure returns (uint16);\n\n\tfunction isActive() external view returns (bool);\n\n\tfunction amplificationFactor() external pure returns (uint8);\n\n\tfunction activate(\n\t\tIERC20Token _primaryReserveToken,\n\t\tIConsumerPriceOracle _primaryReserveOracle,\n\t\tIConsumerPriceOracle _secondaryReserveOracle\n\t) external;\n\n\tfunction setDynamicFeeFactor(uint256) external;\n\n\tfunction reserveStakedBalance(IERC20Token _reserveToken) external view returns (uint256);\n\n\tfunction reserveAmplifiedBalance(IERC20Token _reserveToken) external view returns (uint256);\n\n\tfunction setReserveStakedBalance(IERC20Token _reserveToken, uint256 _balance) external;\n\n\tfunction setMaxStakedBalances(uint256 _reserve1MaxStakedBalance, uint256 _reserve2MaxStakedBalance) external;\n\n\tfunction disableMaxStakedBalances() external;\n\n\tfunction poolToken(IERC20Token _reserveToken) external view returns (ISmartToken);\n\n\tfunction liquidationLimit(ISmartToken _poolToken) external view returns (uint256);\n\n\tfunction addReserve(IERC20Token _token, uint32 _weight) external;\n\n\tfunction effectiveTokensRate() external view returns (uint256, uint256);\n\n\tfunction effectiveReserveWeights() external view returns (uint256, uint256);\n\n\tfunction targetAmountAndFee(\n\t\tIERC20Token _sourceToken,\n\t\tIERC20Token _targetToken,\n\t\tuint256 _amount\n\t) external view returns (uint256, uint256);\n\n\tfunction addLiquidity(\n\t\tIERC20Token _reserveToken,\n\t\tuint256 _amount,\n\t\tuint256 _minReturn\n\t) external payable returns (uint256);\n\n\tfunction removeLiquidity(\n\t\tISmartToken _poolToken,\n\t\tuint256 _amount,\n\t\tuint256 _minReturn\n\t) external returns (uint256);\n\n\tfunction removeLiquidityReturnAndFee(ISmartToken _poolToken, uint256 _amount) external view returns (uint256, uint256);\n}\n", - "sourcePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ILiquidityPoolV2Converter.sol", + "sourcePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ILiquidityPoolV2Converter.sol", "ast": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ILiquidityPoolV2Converter.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ILiquidityPoolV2Converter.sol", "exportedSymbols": { "ILiquidityPoolV2Converter": [ - 1662 + 2284 ] }, - "id": 1663, + "id": 2285, "nodeType": "SourceUnit", "nodes": [ { - "id": 1511, + "id": 2133, "literals": [ "solidity", ">=", @@ -457,38 +457,38 @@ ".0" ], "nodeType": "PragmaDirective", - "src": "0:31:9" + "src": "0:31:11" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol", "file": "./IERC20Token.sol", - "id": 1512, + "id": 2134, "nodeType": "ImportDirective", - "scope": 1663, - "sourceUnit": 1387, - "src": "33:27:9", + "scope": 2285, + "sourceUnit": 1978, + "src": "33:27:11", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISmartToken.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISmartToken.sol", "file": "./ISmartToken.sol", - "id": 1513, + "id": 2135, "nodeType": "ImportDirective", - "scope": 1663, - "sourceUnit": 1711, - "src": "61:27:9", + "scope": 2285, + "sourceUnit": 2361, + "src": "61:27:11", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IConsumerPriceOracle.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IConsumerPriceOracle.sol", "file": "./IConsumerPriceOracle.sol", - "id": 1514, + "id": 2136, "nodeType": "ImportDirective", - "scope": 1663, - "sourceUnit": 1211, - "src": "89:36:9", + "scope": 2285, + "sourceUnit": 1785, + "src": "89:36:11", "symbolAliases": [], "unitAlias": "" }, @@ -498,9 +498,9 @@ "contractKind": "interface", "documentation": null, "fullyImplemented": false, - "id": 1662, + "id": 2284, "linearizedBaseContracts": [ - 1662 + 2284 ], "name": "ILiquidityPoolV2Converter", "nodeType": "ContractDefinition", @@ -508,21 +508,21 @@ { "anonymous": false, "documentation": null, - "id": 1520, + "id": 2142, "name": "DynamicFeeFactorUpdate", "nodeType": "EventDefinition", "parameters": { - "id": 1519, + "id": 2141, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1516, + "id": 2138, "indexed": false, "name": "_prevFactor", "nodeType": "VariableDeclaration", - "scope": 1520, - "src": "195:19:9", + "scope": 2142, + "src": "195:19:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -530,10 +530,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1515, + "id": 2137, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "195:7:9", + "src": "195:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -544,12 +544,12 @@ }, { "constant": false, - "id": 1518, + "id": 2140, "indexed": false, "name": "_newFactor", "nodeType": "VariableDeclaration", - "scope": 1520, - "src": "216:18:9", + "scope": 2142, + "src": "216:18:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -557,10 +557,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1517, + "id": 2139, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "216:7:9", + "src": "216:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -570,36 +570,36 @@ "visibility": "internal" } ], - "src": "194:41:9" + "src": "194:41:11" }, - "src": "166:70:9" + "src": "166:70:11" }, { "body": null, "documentation": null, - "id": 1525, + "id": 2147, "implemented": false, "kind": "function", "modifiers": [], "name": "converterType", "nodeType": "FunctionDefinition", "parameters": { - "id": 1521, + "id": 2143, "nodeType": "ParameterList", "parameters": [], - "src": "261:2:9" + "src": "261:2:11" }, "returnParameters": { - "id": 1524, + "id": 2146, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1523, + "id": 2145, "name": "", "nodeType": "VariableDeclaration", - "scope": 1525, - "src": "287:6:9", + "scope": 2147, + "src": "287:6:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -607,10 +607,10 @@ "typeString": "uint16" }, "typeName": { - "id": 1522, + "id": 2144, "name": "uint16", "nodeType": "ElementaryTypeName", - "src": "287:6:9", + "src": "287:6:11", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" @@ -620,10 +620,10 @@ "visibility": "internal" } ], - "src": "286:8:9" + "src": "286:8:11" }, - "scope": 1662, - "src": "239:56:9", + "scope": 2284, + "src": "239:56:11", "stateMutability": "pure", "superFunction": null, "visibility": "external" @@ -631,29 +631,29 @@ { "body": null, "documentation": null, - "id": 1530, + "id": 2152, "implemented": false, "kind": "function", "modifiers": [], "name": "isActive", "nodeType": "FunctionDefinition", "parameters": { - "id": 1526, + "id": 2148, "nodeType": "ParameterList", "parameters": [], - "src": "315:2:9" + "src": "315:2:11" }, "returnParameters": { - "id": 1529, + "id": 2151, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1528, + "id": 2150, "name": "", "nodeType": "VariableDeclaration", - "scope": 1530, - "src": "341:4:9", + "scope": 2152, + "src": "341:4:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -661,10 +661,10 @@ "typeString": "bool" }, "typeName": { - "id": 1527, + "id": 2149, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "341:4:9", + "src": "341:4:11", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -674,10 +674,10 @@ "visibility": "internal" } ], - "src": "340:6:9" + "src": "340:6:11" }, - "scope": 1662, - "src": "298:49:9", + "scope": 2284, + "src": "298:49:11", "stateMutability": "view", "superFunction": null, "visibility": "external" @@ -685,29 +685,29 @@ { "body": null, "documentation": null, - "id": 1535, + "id": 2157, "implemented": false, "kind": "function", "modifiers": [], "name": "amplificationFactor", "nodeType": "FunctionDefinition", "parameters": { - "id": 1531, + "id": 2153, "nodeType": "ParameterList", "parameters": [], - "src": "378:2:9" + "src": "378:2:11" }, "returnParameters": { - "id": 1534, + "id": 2156, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1533, + "id": 2155, "name": "", "nodeType": "VariableDeclaration", - "scope": 1535, - "src": "404:5:9", + "scope": 2157, + "src": "404:5:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -715,10 +715,10 @@ "typeString": "uint8" }, "typeName": { - "id": 1532, + "id": 2154, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "404:5:9", + "src": "404:5:11", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -728,10 +728,10 @@ "visibility": "internal" } ], - "src": "403:7:9" + "src": "403:7:11" }, - "scope": 1662, - "src": "350:61:9", + "scope": 2284, + "src": "350:61:11", "stateMutability": "pure", "superFunction": null, "visibility": "external" @@ -739,38 +739,38 @@ { "body": null, "documentation": null, - "id": 1544, + "id": 2166, "implemented": false, "kind": "function", "modifiers": [], "name": "activate", "nodeType": "FunctionDefinition", "parameters": { - "id": 1542, + "id": 2164, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1537, + "id": 2159, "name": "_primaryReserveToken", "nodeType": "VariableDeclaration", - "scope": 1544, - "src": "435:32:9", + "scope": 2166, + "src": "435:32:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" }, "typeName": { "contractScope": null, - "id": 1536, + "id": 2158, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "435:11:9", + "referencedDeclaration": 1977, + "src": "435:11:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" } }, @@ -779,26 +779,26 @@ }, { "constant": false, - "id": 1539, + "id": 2161, "name": "_primaryReserveOracle", "nodeType": "VariableDeclaration", - "scope": 1544, - "src": "471:42:9", + "scope": 2166, + "src": "471:42:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IConsumerPriceOracle_$1210", + "typeIdentifier": "t_contract$_IConsumerPriceOracle_$1784", "typeString": "contract IConsumerPriceOracle" }, "typeName": { "contractScope": null, - "id": 1538, + "id": 2160, "name": "IConsumerPriceOracle", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1210, - "src": "471:20:9", + "referencedDeclaration": 1784, + "src": "471:20:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_IConsumerPriceOracle_$1210", + "typeIdentifier": "t_contract$_IConsumerPriceOracle_$1784", "typeString": "contract IConsumerPriceOracle" } }, @@ -807,26 +807,26 @@ }, { "constant": false, - "id": 1541, + "id": 2163, "name": "_secondaryReserveOracle", "nodeType": "VariableDeclaration", - "scope": 1544, - "src": "517:44:9", + "scope": 2166, + "src": "517:44:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IConsumerPriceOracle_$1210", + "typeIdentifier": "t_contract$_IConsumerPriceOracle_$1784", "typeString": "contract IConsumerPriceOracle" }, "typeName": { "contractScope": null, - "id": 1540, + "id": 2162, "name": "IConsumerPriceOracle", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1210, - "src": "517:20:9", + "referencedDeclaration": 1784, + "src": "517:20:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_IConsumerPriceOracle_$1210", + "typeIdentifier": "t_contract$_IConsumerPriceOracle_$1784", "typeString": "contract IConsumerPriceOracle" } }, @@ -834,16 +834,16 @@ "visibility": "internal" } ], - "src": "431:133:9" + "src": "431:133:11" }, "returnParameters": { - "id": 1543, + "id": 2165, "nodeType": "ParameterList", "parameters": [], - "src": "573:0:9" + "src": "573:0:11" }, - "scope": 1662, - "src": "414:160:9", + "scope": 2284, + "src": "414:160:11", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" @@ -851,23 +851,23 @@ { "body": null, "documentation": null, - "id": 1549, + "id": 2171, "implemented": false, "kind": "function", "modifiers": [], "name": "setDynamicFeeFactor", "nodeType": "FunctionDefinition", "parameters": { - "id": 1547, + "id": 2169, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1546, + "id": 2168, "name": "", "nodeType": "VariableDeclaration", - "scope": 1549, - "src": "606:7:9", + "scope": 2171, + "src": "606:7:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -875,10 +875,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1545, + "id": 2167, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "606:7:9", + "src": "606:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -888,16 +888,16 @@ "visibility": "internal" } ], - "src": "605:9:9" + "src": "605:9:11" }, "returnParameters": { - "id": 1548, + "id": 2170, "nodeType": "ParameterList", "parameters": [], - "src": "623:0:9" + "src": "623:0:11" }, - "scope": 1662, - "src": "577:47:9", + "scope": 2284, + "src": "577:47:11", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" @@ -905,38 +905,38 @@ { "body": null, "documentation": null, - "id": 1556, + "id": 2178, "implemented": false, "kind": "function", "modifiers": [], "name": "reserveStakedBalance", "nodeType": "FunctionDefinition", "parameters": { - "id": 1552, + "id": 2174, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1551, + "id": 2173, "name": "_reserveToken", "nodeType": "VariableDeclaration", - "scope": 1556, - "src": "657:25:9", + "scope": 2178, + "src": "657:25:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" }, "typeName": { "contractScope": null, - "id": 1550, + "id": 2172, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "657:11:9", + "referencedDeclaration": 1977, + "src": "657:11:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" } }, @@ -944,19 +944,19 @@ "visibility": "internal" } ], - "src": "656:27:9" + "src": "656:27:11" }, "returnParameters": { - "id": 1555, + "id": 2177, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1554, + "id": 2176, "name": "", "nodeType": "VariableDeclaration", - "scope": 1556, - "src": "707:7:9", + "scope": 2178, + "src": "707:7:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -964,10 +964,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1553, + "id": 2175, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "707:7:9", + "src": "707:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -977,10 +977,10 @@ "visibility": "internal" } ], - "src": "706:9:9" + "src": "706:9:11" }, - "scope": 1662, - "src": "627:89:9", + "scope": 2284, + "src": "627:89:11", "stateMutability": "view", "superFunction": null, "visibility": "external" @@ -988,38 +988,38 @@ { "body": null, "documentation": null, - "id": 1563, + "id": 2185, "implemented": false, "kind": "function", "modifiers": [], "name": "reserveAmplifiedBalance", "nodeType": "FunctionDefinition", "parameters": { - "id": 1559, + "id": 2181, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1558, + "id": 2180, "name": "_reserveToken", "nodeType": "VariableDeclaration", - "scope": 1563, - "src": "752:25:9", + "scope": 2185, + "src": "752:25:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" }, "typeName": { "contractScope": null, - "id": 1557, + "id": 2179, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "752:11:9", + "referencedDeclaration": 1977, + "src": "752:11:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" } }, @@ -1027,19 +1027,19 @@ "visibility": "internal" } ], - "src": "751:27:9" + "src": "751:27:11" }, "returnParameters": { - "id": 1562, + "id": 2184, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1561, + "id": 2183, "name": "", "nodeType": "VariableDeclaration", - "scope": 1563, - "src": "802:7:9", + "scope": 2185, + "src": "802:7:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1047,10 +1047,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1560, + "id": 2182, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "802:7:9", + "src": "802:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1060,10 +1060,10 @@ "visibility": "internal" } ], - "src": "801:9:9" + "src": "801:9:11" }, - "scope": 1662, - "src": "719:92:9", + "scope": 2284, + "src": "719:92:11", "stateMutability": "view", "superFunction": null, "visibility": "external" @@ -1071,38 +1071,38 @@ { "body": null, "documentation": null, - "id": 1570, + "id": 2192, "implemented": false, "kind": "function", "modifiers": [], "name": "setReserveStakedBalance", "nodeType": "FunctionDefinition", "parameters": { - "id": 1568, + "id": 2190, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1565, + "id": 2187, "name": "_reserveToken", "nodeType": "VariableDeclaration", - "scope": 1570, - "src": "847:25:9", + "scope": 2192, + "src": "847:25:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" }, "typeName": { "contractScope": null, - "id": 1564, + "id": 2186, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "847:11:9", + "referencedDeclaration": 1977, + "src": "847:11:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" } }, @@ -1111,11 +1111,11 @@ }, { "constant": false, - "id": 1567, + "id": 2189, "name": "_balance", "nodeType": "VariableDeclaration", - "scope": 1570, - "src": "874:16:9", + "scope": 2192, + "src": "874:16:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1123,10 +1123,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1566, + "id": 2188, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "874:7:9", + "src": "874:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1136,16 +1136,16 @@ "visibility": "internal" } ], - "src": "846:45:9" + "src": "846:45:11" }, "returnParameters": { - "id": 1569, + "id": 2191, "nodeType": "ParameterList", "parameters": [], - "src": "900:0:9" + "src": "900:0:11" }, - "scope": 1662, - "src": "814:87:9", + "scope": 2284, + "src": "814:87:11", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" @@ -1153,23 +1153,23 @@ { "body": null, "documentation": null, - "id": 1577, + "id": 2199, "implemented": false, "kind": "function", "modifiers": [], "name": "setMaxStakedBalances", "nodeType": "FunctionDefinition", "parameters": { - "id": 1575, + "id": 2197, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1572, + "id": 2194, "name": "_reserve1MaxStakedBalance", "nodeType": "VariableDeclaration", - "scope": 1577, - "src": "934:33:9", + "scope": 2199, + "src": "934:33:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1177,10 +1177,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1571, + "id": 2193, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "934:7:9", + "src": "934:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1191,11 +1191,11 @@ }, { "constant": false, - "id": 1574, + "id": 2196, "name": "_reserve2MaxStakedBalance", "nodeType": "VariableDeclaration", - "scope": 1577, - "src": "969:33:9", + "scope": 2199, + "src": "969:33:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1203,10 +1203,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1573, + "id": 2195, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "969:7:9", + "src": "969:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1216,16 +1216,16 @@ "visibility": "internal" } ], - "src": "933:70:9" + "src": "933:70:11" }, "returnParameters": { - "id": 1576, + "id": 2198, "nodeType": "ParameterList", "parameters": [], - "src": "1012:0:9" + "src": "1012:0:11" }, - "scope": 1662, - "src": "904:109:9", + "scope": 2284, + "src": "904:109:11", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" @@ -1233,26 +1233,26 @@ { "body": null, "documentation": null, - "id": 1580, + "id": 2202, "implemented": false, "kind": "function", "modifiers": [], "name": "disableMaxStakedBalances", "nodeType": "FunctionDefinition", "parameters": { - "id": 1578, + "id": 2200, "nodeType": "ParameterList", "parameters": [], - "src": "1049:2:9" + "src": "1049:2:11" }, "returnParameters": { - "id": 1579, + "id": 2201, "nodeType": "ParameterList", "parameters": [], - "src": "1060:0:9" + "src": "1060:0:11" }, - "scope": 1662, - "src": "1016:45:9", + "scope": 2284, + "src": "1016:45:11", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" @@ -1260,38 +1260,38 @@ { "body": null, "documentation": null, - "id": 1587, + "id": 2209, "implemented": false, "kind": "function", "modifiers": [], "name": "poolToken", "nodeType": "FunctionDefinition", "parameters": { - "id": 1583, + "id": 2205, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1582, + "id": 2204, "name": "_reserveToken", "nodeType": "VariableDeclaration", - "scope": 1587, - "src": "1083:25:9", + "scope": 2209, + "src": "1083:25:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" }, "typeName": { "contractScope": null, - "id": 1581, + "id": 2203, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "1083:11:9", + "referencedDeclaration": 1977, + "src": "1083:11:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" } }, @@ -1299,34 +1299,34 @@ "visibility": "internal" } ], - "src": "1082:27:9" + "src": "1082:27:11" }, "returnParameters": { - "id": 1586, + "id": 2208, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1585, + "id": 2207, "name": "", "nodeType": "VariableDeclaration", - "scope": 1587, - "src": "1133:11:9", + "scope": 2209, + "src": "1133:11:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_ISmartToken_$1710", + "typeIdentifier": "t_contract$_ISmartToken_$2360", "typeString": "contract ISmartToken" }, "typeName": { "contractScope": null, - "id": 1584, + "id": 2206, "name": "ISmartToken", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1710, - "src": "1133:11:9", + "referencedDeclaration": 2360, + "src": "1133:11:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_ISmartToken_$1710", + "typeIdentifier": "t_contract$_ISmartToken_$2360", "typeString": "contract ISmartToken" } }, @@ -1334,10 +1334,10 @@ "visibility": "internal" } ], - "src": "1132:13:9" + "src": "1132:13:11" }, - "scope": 1662, - "src": "1064:82:9", + "scope": 2284, + "src": "1064:82:11", "stateMutability": "view", "superFunction": null, "visibility": "external" @@ -1345,38 +1345,38 @@ { "body": null, "documentation": null, - "id": 1594, + "id": 2216, "implemented": false, "kind": "function", "modifiers": [], "name": "liquidationLimit", "nodeType": "FunctionDefinition", "parameters": { - "id": 1590, + "id": 2212, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1589, + "id": 2211, "name": "_poolToken", "nodeType": "VariableDeclaration", - "scope": 1594, - "src": "1175:22:9", + "scope": 2216, + "src": "1175:22:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_ISmartToken_$1710", + "typeIdentifier": "t_contract$_ISmartToken_$2360", "typeString": "contract ISmartToken" }, "typeName": { "contractScope": null, - "id": 1588, + "id": 2210, "name": "ISmartToken", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1710, - "src": "1175:11:9", + "referencedDeclaration": 2360, + "src": "1175:11:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_ISmartToken_$1710", + "typeIdentifier": "t_contract$_ISmartToken_$2360", "typeString": "contract ISmartToken" } }, @@ -1384,19 +1384,19 @@ "visibility": "internal" } ], - "src": "1174:24:9" + "src": "1174:24:11" }, "returnParameters": { - "id": 1593, + "id": 2215, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1592, + "id": 2214, "name": "", "nodeType": "VariableDeclaration", - "scope": 1594, - "src": "1222:7:9", + "scope": 2216, + "src": "1222:7:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1404,10 +1404,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1591, + "id": 2213, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1222:7:9", + "src": "1222:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1417,10 +1417,10 @@ "visibility": "internal" } ], - "src": "1221:9:9" + "src": "1221:9:11" }, - "scope": 1662, - "src": "1149:82:9", + "scope": 2284, + "src": "1149:82:11", "stateMutability": "view", "superFunction": null, "visibility": "external" @@ -1428,38 +1428,38 @@ { "body": null, "documentation": null, - "id": 1601, + "id": 2223, "implemented": false, "kind": "function", "modifiers": [], "name": "addReserve", "nodeType": "FunctionDefinition", "parameters": { - "id": 1599, + "id": 2221, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1596, + "id": 2218, "name": "_token", "nodeType": "VariableDeclaration", - "scope": 1601, - "src": "1254:18:9", + "scope": 2223, + "src": "1254:18:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" }, "typeName": { "contractScope": null, - "id": 1595, + "id": 2217, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "1254:11:9", + "referencedDeclaration": 1977, + "src": "1254:11:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" } }, @@ -1468,11 +1468,11 @@ }, { "constant": false, - "id": 1598, + "id": 2220, "name": "_weight", "nodeType": "VariableDeclaration", - "scope": 1601, - "src": "1274:14:9", + "scope": 2223, + "src": "1274:14:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1480,10 +1480,10 @@ "typeString": "uint32" }, "typeName": { - "id": 1597, + "id": 2219, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "1274:6:9", + "src": "1274:6:11", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -1493,16 +1493,16 @@ "visibility": "internal" } ], - "src": "1253:36:9" + "src": "1253:36:11" }, "returnParameters": { - "id": 1600, + "id": 2222, "nodeType": "ParameterList", "parameters": [], - "src": "1298:0:9" + "src": "1298:0:11" }, - "scope": 1662, - "src": "1234:65:9", + "scope": 2284, + "src": "1234:65:11", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" @@ -1510,29 +1510,29 @@ { "body": null, "documentation": null, - "id": 1608, + "id": 2230, "implemented": false, "kind": "function", "modifiers": [], "name": "effectiveTokensRate", "nodeType": "FunctionDefinition", "parameters": { - "id": 1602, + "id": 2224, "nodeType": "ParameterList", "parameters": [], - "src": "1330:2:9" + "src": "1330:2:11" }, "returnParameters": { - "id": 1607, + "id": 2229, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1604, + "id": 2226, "name": "", "nodeType": "VariableDeclaration", - "scope": 1608, - "src": "1356:7:9", + "scope": 2230, + "src": "1356:7:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1540,10 +1540,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1603, + "id": 2225, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1356:7:9", + "src": "1356:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1554,11 +1554,11 @@ }, { "constant": false, - "id": 1606, + "id": 2228, "name": "", "nodeType": "VariableDeclaration", - "scope": 1608, - "src": "1365:7:9", + "scope": 2230, + "src": "1365:7:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1566,10 +1566,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1605, + "id": 2227, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1365:7:9", + "src": "1365:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1579,10 +1579,10 @@ "visibility": "internal" } ], - "src": "1355:18:9" + "src": "1355:18:11" }, - "scope": 1662, - "src": "1302:72:9", + "scope": 2284, + "src": "1302:72:11", "stateMutability": "view", "superFunction": null, "visibility": "external" @@ -1590,29 +1590,29 @@ { "body": null, "documentation": null, - "id": 1615, + "id": 2237, "implemented": false, "kind": "function", "modifiers": [], "name": "effectiveReserveWeights", "nodeType": "FunctionDefinition", "parameters": { - "id": 1609, + "id": 2231, "nodeType": "ParameterList", "parameters": [], - "src": "1409:2:9" + "src": "1409:2:11" }, "returnParameters": { - "id": 1614, + "id": 2236, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1611, + "id": 2233, "name": "", "nodeType": "VariableDeclaration", - "scope": 1615, - "src": "1435:7:9", + "scope": 2237, + "src": "1435:7:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1620,10 +1620,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1610, + "id": 2232, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1435:7:9", + "src": "1435:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1634,11 +1634,11 @@ }, { "constant": false, - "id": 1613, + "id": 2235, "name": "", "nodeType": "VariableDeclaration", - "scope": 1615, - "src": "1444:7:9", + "scope": 2237, + "src": "1444:7:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1646,10 +1646,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1612, + "id": 2234, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1444:7:9", + "src": "1444:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1659,10 +1659,10 @@ "visibility": "internal" } ], - "src": "1434:18:9" + "src": "1434:18:11" }, - "scope": 1662, - "src": "1377:76:9", + "scope": 2284, + "src": "1377:76:11", "stateMutability": "view", "superFunction": null, "visibility": "external" @@ -1670,38 +1670,38 @@ { "body": null, "documentation": null, - "id": 1628, + "id": 2250, "implemented": false, "kind": "function", "modifiers": [], "name": "targetAmountAndFee", "nodeType": "FunctionDefinition", "parameters": { - "id": 1622, + "id": 2244, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1617, + "id": 2239, "name": "_sourceToken", "nodeType": "VariableDeclaration", - "scope": 1628, - "src": "1487:24:9", + "scope": 2250, + "src": "1487:24:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" }, "typeName": { "contractScope": null, - "id": 1616, + "id": 2238, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "1487:11:9", + "referencedDeclaration": 1977, + "src": "1487:11:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" } }, @@ -1710,26 +1710,26 @@ }, { "constant": false, - "id": 1619, + "id": 2241, "name": "_targetToken", "nodeType": "VariableDeclaration", - "scope": 1628, - "src": "1515:24:9", + "scope": 2250, + "src": "1515:24:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" }, "typeName": { "contractScope": null, - "id": 1618, + "id": 2240, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "1515:11:9", + "referencedDeclaration": 1977, + "src": "1515:11:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" } }, @@ -1738,11 +1738,11 @@ }, { "constant": false, - "id": 1621, + "id": 2243, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1628, - "src": "1543:15:9", + "scope": 2250, + "src": "1543:15:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1750,10 +1750,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1620, + "id": 2242, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1543:7:9", + "src": "1543:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1763,19 +1763,19 @@ "visibility": "internal" } ], - "src": "1483:78:9" + "src": "1483:78:11" }, "returnParameters": { - "id": 1627, + "id": 2249, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1624, + "id": 2246, "name": "", "nodeType": "VariableDeclaration", - "scope": 1628, - "src": "1585:7:9", + "scope": 2250, + "src": "1585:7:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1783,10 +1783,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1623, + "id": 2245, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1585:7:9", + "src": "1585:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1797,11 +1797,11 @@ }, { "constant": false, - "id": 1626, + "id": 2248, "name": "", "nodeType": "VariableDeclaration", - "scope": 1628, - "src": "1594:7:9", + "scope": 2250, + "src": "1594:7:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1809,10 +1809,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1625, + "id": 2247, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1594:7:9", + "src": "1594:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1822,10 +1822,10 @@ "visibility": "internal" } ], - "src": "1584:18:9" + "src": "1584:18:11" }, - "scope": 1662, - "src": "1456:147:9", + "scope": 2284, + "src": "1456:147:11", "stateMutability": "view", "superFunction": null, "visibility": "external" @@ -1833,38 +1833,38 @@ { "body": null, "documentation": null, - "id": 1639, + "id": 2261, "implemented": false, "kind": "function", "modifiers": [], "name": "addLiquidity", "nodeType": "FunctionDefinition", "parameters": { - "id": 1635, + "id": 2257, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1630, + "id": 2252, "name": "_reserveToken", "nodeType": "VariableDeclaration", - "scope": 1639, - "src": "1631:25:9", + "scope": 2261, + "src": "1631:25:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" }, "typeName": { "contractScope": null, - "id": 1629, + "id": 2251, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "1631:11:9", + "referencedDeclaration": 1977, + "src": "1631:11:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" } }, @@ -1873,11 +1873,11 @@ }, { "constant": false, - "id": 1632, + "id": 2254, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1639, - "src": "1660:15:9", + "scope": 2261, + "src": "1660:15:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1885,10 +1885,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1631, + "id": 2253, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1660:7:9", + "src": "1660:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1899,11 +1899,11 @@ }, { "constant": false, - "id": 1634, + "id": 2256, "name": "_minReturn", "nodeType": "VariableDeclaration", - "scope": 1639, - "src": "1679:18:9", + "scope": 2261, + "src": "1679:18:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1911,10 +1911,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1633, + "id": 2255, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1679:7:9", + "src": "1679:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1924,19 +1924,19 @@ "visibility": "internal" } ], - "src": "1627:73:9" + "src": "1627:73:11" }, "returnParameters": { - "id": 1638, + "id": 2260, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1637, + "id": 2259, "name": "", "nodeType": "VariableDeclaration", - "scope": 1639, - "src": "1727:7:9", + "scope": 2261, + "src": "1727:7:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1944,10 +1944,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1636, + "id": 2258, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1727:7:9", + "src": "1727:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1957,10 +1957,10 @@ "visibility": "internal" } ], - "src": "1726:9:9" + "src": "1726:9:11" }, - "scope": 1662, - "src": "1606:130:9", + "scope": 2284, + "src": "1606:130:11", "stateMutability": "payable", "superFunction": null, "visibility": "external" @@ -1968,38 +1968,38 @@ { "body": null, "documentation": null, - "id": 1650, + "id": 2272, "implemented": false, "kind": "function", "modifiers": [], "name": "removeLiquidity", "nodeType": "FunctionDefinition", "parameters": { - "id": 1646, + "id": 2268, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1641, + "id": 2263, "name": "_poolToken", "nodeType": "VariableDeclaration", - "scope": 1650, - "src": "1767:22:9", + "scope": 2272, + "src": "1767:22:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_ISmartToken_$1710", + "typeIdentifier": "t_contract$_ISmartToken_$2360", "typeString": "contract ISmartToken" }, "typeName": { "contractScope": null, - "id": 1640, + "id": 2262, "name": "ISmartToken", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1710, - "src": "1767:11:9", + "referencedDeclaration": 2360, + "src": "1767:11:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_ISmartToken_$1710", + "typeIdentifier": "t_contract$_ISmartToken_$2360", "typeString": "contract ISmartToken" } }, @@ -2008,11 +2008,11 @@ }, { "constant": false, - "id": 1643, + "id": 2265, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1650, - "src": "1793:15:9", + "scope": 2272, + "src": "1793:15:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2020,10 +2020,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1642, + "id": 2264, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1793:7:9", + "src": "1793:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2034,11 +2034,11 @@ }, { "constant": false, - "id": 1645, + "id": 2267, "name": "_minReturn", "nodeType": "VariableDeclaration", - "scope": 1650, - "src": "1812:18:9", + "scope": 2272, + "src": "1812:18:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2046,10 +2046,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1644, + "id": 2266, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1812:7:9", + "src": "1812:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2059,19 +2059,19 @@ "visibility": "internal" } ], - "src": "1763:70:9" + "src": "1763:70:11" }, "returnParameters": { - "id": 1649, + "id": 2271, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1648, + "id": 2270, "name": "", "nodeType": "VariableDeclaration", - "scope": 1650, - "src": "1852:7:9", + "scope": 2272, + "src": "1852:7:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2079,10 +2079,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1647, + "id": 2269, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1852:7:9", + "src": "1852:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2092,10 +2092,10 @@ "visibility": "internal" } ], - "src": "1851:9:9" + "src": "1851:9:11" }, - "scope": 1662, - "src": "1739:122:9", + "scope": 2284, + "src": "1739:122:11", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" @@ -2103,38 +2103,38 @@ { "body": null, "documentation": null, - "id": 1661, + "id": 2283, "implemented": false, "kind": "function", "modifiers": [], "name": "removeLiquidityReturnAndFee", "nodeType": "FunctionDefinition", "parameters": { - "id": 1655, + "id": 2277, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1652, + "id": 2274, "name": "_poolToken", "nodeType": "VariableDeclaration", - "scope": 1661, - "src": "1901:22:9", + "scope": 2283, + "src": "1901:22:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_ISmartToken_$1710", + "typeIdentifier": "t_contract$_ISmartToken_$2360", "typeString": "contract ISmartToken" }, "typeName": { "contractScope": null, - "id": 1651, + "id": 2273, "name": "ISmartToken", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1710, - "src": "1901:11:9", + "referencedDeclaration": 2360, + "src": "1901:11:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_ISmartToken_$1710", + "typeIdentifier": "t_contract$_ISmartToken_$2360", "typeString": "contract ISmartToken" } }, @@ -2143,11 +2143,11 @@ }, { "constant": false, - "id": 1654, + "id": 2276, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1661, - "src": "1925:15:9", + "scope": 2283, + "src": "1925:15:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2155,10 +2155,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1653, + "id": 2275, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1925:7:9", + "src": "1925:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2168,19 +2168,19 @@ "visibility": "internal" } ], - "src": "1900:41:9" + "src": "1900:41:11" }, "returnParameters": { - "id": 1660, + "id": 2282, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1657, + "id": 2279, "name": "", "nodeType": "VariableDeclaration", - "scope": 1661, - "src": "1965:7:9", + "scope": 2283, + "src": "1965:7:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2188,10 +2188,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1656, + "id": 2278, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1965:7:9", + "src": "1965:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2202,11 +2202,11 @@ }, { "constant": false, - "id": 1659, + "id": 2281, "name": "", "nodeType": "VariableDeclaration", - "scope": 1661, - "src": "1974:7:9", + "scope": 2283, + "src": "1974:7:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2214,10 +2214,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1658, + "id": 2280, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1974:7:9", + "src": "1974:7:11", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2227,1835 +2227,2054 @@ "visibility": "internal" } ], - "src": "1964:18:9" + "src": "1964:18:11" }, - "scope": 1662, - "src": "1864:119:9", + "scope": 2284, + "src": "1864:119:11", "stateMutability": "view", "superFunction": null, "visibility": "external" } ], - "scope": 1663, - "src": "127:1858:9" + "scope": 2285, + "src": "127:1858:11" } ], - "src": "0:1986:9" + "src": "0:1986:11" }, "legacyAST": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ILiquidityPoolV2Converter.sol", - "exportedSymbols": { - "ILiquidityPoolV2Converter": [ - 1662 - ] + "attributes": { + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ILiquidityPoolV2Converter.sol", + "exportedSymbols": { + "ILiquidityPoolV2Converter": [ + 2284 + ] + } }, - "id": 1663, - "nodeType": "SourceUnit", - "nodes": [ + "children": [ { - "id": 1511, - "literals": [ - "solidity", - ">=", - "0.5", - ".0", - "<", - "0.6", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "0:31:9" + "attributes": { + "literals": [ + "solidity", + ">=", + "0.5", + ".0", + "<", + "0.6", + ".0" + ] + }, + "id": 2133, + "name": "PragmaDirective", + "src": "0:31:11" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol", - "file": "./IERC20Token.sol", - "id": 1512, - "nodeType": "ImportDirective", - "scope": 1663, - "sourceUnit": 1387, - "src": "33:27:9", - "symbolAliases": [], - "unitAlias": "" + "attributes": { + "SourceUnit": 1978, + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol", + "file": "./IERC20Token.sol", + "scope": 2285, + "symbolAliases": [ + null + ], + "unitAlias": "" + }, + "id": 2134, + "name": "ImportDirective", + "src": "33:27:11" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISmartToken.sol", - "file": "./ISmartToken.sol", - "id": 1513, - "nodeType": "ImportDirective", - "scope": 1663, - "sourceUnit": 1711, - "src": "61:27:9", - "symbolAliases": [], - "unitAlias": "" + "attributes": { + "SourceUnit": 2361, + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISmartToken.sol", + "file": "./ISmartToken.sol", + "scope": 2285, + "symbolAliases": [ + null + ], + "unitAlias": "" + }, + "id": 2135, + "name": "ImportDirective", + "src": "61:27:11" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IConsumerPriceOracle.sol", - "file": "./IConsumerPriceOracle.sol", - "id": 1514, - "nodeType": "ImportDirective", - "scope": 1663, - "sourceUnit": 1211, - "src": "89:36:9", - "symbolAliases": [], - "unitAlias": "" + "attributes": { + "SourceUnit": 1785, + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IConsumerPriceOracle.sol", + "file": "./IConsumerPriceOracle.sol", + "scope": 2285, + "symbolAliases": [ + null + ], + "unitAlias": "" + }, + "id": 2136, + "name": "ImportDirective", + "src": "89:36:11" }, { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "interface", - "documentation": null, - "fullyImplemented": false, - "id": 1662, - "linearizedBaseContracts": [ - 1662 - ], - "name": "ILiquidityPoolV2Converter", - "nodeType": "ContractDefinition", - "nodes": [ + "attributes": { + "baseContracts": [ + null + ], + "contractDependencies": [ + null + ], + "contractKind": "interface", + "documentation": null, + "fullyImplemented": false, + "linearizedBaseContracts": [ + 2284 + ], + "name": "ILiquidityPoolV2Converter", + "scope": 2285 + }, + "children": [ { - "anonymous": false, - "documentation": null, - "id": 1520, - "name": "DynamicFeeFactorUpdate", - "nodeType": "EventDefinition", - "parameters": { - "id": 1519, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1516, - "indexed": false, - "name": "_prevFactor", - "nodeType": "VariableDeclaration", - "scope": 1520, - "src": "195:19:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1515, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "195:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" + "attributes": { + "anonymous": false, + "documentation": null, + "name": "DynamicFeeFactorUpdate" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "indexed": false, + "name": "_prevFactor", + "scope": 2142, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2137, + "name": "ElementaryTypeName", + "src": "195:7:11" + } + ], + "id": 2138, + "name": "VariableDeclaration", + "src": "195:19:11" + }, + { + "attributes": { + "constant": false, + "indexed": false, + "name": "_newFactor", + "scope": 2142, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2139, + "name": "ElementaryTypeName", + "src": "216:7:11" + } + ], + "id": 2140, + "name": "VariableDeclaration", + "src": "216:18:11" + } + ], + "id": 2141, + "name": "ParameterList", + "src": "194:41:11" + } + ], + "id": 2142, + "name": "EventDefinition", + "src": "166:70:11" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "converterType", + "scope": 2284, + "stateMutability": "pure", + "superFunction": null, + "visibility": "external" + }, + "children": [ + { + "attributes": { + "parameters": [ + null + ] }, - { - "constant": false, - "id": 1518, - "indexed": false, - "name": "_newFactor", - "nodeType": "VariableDeclaration", - "scope": 1520, - "src": "216:18:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1517, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "216:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "children": [], + "id": 2143, + "name": "ParameterList", + "src": "261:2:11" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2147, + "stateVariable": false, + "storageLocation": "default", + "type": "uint16", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint16", + "type": "uint16" + }, + "id": 2144, + "name": "ElementaryTypeName", + "src": "287:6:11" + } + ], + "id": 2145, + "name": "VariableDeclaration", + "src": "287:6:11" + } + ], + "id": 2146, + "name": "ParameterList", + "src": "286:8:11" + } + ], + "id": 2147, + "name": "FunctionDefinition", + "src": "239:56:11" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "194:41:9" + "name": "isActive", + "scope": 2284, + "stateMutability": "view", + "superFunction": null, + "visibility": "external" }, - "src": "166:70:9" + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2148, + "name": "ParameterList", + "src": "315:2:11" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2152, + "stateVariable": false, + "storageLocation": "default", + "type": "bool", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bool", + "type": "bool" + }, + "id": 2149, + "name": "ElementaryTypeName", + "src": "341:4:11" + } + ], + "id": 2150, + "name": "VariableDeclaration", + "src": "341:4:11" + } + ], + "id": 2151, + "name": "ParameterList", + "src": "340:6:11" + } + ], + "id": 2152, + "name": "FunctionDefinition", + "src": "298:49:11" }, { - "body": null, - "documentation": null, - "id": 1525, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "converterType", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1521, - "nodeType": "ParameterList", - "parameters": [], - "src": "261:2:9" + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "amplificationFactor", + "scope": 2284, + "stateMutability": "pure", + "superFunction": null, + "visibility": "external" }, - "returnParameters": { - "id": 1524, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1523, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1525, - "src": "287:6:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "typeName": { - "id": 1522, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "287:6:9", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "value": null, - "visibility": "internal" - } + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2153, + "name": "ParameterList", + "src": "378:2:11" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2157, + "stateVariable": false, + "storageLocation": "default", + "type": "uint8", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint8", + "type": "uint8" + }, + "id": 2154, + "name": "ElementaryTypeName", + "src": "404:5:11" + } + ], + "id": 2155, + "name": "VariableDeclaration", + "src": "404:5:11" + } + ], + "id": 2156, + "name": "ParameterList", + "src": "403:7:11" + } + ], + "id": 2157, + "name": "FunctionDefinition", + "src": "350:61:11" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "286:8:9" + "name": "activate", + "scope": 2284, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" }, - "scope": 1662, - "src": "239:56:9", - "stateMutability": "pure", - "superFunction": null, - "visibility": "external" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_primaryReserveToken", + "scope": 2166, + "stateVariable": false, + "storageLocation": "default", + "type": "contract IERC20Token", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1977, + "type": "contract IERC20Token" + }, + "id": 2158, + "name": "UserDefinedTypeName", + "src": "435:11:11" + } + ], + "id": 2159, + "name": "VariableDeclaration", + "src": "435:32:11" + }, + { + "attributes": { + "constant": false, + "name": "_primaryReserveOracle", + "scope": 2166, + "stateVariable": false, + "storageLocation": "default", + "type": "contract IConsumerPriceOracle", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IConsumerPriceOracle", + "referencedDeclaration": 1784, + "type": "contract IConsumerPriceOracle" + }, + "id": 2160, + "name": "UserDefinedTypeName", + "src": "471:20:11" + } + ], + "id": 2161, + "name": "VariableDeclaration", + "src": "471:42:11" + }, + { + "attributes": { + "constant": false, + "name": "_secondaryReserveOracle", + "scope": 2166, + "stateVariable": false, + "storageLocation": "default", + "type": "contract IConsumerPriceOracle", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IConsumerPriceOracle", + "referencedDeclaration": 1784, + "type": "contract IConsumerPriceOracle" + }, + "id": 2162, + "name": "UserDefinedTypeName", + "src": "517:20:11" + } + ], + "id": 2163, + "name": "VariableDeclaration", + "src": "517:44:11" + } + ], + "id": 2164, + "name": "ParameterList", + "src": "431:133:11" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2165, + "name": "ParameterList", + "src": "573:0:11" + } + ], + "id": 2166, + "name": "FunctionDefinition", + "src": "414:160:11" }, { - "body": null, - "documentation": null, - "id": 1530, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "isActive", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1526, - "nodeType": "ParameterList", - "parameters": [], - "src": "315:2:9" + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "setDynamicFeeFactor", + "scope": 2284, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" }, - "returnParameters": { - "id": 1529, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1528, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1530, - "src": "341:4:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1527, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "341:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2171, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2167, + "name": "ElementaryTypeName", + "src": "606:7:11" + } + ], + "id": 2168, + "name": "VariableDeclaration", + "src": "606:7:11" + } + ], + "id": 2169, + "name": "ParameterList", + "src": "605:9:11" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2170, + "name": "ParameterList", + "src": "623:0:11" + } + ], + "id": 2171, + "name": "FunctionDefinition", + "src": "577:47:11" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "340:6:9" + "name": "reserveStakedBalance", + "scope": 2284, + "stateMutability": "view", + "superFunction": null, + "visibility": "external" }, - "scope": 1662, - "src": "298:49:9", - "stateMutability": "view", - "superFunction": null, - "visibility": "external" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_reserveToken", + "scope": 2178, + "stateVariable": false, + "storageLocation": "default", + "type": "contract IERC20Token", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1977, + "type": "contract IERC20Token" + }, + "id": 2172, + "name": "UserDefinedTypeName", + "src": "657:11:11" + } + ], + "id": 2173, + "name": "VariableDeclaration", + "src": "657:25:11" + } + ], + "id": 2174, + "name": "ParameterList", + "src": "656:27:11" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2178, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2175, + "name": "ElementaryTypeName", + "src": "707:7:11" + } + ], + "id": 2176, + "name": "VariableDeclaration", + "src": "707:7:11" + } + ], + "id": 2177, + "name": "ParameterList", + "src": "706:9:11" + } + ], + "id": 2178, + "name": "FunctionDefinition", + "src": "627:89:11" }, { - "body": null, - "documentation": null, - "id": 1535, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "amplificationFactor", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1531, - "nodeType": "ParameterList", - "parameters": [], - "src": "378:2:9" + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "reserveAmplifiedBalance", + "scope": 2284, + "stateMutability": "view", + "superFunction": null, + "visibility": "external" }, - "returnParameters": { - "id": 1534, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1533, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1535, - "src": "404:5:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 1532, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "404:5:9", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": null, - "visibility": "internal" - } + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_reserveToken", + "scope": 2185, + "stateVariable": false, + "storageLocation": "default", + "type": "contract IERC20Token", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1977, + "type": "contract IERC20Token" + }, + "id": 2179, + "name": "UserDefinedTypeName", + "src": "752:11:11" + } + ], + "id": 2180, + "name": "VariableDeclaration", + "src": "752:25:11" + } + ], + "id": 2181, + "name": "ParameterList", + "src": "751:27:11" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2185, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2182, + "name": "ElementaryTypeName", + "src": "802:7:11" + } + ], + "id": 2183, + "name": "VariableDeclaration", + "src": "802:7:11" + } + ], + "id": 2184, + "name": "ParameterList", + "src": "801:9:11" + } + ], + "id": 2185, + "name": "FunctionDefinition", + "src": "719:92:11" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "403:7:9" + "name": "setReserveStakedBalance", + "scope": 2284, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" }, - "scope": 1662, - "src": "350:61:9", - "stateMutability": "pure", - "superFunction": null, - "visibility": "external" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_reserveToken", + "scope": 2192, + "stateVariable": false, + "storageLocation": "default", + "type": "contract IERC20Token", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1977, + "type": "contract IERC20Token" + }, + "id": 2186, + "name": "UserDefinedTypeName", + "src": "847:11:11" + } + ], + "id": 2187, + "name": "VariableDeclaration", + "src": "847:25:11" + }, + { + "attributes": { + "constant": false, + "name": "_balance", + "scope": 2192, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2188, + "name": "ElementaryTypeName", + "src": "874:7:11" + } + ], + "id": 2189, + "name": "VariableDeclaration", + "src": "874:16:11" + } + ], + "id": 2190, + "name": "ParameterList", + "src": "846:45:11" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2191, + "name": "ParameterList", + "src": "900:0:11" + } + ], + "id": 2192, + "name": "FunctionDefinition", + "src": "814:87:11" }, { - "body": null, - "documentation": null, - "id": 1544, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "activate", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1542, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1537, - "name": "_primaryReserveToken", - "nodeType": "VariableDeclaration", - "scope": 1544, - "src": "435:32:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - }, - "typeName": { - "contractScope": null, - "id": 1536, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "435:11:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "value": null, - "visibility": "internal" + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "setMaxStakedBalances", + "scope": 2284, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_reserve1MaxStakedBalance", + "scope": 2199, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2193, + "name": "ElementaryTypeName", + "src": "934:7:11" + } + ], + "id": 2194, + "name": "VariableDeclaration", + "src": "934:33:11" + }, + { + "attributes": { + "constant": false, + "name": "_reserve2MaxStakedBalance", + "scope": 2199, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2195, + "name": "ElementaryTypeName", + "src": "969:7:11" + } + ], + "id": 2196, + "name": "VariableDeclaration", + "src": "969:33:11" + } + ], + "id": 2197, + "name": "ParameterList", + "src": "933:70:11" + }, + { + "attributes": { + "parameters": [ + null + ] }, - { - "constant": false, - "id": 1539, - "name": "_primaryReserveOracle", - "nodeType": "VariableDeclaration", - "scope": 1544, - "src": "471:42:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IConsumerPriceOracle_$1210", - "typeString": "contract IConsumerPriceOracle" - }, - "typeName": { - "contractScope": null, - "id": 1538, - "name": "IConsumerPriceOracle", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1210, - "src": "471:20:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IConsumerPriceOracle_$1210", - "typeString": "contract IConsumerPriceOracle" - } - }, - "value": null, - "visibility": "internal" + "children": [], + "id": 2198, + "name": "ParameterList", + "src": "1012:0:11" + } + ], + "id": 2199, + "name": "FunctionDefinition", + "src": "904:109:11" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "disableMaxStakedBalances", + "scope": 2284, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" + }, + "children": [ + { + "attributes": { + "parameters": [ + null + ] }, - { - "constant": false, - "id": 1541, - "name": "_secondaryReserveOracle", - "nodeType": "VariableDeclaration", - "scope": 1544, - "src": "517:44:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IConsumerPriceOracle_$1210", - "typeString": "contract IConsumerPriceOracle" - }, - "typeName": { - "contractScope": null, - "id": 1540, - "name": "IConsumerPriceOracle", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1210, - "src": "517:20:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IConsumerPriceOracle_$1210", - "typeString": "contract IConsumerPriceOracle" - } - }, - "value": null, - "visibility": "internal" - } + "children": [], + "id": 2200, + "name": "ParameterList", + "src": "1049:2:11" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2201, + "name": "ParameterList", + "src": "1060:0:11" + } + ], + "id": 2202, + "name": "FunctionDefinition", + "src": "1016:45:11" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "431:133:9" + "name": "poolToken", + "scope": 2284, + "stateMutability": "view", + "superFunction": null, + "visibility": "external" }, - "returnParameters": { - "id": 1543, - "nodeType": "ParameterList", - "parameters": [], - "src": "573:0:9" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_reserveToken", + "scope": 2209, + "stateVariable": false, + "storageLocation": "default", + "type": "contract IERC20Token", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1977, + "type": "contract IERC20Token" + }, + "id": 2203, + "name": "UserDefinedTypeName", + "src": "1083:11:11" + } + ], + "id": 2204, + "name": "VariableDeclaration", + "src": "1083:25:11" + } + ], + "id": 2205, + "name": "ParameterList", + "src": "1082:27:11" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2209, + "stateVariable": false, + "storageLocation": "default", + "type": "contract ISmartToken", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "ISmartToken", + "referencedDeclaration": 2360, + "type": "contract ISmartToken" + }, + "id": 2206, + "name": "UserDefinedTypeName", + "src": "1133:11:11" + } + ], + "id": 2207, + "name": "VariableDeclaration", + "src": "1133:11:11" + } + ], + "id": 2208, + "name": "ParameterList", + "src": "1132:13:11" + } + ], + "id": 2209, + "name": "FunctionDefinition", + "src": "1064:82:11" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "liquidationLimit", + "scope": 2284, + "stateMutability": "view", + "superFunction": null, + "visibility": "external" }, - "scope": 1662, - "src": "414:160:9", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_poolToken", + "scope": 2216, + "stateVariable": false, + "storageLocation": "default", + "type": "contract ISmartToken", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "ISmartToken", + "referencedDeclaration": 2360, + "type": "contract ISmartToken" + }, + "id": 2210, + "name": "UserDefinedTypeName", + "src": "1175:11:11" + } + ], + "id": 2211, + "name": "VariableDeclaration", + "src": "1175:22:11" + } + ], + "id": 2212, + "name": "ParameterList", + "src": "1174:24:11" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2216, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2213, + "name": "ElementaryTypeName", + "src": "1222:7:11" + } + ], + "id": 2214, + "name": "VariableDeclaration", + "src": "1222:7:11" + } + ], + "id": 2215, + "name": "ParameterList", + "src": "1221:9:11" + } + ], + "id": 2216, + "name": "FunctionDefinition", + "src": "1149:82:11" }, { - "body": null, - "documentation": null, - "id": 1549, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "setDynamicFeeFactor", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1547, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1546, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1549, - "src": "606:7:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1545, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "606:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "605:9:9" + "name": "addReserve", + "scope": 2284, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" }, - "returnParameters": { - "id": 1548, - "nodeType": "ParameterList", - "parameters": [], - "src": "623:0:9" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_token", + "scope": 2223, + "stateVariable": false, + "storageLocation": "default", + "type": "contract IERC20Token", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1977, + "type": "contract IERC20Token" + }, + "id": 2217, + "name": "UserDefinedTypeName", + "src": "1254:11:11" + } + ], + "id": 2218, + "name": "VariableDeclaration", + "src": "1254:18:11" + }, + { + "attributes": { + "constant": false, + "name": "_weight", + "scope": 2223, + "stateVariable": false, + "storageLocation": "default", + "type": "uint32", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint32", + "type": "uint32" + }, + "id": 2219, + "name": "ElementaryTypeName", + "src": "1274:6:11" + } + ], + "id": 2220, + "name": "VariableDeclaration", + "src": "1274:14:11" + } + ], + "id": 2221, + "name": "ParameterList", + "src": "1253:36:11" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2222, + "name": "ParameterList", + "src": "1298:0:11" + } + ], + "id": 2223, + "name": "FunctionDefinition", + "src": "1234:65:11" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "effectiveTokensRate", + "scope": 2284, + "stateMutability": "view", + "superFunction": null, + "visibility": "external" }, - "scope": 1662, - "src": "577:47:9", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2224, + "name": "ParameterList", + "src": "1330:2:11" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2230, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2225, + "name": "ElementaryTypeName", + "src": "1356:7:11" + } + ], + "id": 2226, + "name": "VariableDeclaration", + "src": "1356:7:11" + }, + { + "attributes": { + "constant": false, + "name": "", + "scope": 2230, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2227, + "name": "ElementaryTypeName", + "src": "1365:7:11" + } + ], + "id": 2228, + "name": "VariableDeclaration", + "src": "1365:7:11" + } + ], + "id": 2229, + "name": "ParameterList", + "src": "1355:18:11" + } + ], + "id": 2230, + "name": "FunctionDefinition", + "src": "1302:72:11" }, { - "body": null, - "documentation": null, - "id": 1556, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "reserveStakedBalance", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1552, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1551, - "name": "_reserveToken", - "nodeType": "VariableDeclaration", - "scope": 1556, - "src": "657:25:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - }, - "typeName": { - "contractScope": null, - "id": 1550, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "657:11:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "656:27:9" + "name": "effectiveReserveWeights", + "scope": 2284, + "stateMutability": "view", + "superFunction": null, + "visibility": "external" }, - "returnParameters": { - "id": 1555, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1554, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1556, - "src": "707:7:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1553, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "707:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2231, + "name": "ParameterList", + "src": "1409:2:11" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2237, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2232, + "name": "ElementaryTypeName", + "src": "1435:7:11" + } + ], + "id": 2233, + "name": "VariableDeclaration", + "src": "1435:7:11" + }, + { + "attributes": { + "constant": false, + "name": "", + "scope": 2237, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2234, + "name": "ElementaryTypeName", + "src": "1444:7:11" + } + ], + "id": 2235, + "name": "VariableDeclaration", + "src": "1444:7:11" + } + ], + "id": 2236, + "name": "ParameterList", + "src": "1434:18:11" + } + ], + "id": 2237, + "name": "FunctionDefinition", + "src": "1377:76:11" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "706:9:9" + "name": "targetAmountAndFee", + "scope": 2284, + "stateMutability": "view", + "superFunction": null, + "visibility": "external" }, - "scope": 1662, - "src": "627:89:9", - "stateMutability": "view", - "superFunction": null, - "visibility": "external" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_sourceToken", + "scope": 2250, + "stateVariable": false, + "storageLocation": "default", + "type": "contract IERC20Token", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1977, + "type": "contract IERC20Token" + }, + "id": 2238, + "name": "UserDefinedTypeName", + "src": "1487:11:11" + } + ], + "id": 2239, + "name": "VariableDeclaration", + "src": "1487:24:11" + }, + { + "attributes": { + "constant": false, + "name": "_targetToken", + "scope": 2250, + "stateVariable": false, + "storageLocation": "default", + "type": "contract IERC20Token", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1977, + "type": "contract IERC20Token" + }, + "id": 2240, + "name": "UserDefinedTypeName", + "src": "1515:11:11" + } + ], + "id": 2241, + "name": "VariableDeclaration", + "src": "1515:24:11" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2250, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2242, + "name": "ElementaryTypeName", + "src": "1543:7:11" + } + ], + "id": 2243, + "name": "VariableDeclaration", + "src": "1543:15:11" + } + ], + "id": 2244, + "name": "ParameterList", + "src": "1483:78:11" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2250, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2245, + "name": "ElementaryTypeName", + "src": "1585:7:11" + } + ], + "id": 2246, + "name": "VariableDeclaration", + "src": "1585:7:11" + }, + { + "attributes": { + "constant": false, + "name": "", + "scope": 2250, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2247, + "name": "ElementaryTypeName", + "src": "1594:7:11" + } + ], + "id": 2248, + "name": "VariableDeclaration", + "src": "1594:7:11" + } + ], + "id": 2249, + "name": "ParameterList", + "src": "1584:18:11" + } + ], + "id": 2250, + "name": "FunctionDefinition", + "src": "1456:147:11" }, { - "body": null, - "documentation": null, - "id": 1563, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "reserveAmplifiedBalance", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1559, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1558, - "name": "_reserveToken", - "nodeType": "VariableDeclaration", - "scope": 1563, - "src": "752:25:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - }, - "typeName": { - "contractScope": null, - "id": 1557, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "752:11:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "751:27:9" + "name": "addLiquidity", + "scope": 2284, + "stateMutability": "payable", + "superFunction": null, + "visibility": "external" }, - "returnParameters": { - "id": 1562, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1561, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1563, - "src": "802:7:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1560, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "802:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_reserveToken", + "scope": 2261, + "stateVariable": false, + "storageLocation": "default", + "type": "contract IERC20Token", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1977, + "type": "contract IERC20Token" + }, + "id": 2251, + "name": "UserDefinedTypeName", + "src": "1631:11:11" + } + ], + "id": 2252, + "name": "VariableDeclaration", + "src": "1631:25:11" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2261, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2253, + "name": "ElementaryTypeName", + "src": "1660:7:11" + } + ], + "id": 2254, + "name": "VariableDeclaration", + "src": "1660:15:11" + }, + { + "attributes": { + "constant": false, + "name": "_minReturn", + "scope": 2261, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2255, + "name": "ElementaryTypeName", + "src": "1679:7:11" + } + ], + "id": 2256, + "name": "VariableDeclaration", + "src": "1679:18:11" + } + ], + "id": 2257, + "name": "ParameterList", + "src": "1627:73:11" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2261, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2258, + "name": "ElementaryTypeName", + "src": "1727:7:11" + } + ], + "id": 2259, + "name": "VariableDeclaration", + "src": "1727:7:11" + } + ], + "id": 2260, + "name": "ParameterList", + "src": "1726:9:11" + } + ], + "id": 2261, + "name": "FunctionDefinition", + "src": "1606:130:11" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "801:9:9" + "name": "removeLiquidity", + "scope": 2284, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" }, - "scope": 1662, - "src": "719:92:9", - "stateMutability": "view", - "superFunction": null, - "visibility": "external" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_poolToken", + "scope": 2272, + "stateVariable": false, + "storageLocation": "default", + "type": "contract ISmartToken", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "ISmartToken", + "referencedDeclaration": 2360, + "type": "contract ISmartToken" + }, + "id": 2262, + "name": "UserDefinedTypeName", + "src": "1767:11:11" + } + ], + "id": 2263, + "name": "VariableDeclaration", + "src": "1767:22:11" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2272, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2264, + "name": "ElementaryTypeName", + "src": "1793:7:11" + } + ], + "id": 2265, + "name": "VariableDeclaration", + "src": "1793:15:11" + }, + { + "attributes": { + "constant": false, + "name": "_minReturn", + "scope": 2272, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2266, + "name": "ElementaryTypeName", + "src": "1812:7:11" + } + ], + "id": 2267, + "name": "VariableDeclaration", + "src": "1812:18:11" + } + ], + "id": 2268, + "name": "ParameterList", + "src": "1763:70:11" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2272, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2269, + "name": "ElementaryTypeName", + "src": "1852:7:11" + } + ], + "id": 2270, + "name": "VariableDeclaration", + "src": "1852:7:11" + } + ], + "id": 2271, + "name": "ParameterList", + "src": "1851:9:11" + } + ], + "id": 2272, + "name": "FunctionDefinition", + "src": "1739:122:11" }, { - "body": null, - "documentation": null, - "id": 1570, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "setReserveStakedBalance", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1568, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1565, - "name": "_reserveToken", - "nodeType": "VariableDeclaration", - "scope": 1570, - "src": "847:25:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - }, - "typeName": { - "contractScope": null, - "id": 1564, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "847:11:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1567, - "name": "_balance", - "nodeType": "VariableDeclaration", - "scope": 1570, - "src": "874:16:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1566, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "874:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "846:45:9" - }, - "returnParameters": { - "id": 1569, - "nodeType": "ParameterList", - "parameters": [], - "src": "900:0:9" - }, - "scope": 1662, - "src": "814:87:9", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": null, - "id": 1577, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "setMaxStakedBalances", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1575, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1572, - "name": "_reserve1MaxStakedBalance", - "nodeType": "VariableDeclaration", - "scope": 1577, - "src": "934:33:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1571, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "934:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1574, - "name": "_reserve2MaxStakedBalance", - "nodeType": "VariableDeclaration", - "scope": 1577, - "src": "969:33:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1573, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "969:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "933:70:9" - }, - "returnParameters": { - "id": 1576, - "nodeType": "ParameterList", - "parameters": [], - "src": "1012:0:9" - }, - "scope": 1662, - "src": "904:109:9", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": null, - "id": 1580, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "disableMaxStakedBalances", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1578, - "nodeType": "ParameterList", - "parameters": [], - "src": "1049:2:9" - }, - "returnParameters": { - "id": 1579, - "nodeType": "ParameterList", - "parameters": [], - "src": "1060:0:9" - }, - "scope": 1662, - "src": "1016:45:9", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": null, - "id": 1587, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "poolToken", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1583, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1582, - "name": "_reserveToken", - "nodeType": "VariableDeclaration", - "scope": 1587, - "src": "1083:25:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - }, - "typeName": { - "contractScope": null, - "id": 1581, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "1083:11:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1082:27:9" - }, - "returnParameters": { - "id": 1586, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1585, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1587, - "src": "1133:11:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ISmartToken_$1710", - "typeString": "contract ISmartToken" - }, - "typeName": { - "contractScope": null, - "id": 1584, - "name": "ISmartToken", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1710, - "src": "1133:11:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ISmartToken_$1710", - "typeString": "contract ISmartToken" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1132:13:9" - }, - "scope": 1662, - "src": "1064:82:9", - "stateMutability": "view", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": null, - "id": 1594, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "liquidationLimit", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1590, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1589, - "name": "_poolToken", - "nodeType": "VariableDeclaration", - "scope": 1594, - "src": "1175:22:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ISmartToken_$1710", - "typeString": "contract ISmartToken" - }, - "typeName": { - "contractScope": null, - "id": 1588, - "name": "ISmartToken", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1710, - "src": "1175:11:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ISmartToken_$1710", - "typeString": "contract ISmartToken" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1174:24:9" - }, - "returnParameters": { - "id": 1593, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1592, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1594, - "src": "1222:7:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1591, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1222:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1221:9:9" - }, - "scope": 1662, - "src": "1149:82:9", - "stateMutability": "view", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": null, - "id": 1601, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "addReserve", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1599, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1596, - "name": "_token", - "nodeType": "VariableDeclaration", - "scope": 1601, - "src": "1254:18:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - }, - "typeName": { - "contractScope": null, - "id": 1595, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "1254:11:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1598, - "name": "_weight", - "nodeType": "VariableDeclaration", - "scope": 1601, - "src": "1274:14:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 1597, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "1274:6:9", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1253:36:9" - }, - "returnParameters": { - "id": 1600, - "nodeType": "ParameterList", - "parameters": [], - "src": "1298:0:9" - }, - "scope": 1662, - "src": "1234:65:9", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": null, - "id": 1608, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "effectiveTokensRate", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1602, - "nodeType": "ParameterList", - "parameters": [], - "src": "1330:2:9" - }, - "returnParameters": { - "id": 1607, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1604, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1608, - "src": "1356:7:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1603, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1356:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1606, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1608, - "src": "1365:7:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1605, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1365:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1355:18:9" - }, - "scope": 1662, - "src": "1302:72:9", - "stateMutability": "view", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": null, - "id": 1615, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "effectiveReserveWeights", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1609, - "nodeType": "ParameterList", - "parameters": [], - "src": "1409:2:9" - }, - "returnParameters": { - "id": 1614, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1611, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1615, - "src": "1435:7:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1610, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1435:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1613, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1615, - "src": "1444:7:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1612, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1444:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1434:18:9" - }, - "scope": 1662, - "src": "1377:76:9", - "stateMutability": "view", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": null, - "id": 1628, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "targetAmountAndFee", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1622, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1617, - "name": "_sourceToken", - "nodeType": "VariableDeclaration", - "scope": 1628, - "src": "1487:24:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - }, - "typeName": { - "contractScope": null, - "id": 1616, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "1487:11:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1619, - "name": "_targetToken", - "nodeType": "VariableDeclaration", - "scope": 1628, - "src": "1515:24:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - }, - "typeName": { - "contractScope": null, - "id": 1618, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "1515:11:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1621, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1628, - "src": "1543:15:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1620, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1543:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1483:78:9" - }, - "returnParameters": { - "id": 1627, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1624, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1628, - "src": "1585:7:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1623, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1585:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1626, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1628, - "src": "1594:7:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1625, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1594:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1584:18:9" - }, - "scope": 1662, - "src": "1456:147:9", - "stateMutability": "view", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": null, - "id": 1639, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "addLiquidity", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1635, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1630, - "name": "_reserveToken", - "nodeType": "VariableDeclaration", - "scope": 1639, - "src": "1631:25:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - }, - "typeName": { - "contractScope": null, - "id": 1629, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "1631:11:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1632, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1639, - "src": "1660:15:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1631, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1660:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1634, - "name": "_minReturn", - "nodeType": "VariableDeclaration", - "scope": 1639, - "src": "1679:18:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1633, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1679:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1627:73:9" - }, - "returnParameters": { - "id": 1638, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1637, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1639, - "src": "1727:7:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1636, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1727:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1726:9:9" - }, - "scope": 1662, - "src": "1606:130:9", - "stateMutability": "payable", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": null, - "id": 1650, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "removeLiquidity", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1646, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1641, - "name": "_poolToken", - "nodeType": "VariableDeclaration", - "scope": 1650, - "src": "1767:22:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ISmartToken_$1710", - "typeString": "contract ISmartToken" - }, - "typeName": { - "contractScope": null, - "id": 1640, - "name": "ISmartToken", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1710, - "src": "1767:11:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ISmartToken_$1710", - "typeString": "contract ISmartToken" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1643, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1650, - "src": "1793:15:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1642, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1793:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1645, - "name": "_minReturn", - "nodeType": "VariableDeclaration", - "scope": 1650, - "src": "1812:18:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1644, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1812:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1763:70:9" - }, - "returnParameters": { - "id": 1649, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1648, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1650, - "src": "1852:7:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1647, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1852:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1851:9:9" - }, - "scope": 1662, - "src": "1739:122:9", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": null, - "id": 1661, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "removeLiquidityReturnAndFee", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1655, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1652, - "name": "_poolToken", - "nodeType": "VariableDeclaration", - "scope": 1661, - "src": "1901:22:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ISmartToken_$1710", - "typeString": "contract ISmartToken" - }, - "typeName": { - "contractScope": null, - "id": 1651, - "name": "ISmartToken", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1710, - "src": "1901:11:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ISmartToken_$1710", - "typeString": "contract ISmartToken" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1654, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1661, - "src": "1925:15:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1653, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1925:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1900:41:9" - }, - "returnParameters": { - "id": 1660, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1657, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1661, - "src": "1965:7:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1656, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1965:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1659, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1661, - "src": "1974:7:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1658, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1974:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "1964:18:9" + "name": "removeLiquidityReturnAndFee", + "scope": 2284, + "stateMutability": "view", + "superFunction": null, + "visibility": "external" }, - "scope": 1662, - "src": "1864:119:9", - "stateMutability": "view", - "superFunction": null, - "visibility": "external" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_poolToken", + "scope": 2283, + "stateVariable": false, + "storageLocation": "default", + "type": "contract ISmartToken", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "ISmartToken", + "referencedDeclaration": 2360, + "type": "contract ISmartToken" + }, + "id": 2273, + "name": "UserDefinedTypeName", + "src": "1901:11:11" + } + ], + "id": 2274, + "name": "VariableDeclaration", + "src": "1901:22:11" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2283, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2275, + "name": "ElementaryTypeName", + "src": "1925:7:11" + } + ], + "id": 2276, + "name": "VariableDeclaration", + "src": "1925:15:11" + } + ], + "id": 2277, + "name": "ParameterList", + "src": "1900:41:11" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2283, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2278, + "name": "ElementaryTypeName", + "src": "1965:7:11" + } + ], + "id": 2279, + "name": "VariableDeclaration", + "src": "1965:7:11" + }, + { + "attributes": { + "constant": false, + "name": "", + "scope": 2283, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2280, + "name": "ElementaryTypeName", + "src": "1974:7:11" + } + ], + "id": 2281, + "name": "VariableDeclaration", + "src": "1974:7:11" + } + ], + "id": 2282, + "name": "ParameterList", + "src": "1964:18:11" + } + ], + "id": 2283, + "name": "FunctionDefinition", + "src": "1864:119:11" } ], - "scope": 1663, - "src": "127:1858:9" + "id": 2284, + "name": "ContractDefinition", + "src": "127:1858:11" } ], - "src": "0:1986:9" + "id": 2285, + "name": "SourceUnit", + "src": "0:1986:11" }, "compiler": { "name": "solc", "version": "0.5.16+commit.9c3226ce.Emscripten.clang" }, "networks": {}, - "schemaVersion": "3.3.2", - "updatedAt": "2021-03-26T10:10:09.415Z", + "schemaVersion": "3.4.1", + "updatedAt": "2022-02-15T06:13:50.465Z", "devdoc": { "methods": {} }, diff --git a/rbtcwrapperproxy/build/contracts/IOwned.json b/rbtcwrapperproxy/build/contracts/IOwned.json index 6630536..38ca3f6 100644 --- a/rbtcwrapperproxy/build/contracts/IOwned.json +++ b/rbtcwrapperproxy/build/contracts/IOwned.json @@ -41,25 +41,25 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":false,\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IOwned.sol\":\"IOwned\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IOwned.sol\":{\"keccak256\":\"0xa82c5cce1bb1c13dccdcb590bcbfeda3409efb67adc55fce3a301c76075e320c\",\"urls\":[\"bzz-raw://272cd112c211795db57e41fd9c49aae08ead3f7169e73dd8f594c1a8ca3932ad\",\"dweb:/ipfs/QmVTXpDDZEJ6aPUt9f6dTLupE16Rh4HembDTNR2X678svt\"]}},\"version\":1}", + "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":false,\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IOwned.sol\":\"IOwned\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IOwned.sol\":{\"keccak256\":\"0xa82c5cce1bb1c13dccdcb590bcbfeda3409efb67adc55fce3a301c76075e320c\",\"urls\":[\"bzz-raw://272cd112c211795db57e41fd9c49aae08ead3f7169e73dd8f594c1a8ca3932ad\",\"dweb:/ipfs/QmVTXpDDZEJ6aPUt9f6dTLupE16Rh4HembDTNR2X678svt\"]}},\"version\":1}", "bytecode": "0x", "deployedBytecode": "0x", "sourceMap": "", "deployedSourceMap": "", "source": "pragma solidity >=0.5.0 <0.6.0;\n\n/*\n Owned contract interface\n*/\ncontract IOwned {\n\t// this function isn't abstract since the compiler emits automatically generated getter functions as external\n\tfunction owner() public view returns (address) {\n\t\tthis;\n\t}\n\n\tfunction transferOwnership(address _newOwner) public;\n\n\tfunction acceptOwnership() public;\n}\n", - "sourcePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IOwned.sol", + "sourcePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IOwned.sol", "ast": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IOwned.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IOwned.sol", "exportedSymbols": { "IOwned": [ - 1681 + 2331 ] }, - "id": 1682, + "id": 2332, "nodeType": "SourceUnit", "nodes": [ { - "id": 1664, + "id": 2314, "literals": [ "solidity", ">=", @@ -70,7 +70,7 @@ ".0" ], "nodeType": "PragmaDirective", - "src": "0:31:10" + "src": "0:31:13" }, { "baseContracts": [], @@ -78,63 +78,63 @@ "contractKind": "contract", "documentation": null, "fullyImplemented": false, - "id": 1681, + "id": 2331, "linearizedBaseContracts": [ - 1681 + 2331 ], "name": "IOwned", "nodeType": "ContractDefinition", "nodes": [ { "body": { - "id": 1671, + "id": 2321, "nodeType": "Block", - "src": "245:12:10", + "src": "245:12:13", "statements": [ { "expression": { "argumentTypes": null, - "id": 1669, + "id": 2319, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2259, - "src": "249:4:10", + "referencedDeclaration": 3524, + "src": "249:4:13", "typeDescriptions": { - "typeIdentifier": "t_contract$_IOwned_$1681", + "typeIdentifier": "t_contract$_IOwned_$2331", "typeString": "contract IOwned" } }, - "id": 1670, + "id": 2320, "nodeType": "ExpressionStatement", - "src": "249:4:10" + "src": "249:4:13" } ] }, "documentation": null, - "id": 1672, + "id": 2322, "implemented": true, "kind": "function", "modifiers": [], "name": "owner", "nodeType": "FunctionDefinition", "parameters": { - "id": 1665, + "id": 2315, "nodeType": "ParameterList", "parameters": [], - "src": "212:2:10" + "src": "212:2:13" }, "returnParameters": { - "id": 1668, + "id": 2318, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1667, + "id": 2317, "name": "", "nodeType": "VariableDeclaration", - "scope": 1672, - "src": "236:7:10", + "scope": 2322, + "src": "236:7:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -142,10 +142,10 @@ "typeString": "address" }, "typeName": { - "id": 1666, + "id": 2316, "name": "address", "nodeType": "ElementaryTypeName", - "src": "236:7:10", + "src": "236:7:13", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -156,10 +156,10 @@ "visibility": "internal" } ], - "src": "235:9:10" + "src": "235:9:13" }, - "scope": 1681, - "src": "198:59:10", + "scope": 2331, + "src": "198:59:13", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -167,23 +167,23 @@ { "body": null, "documentation": null, - "id": 1677, + "id": 2327, "implemented": false, "kind": "function", "modifiers": [], "name": "transferOwnership", "nodeType": "FunctionDefinition", "parameters": { - "id": 1675, + "id": 2325, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1674, + "id": 2324, "name": "_newOwner", "nodeType": "VariableDeclaration", - "scope": 1677, - "src": "287:17:10", + "scope": 2327, + "src": "287:17:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -191,10 +191,10 @@ "typeString": "address" }, "typeName": { - "id": 1673, + "id": 2323, "name": "address", "nodeType": "ElementaryTypeName", - "src": "287:7:10", + "src": "287:7:13", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -205,16 +205,16 @@ "visibility": "internal" } ], - "src": "286:19:10" + "src": "286:19:13" }, "returnParameters": { - "id": 1676, + "id": 2326, "nodeType": "ParameterList", "parameters": [], - "src": "312:0:10" + "src": "312:0:13" }, - "scope": 1681, - "src": "260:53:10", + "scope": 2331, + "src": "260:53:13", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -222,249 +222,303 @@ { "body": null, "documentation": null, - "id": 1680, + "id": 2330, "implemented": false, "kind": "function", "modifiers": [], "name": "acceptOwnership", "nodeType": "FunctionDefinition", "parameters": { - "id": 1678, + "id": 2328, "nodeType": "ParameterList", "parameters": [], - "src": "340:2:10" + "src": "340:2:13" }, "returnParameters": { - "id": 1679, + "id": 2329, "nodeType": "ParameterList", "parameters": [], - "src": "349:0:10" + "src": "349:0:13" }, - "scope": 1681, - "src": "316:34:10", + "scope": 2331, + "src": "316:34:13", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" } ], - "scope": 1682, - "src": "68:284:10" + "scope": 2332, + "src": "68:284:13" } ], - "src": "0:353:10" + "src": "0:353:13" }, "legacyAST": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IOwned.sol", - "exportedSymbols": { - "IOwned": [ - 1681 - ] + "attributes": { + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IOwned.sol", + "exportedSymbols": { + "IOwned": [ + 2331 + ] + } }, - "id": 1682, - "nodeType": "SourceUnit", - "nodes": [ + "children": [ { - "id": 1664, - "literals": [ - "solidity", - ">=", - "0.5", - ".0", - "<", - "0.6", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "0:31:10" + "attributes": { + "literals": [ + "solidity", + ">=", + "0.5", + ".0", + "<", + "0.6", + ".0" + ] + }, + "id": 2314, + "name": "PragmaDirective", + "src": "0:31:13" }, { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": false, - "id": 1681, - "linearizedBaseContracts": [ - 1681 - ], - "name": "IOwned", - "nodeType": "ContractDefinition", - "nodes": [ + "attributes": { + "baseContracts": [ + null + ], + "contractDependencies": [ + null + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": false, + "linearizedBaseContracts": [ + 2331 + ], + "name": "IOwned", + "scope": 2332 + }, + "children": [ { - "body": { - "id": 1671, - "nodeType": "Block", - "src": "245:12:10", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1669, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2259, - "src": "249:4:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IOwned_$1681", - "typeString": "contract IOwned" - } - }, - "id": 1670, - "nodeType": "ExpressionStatement", - "src": "249:4:10" - } - ] - }, - "documentation": null, - "id": 1672, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "owner", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1665, - "nodeType": "ParameterList", - "parameters": [], - "src": "212:2:10" - }, - "returnParameters": { - "id": 1668, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1667, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1672, - "src": "236:7:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1666, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "236:7:10", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "235:9:10" + "name": "owner", + "scope": 2331, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" }, - "scope": 1681, - "src": "198:59:10", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2315, + "name": "ParameterList", + "src": "212:2:13" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2322, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 2316, + "name": "ElementaryTypeName", + "src": "236:7:13" + } + ], + "id": 2317, + "name": "VariableDeclaration", + "src": "236:7:13" + } + ], + "id": 2318, + "name": "ParameterList", + "src": "235:9:13" + }, + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3524, + "type": "contract IOwned", + "value": "this" + }, + "id": 2319, + "name": "Identifier", + "src": "249:4:13" + } + ], + "id": 2320, + "name": "ExpressionStatement", + "src": "249:4:13" + } + ], + "id": 2321, + "name": "Block", + "src": "245:12:13" + } + ], + "id": 2322, + "name": "FunctionDefinition", + "src": "198:59:13" }, { - "body": null, - "documentation": null, - "id": 1677, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "transferOwnership", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1675, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1674, - "name": "_newOwner", - "nodeType": "VariableDeclaration", - "scope": 1677, - "src": "287:17:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1673, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "287:7:10", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "286:19:10" + "name": "transferOwnership", + "scope": 2331, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" }, - "returnParameters": { - "id": 1676, - "nodeType": "ParameterList", - "parameters": [], - "src": "312:0:10" - }, - "scope": 1681, - "src": "260:53:10", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_newOwner", + "scope": 2327, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 2323, + "name": "ElementaryTypeName", + "src": "287:7:13" + } + ], + "id": 2324, + "name": "VariableDeclaration", + "src": "287:17:13" + } + ], + "id": 2325, + "name": "ParameterList", + "src": "286:19:13" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2326, + "name": "ParameterList", + "src": "312:0:13" + } + ], + "id": 2327, + "name": "FunctionDefinition", + "src": "260:53:13" }, { - "body": null, - "documentation": null, - "id": 1680, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "acceptOwnership", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1678, - "nodeType": "ParameterList", - "parameters": [], - "src": "340:2:10" - }, - "returnParameters": { - "id": 1679, - "nodeType": "ParameterList", - "parameters": [], - "src": "349:0:10" + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "acceptOwnership", + "scope": 2331, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" }, - "scope": 1681, - "src": "316:34:10", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2328, + "name": "ParameterList", + "src": "340:2:13" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2329, + "name": "ParameterList", + "src": "349:0:13" + } + ], + "id": 2330, + "name": "FunctionDefinition", + "src": "316:34:13" } ], - "scope": 1682, - "src": "68:284:10" + "id": 2331, + "name": "ContractDefinition", + "src": "68:284:13" } ], - "src": "0:353:10" + "id": 2332, + "name": "SourceUnit", + "src": "0:353:13" }, "compiler": { "name": "solc", "version": "0.5.16+commit.9c3226ce.Emscripten.clang" }, "networks": {}, - "schemaVersion": "3.3.2", - "updatedAt": "2021-03-26T10:10:09.417Z", + "schemaVersion": "3.4.1", + "updatedAt": "2022-02-15T06:13:50.472Z", "devdoc": { "methods": {} }, diff --git a/rbtcwrapperproxy/build/contracts/ISmartToken.json b/rbtcwrapperproxy/build/contracts/ISmartToken.json index d538385..8dae342 100644 --- a/rbtcwrapperproxy/build/contracts/ISmartToken.json +++ b/rbtcwrapperproxy/build/contracts/ISmartToken.json @@ -311,25 +311,25 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":false,\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"destroy\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_disable\",\"type\":\"bool\"}],\"name\":\"disableTransfers\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"issue\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"withdrawTokens\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISmartToken.sol\":\"ISmartToken\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IConverterAnchor.sol\":{\"keccak256\":\"0x17f5e4e68c5770edff2f1656e46fbf57158fc96343c0de21353c57ec0e655cce\",\"urls\":[\"bzz-raw://862ffe6813ee3d52401e0ad29c39f4b43f8fdcac83564c578cdebee0730bd58f\",\"dweb:/ipfs/QmatYop16pX7xPzQEo68Bg9pR21i75XxqNYyRkALYwDYK7\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol\":{\"keccak256\":\"0x85f3acaf53418f63817c8b5d8e047203891bbb9c3fc9558a541a8c446857783b\",\"urls\":[\"bzz-raw://b80d05aeb3fc866a791d3de7f7a8d7c2a65dddc72ad436920e3f043414c82158\",\"dweb:/ipfs/QmVXNmZfw6pQ2xg6xJwHR5ptCxGKx9PRzX9dgQWK7KUTTE\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IOwned.sol\":{\"keccak256\":\"0xa82c5cce1bb1c13dccdcb590bcbfeda3409efb67adc55fce3a301c76075e320c\",\"urls\":[\"bzz-raw://272cd112c211795db57e41fd9c49aae08ead3f7169e73dd8f594c1a8ca3932ad\",\"dweb:/ipfs/QmVTXpDDZEJ6aPUt9f6dTLupE16Rh4HembDTNR2X678svt\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISmartToken.sol\":{\"keccak256\":\"0x672dcb5066382595cf8f9fb8a3d9db531838eec6da3546e314426da94b78a9bf\",\"urls\":[\"bzz-raw://39d7646dbdfb0e7a092b27f94f1420e7bb2e030a215455a00ba418f4f1d74293\",\"dweb:/ipfs/QmXF3fV14yEcZrM9hpMoaXskbyJccxX5V4C7b5iBuRsKkP\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ITokenHolder.sol\":{\"keccak256\":\"0xf4285fadaccd2065e9373f7e9ba9e9d510450ef5b00a297b04b35236f3ae8021\",\"urls\":[\"bzz-raw://52c708e32e441410130ef32316924621cf2daef5d94e043e5d2dba47df89500f\",\"dweb:/ipfs/QmXzFDueMA48Y2Cvyx9cdtSTcM6c3b2Y437BhGsfACvRsG\"]}},\"version\":1}", + "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":false,\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"destroy\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_disable\",\"type\":\"bool\"}],\"name\":\"disableTransfers\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"issue\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"withdrawTokens\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISmartToken.sol\":\"ISmartToken\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IConverterAnchor.sol\":{\"keccak256\":\"0x17f5e4e68c5770edff2f1656e46fbf57158fc96343c0de21353c57ec0e655cce\",\"urls\":[\"bzz-raw://862ffe6813ee3d52401e0ad29c39f4b43f8fdcac83564c578cdebee0730bd58f\",\"dweb:/ipfs/QmatYop16pX7xPzQEo68Bg9pR21i75XxqNYyRkALYwDYK7\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol\":{\"keccak256\":\"0x85f3acaf53418f63817c8b5d8e047203891bbb9c3fc9558a541a8c446857783b\",\"urls\":[\"bzz-raw://b80d05aeb3fc866a791d3de7f7a8d7c2a65dddc72ad436920e3f043414c82158\",\"dweb:/ipfs/QmVXNmZfw6pQ2xg6xJwHR5ptCxGKx9PRzX9dgQWK7KUTTE\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IOwned.sol\":{\"keccak256\":\"0xa82c5cce1bb1c13dccdcb590bcbfeda3409efb67adc55fce3a301c76075e320c\",\"urls\":[\"bzz-raw://272cd112c211795db57e41fd9c49aae08ead3f7169e73dd8f594c1a8ca3932ad\",\"dweb:/ipfs/QmVTXpDDZEJ6aPUt9f6dTLupE16Rh4HembDTNR2X678svt\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISmartToken.sol\":{\"keccak256\":\"0x672dcb5066382595cf8f9fb8a3d9db531838eec6da3546e314426da94b78a9bf\",\"urls\":[\"bzz-raw://39d7646dbdfb0e7a092b27f94f1420e7bb2e030a215455a00ba418f4f1d74293\",\"dweb:/ipfs/QmXF3fV14yEcZrM9hpMoaXskbyJccxX5V4C7b5iBuRsKkP\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ITokenHolder.sol\":{\"keccak256\":\"0xf4285fadaccd2065e9373f7e9ba9e9d510450ef5b00a297b04b35236f3ae8021\",\"urls\":[\"bzz-raw://52c708e32e441410130ef32316924621cf2daef5d94e043e5d2dba47df89500f\",\"dweb:/ipfs/QmXzFDueMA48Y2Cvyx9cdtSTcM6c3b2Y437BhGsfACvRsG\"]}},\"version\":1}", "bytecode": "0x", "deployedBytecode": "0x", "sourceMap": "", "deployedSourceMap": "", "source": "pragma solidity >=0.5.0 <0.6.0;\n\nimport \"./IERC20Token.sol\";\nimport \"./IConverterAnchor.sol\";\nimport \"./IOwned.sol\";\n\n/*\n Smart Token interface\n*/\ncontract ISmartToken is IConverterAnchor, IERC20Token {\n\tfunction disableTransfers(bool _disable) public;\n\n\tfunction issue(address _to, uint256 _amount) public;\n\n\tfunction destroy(address _from, uint256 _amount) public;\n}\n", - "sourcePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISmartToken.sol", + "sourcePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISmartToken.sol", "ast": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISmartToken.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISmartToken.sol", "exportedSymbols": { "ISmartToken": [ - 1710 + 2360 ] }, - "id": 1711, + "id": 2361, "nodeType": "SourceUnit", "nodes": [ { - "id": 1683, + "id": 2333, "literals": [ "solidity", ">=", @@ -340,38 +340,38 @@ ".0" ], "nodeType": "PragmaDirective", - "src": "0:31:11" + "src": "0:31:14" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol", "file": "./IERC20Token.sol", - "id": 1684, + "id": 2334, "nodeType": "ImportDirective", - "scope": 1711, - "sourceUnit": 1387, - "src": "33:27:11", + "scope": 2361, + "sourceUnit": 1978, + "src": "33:27:14", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IConverterAnchor.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IConverterAnchor.sol", "file": "./IConverterAnchor.sol", - "id": 1685, + "id": 2335, "nodeType": "ImportDirective", - "scope": 1711, - "sourceUnit": 1220, - "src": "61:32:11", + "scope": 2361, + "sourceUnit": 1811, + "src": "61:32:14", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IOwned.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IOwned.sol", "file": "./IOwned.sol", - "id": 1686, + "id": 2336, "nodeType": "ImportDirective", - "scope": 1711, - "sourceUnit": 1682, - "src": "94:22:11", + "scope": 2361, + "sourceUnit": 2332, + "src": "94:22:14", "symbolAliases": [], "unitAlias": "" }, @@ -381,55 +381,55 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 1687, + "id": 2337, "name": "IConverterAnchor", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1219, - "src": "174:16:11", + "referencedDeclaration": 1810, + "src": "174:16:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_IConverterAnchor_$1219", + "typeIdentifier": "t_contract$_IConverterAnchor_$1810", "typeString": "contract IConverterAnchor" } }, - "id": 1688, + "id": 2338, "nodeType": "InheritanceSpecifier", - "src": "174:16:11" + "src": "174:16:14" }, { "arguments": null, "baseName": { "contractScope": null, - "id": 1689, + "id": 2339, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "192:11:11", + "referencedDeclaration": 1977, + "src": "192:11:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" } }, - "id": 1690, + "id": 2340, "nodeType": "InheritanceSpecifier", - "src": "192:11:11" + "src": "192:11:14" } ], "contractDependencies": [ - 1219, - 1386, - 1681, - 2016 + 1810, + 1977, + 2331, + 2766 ], "contractKind": "contract", "documentation": null, "fullyImplemented": false, - "id": 1710, + "id": 2360, "linearizedBaseContracts": [ - 1710, - 1386, - 1219, - 2016, - 1681 + 2360, + 1977, + 1810, + 2766, + 2331 ], "name": "ISmartToken", "nodeType": "ContractDefinition", @@ -437,23 +437,23 @@ { "body": null, "documentation": null, - "id": 1695, + "id": 2345, "implemented": false, "kind": "function", "modifiers": [], "name": "disableTransfers", "nodeType": "FunctionDefinition", "parameters": { - "id": 1693, + "id": 2343, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1692, + "id": 2342, "name": "_disable", "nodeType": "VariableDeclaration", - "scope": 1695, - "src": "233:13:11", + "scope": 2345, + "src": "233:13:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -461,10 +461,10 @@ "typeString": "bool" }, "typeName": { - "id": 1691, + "id": 2341, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "233:4:11", + "src": "233:4:14", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -474,16 +474,16 @@ "visibility": "internal" } ], - "src": "232:15:11" + "src": "232:15:14" }, "returnParameters": { - "id": 1694, + "id": 2344, "nodeType": "ParameterList", "parameters": [], - "src": "254:0:11" + "src": "254:0:14" }, - "scope": 1710, - "src": "207:48:11", + "scope": 2360, + "src": "207:48:14", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -491,23 +491,23 @@ { "body": null, "documentation": null, - "id": 1702, + "id": 2352, "implemented": false, "kind": "function", "modifiers": [], "name": "issue", "nodeType": "FunctionDefinition", "parameters": { - "id": 1700, + "id": 2350, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1697, + "id": 2347, "name": "_to", "nodeType": "VariableDeclaration", - "scope": 1702, - "src": "273:11:11", + "scope": 2352, + "src": "273:11:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -515,10 +515,10 @@ "typeString": "address" }, "typeName": { - "id": 1696, + "id": 2346, "name": "address", "nodeType": "ElementaryTypeName", - "src": "273:7:11", + "src": "273:7:14", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -530,11 +530,11 @@ }, { "constant": false, - "id": 1699, + "id": 2349, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1702, - "src": "286:15:11", + "scope": 2352, + "src": "286:15:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -542,10 +542,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1698, + "id": 2348, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "286:7:11", + "src": "286:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -555,16 +555,16 @@ "visibility": "internal" } ], - "src": "272:30:11" + "src": "272:30:14" }, "returnParameters": { - "id": 1701, + "id": 2351, "nodeType": "ParameterList", "parameters": [], - "src": "309:0:11" + "src": "309:0:14" }, - "scope": 1710, - "src": "258:52:11", + "scope": 2360, + "src": "258:52:14", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -572,23 +572,23 @@ { "body": null, "documentation": null, - "id": 1709, + "id": 2359, "implemented": false, "kind": "function", "modifiers": [], "name": "destroy", "nodeType": "FunctionDefinition", "parameters": { - "id": 1707, + "id": 2357, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1704, + "id": 2354, "name": "_from", "nodeType": "VariableDeclaration", - "scope": 1709, - "src": "330:13:11", + "scope": 2359, + "src": "330:13:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -596,10 +596,10 @@ "typeString": "address" }, "typeName": { - "id": 1703, + "id": 2353, "name": "address", "nodeType": "ElementaryTypeName", - "src": "330:7:11", + "src": "330:7:14", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -611,11 +611,11 @@ }, { "constant": false, - "id": 1706, + "id": 2356, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1709, - "src": "345:15:11", + "scope": 2359, + "src": "345:15:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -623,10 +623,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1705, + "id": 2355, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "345:7:11", + "src": "345:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -636,373 +636,431 @@ "visibility": "internal" } ], - "src": "329:32:11" + "src": "329:32:14" }, "returnParameters": { - "id": 1708, + "id": 2358, "nodeType": "ParameterList", "parameters": [], - "src": "368:0:11" + "src": "368:0:14" }, - "scope": 1710, - "src": "313:56:11", + "scope": 2360, + "src": "313:56:14", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" } ], - "scope": 1711, - "src": "150:221:11" + "scope": 2361, + "src": "150:221:14" } ], - "src": "0:372:11" + "src": "0:372:14" }, "legacyAST": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISmartToken.sol", - "exportedSymbols": { - "ISmartToken": [ - 1710 - ] + "attributes": { + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISmartToken.sol", + "exportedSymbols": { + "ISmartToken": [ + 2360 + ] + } }, - "id": 1711, - "nodeType": "SourceUnit", - "nodes": [ + "children": [ { - "id": 1683, - "literals": [ - "solidity", - ">=", - "0.5", - ".0", - "<", - "0.6", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "0:31:11" + "attributes": { + "literals": [ + "solidity", + ">=", + "0.5", + ".0", + "<", + "0.6", + ".0" + ] + }, + "id": 2333, + "name": "PragmaDirective", + "src": "0:31:14" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol", - "file": "./IERC20Token.sol", - "id": 1684, - "nodeType": "ImportDirective", - "scope": 1711, - "sourceUnit": 1387, - "src": "33:27:11", - "symbolAliases": [], - "unitAlias": "" + "attributes": { + "SourceUnit": 1978, + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol", + "file": "./IERC20Token.sol", + "scope": 2361, + "symbolAliases": [ + null + ], + "unitAlias": "" + }, + "id": 2334, + "name": "ImportDirective", + "src": "33:27:14" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IConverterAnchor.sol", - "file": "./IConverterAnchor.sol", - "id": 1685, - "nodeType": "ImportDirective", - "scope": 1711, - "sourceUnit": 1220, - "src": "61:32:11", - "symbolAliases": [], - "unitAlias": "" + "attributes": { + "SourceUnit": 1811, + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IConverterAnchor.sol", + "file": "./IConverterAnchor.sol", + "scope": 2361, + "symbolAliases": [ + null + ], + "unitAlias": "" + }, + "id": 2335, + "name": "ImportDirective", + "src": "61:32:14" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IOwned.sol", - "file": "./IOwned.sol", - "id": 1686, - "nodeType": "ImportDirective", - "scope": 1711, - "sourceUnit": 1682, - "src": "94:22:11", - "symbolAliases": [], - "unitAlias": "" + "attributes": { + "SourceUnit": 2332, + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IOwned.sol", + "file": "./IOwned.sol", + "scope": 2361, + "symbolAliases": [ + null + ], + "unitAlias": "" + }, + "id": 2336, + "name": "ImportDirective", + "src": "94:22:14" }, { - "baseContracts": [ + "attributes": { + "contractDependencies": [ + 1810, + 1977, + 2331, + 2766 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": false, + "linearizedBaseContracts": [ + 2360, + 1977, + 1810, + 2766, + 2331 + ], + "name": "ISmartToken", + "scope": 2361 + }, + "children": [ { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 1687, - "name": "IConverterAnchor", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1219, - "src": "174:16:11", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IConverterAnchor_$1219", - "typeString": "contract IConverterAnchor" - } + "attributes": { + "arguments": null }, - "id": 1688, - "nodeType": "InheritanceSpecifier", - "src": "174:16:11" + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IConverterAnchor", + "referencedDeclaration": 1810, + "type": "contract IConverterAnchor" + }, + "id": 2337, + "name": "UserDefinedTypeName", + "src": "174:16:14" + } + ], + "id": 2338, + "name": "InheritanceSpecifier", + "src": "174:16:14" }, { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 1689, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "192:11:11", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } + "attributes": { + "arguments": null }, - "id": 1690, - "nodeType": "InheritanceSpecifier", - "src": "192:11:11" - } - ], - "contractDependencies": [ - 1219, - 1386, - 1681, - 2016 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": false, - "id": 1710, - "linearizedBaseContracts": [ - 1710, - 1386, - 1219, - 2016, - 1681 - ], - "name": "ISmartToken", - "nodeType": "ContractDefinition", - "nodes": [ + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1977, + "type": "contract IERC20Token" + }, + "id": 2339, + "name": "UserDefinedTypeName", + "src": "192:11:14" + } + ], + "id": 2340, + "name": "InheritanceSpecifier", + "src": "192:11:14" + }, { - "body": null, - "documentation": null, - "id": 1695, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "disableTransfers", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1693, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1692, - "name": "_disable", - "nodeType": "VariableDeclaration", - "scope": 1695, - "src": "233:13:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1691, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "233:4:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "232:15:11" - }, - "returnParameters": { - "id": 1694, - "nodeType": "ParameterList", - "parameters": [], - "src": "254:0:11" + "name": "disableTransfers", + "scope": 2360, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" }, - "scope": 1710, - "src": "207:48:11", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_disable", + "scope": 2345, + "stateVariable": false, + "storageLocation": "default", + "type": "bool", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bool", + "type": "bool" + }, + "id": 2341, + "name": "ElementaryTypeName", + "src": "233:4:14" + } + ], + "id": 2342, + "name": "VariableDeclaration", + "src": "233:13:14" + } + ], + "id": 2343, + "name": "ParameterList", + "src": "232:15:14" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2344, + "name": "ParameterList", + "src": "254:0:14" + } + ], + "id": 2345, + "name": "FunctionDefinition", + "src": "207:48:14" }, { - "body": null, - "documentation": null, - "id": 1702, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "issue", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1700, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1697, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 1702, - "src": "273:11:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1696, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "273:7:11", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1699, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1702, - "src": "286:15:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1698, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "286:7:11", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "272:30:11" + "name": "issue", + "scope": 2360, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" }, - "returnParameters": { - "id": 1701, - "nodeType": "ParameterList", - "parameters": [], - "src": "309:0:11" - }, - "scope": 1710, - "src": "258:52:11", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": null, - "documentation": null, - "id": 1709, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "destroy", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1707, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1704, - "name": "_from", - "nodeType": "VariableDeclaration", - "scope": 1709, - "src": "330:13:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_to", + "scope": 2352, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 2346, + "name": "ElementaryTypeName", + "src": "273:7:14" + } + ], + "id": 2347, + "name": "VariableDeclaration", + "src": "273:11:14" }, - "typeName": { - "id": 1703, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "330:7:11", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2352, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2348, + "name": "ElementaryTypeName", + "src": "286:7:14" + } + ], + "id": 2349, + "name": "VariableDeclaration", + "src": "286:15:14" + } + ], + "id": 2350, + "name": "ParameterList", + "src": "272:30:14" + }, + { + "attributes": { + "parameters": [ + null + ] }, - { - "constant": false, - "id": 1706, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1709, - "src": "345:15:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1705, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "345:7:11", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "children": [], + "id": 2351, + "name": "ParameterList", + "src": "309:0:14" + } + ], + "id": 2352, + "name": "FunctionDefinition", + "src": "258:52:14" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "329:32:11" - }, - "returnParameters": { - "id": 1708, - "nodeType": "ParameterList", - "parameters": [], - "src": "368:0:11" + "name": "destroy", + "scope": 2360, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" }, - "scope": 1710, - "src": "313:56:11", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_from", + "scope": 2359, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 2353, + "name": "ElementaryTypeName", + "src": "330:7:14" + } + ], + "id": 2354, + "name": "VariableDeclaration", + "src": "330:13:14" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2359, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2355, + "name": "ElementaryTypeName", + "src": "345:7:14" + } + ], + "id": 2356, + "name": "VariableDeclaration", + "src": "345:15:14" + } + ], + "id": 2357, + "name": "ParameterList", + "src": "329:32:14" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2358, + "name": "ParameterList", + "src": "368:0:14" + } + ], + "id": 2359, + "name": "FunctionDefinition", + "src": "313:56:14" } ], - "scope": 1711, - "src": "150:221:11" + "id": 2360, + "name": "ContractDefinition", + "src": "150:221:14" } ], - "src": "0:372:11" + "id": 2361, + "name": "SourceUnit", + "src": "0:372:14" }, "compiler": { "name": "solc", "version": "0.5.16+commit.9c3226ce.Emscripten.clang" }, "networks": {}, - "schemaVersion": "3.3.2", - "updatedAt": "2021-03-26T10:10:09.418Z", + "schemaVersion": "3.4.1", + "updatedAt": "2022-02-15T06:13:50.473Z", "devdoc": { "methods": {} }, diff --git a/rbtcwrapperproxy/build/contracts/ISovrynSwapFormula.json b/rbtcwrapperproxy/build/contracts/ISovrynSwapFormula.json index c76107d..8539b34 100644 --- a/rbtcwrapperproxy/build/contracts/ISovrynSwapFormula.json +++ b/rbtcwrapperproxy/build/contracts/ISovrynSwapFormula.json @@ -269,32 +269,32 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_primaryReserveStakedBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_primaryReserveBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_secondaryReserveBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_reserveRateNumerator\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_reserveRateDenominator\",\"type\":\"uint256\"}],\"name\":\"balancedWeights\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_sourceReserveBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"_sourceReserveWeight\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"_targetReserveBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"_targetReserveWeight\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"crossReserveTargetAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_supply\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_reserveBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"_reserveRatio\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"fundCost\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_supply\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_reserveBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"_reserveRatio\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"fundSupplyAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_supply\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_reserveBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"_reserveRatio\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"liquidateReserveAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_supply\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_reserveBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"_reserveWeight\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"purchaseTargetAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_supply\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_reserveBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"_reserveWeight\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"saleTargetAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISovrynSwapFormula.sol\":\"ISovrynSwapFormula\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISovrynSwapFormula.sol\":{\"keccak256\":\"0x732c2e28d3ec913b5aad781c545b3c36874de9535220ae0a3675a0347f12b445\",\"urls\":[\"bzz-raw://d6a4147995e67a8fc8eb961f27474360ff3aa68ed6b71281db347282b1e52ad4\",\"dweb:/ipfs/QmdYrxfkquA8LTU6MaYufrs3sfFcbNQhnBBNNZkeYEER5X\"]}},\"version\":1}", + "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_primaryReserveStakedBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_primaryReserveBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_secondaryReserveBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_reserveRateNumerator\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_reserveRateDenominator\",\"type\":\"uint256\"}],\"name\":\"balancedWeights\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_sourceReserveBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"_sourceReserveWeight\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"_targetReserveBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"_targetReserveWeight\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"crossReserveTargetAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_supply\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_reserveBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"_reserveRatio\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"fundCost\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_supply\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_reserveBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"_reserveRatio\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"fundSupplyAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_supply\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_reserveBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"_reserveRatio\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"liquidateReserveAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_supply\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_reserveBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"_reserveWeight\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"purchaseTargetAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_supply\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_reserveBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"_reserveWeight\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"saleTargetAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISovrynSwapFormula.sol\":\"ISovrynSwapFormula\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISovrynSwapFormula.sol\":{\"keccak256\":\"0x732c2e28d3ec913b5aad781c545b3c36874de9535220ae0a3675a0347f12b445\",\"urls\":[\"bzz-raw://d6a4147995e67a8fc8eb961f27474360ff3aa68ed6b71281db347282b1e52ad4\",\"dweb:/ipfs/QmdYrxfkquA8LTU6MaYufrs3sfFcbNQhnBBNNZkeYEER5X\"]}},\"version\":1}", "bytecode": "0x", "deployedBytecode": "0x", "sourceMap": "", "deployedSourceMap": "", "source": "pragma solidity 0.5.16;\n\n/*\n SovrynSwap Formula interface\n*/\ncontract ISovrynSwapFormula {\n function purchaseTargetAmount(uint256 _supply,\n uint256 _reserveBalance,\n uint32 _reserveWeight,\n uint256 _amount)\n public view returns (uint256);\n\n function saleTargetAmount(uint256 _supply,\n uint256 _reserveBalance,\n uint32 _reserveWeight,\n uint256 _amount)\n public view returns (uint256);\n\n function crossReserveTargetAmount(uint256 _sourceReserveBalance,\n uint32 _sourceReserveWeight,\n uint256 _targetReserveBalance,\n uint32 _targetReserveWeight,\n uint256 _amount)\n public view returns (uint256);\n\n function fundCost(uint256 _supply,\n uint256 _reserveBalance,\n uint32 _reserveRatio,\n uint256 _amount)\n public view returns (uint256);\n\n function fundSupplyAmount(uint256 _supply,\n uint256 _reserveBalance,\n uint32 _reserveRatio,\n uint256 _amount)\n public view returns (uint256);\n\n function liquidateReserveAmount(uint256 _supply,\n uint256 _reserveBalance,\n uint32 _reserveRatio,\n uint256 _amount)\n public view returns (uint256);\n\n function balancedWeights(uint256 _primaryReserveStakedBalance,\n uint256 _primaryReserveBalance,\n uint256 _secondaryReserveBalance,\n uint256 _reserveRateNumerator,\n uint256 _reserveRateDenominator)\n public view returns (uint32, uint32);\n}\n", - "sourcePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISovrynSwapFormula.sol", + "sourcePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISovrynSwapFormula.sol", "ast": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISovrynSwapFormula.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISovrynSwapFormula.sol", "exportedSymbols": { "ISovrynSwapFormula": [ - 2225 + 2460 ] }, - "id": 2226, + "id": 2461, "nodeType": "SourceUnit", "nodes": [ { - "id": 2127, + "id": 2362, "literals": [ "solidity", "0.5", ".16" ], "nodeType": "PragmaDirective", - "src": "0:23:14" + "src": "0:23:15" }, { "baseContracts": [], @@ -302,9 +302,9 @@ "contractKind": "contract", "documentation": null, "fullyImplemented": false, - "id": 2225, + "id": 2460, "linearizedBaseContracts": [ - 2225 + 2460 ], "name": "ISovrynSwapFormula", "nodeType": "ContractDefinition", @@ -312,23 +312,23 @@ { "body": null, "documentation": null, - "id": 2140, + "id": 2375, "implemented": false, "kind": "function", "modifiers": [], "name": "purchaseTargetAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 2136, + "id": 2371, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2129, + "id": 2364, "name": "_supply", "nodeType": "VariableDeclaration", - "scope": 2140, - "src": "128:15:14", + "scope": 2375, + "src": "128:15:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -336,10 +336,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2128, + "id": 2363, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "128:7:14", + "src": "128:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -350,11 +350,11 @@ }, { "constant": false, - "id": 2131, + "id": 2366, "name": "_reserveBalance", "nodeType": "VariableDeclaration", - "scope": 2140, - "src": "179:23:14", + "scope": 2375, + "src": "179:23:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -362,10 +362,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2130, + "id": 2365, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "179:7:14", + "src": "179:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -376,11 +376,11 @@ }, { "constant": false, - "id": 2133, + "id": 2368, "name": "_reserveWeight", "nodeType": "VariableDeclaration", - "scope": 2140, - "src": "238:21:14", + "scope": 2375, + "src": "238:21:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -388,10 +388,10 @@ "typeString": "uint32" }, "typeName": { - "id": 2132, + "id": 2367, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "238:6:14", + "src": "238:6:15", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -402,11 +402,11 @@ }, { "constant": false, - "id": 2135, + "id": 2370, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 2140, - "src": "295:15:14", + "scope": 2375, + "src": "295:15:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -414,10 +414,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2134, + "id": 2369, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "295:7:14", + "src": "295:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -427,19 +427,19 @@ "visibility": "internal" } ], - "src": "127:184:14" + "src": "127:184:15" }, "returnParameters": { - "id": 2139, + "id": 2374, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2138, + "id": 2373, "name": "", "nodeType": "VariableDeclaration", - "scope": 2140, - "src": "367:7:14", + "scope": 2375, + "src": "367:7:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -447,10 +447,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2137, + "id": 2372, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "367:7:14", + "src": "367:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -460,10 +460,10 @@ "visibility": "internal" } ], - "src": "366:9:14" + "src": "366:9:15" }, - "scope": 2225, - "src": "98:278:14", + "scope": 2460, + "src": "98:278:15", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -471,23 +471,23 @@ { "body": null, "documentation": null, - "id": 2153, + "id": 2388, "implemented": false, "kind": "function", "modifiers": [], "name": "saleTargetAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 2149, + "id": 2384, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2142, + "id": 2377, "name": "_supply", "nodeType": "VariableDeclaration", - "scope": 2153, - "src": "408:15:14", + "scope": 2388, + "src": "408:15:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -495,10 +495,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2141, + "id": 2376, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "408:7:14", + "src": "408:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -509,11 +509,11 @@ }, { "constant": false, - "id": 2144, + "id": 2379, "name": "_reserveBalance", "nodeType": "VariableDeclaration", - "scope": 2153, - "src": "455:23:14", + "scope": 2388, + "src": "455:23:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -521,10 +521,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2143, + "id": 2378, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "455:7:14", + "src": "455:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -535,11 +535,11 @@ }, { "constant": false, - "id": 2146, + "id": 2381, "name": "_reserveWeight", "nodeType": "VariableDeclaration", - "scope": 2153, - "src": "510:21:14", + "scope": 2388, + "src": "510:21:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -547,10 +547,10 @@ "typeString": "uint32" }, "typeName": { - "id": 2145, + "id": 2380, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "510:6:14", + "src": "510:6:15", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -561,11 +561,11 @@ }, { "constant": false, - "id": 2148, + "id": 2383, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 2153, - "src": "563:15:14", + "scope": 2388, + "src": "563:15:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -573,10 +573,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2147, + "id": 2382, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "563:7:14", + "src": "563:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -586,19 +586,19 @@ "visibility": "internal" } ], - "src": "407:172:14" + "src": "407:172:15" }, "returnParameters": { - "id": 2152, + "id": 2387, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2151, + "id": 2386, "name": "", "nodeType": "VariableDeclaration", - "scope": 2153, - "src": "631:7:14", + "scope": 2388, + "src": "631:7:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -606,10 +606,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2150, + "id": 2385, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "631:7:14", + "src": "631:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -619,10 +619,10 @@ "visibility": "internal" } ], - "src": "630:9:14" + "src": "630:9:15" }, - "scope": 2225, - "src": "382:258:14", + "scope": 2460, + "src": "382:258:15", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -630,23 +630,23 @@ { "body": null, "documentation": null, - "id": 2168, + "id": 2403, "implemented": false, "kind": "function", "modifiers": [], "name": "crossReserveTargetAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 2164, + "id": 2399, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2155, + "id": 2390, "name": "_sourceReserveBalance", "nodeType": "VariableDeclaration", - "scope": 2168, - "src": "680:29:14", + "scope": 2403, + "src": "680:29:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -654,10 +654,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2154, + "id": 2389, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "680:7:14", + "src": "680:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -668,11 +668,11 @@ }, { "constant": false, - "id": 2157, + "id": 2392, "name": "_sourceReserveWeight", "nodeType": "VariableDeclaration", - "scope": 2168, - "src": "749:27:14", + "scope": 2403, + "src": "749:27:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -680,10 +680,10 @@ "typeString": "uint32" }, "typeName": { - "id": 2156, + "id": 2391, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "749:6:14", + "src": "749:6:15", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -694,11 +694,11 @@ }, { "constant": false, - "id": 2159, + "id": 2394, "name": "_targetReserveBalance", "nodeType": "VariableDeclaration", - "scope": 2168, - "src": "816:29:14", + "scope": 2403, + "src": "816:29:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -706,10 +706,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2158, + "id": 2393, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "816:7:14", + "src": "816:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -720,11 +720,11 @@ }, { "constant": false, - "id": 2161, + "id": 2396, "name": "_targetReserveWeight", "nodeType": "VariableDeclaration", - "scope": 2168, - "src": "885:27:14", + "scope": 2403, + "src": "885:27:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -732,10 +732,10 @@ "typeString": "uint32" }, "typeName": { - "id": 2160, + "id": 2395, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "885:6:14", + "src": "885:6:15", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -746,11 +746,11 @@ }, { "constant": false, - "id": 2163, + "id": 2398, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 2168, - "src": "952:15:14", + "scope": 2403, + "src": "952:15:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -758,10 +758,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2162, + "id": 2397, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "952:7:14", + "src": "952:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -771,19 +771,19 @@ "visibility": "internal" } ], - "src": "679:289:14" + "src": "679:289:15" }, "returnParameters": { - "id": 2167, + "id": 2402, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2166, + "id": 2401, "name": "", "nodeType": "VariableDeclaration", - "scope": 2168, - "src": "1028:7:14", + "scope": 2403, + "src": "1028:7:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -791,10 +791,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2165, + "id": 2400, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1028:7:14", + "src": "1028:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -804,10 +804,10 @@ "visibility": "internal" } ], - "src": "1027:9:14" + "src": "1027:9:15" }, - "scope": 2225, - "src": "646:391:14", + "scope": 2460, + "src": "646:391:15", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -815,23 +815,23 @@ { "body": null, "documentation": null, - "id": 2181, + "id": 2416, "implemented": false, "kind": "function", "modifiers": [], "name": "fundCost", "nodeType": "FunctionDefinition", "parameters": { - "id": 2177, + "id": 2412, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2170, + "id": 2405, "name": "_supply", "nodeType": "VariableDeclaration", - "scope": 2181, - "src": "1061:15:14", + "scope": 2416, + "src": "1061:15:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -839,10 +839,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2169, + "id": 2404, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1061:7:14", + "src": "1061:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -853,11 +853,11 @@ }, { "constant": false, - "id": 2172, + "id": 2407, "name": "_reserveBalance", "nodeType": "VariableDeclaration", - "scope": 2181, - "src": "1100:23:14", + "scope": 2416, + "src": "1100:23:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -865,10 +865,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2171, + "id": 2406, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1100:7:14", + "src": "1100:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -879,11 +879,11 @@ }, { "constant": false, - "id": 2174, + "id": 2409, "name": "_reserveRatio", "nodeType": "VariableDeclaration", - "scope": 2181, - "src": "1147:20:14", + "scope": 2416, + "src": "1147:20:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -891,10 +891,10 @@ "typeString": "uint32" }, "typeName": { - "id": 2173, + "id": 2408, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "1147:6:14", + "src": "1147:6:15", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -905,11 +905,11 @@ }, { "constant": false, - "id": 2176, + "id": 2411, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 2181, - "src": "1191:15:14", + "scope": 2416, + "src": "1191:15:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -917,10 +917,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2175, + "id": 2410, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1191:7:14", + "src": "1191:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -930,19 +930,19 @@ "visibility": "internal" } ], - "src": "1060:147:14" + "src": "1060:147:15" }, "returnParameters": { - "id": 2180, + "id": 2415, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2179, + "id": 2414, "name": "", "nodeType": "VariableDeclaration", - "scope": 2181, - "src": "1251:7:14", + "scope": 2416, + "src": "1251:7:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -950,10 +950,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2178, + "id": 2413, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1251:7:14", + "src": "1251:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -963,10 +963,10 @@ "visibility": "internal" } ], - "src": "1250:9:14" + "src": "1250:9:15" }, - "scope": 2225, - "src": "1043:217:14", + "scope": 2460, + "src": "1043:217:15", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -974,23 +974,23 @@ { "body": null, "documentation": null, - "id": 2194, + "id": 2429, "implemented": false, "kind": "function", "modifiers": [], "name": "fundSupplyAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 2190, + "id": 2425, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2183, + "id": 2418, "name": "_supply", "nodeType": "VariableDeclaration", - "scope": 2194, - "src": "1292:15:14", + "scope": 2429, + "src": "1292:15:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -998,10 +998,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2182, + "id": 2417, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1292:7:14", + "src": "1292:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1012,11 +1012,11 @@ }, { "constant": false, - "id": 2185, + "id": 2420, "name": "_reserveBalance", "nodeType": "VariableDeclaration", - "scope": 2194, - "src": "1339:23:14", + "scope": 2429, + "src": "1339:23:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1024,10 +1024,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2184, + "id": 2419, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1339:7:14", + "src": "1339:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1038,11 +1038,11 @@ }, { "constant": false, - "id": 2187, + "id": 2422, "name": "_reserveRatio", "nodeType": "VariableDeclaration", - "scope": 2194, - "src": "1394:20:14", + "scope": 2429, + "src": "1394:20:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1050,10 +1050,10 @@ "typeString": "uint32" }, "typeName": { - "id": 2186, + "id": 2421, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "1394:6:14", + "src": "1394:6:15", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -1064,11 +1064,11 @@ }, { "constant": false, - "id": 2189, + "id": 2424, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 2194, - "src": "1446:15:14", + "scope": 2429, + "src": "1446:15:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1076,10 +1076,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2188, + "id": 2423, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1446:7:14", + "src": "1446:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1089,19 +1089,19 @@ "visibility": "internal" } ], - "src": "1291:171:14" + "src": "1291:171:15" }, "returnParameters": { - "id": 2193, + "id": 2428, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2192, + "id": 2427, "name": "", "nodeType": "VariableDeclaration", - "scope": 2194, - "src": "1514:7:14", + "scope": 2429, + "src": "1514:7:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1109,10 +1109,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2191, + "id": 2426, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1514:7:14", + "src": "1514:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1122,10 +1122,10 @@ "visibility": "internal" } ], - "src": "1513:9:14" + "src": "1513:9:15" }, - "scope": 2225, - "src": "1266:257:14", + "scope": 2460, + "src": "1266:257:15", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -1133,23 +1133,23 @@ { "body": null, "documentation": null, - "id": 2207, + "id": 2442, "implemented": false, "kind": "function", "modifiers": [], "name": "liquidateReserveAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 2203, + "id": 2438, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2196, + "id": 2431, "name": "_supply", "nodeType": "VariableDeclaration", - "scope": 2207, - "src": "1561:15:14", + "scope": 2442, + "src": "1561:15:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1157,10 +1157,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2195, + "id": 2430, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1561:7:14", + "src": "1561:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1171,11 +1171,11 @@ }, { "constant": false, - "id": 2198, + "id": 2433, "name": "_reserveBalance", "nodeType": "VariableDeclaration", - "scope": 2207, - "src": "1614:23:14", + "scope": 2442, + "src": "1614:23:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1183,10 +1183,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2197, + "id": 2432, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1614:7:14", + "src": "1614:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1197,11 +1197,11 @@ }, { "constant": false, - "id": 2200, + "id": 2435, "name": "_reserveRatio", "nodeType": "VariableDeclaration", - "scope": 2207, - "src": "1675:20:14", + "scope": 2442, + "src": "1675:20:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1209,10 +1209,10 @@ "typeString": "uint32" }, "typeName": { - "id": 2199, + "id": 2434, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "1675:6:14", + "src": "1675:6:15", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -1223,11 +1223,11 @@ }, { "constant": false, - "id": 2202, + "id": 2437, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 2207, - "src": "1733:15:14", + "scope": 2442, + "src": "1733:15:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1235,10 +1235,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2201, + "id": 2436, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1733:7:14", + "src": "1733:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1248,19 +1248,19 @@ "visibility": "internal" } ], - "src": "1560:189:14" + "src": "1560:189:15" }, "returnParameters": { - "id": 2206, + "id": 2441, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2205, + "id": 2440, "name": "", "nodeType": "VariableDeclaration", - "scope": 2207, - "src": "1807:7:14", + "scope": 2442, + "src": "1807:7:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1268,10 +1268,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2204, + "id": 2439, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1807:7:14", + "src": "1807:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1281,10 +1281,10 @@ "visibility": "internal" } ], - "src": "1806:9:14" + "src": "1806:9:15" }, - "scope": 2225, - "src": "1529:287:14", + "scope": 2460, + "src": "1529:287:15", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -1292,23 +1292,23 @@ { "body": null, "documentation": null, - "id": 2224, + "id": 2459, "implemented": false, "kind": "function", "modifiers": [], "name": "balancedWeights", "nodeType": "FunctionDefinition", "parameters": { - "id": 2218, + "id": 2453, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2209, + "id": 2444, "name": "_primaryReserveStakedBalance", "nodeType": "VariableDeclaration", - "scope": 2224, - "src": "1847:36:14", + "scope": 2459, + "src": "1847:36:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1316,10 +1316,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2208, + "id": 2443, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1847:7:14", + "src": "1847:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1330,11 +1330,11 @@ }, { "constant": false, - "id": 2211, + "id": 2446, "name": "_primaryReserveBalance", "nodeType": "VariableDeclaration", - "scope": 2224, - "src": "1914:30:14", + "scope": 2459, + "src": "1914:30:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1342,10 +1342,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2210, + "id": 2445, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1914:7:14", + "src": "1914:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1356,11 +1356,11 @@ }, { "constant": false, - "id": 2213, + "id": 2448, "name": "_secondaryReserveBalance", "nodeType": "VariableDeclaration", - "scope": 2224, - "src": "1975:32:14", + "scope": 2459, + "src": "1975:32:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1368,10 +1368,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2212, + "id": 2447, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1975:7:14", + "src": "1975:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1382,11 +1382,11 @@ }, { "constant": false, - "id": 2215, + "id": 2450, "name": "_reserveRateNumerator", "nodeType": "VariableDeclaration", - "scope": 2224, - "src": "2038:29:14", + "scope": 2459, + "src": "2038:29:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1394,10 +1394,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2214, + "id": 2449, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2038:7:14", + "src": "2038:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1408,11 +1408,11 @@ }, { "constant": false, - "id": 2217, + "id": 2452, "name": "_reserveRateDenominator", "nodeType": "VariableDeclaration", - "scope": 2224, - "src": "2098:31:14", + "scope": 2459, + "src": "2098:31:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1420,10 +1420,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2216, + "id": 2451, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2098:7:14", + "src": "2098:7:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1433,19 +1433,19 @@ "visibility": "internal" } ], - "src": "1846:284:14" + "src": "1846:284:15" }, "returnParameters": { - "id": 2223, + "id": 2458, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2220, + "id": 2455, "name": "", "nodeType": "VariableDeclaration", - "scope": 2224, - "src": "2181:6:14", + "scope": 2459, + "src": "2181:6:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1453,10 +1453,10 @@ "typeString": "uint32" }, "typeName": { - "id": 2219, + "id": 2454, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "2181:6:14", + "src": "2181:6:15", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -1467,11 +1467,11 @@ }, { "constant": false, - "id": 2222, + "id": 2457, "name": "", "nodeType": "VariableDeclaration", - "scope": 2224, - "src": "2189:6:14", + "scope": 2459, + "src": "2189:6:15", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1479,10 +1479,10 @@ "typeString": "uint32" }, "typeName": { - "id": 2221, + "id": 2456, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "2189:6:14", + "src": "2189:6:15", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -1492,1259 +1492,1318 @@ "visibility": "internal" } ], - "src": "2180:16:14" + "src": "2180:16:15" }, - "scope": 2225, - "src": "1822:375:14", + "scope": 2460, + "src": "1822:375:15", "stateMutability": "view", "superFunction": null, "visibility": "public" } ], - "scope": 2226, - "src": "64:2135:14" + "scope": 2461, + "src": "64:2135:15" } ], - "src": "0:2200:14" + "src": "0:2200:15" }, "legacyAST": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISovrynSwapFormula.sol", - "exportedSymbols": { - "ISovrynSwapFormula": [ - 2225 - ] + "attributes": { + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISovrynSwapFormula.sol", + "exportedSymbols": { + "ISovrynSwapFormula": [ + 2460 + ] + } }, - "id": 2226, - "nodeType": "SourceUnit", - "nodes": [ + "children": [ { - "id": 2127, - "literals": [ - "solidity", - "0.5", - ".16" - ], - "nodeType": "PragmaDirective", - "src": "0:23:14" + "attributes": { + "literals": [ + "solidity", + "0.5", + ".16" + ] + }, + "id": 2362, + "name": "PragmaDirective", + "src": "0:23:15" }, { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": false, - "id": 2225, - "linearizedBaseContracts": [ - 2225 - ], - "name": "ISovrynSwapFormula", - "nodeType": "ContractDefinition", - "nodes": [ + "attributes": { + "baseContracts": [ + null + ], + "contractDependencies": [ + null + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": false, + "linearizedBaseContracts": [ + 2460 + ], + "name": "ISovrynSwapFormula", + "scope": 2461 + }, + "children": [ { - "body": null, - "documentation": null, - "id": 2140, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "purchaseTargetAmount", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2136, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2129, - "name": "_supply", - "nodeType": "VariableDeclaration", - "scope": 2140, - "src": "128:15:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2128, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "128:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2131, - "name": "_reserveBalance", - "nodeType": "VariableDeclaration", - "scope": 2140, - "src": "179:23:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2130, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "179:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2133, - "name": "_reserveWeight", - "nodeType": "VariableDeclaration", - "scope": 2140, - "src": "238:21:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 2132, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "238:6:14", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2135, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 2140, - "src": "295:15:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2134, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "295:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "127:184:14" + "name": "purchaseTargetAmount", + "scope": 2460, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" }, - "returnParameters": { - "id": 2139, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2138, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2140, - "src": "367:7:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2137, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "367:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_supply", + "scope": 2375, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2363, + "name": "ElementaryTypeName", + "src": "128:7:15" + } + ], + "id": 2364, + "name": "VariableDeclaration", + "src": "128:15:15" + }, + { + "attributes": { + "constant": false, + "name": "_reserveBalance", + "scope": 2375, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2365, + "name": "ElementaryTypeName", + "src": "179:7:15" + } + ], + "id": 2366, + "name": "VariableDeclaration", + "src": "179:23:15" + }, + { + "attributes": { + "constant": false, + "name": "_reserveWeight", + "scope": 2375, + "stateVariable": false, + "storageLocation": "default", + "type": "uint32", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint32", + "type": "uint32" + }, + "id": 2367, + "name": "ElementaryTypeName", + "src": "238:6:15" + } + ], + "id": 2368, + "name": "VariableDeclaration", + "src": "238:21:15" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2375, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2369, + "name": "ElementaryTypeName", + "src": "295:7:15" + } + ], + "id": 2370, + "name": "VariableDeclaration", + "src": "295:15:15" + } + ], + "id": 2371, + "name": "ParameterList", + "src": "127:184:15" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2375, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2372, + "name": "ElementaryTypeName", + "src": "367:7:15" + } + ], + "id": 2373, + "name": "VariableDeclaration", + "src": "367:7:15" + } + ], + "id": 2374, + "name": "ParameterList", + "src": "366:9:15" + } + ], + "id": 2375, + "name": "FunctionDefinition", + "src": "98:278:15" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "366:9:14" + "name": "saleTargetAmount", + "scope": 2460, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" }, - "scope": 2225, - "src": "98:278:14", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_supply", + "scope": 2388, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2376, + "name": "ElementaryTypeName", + "src": "408:7:15" + } + ], + "id": 2377, + "name": "VariableDeclaration", + "src": "408:15:15" + }, + { + "attributes": { + "constant": false, + "name": "_reserveBalance", + "scope": 2388, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2378, + "name": "ElementaryTypeName", + "src": "455:7:15" + } + ], + "id": 2379, + "name": "VariableDeclaration", + "src": "455:23:15" + }, + { + "attributes": { + "constant": false, + "name": "_reserveWeight", + "scope": 2388, + "stateVariable": false, + "storageLocation": "default", + "type": "uint32", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint32", + "type": "uint32" + }, + "id": 2380, + "name": "ElementaryTypeName", + "src": "510:6:15" + } + ], + "id": 2381, + "name": "VariableDeclaration", + "src": "510:21:15" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2388, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2382, + "name": "ElementaryTypeName", + "src": "563:7:15" + } + ], + "id": 2383, + "name": "VariableDeclaration", + "src": "563:15:15" + } + ], + "id": 2384, + "name": "ParameterList", + "src": "407:172:15" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2388, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2385, + "name": "ElementaryTypeName", + "src": "631:7:15" + } + ], + "id": 2386, + "name": "VariableDeclaration", + "src": "631:7:15" + } + ], + "id": 2387, + "name": "ParameterList", + "src": "630:9:15" + } + ], + "id": 2388, + "name": "FunctionDefinition", + "src": "382:258:15" }, { - "body": null, - "documentation": null, - "id": 2153, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "saleTargetAmount", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2149, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2142, - "name": "_supply", - "nodeType": "VariableDeclaration", - "scope": 2153, - "src": "408:15:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2141, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "408:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2144, - "name": "_reserveBalance", - "nodeType": "VariableDeclaration", - "scope": 2153, - "src": "455:23:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2143, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "455:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2146, - "name": "_reserveWeight", - "nodeType": "VariableDeclaration", - "scope": 2153, - "src": "510:21:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 2145, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "510:6:14", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2148, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 2153, - "src": "563:15:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2147, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "563:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "407:172:14" + "name": "crossReserveTargetAmount", + "scope": 2460, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" }, - "returnParameters": { - "id": 2152, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2151, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2153, - "src": "631:7:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2150, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "631:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_sourceReserveBalance", + "scope": 2403, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2389, + "name": "ElementaryTypeName", + "src": "680:7:15" + } + ], + "id": 2390, + "name": "VariableDeclaration", + "src": "680:29:15" + }, + { + "attributes": { + "constant": false, + "name": "_sourceReserveWeight", + "scope": 2403, + "stateVariable": false, + "storageLocation": "default", + "type": "uint32", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint32", + "type": "uint32" + }, + "id": 2391, + "name": "ElementaryTypeName", + "src": "749:6:15" + } + ], + "id": 2392, + "name": "VariableDeclaration", + "src": "749:27:15" + }, + { + "attributes": { + "constant": false, + "name": "_targetReserveBalance", + "scope": 2403, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2393, + "name": "ElementaryTypeName", + "src": "816:7:15" + } + ], + "id": 2394, + "name": "VariableDeclaration", + "src": "816:29:15" + }, + { + "attributes": { + "constant": false, + "name": "_targetReserveWeight", + "scope": 2403, + "stateVariable": false, + "storageLocation": "default", + "type": "uint32", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint32", + "type": "uint32" + }, + "id": 2395, + "name": "ElementaryTypeName", + "src": "885:6:15" + } + ], + "id": 2396, + "name": "VariableDeclaration", + "src": "885:27:15" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2403, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2397, + "name": "ElementaryTypeName", + "src": "952:7:15" + } + ], + "id": 2398, + "name": "VariableDeclaration", + "src": "952:15:15" + } + ], + "id": 2399, + "name": "ParameterList", + "src": "679:289:15" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2403, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2400, + "name": "ElementaryTypeName", + "src": "1028:7:15" + } + ], + "id": 2401, + "name": "VariableDeclaration", + "src": "1028:7:15" + } + ], + "id": 2402, + "name": "ParameterList", + "src": "1027:9:15" + } + ], + "id": 2403, + "name": "FunctionDefinition", + "src": "646:391:15" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "630:9:14" + "name": "fundCost", + "scope": 2460, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" }, - "scope": 2225, - "src": "382:258:14", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_supply", + "scope": 2416, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2404, + "name": "ElementaryTypeName", + "src": "1061:7:15" + } + ], + "id": 2405, + "name": "VariableDeclaration", + "src": "1061:15:15" + }, + { + "attributes": { + "constant": false, + "name": "_reserveBalance", + "scope": 2416, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2406, + "name": "ElementaryTypeName", + "src": "1100:7:15" + } + ], + "id": 2407, + "name": "VariableDeclaration", + "src": "1100:23:15" + }, + { + "attributes": { + "constant": false, + "name": "_reserveRatio", + "scope": 2416, + "stateVariable": false, + "storageLocation": "default", + "type": "uint32", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint32", + "type": "uint32" + }, + "id": 2408, + "name": "ElementaryTypeName", + "src": "1147:6:15" + } + ], + "id": 2409, + "name": "VariableDeclaration", + "src": "1147:20:15" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2416, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2410, + "name": "ElementaryTypeName", + "src": "1191:7:15" + } + ], + "id": 2411, + "name": "VariableDeclaration", + "src": "1191:15:15" + } + ], + "id": 2412, + "name": "ParameterList", + "src": "1060:147:15" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2416, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2413, + "name": "ElementaryTypeName", + "src": "1251:7:15" + } + ], + "id": 2414, + "name": "VariableDeclaration", + "src": "1251:7:15" + } + ], + "id": 2415, + "name": "ParameterList", + "src": "1250:9:15" + } + ], + "id": 2416, + "name": "FunctionDefinition", + "src": "1043:217:15" }, { - "body": null, - "documentation": null, - "id": 2168, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "crossReserveTargetAmount", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2164, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2155, - "name": "_sourceReserveBalance", - "nodeType": "VariableDeclaration", - "scope": 2168, - "src": "680:29:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2154, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "680:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2157, - "name": "_sourceReserveWeight", - "nodeType": "VariableDeclaration", - "scope": 2168, - "src": "749:27:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 2156, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "749:6:14", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2159, - "name": "_targetReserveBalance", - "nodeType": "VariableDeclaration", - "scope": 2168, - "src": "816:29:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2158, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "816:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2161, - "name": "_targetReserveWeight", - "nodeType": "VariableDeclaration", - "scope": 2168, - "src": "885:27:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 2160, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "885:6:14", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2163, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 2168, - "src": "952:15:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2162, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "952:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "679:289:14" + "name": "fundSupplyAmount", + "scope": 2460, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" }, - "returnParameters": { - "id": 2167, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2166, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2168, - "src": "1028:7:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2165, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1028:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_supply", + "scope": 2429, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2417, + "name": "ElementaryTypeName", + "src": "1292:7:15" + } + ], + "id": 2418, + "name": "VariableDeclaration", + "src": "1292:15:15" + }, + { + "attributes": { + "constant": false, + "name": "_reserveBalance", + "scope": 2429, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2419, + "name": "ElementaryTypeName", + "src": "1339:7:15" + } + ], + "id": 2420, + "name": "VariableDeclaration", + "src": "1339:23:15" + }, + { + "attributes": { + "constant": false, + "name": "_reserveRatio", + "scope": 2429, + "stateVariable": false, + "storageLocation": "default", + "type": "uint32", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint32", + "type": "uint32" + }, + "id": 2421, + "name": "ElementaryTypeName", + "src": "1394:6:15" + } + ], + "id": 2422, + "name": "VariableDeclaration", + "src": "1394:20:15" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2429, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2423, + "name": "ElementaryTypeName", + "src": "1446:7:15" + } + ], + "id": 2424, + "name": "VariableDeclaration", + "src": "1446:15:15" + } + ], + "id": 2425, + "name": "ParameterList", + "src": "1291:171:15" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2429, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2426, + "name": "ElementaryTypeName", + "src": "1514:7:15" + } + ], + "id": 2427, + "name": "VariableDeclaration", + "src": "1514:7:15" + } + ], + "id": 2428, + "name": "ParameterList", + "src": "1513:9:15" + } + ], + "id": 2429, + "name": "FunctionDefinition", + "src": "1266:257:15" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "1027:9:14" + "name": "liquidateReserveAmount", + "scope": 2460, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" }, - "scope": 2225, - "src": "646:391:14", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_supply", + "scope": 2442, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2430, + "name": "ElementaryTypeName", + "src": "1561:7:15" + } + ], + "id": 2431, + "name": "VariableDeclaration", + "src": "1561:15:15" + }, + { + "attributes": { + "constant": false, + "name": "_reserveBalance", + "scope": 2442, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2432, + "name": "ElementaryTypeName", + "src": "1614:7:15" + } + ], + "id": 2433, + "name": "VariableDeclaration", + "src": "1614:23:15" + }, + { + "attributes": { + "constant": false, + "name": "_reserveRatio", + "scope": 2442, + "stateVariable": false, + "storageLocation": "default", + "type": "uint32", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint32", + "type": "uint32" + }, + "id": 2434, + "name": "ElementaryTypeName", + "src": "1675:6:15" + } + ], + "id": 2435, + "name": "VariableDeclaration", + "src": "1675:20:15" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2442, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2436, + "name": "ElementaryTypeName", + "src": "1733:7:15" + } + ], + "id": 2437, + "name": "VariableDeclaration", + "src": "1733:15:15" + } + ], + "id": 2438, + "name": "ParameterList", + "src": "1560:189:15" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2442, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2439, + "name": "ElementaryTypeName", + "src": "1807:7:15" + } + ], + "id": 2440, + "name": "VariableDeclaration", + "src": "1807:7:15" + } + ], + "id": 2441, + "name": "ParameterList", + "src": "1806:9:15" + } + ], + "id": 2442, + "name": "FunctionDefinition", + "src": "1529:287:15" }, { - "body": null, - "documentation": null, - "id": 2181, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "fundCost", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2177, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2170, - "name": "_supply", - "nodeType": "VariableDeclaration", - "scope": 2181, - "src": "1061:15:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2169, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1061:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2172, - "name": "_reserveBalance", - "nodeType": "VariableDeclaration", - "scope": 2181, - "src": "1100:23:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2171, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1100:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2174, - "name": "_reserveRatio", - "nodeType": "VariableDeclaration", - "scope": 2181, - "src": "1147:20:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 2173, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "1147:6:14", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2176, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 2181, - "src": "1191:15:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2175, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1191:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "1060:147:14" + "name": "balancedWeights", + "scope": 2460, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" }, - "returnParameters": { - "id": 2180, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2179, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2181, - "src": "1251:7:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2178, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1251:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1250:9:14" - }, - "scope": 2225, - "src": "1043:217:14", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": null, - "documentation": null, - "id": 2194, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "fundSupplyAmount", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2190, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2183, - "name": "_supply", - "nodeType": "VariableDeclaration", - "scope": 2194, - "src": "1292:15:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2182, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1292:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2185, - "name": "_reserveBalance", - "nodeType": "VariableDeclaration", - "scope": 2194, - "src": "1339:23:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2184, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1339:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2187, - "name": "_reserveRatio", - "nodeType": "VariableDeclaration", - "scope": 2194, - "src": "1394:20:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 2186, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "1394:6:14", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2189, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 2194, - "src": "1446:15:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2188, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1446:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1291:171:14" - }, - "returnParameters": { - "id": 2193, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2192, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2194, - "src": "1514:7:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2191, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1514:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1513:9:14" - }, - "scope": 2225, - "src": "1266:257:14", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": null, - "documentation": null, - "id": 2207, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "liquidateReserveAmount", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2203, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2196, - "name": "_supply", - "nodeType": "VariableDeclaration", - "scope": 2207, - "src": "1561:15:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2195, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1561:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2198, - "name": "_reserveBalance", - "nodeType": "VariableDeclaration", - "scope": 2207, - "src": "1614:23:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2197, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1614:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2200, - "name": "_reserveRatio", - "nodeType": "VariableDeclaration", - "scope": 2207, - "src": "1675:20:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 2199, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "1675:6:14", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2202, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 2207, - "src": "1733:15:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2201, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1733:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1560:189:14" - }, - "returnParameters": { - "id": 2206, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2205, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2207, - "src": "1807:7:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2204, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1807:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1806:9:14" - }, - "scope": 2225, - "src": "1529:287:14", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": null, - "documentation": null, - "id": 2224, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "balancedWeights", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2218, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2209, - "name": "_primaryReserveStakedBalance", - "nodeType": "VariableDeclaration", - "scope": 2224, - "src": "1847:36:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2208, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1847:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2211, - "name": "_primaryReserveBalance", - "nodeType": "VariableDeclaration", - "scope": 2224, - "src": "1914:30:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2210, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1914:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2213, - "name": "_secondaryReserveBalance", - "nodeType": "VariableDeclaration", - "scope": 2224, - "src": "1975:32:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2212, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1975:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2215, - "name": "_reserveRateNumerator", - "nodeType": "VariableDeclaration", - "scope": 2224, - "src": "2038:29:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2214, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2038:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2217, - "name": "_reserveRateDenominator", - "nodeType": "VariableDeclaration", - "scope": 2224, - "src": "2098:31:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2216, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2098:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1846:284:14" - }, - "returnParameters": { - "id": 2223, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2220, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2224, - "src": "2181:6:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 2219, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "2181:6:14", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2222, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2224, - "src": "2189:6:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 2221, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "2189:6:14", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2180:16:14" - }, - "scope": 2225, - "src": "1822:375:14", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_primaryReserveStakedBalance", + "scope": 2459, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2443, + "name": "ElementaryTypeName", + "src": "1847:7:15" + } + ], + "id": 2444, + "name": "VariableDeclaration", + "src": "1847:36:15" + }, + { + "attributes": { + "constant": false, + "name": "_primaryReserveBalance", + "scope": 2459, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2445, + "name": "ElementaryTypeName", + "src": "1914:7:15" + } + ], + "id": 2446, + "name": "VariableDeclaration", + "src": "1914:30:15" + }, + { + "attributes": { + "constant": false, + "name": "_secondaryReserveBalance", + "scope": 2459, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2447, + "name": "ElementaryTypeName", + "src": "1975:7:15" + } + ], + "id": 2448, + "name": "VariableDeclaration", + "src": "1975:32:15" + }, + { + "attributes": { + "constant": false, + "name": "_reserveRateNumerator", + "scope": 2459, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2449, + "name": "ElementaryTypeName", + "src": "2038:7:15" + } + ], + "id": 2450, + "name": "VariableDeclaration", + "src": "2038:29:15" + }, + { + "attributes": { + "constant": false, + "name": "_reserveRateDenominator", + "scope": 2459, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2451, + "name": "ElementaryTypeName", + "src": "2098:7:15" + } + ], + "id": 2452, + "name": "VariableDeclaration", + "src": "2098:31:15" + } + ], + "id": 2453, + "name": "ParameterList", + "src": "1846:284:15" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2459, + "stateVariable": false, + "storageLocation": "default", + "type": "uint32", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint32", + "type": "uint32" + }, + "id": 2454, + "name": "ElementaryTypeName", + "src": "2181:6:15" + } + ], + "id": 2455, + "name": "VariableDeclaration", + "src": "2181:6:15" + }, + { + "attributes": { + "constant": false, + "name": "", + "scope": 2459, + "stateVariable": false, + "storageLocation": "default", + "type": "uint32", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint32", + "type": "uint32" + }, + "id": 2456, + "name": "ElementaryTypeName", + "src": "2189:6:15" + } + ], + "id": 2457, + "name": "VariableDeclaration", + "src": "2189:6:15" + } + ], + "id": 2458, + "name": "ParameterList", + "src": "2180:16:15" + } + ], + "id": 2459, + "name": "FunctionDefinition", + "src": "1822:375:15" } ], - "scope": 2226, - "src": "64:2135:14" + "id": 2460, + "name": "ContractDefinition", + "src": "64:2135:15" } ], - "src": "0:2200:14" + "id": 2461, + "name": "SourceUnit", + "src": "0:2200:15" }, "compiler": { "name": "solc", "version": "0.5.16+commit.9c3226ce.Emscripten.clang" }, "networks": {}, - "schemaVersion": "3.3.2", - "updatedAt": "2021-04-07T07:37:58.299Z", + "schemaVersion": "3.4.1", + "updatedAt": "2022-02-15T06:13:50.475Z", "devdoc": { "methods": {} }, diff --git a/rbtcwrapperproxy/build/contracts/ISovrynSwapNetwork.json b/rbtcwrapperproxy/build/contracts/ISovrynSwapNetwork.json index 3bfb3c8..cd14d7e 100644 --- a/rbtcwrapperproxy/build/contracts/ISovrynSwapNetwork.json +++ b/rbtcwrapperproxy/build/contracts/ISovrynSwapNetwork.json @@ -96,7 +96,7 @@ "name": "conversionPath", "outputs": [ { - "internalType": "address[]", + "internalType": "contract IERC20Token[]", "name": "", "type": "address[]" } @@ -660,25 +660,25 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_smartToken\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_fromToken\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_toToken\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_fromAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_toAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_trader\",\"type\":\"address\"}],\"name\":\"Conversion\",\"type\":\"event\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"}],\"name\":\"claimAndConvert\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_affiliateAccount\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_affiliateFee\",\"type\":\"uint256\"}],\"name\":\"claimAndConvert2\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_beneficiary\",\"type\":\"address\"}],\"name\":\"claimAndConvertFor\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_beneficiary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_affiliateAccount\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_affiliateFee\",\"type\":\"uint256\"}],\"name\":\"claimAndConvertFor2\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"contract ISovrynSwapX\",\"name\":\"_sovrynSwapX\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_conversionId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_beneficiary\",\"type\":\"address\"}],\"name\":\"completeXConversion\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_sourceToken\",\"type\":\"address\"},{\"internalType\":\"contract IERC20Token\",\"name\":\"_targetToken\",\"type\":\"address\"}],\"name\":\"conversionPath\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"}],\"name\":\"convert\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_affiliateAccount\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_affiliateFee\",\"type\":\"uint256\"}],\"name\":\"convert2\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_beneficiary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_affiliateAccount\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_affiliateFee\",\"type\":\"uint256\"}],\"name\":\"convertByPath\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_beneficiary\",\"type\":\"address\"}],\"name\":\"convertFor\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_beneficiary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_affiliateAccount\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_affiliateFee\",\"type\":\"uint256\"}],\"name\":\"convertFor2\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"getReturnByPath\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"rateByPath\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IEtherToken\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"_register\",\"type\":\"bool\"}],\"name\":\"registerEtherToken\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_maxAffiliateFee\",\"type\":\"uint256\"}],\"name\":\"setMaxAffiliateFee\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_targetBlockchain\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"_targetAccount\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_conversionId\",\"type\":\"uint256\"}],\"name\":\"xConvert\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_targetBlockchain\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"_targetAccount\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_conversionId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_affiliateAccount\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_affiliateFee\",\"type\":\"uint256\"}],\"name\":\"xConvert2\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISovrynSwapNetwork.sol\":\"ISovrynSwapNetwork\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol\":{\"keccak256\":\"0x85f3acaf53418f63817c8b5d8e047203891bbb9c3fc9558a541a8c446857783b\",\"urls\":[\"bzz-raw://b80d05aeb3fc866a791d3de7f7a8d7c2a65dddc72ad436920e3f043414c82158\",\"dweb:/ipfs/QmVXNmZfw6pQ2xg6xJwHR5ptCxGKx9PRzX9dgQWK7KUTTE\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IEtherToken.sol\":{\"keccak256\":\"0xbbc20de544fdc89944c1a5b7b32efb878b32c7099289b1070463edb1cfba20cc\",\"urls\":[\"bzz-raw://75be51b2a24b6cad151b8bb1c8fdc1d7bfa79095d40e7de4219cf8b765e35818\",\"dweb:/ipfs/QmVGBTAct72PcdGmJpbpdD8PS7CAFKV6wpJhbxERoTTcYr\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISovrynSwapNetwork.sol\":{\"keccak256\":\"0x5d352d532912dc445fc938e502fc4532513288512a781f76cecd7e951dbc7202\",\"urls\":[\"bzz-raw://02ccba5931a1cd63e73954a48743beaa62aa157c3808cd42a77ac3a875119743\",\"dweb:/ipfs/QmVYw5zVyPWmroZdJakW4b3yLezPCmtREzKidWJXJzDsTp\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISovrynSwapX.sol\":{\"keccak256\":\"0x946afc11ce88d7009675d2300587bae469c245d97c741f0b72b427a2f08141c4\",\"urls\":[\"bzz-raw://5c7c6f81cc8bfefd518a3f4cc44fb5995ba137a10d0da94a3b7802939b63f39d\",\"dweb:/ipfs/QmWs6EbpwZH9LFpuuVJWDMHHfZ81KFqtVF8NAWSoES4x2x\"]}},\"version\":1}", + "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_smartToken\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_fromToken\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_toToken\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_fromAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_toAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_trader\",\"type\":\"address\"}],\"name\":\"Conversion\",\"type\":\"event\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"}],\"name\":\"claimAndConvert\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_affiliateAccount\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_affiliateFee\",\"type\":\"uint256\"}],\"name\":\"claimAndConvert2\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_beneficiary\",\"type\":\"address\"}],\"name\":\"claimAndConvertFor\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_beneficiary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_affiliateAccount\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_affiliateFee\",\"type\":\"uint256\"}],\"name\":\"claimAndConvertFor2\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"contract ISovrynSwapX\",\"name\":\"_sovrynSwapX\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_conversionId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_beneficiary\",\"type\":\"address\"}],\"name\":\"completeXConversion\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_sourceToken\",\"type\":\"address\"},{\"internalType\":\"contract IERC20Token\",\"name\":\"_targetToken\",\"type\":\"address\"}],\"name\":\"conversionPath\",\"outputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"\",\"type\":\"address[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"}],\"name\":\"convert\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_affiliateAccount\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_affiliateFee\",\"type\":\"uint256\"}],\"name\":\"convert2\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_beneficiary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_affiliateAccount\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_affiliateFee\",\"type\":\"uint256\"}],\"name\":\"convertByPath\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_beneficiary\",\"type\":\"address\"}],\"name\":\"convertFor\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_beneficiary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_affiliateAccount\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_affiliateFee\",\"type\":\"uint256\"}],\"name\":\"convertFor2\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"getReturnByPath\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"rateByPath\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IEtherToken\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"_register\",\"type\":\"bool\"}],\"name\":\"registerEtherToken\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_maxAffiliateFee\",\"type\":\"uint256\"}],\"name\":\"setMaxAffiliateFee\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_targetBlockchain\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"_targetAccount\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_conversionId\",\"type\":\"uint256\"}],\"name\":\"xConvert\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minReturn\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_targetBlockchain\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"_targetAccount\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_conversionId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_affiliateAccount\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_affiliateFee\",\"type\":\"uint256\"}],\"name\":\"xConvert2\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISovrynSwapNetwork.sol\":\"ISovrynSwapNetwork\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol\":{\"keccak256\":\"0x85f3acaf53418f63817c8b5d8e047203891bbb9c3fc9558a541a8c446857783b\",\"urls\":[\"bzz-raw://b80d05aeb3fc866a791d3de7f7a8d7c2a65dddc72ad436920e3f043414c82158\",\"dweb:/ipfs/QmVXNmZfw6pQ2xg6xJwHR5ptCxGKx9PRzX9dgQWK7KUTTE\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IEtherToken.sol\":{\"keccak256\":\"0xbbc20de544fdc89944c1a5b7b32efb878b32c7099289b1070463edb1cfba20cc\",\"urls\":[\"bzz-raw://75be51b2a24b6cad151b8bb1c8fdc1d7bfa79095d40e7de4219cf8b765e35818\",\"dweb:/ipfs/QmVGBTAct72PcdGmJpbpdD8PS7CAFKV6wpJhbxERoTTcYr\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISovrynSwapNetwork.sol\":{\"keccak256\":\"0xcb42bc7fe853be57177c5e9688cbd5cb3487ae4a7dcc0bda852b2c03f9f144ab\",\"urls\":[\"bzz-raw://3ab8be8b5d074caf813ac996fe5d0f825d51e22d6c7b7dbdc1ce3fced9b9a30c\",\"dweb:/ipfs/QmdpM4yJ8ZPsBCxnd4KRuubVBXUQ8xT51smgoEooSLqxnc\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISovrynSwapX.sol\":{\"keccak256\":\"0x946afc11ce88d7009675d2300587bae469c245d97c741f0b72b427a2f08141c4\",\"urls\":[\"bzz-raw://5c7c6f81cc8bfefd518a3f4cc44fb5995ba137a10d0da94a3b7802939b63f39d\",\"dweb:/ipfs/QmWs6EbpwZH9LFpuuVJWDMHHfZ81KFqtVF8NAWSoES4x2x\"]}},\"version\":1}", "bytecode": "0x", "deployedBytecode": "0x", "sourceMap": "", "deployedSourceMap": "", - "source": "pragma solidity >=0.5.0 <0.6.0;\n\nimport \"./IERC20Token.sol\";\nimport \"./IEtherToken.sol\";\nimport \"./ISovrynSwapX.sol\";\n\ninterface ISovrynSwapNetwork {\n\tevent Conversion(\n\t\taddress indexed _smartToken,\n\t\taddress indexed _fromToken,\n\t\taddress indexed _toToken,\n\t\tuint256 _fromAmount,\n\t\tuint256 _toAmount,\n\t\taddress _trader\n\t);\n\n\tfunction setMaxAffiliateFee(uint256 _maxAffiliateFee) external;\n\n\tfunction registerEtherToken(IEtherToken _token, bool _register) external;\n\n\tfunction conversionPath(IERC20Token _sourceToken, IERC20Token _targetToken) external view returns (address[] memory);\n\n\tfunction rateByPath(IERC20Token[] calldata _path, uint256 _amount) external view returns (uint256);\n\n\tfunction convertByPath(\n\t\tIERC20Token[] calldata _path,\n\t\tuint256 _amount,\n\t\tuint256 _minReturn,\n\t\taddress _beneficiary,\n\t\taddress _affiliateAccount,\n\t\tuint256 _affiliateFee\n\t) external payable returns (uint256);\n\n\tfunction xConvert(\n\t\tIERC20Token[] calldata _path,\n\t\tuint256 _amount,\n\t\tuint256 _minReturn,\n\t\tbytes32 _targetBlockchain,\n\t\tbytes32 _targetAccount,\n\t\tuint256 _conversionId\n\t) external payable returns (uint256);\n\n\tfunction xConvert2(\n\t\tIERC20Token[] calldata _path,\n\t\tuint256 _amount,\n\t\tuint256 _minReturn,\n\t\tbytes32 _targetBlockchain,\n\t\tbytes32 _targetAccount,\n\t\tuint256 _conversionId,\n\t\taddress _affiliateAccount,\n\t\tuint256 _affiliateFee\n\t) external payable returns (uint256);\n\n\tfunction completeXConversion(\n\t\tIERC20Token[] calldata _path,\n\t\tISovrynSwapX _sovrynSwapX,\n\t\tuint256 _conversionId,\n\t\tuint256 _minReturn,\n\t\taddress _beneficiary\n\t) external returns (uint256);\n\n\tfunction getReturnByPath(IERC20Token[] calldata _path, uint256 _amount) external view returns (uint256, uint256);\n\n\tfunction convert(\n\t\tIERC20Token[] calldata _path,\n\t\tuint256 _amount,\n\t\tuint256 _minReturn\n\t) external payable returns (uint256);\n\n\tfunction convert2(\n\t\tIERC20Token[] calldata _path,\n\t\tuint256 _amount,\n\t\tuint256 _minReturn,\n\t\taddress _affiliateAccount,\n\t\tuint256 _affiliateFee\n\t) external payable returns (uint256);\n\n\tfunction convertFor(\n\t\tIERC20Token[] calldata _path,\n\t\tuint256 _amount,\n\t\tuint256 _minReturn,\n\t\taddress _beneficiary\n\t) external payable returns (uint256);\n\n\tfunction convertFor2(\n\t\tIERC20Token[] calldata _path,\n\t\tuint256 _amount,\n\t\tuint256 _minReturn,\n\t\taddress _beneficiary,\n\t\taddress _affiliateAccount,\n\t\tuint256 _affiliateFee\n\t) external payable returns (uint256);\n\n\tfunction claimAndConvert(\n\t\tIERC20Token[] calldata _path,\n\t\tuint256 _amount,\n\t\tuint256 _minReturn\n\t) external returns (uint256);\n\n\tfunction claimAndConvert2(\n\t\tIERC20Token[] calldata _path,\n\t\tuint256 _amount,\n\t\tuint256 _minReturn,\n\t\taddress _affiliateAccount,\n\t\tuint256 _affiliateFee\n\t) external returns (uint256);\n\n\tfunction claimAndConvertFor(\n\t\tIERC20Token[] calldata _path,\n\t\tuint256 _amount,\n\t\tuint256 _minReturn,\n\t\taddress _beneficiary\n\t) external returns (uint256);\n\n\tfunction claimAndConvertFor2(\n\t\tIERC20Token[] calldata _path,\n\t\tuint256 _amount,\n\t\tuint256 _minReturn,\n\t\taddress _beneficiary,\n\t\taddress _affiliateAccount,\n\t\tuint256 _affiliateFee\n\t) external returns (uint256);\n}\n", - "sourcePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISovrynSwapNetwork.sol", + "source": "pragma solidity >=0.5.0 <0.6.0;\n\nimport \"./IERC20Token.sol\";\nimport \"./IEtherToken.sol\";\nimport \"./ISovrynSwapX.sol\";\n\ninterface ISovrynSwapNetwork {\n\tevent Conversion(\n\t\taddress indexed _smartToken,\n\t\taddress indexed _fromToken,\n\t\taddress indexed _toToken,\n\t\tuint256 _fromAmount,\n\t\tuint256 _toAmount,\n\t\taddress _trader\n\t);\n\n\tfunction setMaxAffiliateFee(uint256 _maxAffiliateFee) external;\n\n\tfunction registerEtherToken(IEtherToken _token, bool _register) external;\n\n\tfunction conversionPath(IERC20Token _sourceToken, IERC20Token _targetToken) external view returns (IERC20Token[] memory);\n\n\tfunction rateByPath(IERC20Token[] calldata _path, uint256 _amount) external view returns (uint256);\n\n\tfunction convertByPath(\n\t\tIERC20Token[] calldata _path,\n\t\tuint256 _amount,\n\t\tuint256 _minReturn,\n\t\taddress _beneficiary,\n\t\taddress _affiliateAccount,\n\t\tuint256 _affiliateFee\n\t) external payable returns (uint256);\n\n\tfunction xConvert(\n\t\tIERC20Token[] calldata _path,\n\t\tuint256 _amount,\n\t\tuint256 _minReturn,\n\t\tbytes32 _targetBlockchain,\n\t\tbytes32 _targetAccount,\n\t\tuint256 _conversionId\n\t) external payable returns (uint256);\n\n\tfunction xConvert2(\n\t\tIERC20Token[] calldata _path,\n\t\tuint256 _amount,\n\t\tuint256 _minReturn,\n\t\tbytes32 _targetBlockchain,\n\t\tbytes32 _targetAccount,\n\t\tuint256 _conversionId,\n\t\taddress _affiliateAccount,\n\t\tuint256 _affiliateFee\n\t) external payable returns (uint256);\n\n\tfunction completeXConversion(\n\t\tIERC20Token[] calldata _path,\n\t\tISovrynSwapX _sovrynSwapX,\n\t\tuint256 _conversionId,\n\t\tuint256 _minReturn,\n\t\taddress _beneficiary\n\t) external returns (uint256);\n\n\tfunction getReturnByPath(IERC20Token[] calldata _path, uint256 _amount) external view returns (uint256, uint256);\n\n\tfunction convert(\n\t\tIERC20Token[] calldata _path,\n\t\tuint256 _amount,\n\t\tuint256 _minReturn\n\t) external payable returns (uint256);\n\n\tfunction convert2(\n\t\tIERC20Token[] calldata _path,\n\t\tuint256 _amount,\n\t\tuint256 _minReturn,\n\t\taddress _affiliateAccount,\n\t\tuint256 _affiliateFee\n\t) external payable returns (uint256);\n\n\tfunction convertFor(\n\t\tIERC20Token[] calldata _path,\n\t\tuint256 _amount,\n\t\tuint256 _minReturn,\n\t\taddress _beneficiary\n\t) external payable returns (uint256);\n\n\tfunction convertFor2(\n\t\tIERC20Token[] calldata _path,\n\t\tuint256 _amount,\n\t\tuint256 _minReturn,\n\t\taddress _beneficiary,\n\t\taddress _affiliateAccount,\n\t\tuint256 _affiliateFee\n\t) external payable returns (uint256);\n\n\tfunction claimAndConvert(\n\t\tIERC20Token[] calldata _path,\n\t\tuint256 _amount,\n\t\tuint256 _minReturn\n\t) external returns (uint256);\n\n\tfunction claimAndConvert2(\n\t\tIERC20Token[] calldata _path,\n\t\tuint256 _amount,\n\t\tuint256 _minReturn,\n\t\taddress _affiliateAccount,\n\t\tuint256 _affiliateFee\n\t) external returns (uint256);\n\n\tfunction claimAndConvertFor(\n\t\tIERC20Token[] calldata _path,\n\t\tuint256 _amount,\n\t\tuint256 _minReturn,\n\t\taddress _beneficiary\n\t) external returns (uint256);\n\n\tfunction claimAndConvertFor2(\n\t\tIERC20Token[] calldata _path,\n\t\tuint256 _amount,\n\t\tuint256 _minReturn,\n\t\taddress _beneficiary,\n\t\taddress _affiliateAccount,\n\t\tuint256 _affiliateFee\n\t) external returns (uint256);\n}\n", + "sourcePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISovrynSwapNetwork.sol", "ast": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISovrynSwapNetwork.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISovrynSwapNetwork.sol", "exportedSymbols": { "ISovrynSwapNetwork": [ - 1968 + 2311 ] }, - "id": 1969, + "id": 2312, "nodeType": "SourceUnit", "nodes": [ { - "id": 1712, + "id": 2055, "literals": [ "solidity", ">=", @@ -689,38 +689,38 @@ ".0" ], "nodeType": "PragmaDirective", - "src": "0:31:12" + "src": "0:31:14" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol", "file": "./IERC20Token.sol", - "id": 1713, + "id": 2056, "nodeType": "ImportDirective", - "scope": 1969, - "sourceUnit": 1387, - "src": "33:27:12", + "scope": 2312, + "sourceUnit": 1571, + "src": "33:27:14", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IEtherToken.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IEtherToken.sol", "file": "./IEtherToken.sol", - "id": 1714, + "id": 2057, "nodeType": "ImportDirective", - "scope": 1969, - "sourceUnit": 1413, - "src": "61:27:12", + "scope": 2312, + "sourceUnit": 1597, + "src": "61:27:14", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISovrynSwapX.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISovrynSwapX.sol", "file": "./ISovrynSwapX.sol", - "id": 1715, + "id": 2058, "nodeType": "ImportDirective", - "scope": 1969, - "sourceUnit": 2001, - "src": "89:28:12", + "scope": 2312, + "sourceUnit": 2344, + "src": "89:28:14", "symbolAliases": [], "unitAlias": "" }, @@ -730,9 +730,9 @@ "contractKind": "interface", "documentation": null, "fullyImplemented": false, - "id": 1968, + "id": 2311, "linearizedBaseContracts": [ - 1968 + 2311 ], "name": "ISovrynSwapNetwork", "nodeType": "ContractDefinition", @@ -740,21 +740,21 @@ { "anonymous": false, "documentation": null, - "id": 1729, + "id": 2072, "name": "Conversion", "nodeType": "EventDefinition", "parameters": { - "id": 1728, + "id": 2071, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1717, + "id": 2060, "indexed": true, "name": "_smartToken", "nodeType": "VariableDeclaration", - "scope": 1729, - "src": "171:27:12", + "scope": 2072, + "src": "171:27:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -762,10 +762,10 @@ "typeString": "address" }, "typeName": { - "id": 1716, + "id": 2059, "name": "address", "nodeType": "ElementaryTypeName", - "src": "171:7:12", + "src": "171:7:14", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -777,12 +777,12 @@ }, { "constant": false, - "id": 1719, + "id": 2062, "indexed": true, "name": "_fromToken", "nodeType": "VariableDeclaration", - "scope": 1729, - "src": "202:26:12", + "scope": 2072, + "src": "202:26:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -790,10 +790,10 @@ "typeString": "address" }, "typeName": { - "id": 1718, + "id": 2061, "name": "address", "nodeType": "ElementaryTypeName", - "src": "202:7:12", + "src": "202:7:14", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -805,12 +805,12 @@ }, { "constant": false, - "id": 1721, + "id": 2064, "indexed": true, "name": "_toToken", "nodeType": "VariableDeclaration", - "scope": 1729, - "src": "232:24:12", + "scope": 2072, + "src": "232:24:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -818,10 +818,10 @@ "typeString": "address" }, "typeName": { - "id": 1720, + "id": 2063, "name": "address", "nodeType": "ElementaryTypeName", - "src": "232:7:12", + "src": "232:7:14", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -833,12 +833,12 @@ }, { "constant": false, - "id": 1723, + "id": 2066, "indexed": false, "name": "_fromAmount", "nodeType": "VariableDeclaration", - "scope": 1729, - "src": "260:19:12", + "scope": 2072, + "src": "260:19:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -846,10 +846,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1722, + "id": 2065, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "260:7:12", + "src": "260:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -860,12 +860,12 @@ }, { "constant": false, - "id": 1725, + "id": 2068, "indexed": false, "name": "_toAmount", "nodeType": "VariableDeclaration", - "scope": 1729, - "src": "283:17:12", + "scope": 2072, + "src": "283:17:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -873,10 +873,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1724, + "id": 2067, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "283:7:12", + "src": "283:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -887,12 +887,12 @@ }, { "constant": false, - "id": 1727, + "id": 2070, "indexed": false, "name": "_trader", "nodeType": "VariableDeclaration", - "scope": 1729, - "src": "304:15:12", + "scope": 2072, + "src": "304:15:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -900,10 +900,10 @@ "typeString": "address" }, "typeName": { - "id": 1726, + "id": 2069, "name": "address", "nodeType": "ElementaryTypeName", - "src": "304:7:12", + "src": "304:7:14", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -914,30 +914,30 @@ "visibility": "internal" } ], - "src": "167:155:12" + "src": "167:155:14" }, - "src": "151:172:12" + "src": "151:172:14" }, { "body": null, "documentation": null, - "id": 1734, + "id": 2077, "implemented": false, "kind": "function", "modifiers": [], "name": "setMaxAffiliateFee", "nodeType": "FunctionDefinition", "parameters": { - "id": 1732, + "id": 2075, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1731, + "id": 2074, "name": "_maxAffiliateFee", "nodeType": "VariableDeclaration", - "scope": 1734, - "src": "354:24:12", + "scope": 2077, + "src": "354:24:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -945,10 +945,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1730, + "id": 2073, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "354:7:12", + "src": "354:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -958,16 +958,16 @@ "visibility": "internal" } ], - "src": "353:26:12" + "src": "353:26:14" }, "returnParameters": { - "id": 1733, + "id": 2076, "nodeType": "ParameterList", "parameters": [], - "src": "388:0:12" + "src": "388:0:14" }, - "scope": 1968, - "src": "326:63:12", + "scope": 2311, + "src": "326:63:14", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" @@ -975,38 +975,38 @@ { "body": null, "documentation": null, - "id": 1741, + "id": 2084, "implemented": false, "kind": "function", "modifiers": [], "name": "registerEtherToken", "nodeType": "FunctionDefinition", "parameters": { - "id": 1739, + "id": 2082, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1736, + "id": 2079, "name": "_token", "nodeType": "VariableDeclaration", - "scope": 1741, - "src": "420:18:12", + "scope": 2084, + "src": "420:18:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IEtherToken_$1412", + "typeIdentifier": "t_contract$_IEtherToken_$1596", "typeString": "contract IEtherToken" }, "typeName": { "contractScope": null, - "id": 1735, + "id": 2078, "name": "IEtherToken", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1412, - "src": "420:11:12", + "referencedDeclaration": 1596, + "src": "420:11:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_IEtherToken_$1412", + "typeIdentifier": "t_contract$_IEtherToken_$1596", "typeString": "contract IEtherToken" } }, @@ -1015,11 +1015,11 @@ }, { "constant": false, - "id": 1738, + "id": 2081, "name": "_register", "nodeType": "VariableDeclaration", - "scope": 1741, - "src": "440:14:12", + "scope": 2084, + "src": "440:14:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1027,10 +1027,10 @@ "typeString": "bool" }, "typeName": { - "id": 1737, + "id": 2080, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "440:4:12", + "src": "440:4:14", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1040,16 +1040,16 @@ "visibility": "internal" } ], - "src": "419:36:12" + "src": "419:36:14" }, "returnParameters": { - "id": 1740, + "id": 2083, "nodeType": "ParameterList", "parameters": [], - "src": "464:0:12" + "src": "464:0:14" }, - "scope": 1968, - "src": "392:73:12", + "scope": 2311, + "src": "392:73:14", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" @@ -1057,38 +1057,38 @@ { "body": null, "documentation": null, - "id": 1751, + "id": 2094, "implemented": false, "kind": "function", "modifiers": [], "name": "conversionPath", "nodeType": "FunctionDefinition", "parameters": { - "id": 1746, + "id": 2089, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1743, + "id": 2086, "name": "_sourceToken", "nodeType": "VariableDeclaration", - "scope": 1751, - "src": "492:24:12", + "scope": 2094, + "src": "492:24:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1570", "typeString": "contract IERC20Token" }, "typeName": { "contractScope": null, - "id": 1742, + "id": 2085, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "492:11:12", + "referencedDeclaration": 1570, + "src": "492:11:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1570", "typeString": "contract IERC20Token" } }, @@ -1097,26 +1097,26 @@ }, { "constant": false, - "id": 1745, + "id": 2088, "name": "_targetToken", "nodeType": "VariableDeclaration", - "scope": 1751, - "src": "518:24:12", + "scope": 2094, + "src": "518:24:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1570", "typeString": "contract IERC20Token" }, "typeName": { "contractScope": null, - "id": 1744, + "id": 2087, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "518:11:12", + "referencedDeclaration": 1570, + "src": "518:11:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1570", "typeString": "contract IERC20Token" } }, @@ -1124,54 +1124,55 @@ "visibility": "internal" } ], - "src": "491:52:12" + "src": "491:52:14" }, "returnParameters": { - "id": 1750, + "id": 2093, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1749, + "id": 2092, "name": "", "nodeType": "VariableDeclaration", - "scope": 1751, - "src": "567:16:12", + "scope": 2094, + "src": "567:20:14", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", - "typeString": "address[]" + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_memory_ptr", + "typeString": "contract IERC20Token[]" }, "typeName": { "baseType": { - "id": 1747, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "567:7:12", - "stateMutability": "nonpayable", + "contractScope": null, + "id": 2090, + "name": "IERC20Token", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1570, + "src": "567:11:14", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_contract$_IERC20Token_$1570", + "typeString": "contract IERC20Token" } }, - "id": 1748, + "id": 2091, "length": null, "nodeType": "ArrayTypeName", - "src": "567:9:12", + "src": "567:13:14", "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_storage_ptr", + "typeString": "contract IERC20Token[]" } }, "value": null, "visibility": "internal" } ], - "src": "566:18:12" + "src": "566:22:14" }, - "scope": 1968, - "src": "468:117:12", + "scope": 2311, + "src": "468:121:14", "stateMutability": "view", "superFunction": null, "visibility": "external" @@ -1179,48 +1180,48 @@ { "body": null, "documentation": null, - "id": 1761, + "id": 2104, "implemented": false, "kind": "function", "modifiers": [], "name": "rateByPath", "nodeType": "FunctionDefinition", "parameters": { - "id": 1757, + "id": 2100, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1754, + "id": 2097, "name": "_path", "nodeType": "VariableDeclaration", - "scope": 1761, - "src": "608:28:12", + "scope": 2104, + "src": "612:28:14", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_calldata_ptr", "typeString": "contract IERC20Token[]" }, "typeName": { "baseType": { "contractScope": null, - "id": 1752, + "id": 2095, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "608:11:12", + "referencedDeclaration": 1570, + "src": "612:11:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1570", "typeString": "contract IERC20Token" } }, - "id": 1753, + "id": 2096, "length": null, "nodeType": "ArrayTypeName", - "src": "608:13:12", + "src": "612:13:14", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_storage_ptr", "typeString": "contract IERC20Token[]" } }, @@ -1229,11 +1230,11 @@ }, { "constant": false, - "id": 1756, + "id": 2099, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1761, - "src": "638:15:12", + "scope": 2104, + "src": "642:15:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1241,10 +1242,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1755, + "id": 2098, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "638:7:12", + "src": "642:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1254,19 +1255,19 @@ "visibility": "internal" } ], - "src": "607:47:12" + "src": "611:47:14" }, "returnParameters": { - "id": 1760, + "id": 2103, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1759, + "id": 2102, "name": "", "nodeType": "VariableDeclaration", - "scope": 1761, - "src": "678:7:12", + "scope": 2104, + "src": "682:7:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1274,10 +1275,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1758, + "id": 2101, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "678:7:12", + "src": "682:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1287,10 +1288,10 @@ "visibility": "internal" } ], - "src": "677:9:12" + "src": "681:9:14" }, - "scope": 1968, - "src": "588:99:12", + "scope": 2311, + "src": "592:99:14", "stateMutability": "view", "superFunction": null, "visibility": "external" @@ -1298,48 +1299,48 @@ { "body": null, "documentation": null, - "id": 1779, + "id": 2122, "implemented": false, "kind": "function", "modifiers": [], "name": "convertByPath", "nodeType": "FunctionDefinition", "parameters": { - "id": 1775, + "id": 2118, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1764, + "id": 2107, "name": "_path", "nodeType": "VariableDeclaration", - "scope": 1779, - "src": "716:28:12", + "scope": 2122, + "src": "720:28:14", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_calldata_ptr", "typeString": "contract IERC20Token[]" }, "typeName": { "baseType": { "contractScope": null, - "id": 1762, + "id": 2105, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "716:11:12", + "referencedDeclaration": 1570, + "src": "720:11:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1570", "typeString": "contract IERC20Token" } }, - "id": 1763, + "id": 2106, "length": null, "nodeType": "ArrayTypeName", - "src": "716:13:12", + "src": "720:13:14", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_storage_ptr", "typeString": "contract IERC20Token[]" } }, @@ -1348,11 +1349,11 @@ }, { "constant": false, - "id": 1766, + "id": 2109, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1779, - "src": "748:15:12", + "scope": 2122, + "src": "752:15:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1360,10 +1361,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1765, + "id": 2108, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "748:7:12", + "src": "752:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1374,11 +1375,11 @@ }, { "constant": false, - "id": 1768, + "id": 2111, "name": "_minReturn", "nodeType": "VariableDeclaration", - "scope": 1779, - "src": "767:18:12", + "scope": 2122, + "src": "771:18:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1386,10 +1387,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1767, + "id": 2110, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "767:7:12", + "src": "771:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1400,11 +1401,11 @@ }, { "constant": false, - "id": 1770, + "id": 2113, "name": "_beneficiary", "nodeType": "VariableDeclaration", - "scope": 1779, - "src": "789:20:12", + "scope": 2122, + "src": "793:20:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1412,10 +1413,10 @@ "typeString": "address" }, "typeName": { - "id": 1769, + "id": 2112, "name": "address", "nodeType": "ElementaryTypeName", - "src": "789:7:12", + "src": "793:7:14", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1427,11 +1428,11 @@ }, { "constant": false, - "id": 1772, + "id": 2115, "name": "_affiliateAccount", "nodeType": "VariableDeclaration", - "scope": 1779, - "src": "813:25:12", + "scope": 2122, + "src": "817:25:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1439,10 +1440,10 @@ "typeString": "address" }, "typeName": { - "id": 1771, + "id": 2114, "name": "address", "nodeType": "ElementaryTypeName", - "src": "813:7:12", + "src": "817:7:14", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1454,11 +1455,11 @@ }, { "constant": false, - "id": 1774, + "id": 2117, "name": "_affiliateFee", "nodeType": "VariableDeclaration", - "scope": 1779, - "src": "842:21:12", + "scope": 2122, + "src": "846:21:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1466,10 +1467,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1773, + "id": 2116, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "842:7:12", + "src": "846:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1479,19 +1480,19 @@ "visibility": "internal" } ], - "src": "712:154:12" + "src": "716:154:14" }, "returnParameters": { - "id": 1778, + "id": 2121, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1777, + "id": 2120, "name": "", "nodeType": "VariableDeclaration", - "scope": 1779, - "src": "893:7:12", + "scope": 2122, + "src": "897:7:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1499,10 +1500,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1776, + "id": 2119, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "893:7:12", + "src": "897:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1512,10 +1513,10 @@ "visibility": "internal" } ], - "src": "892:9:12" + "src": "896:9:14" }, - "scope": 1968, - "src": "690:212:12", + "scope": 2311, + "src": "694:212:14", "stateMutability": "payable", "superFunction": null, "visibility": "external" @@ -1523,48 +1524,48 @@ { "body": null, "documentation": null, - "id": 1797, + "id": 2140, "implemented": false, "kind": "function", "modifiers": [], "name": "xConvert", "nodeType": "FunctionDefinition", "parameters": { - "id": 1793, + "id": 2136, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1782, + "id": 2125, "name": "_path", "nodeType": "VariableDeclaration", - "scope": 1797, - "src": "926:28:12", + "scope": 2140, + "src": "930:28:14", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_calldata_ptr", "typeString": "contract IERC20Token[]" }, "typeName": { "baseType": { "contractScope": null, - "id": 1780, + "id": 2123, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "926:11:12", + "referencedDeclaration": 1570, + "src": "930:11:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1570", "typeString": "contract IERC20Token" } }, - "id": 1781, + "id": 2124, "length": null, "nodeType": "ArrayTypeName", - "src": "926:13:12", + "src": "930:13:14", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_storage_ptr", "typeString": "contract IERC20Token[]" } }, @@ -1573,11 +1574,11 @@ }, { "constant": false, - "id": 1784, + "id": 2127, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1797, - "src": "958:15:12", + "scope": 2140, + "src": "962:15:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1585,10 +1586,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1783, + "id": 2126, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "958:7:12", + "src": "962:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1599,11 +1600,11 @@ }, { "constant": false, - "id": 1786, + "id": 2129, "name": "_minReturn", "nodeType": "VariableDeclaration", - "scope": 1797, - "src": "977:18:12", + "scope": 2140, + "src": "981:18:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1611,10 +1612,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1785, + "id": 2128, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "977:7:12", + "src": "981:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1625,11 +1626,11 @@ }, { "constant": false, - "id": 1788, + "id": 2131, "name": "_targetBlockchain", "nodeType": "VariableDeclaration", - "scope": 1797, - "src": "999:25:12", + "scope": 2140, + "src": "1003:25:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1637,10 +1638,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1787, + "id": 2130, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "999:7:12", + "src": "1003:7:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1651,11 +1652,11 @@ }, { "constant": false, - "id": 1790, + "id": 2133, "name": "_targetAccount", "nodeType": "VariableDeclaration", - "scope": 1797, - "src": "1028:22:12", + "scope": 2140, + "src": "1032:22:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1663,10 +1664,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1789, + "id": 2132, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1028:7:12", + "src": "1032:7:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1677,11 +1678,11 @@ }, { "constant": false, - "id": 1792, + "id": 2135, "name": "_conversionId", "nodeType": "VariableDeclaration", - "scope": 1797, - "src": "1054:21:12", + "scope": 2140, + "src": "1058:21:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1689,10 +1690,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1791, + "id": 2134, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1054:7:12", + "src": "1058:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1702,19 +1703,19 @@ "visibility": "internal" } ], - "src": "922:156:12" + "src": "926:156:14" }, "returnParameters": { - "id": 1796, + "id": 2139, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1795, + "id": 2138, "name": "", "nodeType": "VariableDeclaration", - "scope": 1797, - "src": "1105:7:12", + "scope": 2140, + "src": "1109:7:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1722,10 +1723,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1794, + "id": 2137, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1105:7:12", + "src": "1109:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1735,10 +1736,10 @@ "visibility": "internal" } ], - "src": "1104:9:12" + "src": "1108:9:14" }, - "scope": 1968, - "src": "905:209:12", + "scope": 2311, + "src": "909:209:14", "stateMutability": "payable", "superFunction": null, "visibility": "external" @@ -1746,48 +1747,48 @@ { "body": null, "documentation": null, - "id": 1819, + "id": 2162, "implemented": false, "kind": "function", "modifiers": [], "name": "xConvert2", "nodeType": "FunctionDefinition", "parameters": { - "id": 1815, + "id": 2158, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1800, + "id": 2143, "name": "_path", "nodeType": "VariableDeclaration", - "scope": 1819, - "src": "1139:28:12", + "scope": 2162, + "src": "1143:28:14", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_calldata_ptr", "typeString": "contract IERC20Token[]" }, "typeName": { "baseType": { "contractScope": null, - "id": 1798, + "id": 2141, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "1139:11:12", + "referencedDeclaration": 1570, + "src": "1143:11:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1570", "typeString": "contract IERC20Token" } }, - "id": 1799, + "id": 2142, "length": null, "nodeType": "ArrayTypeName", - "src": "1139:13:12", + "src": "1143:13:14", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_storage_ptr", "typeString": "contract IERC20Token[]" } }, @@ -1796,11 +1797,11 @@ }, { "constant": false, - "id": 1802, + "id": 2145, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1819, - "src": "1171:15:12", + "scope": 2162, + "src": "1175:15:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1808,10 +1809,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1801, + "id": 2144, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1171:7:12", + "src": "1175:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1822,11 +1823,11 @@ }, { "constant": false, - "id": 1804, + "id": 2147, "name": "_minReturn", "nodeType": "VariableDeclaration", - "scope": 1819, - "src": "1190:18:12", + "scope": 2162, + "src": "1194:18:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1834,10 +1835,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1803, + "id": 2146, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1190:7:12", + "src": "1194:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1848,11 +1849,11 @@ }, { "constant": false, - "id": 1806, + "id": 2149, "name": "_targetBlockchain", "nodeType": "VariableDeclaration", - "scope": 1819, - "src": "1212:25:12", + "scope": 2162, + "src": "1216:25:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1860,10 +1861,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1805, + "id": 2148, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1212:7:12", + "src": "1216:7:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1874,11 +1875,11 @@ }, { "constant": false, - "id": 1808, + "id": 2151, "name": "_targetAccount", "nodeType": "VariableDeclaration", - "scope": 1819, - "src": "1241:22:12", + "scope": 2162, + "src": "1245:22:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1886,10 +1887,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1807, + "id": 2150, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1241:7:12", + "src": "1245:7:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1900,11 +1901,11 @@ }, { "constant": false, - "id": 1810, + "id": 2153, "name": "_conversionId", "nodeType": "VariableDeclaration", - "scope": 1819, - "src": "1267:21:12", + "scope": 2162, + "src": "1271:21:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1912,10 +1913,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1809, + "id": 2152, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1267:7:12", + "src": "1271:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1926,11 +1927,11 @@ }, { "constant": false, - "id": 1812, + "id": 2155, "name": "_affiliateAccount", "nodeType": "VariableDeclaration", - "scope": 1819, - "src": "1292:25:12", + "scope": 2162, + "src": "1296:25:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1938,10 +1939,10 @@ "typeString": "address" }, "typeName": { - "id": 1811, + "id": 2154, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1292:7:12", + "src": "1296:7:14", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1953,11 +1954,11 @@ }, { "constant": false, - "id": 1814, + "id": 2157, "name": "_affiliateFee", "nodeType": "VariableDeclaration", - "scope": 1819, - "src": "1321:21:12", + "scope": 2162, + "src": "1325:21:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1965,10 +1966,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1813, + "id": 2156, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1321:7:12", + "src": "1325:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1978,19 +1979,19 @@ "visibility": "internal" } ], - "src": "1135:210:12" + "src": "1139:210:14" }, "returnParameters": { - "id": 1818, + "id": 2161, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1817, + "id": 2160, "name": "", "nodeType": "VariableDeclaration", - "scope": 1819, - "src": "1372:7:12", + "scope": 2162, + "src": "1376:7:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1998,10 +1999,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1816, + "id": 2159, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1372:7:12", + "src": "1376:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2011,10 +2012,10 @@ "visibility": "internal" } ], - "src": "1371:9:12" + "src": "1375:9:14" }, - "scope": 1968, - "src": "1117:264:12", + "scope": 2311, + "src": "1121:264:14", "stateMutability": "payable", "superFunction": null, "visibility": "external" @@ -2022,48 +2023,48 @@ { "body": null, "documentation": null, - "id": 1835, + "id": 2178, "implemented": false, "kind": "function", "modifiers": [], "name": "completeXConversion", "nodeType": "FunctionDefinition", "parameters": { - "id": 1831, + "id": 2174, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1822, + "id": 2165, "name": "_path", "nodeType": "VariableDeclaration", - "scope": 1835, - "src": "1416:28:12", + "scope": 2178, + "src": "1420:28:14", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_calldata_ptr", "typeString": "contract IERC20Token[]" }, "typeName": { "baseType": { "contractScope": null, - "id": 1820, + "id": 2163, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "1416:11:12", + "referencedDeclaration": 1570, + "src": "1420:11:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1570", "typeString": "contract IERC20Token" } }, - "id": 1821, + "id": 2164, "length": null, "nodeType": "ArrayTypeName", - "src": "1416:13:12", + "src": "1420:13:14", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_storage_ptr", "typeString": "contract IERC20Token[]" } }, @@ -2072,26 +2073,26 @@ }, { "constant": false, - "id": 1824, + "id": 2167, "name": "_sovrynSwapX", "nodeType": "VariableDeclaration", - "scope": 1835, - "src": "1448:25:12", + "scope": 2178, + "src": "1452:25:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_ISovrynSwapX_$2000", + "typeIdentifier": "t_contract$_ISovrynSwapX_$2343", "typeString": "contract ISovrynSwapX" }, "typeName": { "contractScope": null, - "id": 1823, + "id": 2166, "name": "ISovrynSwapX", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2000, - "src": "1448:12:12", + "referencedDeclaration": 2343, + "src": "1452:12:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_ISovrynSwapX_$2000", + "typeIdentifier": "t_contract$_ISovrynSwapX_$2343", "typeString": "contract ISovrynSwapX" } }, @@ -2100,11 +2101,11 @@ }, { "constant": false, - "id": 1826, + "id": 2169, "name": "_conversionId", "nodeType": "VariableDeclaration", - "scope": 1835, - "src": "1477:21:12", + "scope": 2178, + "src": "1481:21:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2112,10 +2113,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1825, + "id": 2168, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1477:7:12", + "src": "1481:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2126,11 +2127,11 @@ }, { "constant": false, - "id": 1828, + "id": 2171, "name": "_minReturn", "nodeType": "VariableDeclaration", - "scope": 1835, - "src": "1502:18:12", + "scope": 2178, + "src": "1506:18:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2138,10 +2139,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1827, + "id": 2170, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1502:7:12", + "src": "1506:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2152,11 +2153,11 @@ }, { "constant": false, - "id": 1830, + "id": 2173, "name": "_beneficiary", "nodeType": "VariableDeclaration", - "scope": 1835, - "src": "1524:20:12", + "scope": 2178, + "src": "1528:20:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2164,10 +2165,10 @@ "typeString": "address" }, "typeName": { - "id": 1829, + "id": 2172, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1524:7:12", + "src": "1528:7:14", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2178,19 +2179,19 @@ "visibility": "internal" } ], - "src": "1412:135:12" + "src": "1416:135:14" }, "returnParameters": { - "id": 1834, + "id": 2177, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1833, + "id": 2176, "name": "", "nodeType": "VariableDeclaration", - "scope": 1835, - "src": "1566:7:12", + "scope": 2178, + "src": "1570:7:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2198,10 +2199,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1832, + "id": 2175, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1566:7:12", + "src": "1570:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2211,10 +2212,10 @@ "visibility": "internal" } ], - "src": "1565:9:12" + "src": "1569:9:14" }, - "scope": 1968, - "src": "1384:191:12", + "scope": 2311, + "src": "1388:191:14", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" @@ -2222,48 +2223,48 @@ { "body": null, "documentation": null, - "id": 1847, + "id": 2190, "implemented": false, "kind": "function", "modifiers": [], "name": "getReturnByPath", "nodeType": "FunctionDefinition", "parameters": { - "id": 1841, + "id": 2184, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1838, + "id": 2181, "name": "_path", "nodeType": "VariableDeclaration", - "scope": 1847, - "src": "1603:28:12", + "scope": 2190, + "src": "1607:28:14", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_calldata_ptr", "typeString": "contract IERC20Token[]" }, "typeName": { "baseType": { "contractScope": null, - "id": 1836, + "id": 2179, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "1603:11:12", + "referencedDeclaration": 1570, + "src": "1607:11:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1570", "typeString": "contract IERC20Token" } }, - "id": 1837, + "id": 2180, "length": null, "nodeType": "ArrayTypeName", - "src": "1603:13:12", + "src": "1607:13:14", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_storage_ptr", "typeString": "contract IERC20Token[]" } }, @@ -2272,11 +2273,11 @@ }, { "constant": false, - "id": 1840, + "id": 2183, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1847, - "src": "1633:15:12", + "scope": 2190, + "src": "1637:15:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2284,10 +2285,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1839, + "id": 2182, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1633:7:12", + "src": "1637:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2297,19 +2298,19 @@ "visibility": "internal" } ], - "src": "1602:47:12" + "src": "1606:47:14" }, "returnParameters": { - "id": 1846, + "id": 2189, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1843, + "id": 2186, "name": "", "nodeType": "VariableDeclaration", - "scope": 1847, - "src": "1673:7:12", + "scope": 2190, + "src": "1677:7:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2317,10 +2318,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1842, + "id": 2185, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1673:7:12", + "src": "1677:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2331,11 +2332,11 @@ }, { "constant": false, - "id": 1845, + "id": 2188, "name": "", "nodeType": "VariableDeclaration", - "scope": 1847, - "src": "1682:7:12", + "scope": 2190, + "src": "1686:7:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2343,10 +2344,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1844, + "id": 2187, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1682:7:12", + "src": "1686:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2356,10 +2357,10 @@ "visibility": "internal" } ], - "src": "1672:18:12" + "src": "1676:18:14" }, - "scope": 1968, - "src": "1578:113:12", + "scope": 2311, + "src": "1582:113:14", "stateMutability": "view", "superFunction": null, "visibility": "external" @@ -2367,48 +2368,48 @@ { "body": null, "documentation": null, - "id": 1859, + "id": 2202, "implemented": false, "kind": "function", "modifiers": [], "name": "convert", "nodeType": "FunctionDefinition", "parameters": { - "id": 1855, + "id": 2198, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1850, + "id": 2193, "name": "_path", "nodeType": "VariableDeclaration", - "scope": 1859, - "src": "1714:28:12", + "scope": 2202, + "src": "1718:28:14", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_calldata_ptr", "typeString": "contract IERC20Token[]" }, "typeName": { "baseType": { "contractScope": null, - "id": 1848, + "id": 2191, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "1714:11:12", + "referencedDeclaration": 1570, + "src": "1718:11:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1570", "typeString": "contract IERC20Token" } }, - "id": 1849, + "id": 2192, "length": null, "nodeType": "ArrayTypeName", - "src": "1714:13:12", + "src": "1718:13:14", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_storage_ptr", "typeString": "contract IERC20Token[]" } }, @@ -2417,11 +2418,11 @@ }, { "constant": false, - "id": 1852, + "id": 2195, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1859, - "src": "1746:15:12", + "scope": 2202, + "src": "1750:15:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2429,10 +2430,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1851, + "id": 2194, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1746:7:12", + "src": "1750:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2443,11 +2444,11 @@ }, { "constant": false, - "id": 1854, + "id": 2197, "name": "_minReturn", "nodeType": "VariableDeclaration", - "scope": 1859, - "src": "1765:18:12", + "scope": 2202, + "src": "1769:18:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2455,10 +2456,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1853, + "id": 2196, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1765:7:12", + "src": "1769:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2468,19 +2469,19 @@ "visibility": "internal" } ], - "src": "1710:76:12" + "src": "1714:76:14" }, "returnParameters": { - "id": 1858, + "id": 2201, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1857, + "id": 2200, "name": "", "nodeType": "VariableDeclaration", - "scope": 1859, - "src": "1813:7:12", + "scope": 2202, + "src": "1817:7:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2488,10 +2489,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1856, + "id": 2199, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1813:7:12", + "src": "1817:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2501,10 +2502,10 @@ "visibility": "internal" } ], - "src": "1812:9:12" + "src": "1816:9:14" }, - "scope": 1968, - "src": "1694:128:12", + "scope": 2311, + "src": "1698:128:14", "stateMutability": "payable", "superFunction": null, "visibility": "external" @@ -2512,48 +2513,48 @@ { "body": null, "documentation": null, - "id": 1875, + "id": 2218, "implemented": false, "kind": "function", "modifiers": [], "name": "convert2", "nodeType": "FunctionDefinition", "parameters": { - "id": 1871, + "id": 2214, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1862, + "id": 2205, "name": "_path", "nodeType": "VariableDeclaration", - "scope": 1875, - "src": "1846:28:12", + "scope": 2218, + "src": "1850:28:14", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_calldata_ptr", "typeString": "contract IERC20Token[]" }, "typeName": { "baseType": { "contractScope": null, - "id": 1860, + "id": 2203, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "1846:11:12", + "referencedDeclaration": 1570, + "src": "1850:11:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1570", "typeString": "contract IERC20Token" } }, - "id": 1861, + "id": 2204, "length": null, "nodeType": "ArrayTypeName", - "src": "1846:13:12", + "src": "1850:13:14", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_storage_ptr", "typeString": "contract IERC20Token[]" } }, @@ -2562,11 +2563,11 @@ }, { "constant": false, - "id": 1864, + "id": 2207, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1875, - "src": "1878:15:12", + "scope": 2218, + "src": "1882:15:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2574,10 +2575,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1863, + "id": 2206, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1878:7:12", + "src": "1882:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2588,11 +2589,11 @@ }, { "constant": false, - "id": 1866, + "id": 2209, "name": "_minReturn", "nodeType": "VariableDeclaration", - "scope": 1875, - "src": "1897:18:12", + "scope": 2218, + "src": "1901:18:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2600,10 +2601,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1865, + "id": 2208, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1897:7:12", + "src": "1901:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2614,11 +2615,11 @@ }, { "constant": false, - "id": 1868, + "id": 2211, "name": "_affiliateAccount", "nodeType": "VariableDeclaration", - "scope": 1875, - "src": "1919:25:12", + "scope": 2218, + "src": "1923:25:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2626,10 +2627,10 @@ "typeString": "address" }, "typeName": { - "id": 1867, + "id": 2210, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1919:7:12", + "src": "1923:7:14", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2641,11 +2642,11 @@ }, { "constant": false, - "id": 1870, + "id": 2213, "name": "_affiliateFee", "nodeType": "VariableDeclaration", - "scope": 1875, - "src": "1948:21:12", + "scope": 2218, + "src": "1952:21:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2653,10 +2654,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1869, + "id": 2212, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1948:7:12", + "src": "1952:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2666,19 +2667,19 @@ "visibility": "internal" } ], - "src": "1842:130:12" + "src": "1846:130:14" }, "returnParameters": { - "id": 1874, + "id": 2217, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1873, + "id": 2216, "name": "", "nodeType": "VariableDeclaration", - "scope": 1875, - "src": "1999:7:12", + "scope": 2218, + "src": "2003:7:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2686,10 +2687,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1872, + "id": 2215, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1999:7:12", + "src": "2003:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2699,10 +2700,10 @@ "visibility": "internal" } ], - "src": "1998:9:12" + "src": "2002:9:14" }, - "scope": 1968, - "src": "1825:183:12", + "scope": 2311, + "src": "1829:183:14", "stateMutability": "payable", "superFunction": null, "visibility": "external" @@ -2710,48 +2711,48 @@ { "body": null, "documentation": null, - "id": 1889, + "id": 2232, "implemented": false, "kind": "function", "modifiers": [], "name": "convertFor", "nodeType": "FunctionDefinition", "parameters": { - "id": 1885, + "id": 2228, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1878, + "id": 2221, "name": "_path", "nodeType": "VariableDeclaration", - "scope": 1889, - "src": "2034:28:12", + "scope": 2232, + "src": "2038:28:14", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_calldata_ptr", "typeString": "contract IERC20Token[]" }, "typeName": { "baseType": { "contractScope": null, - "id": 1876, + "id": 2219, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "2034:11:12", + "referencedDeclaration": 1570, + "src": "2038:11:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1570", "typeString": "contract IERC20Token" } }, - "id": 1877, + "id": 2220, "length": null, "nodeType": "ArrayTypeName", - "src": "2034:13:12", + "src": "2038:13:14", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_storage_ptr", "typeString": "contract IERC20Token[]" } }, @@ -2760,11 +2761,11 @@ }, { "constant": false, - "id": 1880, + "id": 2223, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1889, - "src": "2066:15:12", + "scope": 2232, + "src": "2070:15:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2772,10 +2773,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1879, + "id": 2222, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2066:7:12", + "src": "2070:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2786,11 +2787,11 @@ }, { "constant": false, - "id": 1882, + "id": 2225, "name": "_minReturn", "nodeType": "VariableDeclaration", - "scope": 1889, - "src": "2085:18:12", + "scope": 2232, + "src": "2089:18:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2798,10 +2799,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1881, + "id": 2224, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2085:7:12", + "src": "2089:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2812,11 +2813,11 @@ }, { "constant": false, - "id": 1884, + "id": 2227, "name": "_beneficiary", "nodeType": "VariableDeclaration", - "scope": 1889, - "src": "2107:20:12", + "scope": 2232, + "src": "2111:20:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2824,10 +2825,10 @@ "typeString": "address" }, "typeName": { - "id": 1883, + "id": 2226, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2107:7:12", + "src": "2111:7:14", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2838,19 +2839,19 @@ "visibility": "internal" } ], - "src": "2030:100:12" + "src": "2034:100:14" }, "returnParameters": { - "id": 1888, + "id": 2231, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1887, + "id": 2230, "name": "", "nodeType": "VariableDeclaration", - "scope": 1889, - "src": "2157:7:12", + "scope": 2232, + "src": "2161:7:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2858,10 +2859,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1886, + "id": 2229, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2157:7:12", + "src": "2161:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2871,10 +2872,10 @@ "visibility": "internal" } ], - "src": "2156:9:12" + "src": "2160:9:14" }, - "scope": 1968, - "src": "2011:155:12", + "scope": 2311, + "src": "2015:155:14", "stateMutability": "payable", "superFunction": null, "visibility": "external" @@ -2882,48 +2883,48 @@ { "body": null, "documentation": null, - "id": 1907, + "id": 2250, "implemented": false, "kind": "function", "modifiers": [], "name": "convertFor2", "nodeType": "FunctionDefinition", "parameters": { - "id": 1903, + "id": 2246, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1892, + "id": 2235, "name": "_path", "nodeType": "VariableDeclaration", - "scope": 1907, - "src": "2193:28:12", + "scope": 2250, + "src": "2197:28:14", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_calldata_ptr", "typeString": "contract IERC20Token[]" }, "typeName": { "baseType": { "contractScope": null, - "id": 1890, + "id": 2233, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "2193:11:12", + "referencedDeclaration": 1570, + "src": "2197:11:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1570", "typeString": "contract IERC20Token" } }, - "id": 1891, + "id": 2234, "length": null, "nodeType": "ArrayTypeName", - "src": "2193:13:12", + "src": "2197:13:14", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_storage_ptr", "typeString": "contract IERC20Token[]" } }, @@ -2932,11 +2933,11 @@ }, { "constant": false, - "id": 1894, + "id": 2237, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1907, - "src": "2225:15:12", + "scope": 2250, + "src": "2229:15:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2944,10 +2945,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1893, + "id": 2236, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2225:7:12", + "src": "2229:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2958,11 +2959,11 @@ }, { "constant": false, - "id": 1896, + "id": 2239, "name": "_minReturn", "nodeType": "VariableDeclaration", - "scope": 1907, - "src": "2244:18:12", + "scope": 2250, + "src": "2248:18:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2970,10 +2971,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1895, + "id": 2238, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2244:7:12", + "src": "2248:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2984,11 +2985,11 @@ }, { "constant": false, - "id": 1898, + "id": 2241, "name": "_beneficiary", "nodeType": "VariableDeclaration", - "scope": 1907, - "src": "2266:20:12", + "scope": 2250, + "src": "2270:20:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2996,10 +2997,10 @@ "typeString": "address" }, "typeName": { - "id": 1897, + "id": 2240, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2266:7:12", + "src": "2270:7:14", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3011,11 +3012,11 @@ }, { "constant": false, - "id": 1900, + "id": 2243, "name": "_affiliateAccount", "nodeType": "VariableDeclaration", - "scope": 1907, - "src": "2290:25:12", + "scope": 2250, + "src": "2294:25:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3023,10 +3024,10 @@ "typeString": "address" }, "typeName": { - "id": 1899, + "id": 2242, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2290:7:12", + "src": "2294:7:14", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3038,11 +3039,11 @@ }, { "constant": false, - "id": 1902, + "id": 2245, "name": "_affiliateFee", "nodeType": "VariableDeclaration", - "scope": 1907, - "src": "2319:21:12", + "scope": 2250, + "src": "2323:21:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3050,10 +3051,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1901, + "id": 2244, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2319:7:12", + "src": "2323:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3063,19 +3064,19 @@ "visibility": "internal" } ], - "src": "2189:154:12" + "src": "2193:154:14" }, "returnParameters": { - "id": 1906, + "id": 2249, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1905, + "id": 2248, "name": "", "nodeType": "VariableDeclaration", - "scope": 1907, - "src": "2370:7:12", + "scope": 2250, + "src": "2374:7:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3083,10 +3084,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1904, + "id": 2247, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2370:7:12", + "src": "2374:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3096,10 +3097,10 @@ "visibility": "internal" } ], - "src": "2369:9:12" + "src": "2373:9:14" }, - "scope": 1968, - "src": "2169:210:12", + "scope": 2311, + "src": "2173:210:14", "stateMutability": "payable", "superFunction": null, "visibility": "external" @@ -3107,48 +3108,48 @@ { "body": null, "documentation": null, - "id": 1919, + "id": 2262, "implemented": false, "kind": "function", "modifiers": [], "name": "claimAndConvert", "nodeType": "FunctionDefinition", "parameters": { - "id": 1915, + "id": 2258, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1910, + "id": 2253, "name": "_path", "nodeType": "VariableDeclaration", - "scope": 1919, - "src": "2410:28:12", + "scope": 2262, + "src": "2414:28:14", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_calldata_ptr", "typeString": "contract IERC20Token[]" }, "typeName": { "baseType": { "contractScope": null, - "id": 1908, + "id": 2251, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "2410:11:12", + "referencedDeclaration": 1570, + "src": "2414:11:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1570", "typeString": "contract IERC20Token" } }, - "id": 1909, + "id": 2252, "length": null, "nodeType": "ArrayTypeName", - "src": "2410:13:12", + "src": "2414:13:14", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_storage_ptr", "typeString": "contract IERC20Token[]" } }, @@ -3157,11 +3158,11 @@ }, { "constant": false, - "id": 1912, + "id": 2255, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1919, - "src": "2442:15:12", + "scope": 2262, + "src": "2446:15:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3169,10 +3170,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1911, + "id": 2254, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2442:7:12", + "src": "2446:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3183,11 +3184,11 @@ }, { "constant": false, - "id": 1914, + "id": 2257, "name": "_minReturn", "nodeType": "VariableDeclaration", - "scope": 1919, - "src": "2461:18:12", + "scope": 2262, + "src": "2465:18:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3195,10 +3196,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1913, + "id": 2256, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2461:7:12", + "src": "2465:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3208,19 +3209,19 @@ "visibility": "internal" } ], - "src": "2406:76:12" + "src": "2410:76:14" }, "returnParameters": { - "id": 1918, + "id": 2261, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1917, + "id": 2260, "name": "", "nodeType": "VariableDeclaration", - "scope": 1919, - "src": "2501:7:12", + "scope": 2262, + "src": "2505:7:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3228,10 +3229,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1916, + "id": 2259, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2501:7:12", + "src": "2505:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3241,10 +3242,10 @@ "visibility": "internal" } ], - "src": "2500:9:12" + "src": "2504:9:14" }, - "scope": 1968, - "src": "2382:128:12", + "scope": 2311, + "src": "2386:128:14", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" @@ -3252,48 +3253,48 @@ { "body": null, "documentation": null, - "id": 1935, + "id": 2278, "implemented": false, "kind": "function", "modifiers": [], "name": "claimAndConvert2", "nodeType": "FunctionDefinition", "parameters": { - "id": 1931, + "id": 2274, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1922, + "id": 2265, "name": "_path", "nodeType": "VariableDeclaration", - "scope": 1935, - "src": "2542:28:12", + "scope": 2278, + "src": "2546:28:14", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_calldata_ptr", "typeString": "contract IERC20Token[]" }, "typeName": { "baseType": { "contractScope": null, - "id": 1920, + "id": 2263, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "2542:11:12", + "referencedDeclaration": 1570, + "src": "2546:11:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1570", "typeString": "contract IERC20Token" } }, - "id": 1921, + "id": 2264, "length": null, "nodeType": "ArrayTypeName", - "src": "2542:13:12", + "src": "2546:13:14", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_storage_ptr", "typeString": "contract IERC20Token[]" } }, @@ -3302,11 +3303,11 @@ }, { "constant": false, - "id": 1924, + "id": 2267, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1935, - "src": "2574:15:12", + "scope": 2278, + "src": "2578:15:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3314,10 +3315,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1923, + "id": 2266, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2574:7:12", + "src": "2578:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3328,11 +3329,11 @@ }, { "constant": false, - "id": 1926, + "id": 2269, "name": "_minReturn", "nodeType": "VariableDeclaration", - "scope": 1935, - "src": "2593:18:12", + "scope": 2278, + "src": "2597:18:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3340,10 +3341,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1925, + "id": 2268, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2593:7:12", + "src": "2597:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3354,11 +3355,11 @@ }, { "constant": false, - "id": 1928, + "id": 2271, "name": "_affiliateAccount", "nodeType": "VariableDeclaration", - "scope": 1935, - "src": "2615:25:12", + "scope": 2278, + "src": "2619:25:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3366,10 +3367,10 @@ "typeString": "address" }, "typeName": { - "id": 1927, + "id": 2270, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2615:7:12", + "src": "2619:7:14", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3381,11 +3382,11 @@ }, { "constant": false, - "id": 1930, + "id": 2273, "name": "_affiliateFee", "nodeType": "VariableDeclaration", - "scope": 1935, - "src": "2644:21:12", + "scope": 2278, + "src": "2648:21:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3393,10 +3394,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1929, + "id": 2272, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2644:7:12", + "src": "2648:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3406,19 +3407,19 @@ "visibility": "internal" } ], - "src": "2538:130:12" + "src": "2542:130:14" }, "returnParameters": { - "id": 1934, + "id": 2277, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1933, + "id": 2276, "name": "", "nodeType": "VariableDeclaration", - "scope": 1935, - "src": "2687:7:12", + "scope": 2278, + "src": "2691:7:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3426,10 +3427,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1932, + "id": 2275, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2687:7:12", + "src": "2691:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3439,10 +3440,10 @@ "visibility": "internal" } ], - "src": "2686:9:12" + "src": "2690:9:14" }, - "scope": 1968, - "src": "2513:183:12", + "scope": 2311, + "src": "2517:183:14", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" @@ -3450,48 +3451,48 @@ { "body": null, "documentation": null, - "id": 1949, + "id": 2292, "implemented": false, "kind": "function", "modifiers": [], "name": "claimAndConvertFor", "nodeType": "FunctionDefinition", "parameters": { - "id": 1945, + "id": 2288, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1938, + "id": 2281, "name": "_path", "nodeType": "VariableDeclaration", - "scope": 1949, - "src": "2730:28:12", + "scope": 2292, + "src": "2734:28:14", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_calldata_ptr", "typeString": "contract IERC20Token[]" }, "typeName": { "baseType": { "contractScope": null, - "id": 1936, + "id": 2279, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "2730:11:12", + "referencedDeclaration": 1570, + "src": "2734:11:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1570", "typeString": "contract IERC20Token" } }, - "id": 1937, + "id": 2280, "length": null, "nodeType": "ArrayTypeName", - "src": "2730:13:12", + "src": "2734:13:14", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_storage_ptr", "typeString": "contract IERC20Token[]" } }, @@ -3500,11 +3501,11 @@ }, { "constant": false, - "id": 1940, + "id": 2283, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1949, - "src": "2762:15:12", + "scope": 2292, + "src": "2766:15:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3512,10 +3513,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1939, + "id": 2282, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2762:7:12", + "src": "2766:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3526,11 +3527,11 @@ }, { "constant": false, - "id": 1942, + "id": 2285, "name": "_minReturn", "nodeType": "VariableDeclaration", - "scope": 1949, - "src": "2781:18:12", + "scope": 2292, + "src": "2785:18:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3538,10 +3539,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1941, + "id": 2284, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2781:7:12", + "src": "2785:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3552,11 +3553,11 @@ }, { "constant": false, - "id": 1944, + "id": 2287, "name": "_beneficiary", "nodeType": "VariableDeclaration", - "scope": 1949, - "src": "2803:20:12", + "scope": 2292, + "src": "2807:20:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3564,10 +3565,10 @@ "typeString": "address" }, "typeName": { - "id": 1943, + "id": 2286, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2803:7:12", + "src": "2807:7:14", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3578,19 +3579,19 @@ "visibility": "internal" } ], - "src": "2726:100:12" + "src": "2730:100:14" }, "returnParameters": { - "id": 1948, + "id": 2291, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1947, + "id": 2290, "name": "", "nodeType": "VariableDeclaration", - "scope": 1949, - "src": "2845:7:12", + "scope": 2292, + "src": "2849:7:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3598,10 +3599,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1946, + "id": 2289, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2845:7:12", + "src": "2849:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3611,10 +3612,10 @@ "visibility": "internal" } ], - "src": "2844:9:12" + "src": "2848:9:14" }, - "scope": 1968, - "src": "2699:155:12", + "scope": 2311, + "src": "2703:155:14", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" @@ -3622,48 +3623,48 @@ { "body": null, "documentation": null, - "id": 1967, + "id": 2310, "implemented": false, "kind": "function", "modifiers": [], "name": "claimAndConvertFor2", "nodeType": "FunctionDefinition", "parameters": { - "id": 1963, + "id": 2306, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1952, + "id": 2295, "name": "_path", "nodeType": "VariableDeclaration", - "scope": 1967, - "src": "2889:28:12", + "scope": 2310, + "src": "2893:28:14", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_calldata_ptr", "typeString": "contract IERC20Token[]" }, "typeName": { "baseType": { "contractScope": null, - "id": 1950, + "id": 2293, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "2889:11:12", + "referencedDeclaration": 1570, + "src": "2893:11:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1570", "typeString": "contract IERC20Token" } }, - "id": 1951, + "id": 2294, "length": null, "nodeType": "ArrayTypeName", - "src": "2889:13:12", + "src": "2893:13:14", "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1570_$dyn_storage_ptr", "typeString": "contract IERC20Token[]" } }, @@ -3672,11 +3673,11 @@ }, { "constant": false, - "id": 1954, + "id": 2297, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1967, - "src": "2921:15:12", + "scope": 2310, + "src": "2925:15:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3684,10 +3685,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1953, + "id": 2296, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2921:7:12", + "src": "2925:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3698,11 +3699,11 @@ }, { "constant": false, - "id": 1956, + "id": 2299, "name": "_minReturn", "nodeType": "VariableDeclaration", - "scope": 1967, - "src": "2940:18:12", + "scope": 2310, + "src": "2944:18:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3710,10 +3711,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1955, + "id": 2298, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2940:7:12", + "src": "2944:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3724,11 +3725,11 @@ }, { "constant": false, - "id": 1958, + "id": 2301, "name": "_beneficiary", "nodeType": "VariableDeclaration", - "scope": 1967, - "src": "2962:20:12", + "scope": 2310, + "src": "2966:20:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3736,10 +3737,10 @@ "typeString": "address" }, "typeName": { - "id": 1957, + "id": 2300, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2962:7:12", + "src": "2966:7:14", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3751,11 +3752,11 @@ }, { "constant": false, - "id": 1960, + "id": 2303, "name": "_affiliateAccount", "nodeType": "VariableDeclaration", - "scope": 1967, - "src": "2986:25:12", + "scope": 2310, + "src": "2990:25:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3763,10 +3764,10 @@ "typeString": "address" }, "typeName": { - "id": 1959, + "id": 2302, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2986:7:12", + "src": "2990:7:14", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3778,11 +3779,11 @@ }, { "constant": false, - "id": 1962, + "id": 2305, "name": "_affiliateFee", "nodeType": "VariableDeclaration", - "scope": 1967, - "src": "3015:21:12", + "scope": 2310, + "src": "3019:21:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3790,10 +3791,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1961, + "id": 2304, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3015:7:12", + "src": "3019:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3803,19 +3804,19 @@ "visibility": "internal" } ], - "src": "2885:154:12" + "src": "2889:154:14" }, "returnParameters": { - "id": 1966, + "id": 2309, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1965, + "id": 2308, "name": "", "nodeType": "VariableDeclaration", - "scope": 1967, - "src": "3058:7:12", + "scope": 2310, + "src": "3062:7:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3823,10 +3824,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1964, + "id": 2307, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3058:7:12", + "src": "3062:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3836,3212 +3837,3383 @@ "visibility": "internal" } ], - "src": "3057:9:12" + "src": "3061:9:14" }, - "scope": 1968, - "src": "2857:210:12", + "scope": 2311, + "src": "2861:210:14", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" } ], - "scope": 1969, - "src": "119:2950:12" + "scope": 2312, + "src": "119:2954:14" } ], - "src": "0:3070:12" + "src": "0:3074:14" }, "legacyAST": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISovrynSwapNetwork.sol", - "exportedSymbols": { - "ISovrynSwapNetwork": [ - 1968 - ] + "attributes": { + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISovrynSwapNetwork.sol", + "exportedSymbols": { + "ISovrynSwapNetwork": [ + 2311 + ] + } }, - "id": 1969, - "nodeType": "SourceUnit", - "nodes": [ + "children": [ { - "id": 1712, - "literals": [ - "solidity", - ">=", - "0.5", - ".0", - "<", - "0.6", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "0:31:12" + "attributes": { + "literals": [ + "solidity", + ">=", + "0.5", + ".0", + "<", + "0.6", + ".0" + ] + }, + "id": 2055, + "name": "PragmaDirective", + "src": "0:31:14" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol", - "file": "./IERC20Token.sol", - "id": 1713, - "nodeType": "ImportDirective", - "scope": 1969, - "sourceUnit": 1387, - "src": "33:27:12", - "symbolAliases": [], - "unitAlias": "" + "attributes": { + "SourceUnit": 1571, + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol", + "file": "./IERC20Token.sol", + "scope": 2312, + "symbolAliases": [ + null + ], + "unitAlias": "" + }, + "id": 2056, + "name": "ImportDirective", + "src": "33:27:14" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IEtherToken.sol", - "file": "./IEtherToken.sol", - "id": 1714, - "nodeType": "ImportDirective", - "scope": 1969, - "sourceUnit": 1413, - "src": "61:27:12", - "symbolAliases": [], - "unitAlias": "" + "attributes": { + "SourceUnit": 1597, + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IEtherToken.sol", + "file": "./IEtherToken.sol", + "scope": 2312, + "symbolAliases": [ + null + ], + "unitAlias": "" + }, + "id": 2057, + "name": "ImportDirective", + "src": "61:27:14" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISovrynSwapX.sol", - "file": "./ISovrynSwapX.sol", - "id": 1715, - "nodeType": "ImportDirective", - "scope": 1969, - "sourceUnit": 2001, - "src": "89:28:12", - "symbolAliases": [], - "unitAlias": "" + "attributes": { + "SourceUnit": 2344, + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISovrynSwapX.sol", + "file": "./ISovrynSwapX.sol", + "scope": 2312, + "symbolAliases": [ + null + ], + "unitAlias": "" + }, + "id": 2058, + "name": "ImportDirective", + "src": "89:28:14" }, { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "interface", - "documentation": null, - "fullyImplemented": false, - "id": 1968, - "linearizedBaseContracts": [ - 1968 - ], - "name": "ISovrynSwapNetwork", - "nodeType": "ContractDefinition", - "nodes": [ + "attributes": { + "baseContracts": [ + null + ], + "contractDependencies": [ + null + ], + "contractKind": "interface", + "documentation": null, + "fullyImplemented": false, + "linearizedBaseContracts": [ + 2311 + ], + "name": "ISovrynSwapNetwork", + "scope": 2312 + }, + "children": [ { - "anonymous": false, - "documentation": null, - "id": 1729, - "name": "Conversion", - "nodeType": "EventDefinition", - "parameters": { - "id": 1728, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1717, - "indexed": true, - "name": "_smartToken", - "nodeType": "VariableDeclaration", - "scope": 1729, - "src": "171:27:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1716, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "171:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1719, - "indexed": true, - "name": "_fromToken", - "nodeType": "VariableDeclaration", - "scope": 1729, - "src": "202:26:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1718, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "202:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1721, - "indexed": true, - "name": "_toToken", - "nodeType": "VariableDeclaration", - "scope": 1729, - "src": "232:24:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1720, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "232:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1723, - "indexed": false, - "name": "_fromAmount", - "nodeType": "VariableDeclaration", - "scope": 1729, - "src": "260:19:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1722, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "260:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1725, - "indexed": false, - "name": "_toAmount", - "nodeType": "VariableDeclaration", - "scope": 1729, - "src": "283:17:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1724, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "283:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1727, - "indexed": false, - "name": "_trader", - "nodeType": "VariableDeclaration", - "scope": 1729, - "src": "304:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1726, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "304:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "167:155:12" + "attributes": { + "anonymous": false, + "documentation": null, + "name": "Conversion" }, - "src": "151:172:12" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "indexed": true, + "name": "_smartToken", + "scope": 2072, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 2059, + "name": "ElementaryTypeName", + "src": "171:7:14" + } + ], + "id": 2060, + "name": "VariableDeclaration", + "src": "171:27:14" + }, + { + "attributes": { + "constant": false, + "indexed": true, + "name": "_fromToken", + "scope": 2072, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 2061, + "name": "ElementaryTypeName", + "src": "202:7:14" + } + ], + "id": 2062, + "name": "VariableDeclaration", + "src": "202:26:14" + }, + { + "attributes": { + "constant": false, + "indexed": true, + "name": "_toToken", + "scope": 2072, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 2063, + "name": "ElementaryTypeName", + "src": "232:7:14" + } + ], + "id": 2064, + "name": "VariableDeclaration", + "src": "232:24:14" + }, + { + "attributes": { + "constant": false, + "indexed": false, + "name": "_fromAmount", + "scope": 2072, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2065, + "name": "ElementaryTypeName", + "src": "260:7:14" + } + ], + "id": 2066, + "name": "VariableDeclaration", + "src": "260:19:14" + }, + { + "attributes": { + "constant": false, + "indexed": false, + "name": "_toAmount", + "scope": 2072, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2067, + "name": "ElementaryTypeName", + "src": "283:7:14" + } + ], + "id": 2068, + "name": "VariableDeclaration", + "src": "283:17:14" + }, + { + "attributes": { + "constant": false, + "indexed": false, + "name": "_trader", + "scope": 2072, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 2069, + "name": "ElementaryTypeName", + "src": "304:7:14" + } + ], + "id": 2070, + "name": "VariableDeclaration", + "src": "304:15:14" + } + ], + "id": 2071, + "name": "ParameterList", + "src": "167:155:14" + } + ], + "id": 2072, + "name": "EventDefinition", + "src": "151:172:14" }, { - "body": null, - "documentation": null, - "id": 1734, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "setMaxAffiliateFee", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1732, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1731, - "name": "_maxAffiliateFee", - "nodeType": "VariableDeclaration", - "scope": 1734, - "src": "354:24:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1730, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "354:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "353:26:12" + "name": "setMaxAffiliateFee", + "scope": 2311, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" }, - "returnParameters": { - "id": 1733, - "nodeType": "ParameterList", - "parameters": [], - "src": "388:0:12" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_maxAffiliateFee", + "scope": 2077, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2073, + "name": "ElementaryTypeName", + "src": "354:7:14" + } + ], + "id": 2074, + "name": "VariableDeclaration", + "src": "354:24:14" + } + ], + "id": 2075, + "name": "ParameterList", + "src": "353:26:14" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2076, + "name": "ParameterList", + "src": "388:0:14" + } + ], + "id": 2077, + "name": "FunctionDefinition", + "src": "326:63:14" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "registerEtherToken", + "scope": 2311, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" }, - "scope": 1968, - "src": "326:63:12", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_token", + "scope": 2084, + "stateVariable": false, + "storageLocation": "default", + "type": "contract IEtherToken", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IEtherToken", + "referencedDeclaration": 1596, + "type": "contract IEtherToken" + }, + "id": 2078, + "name": "UserDefinedTypeName", + "src": "420:11:14" + } + ], + "id": 2079, + "name": "VariableDeclaration", + "src": "420:18:14" + }, + { + "attributes": { + "constant": false, + "name": "_register", + "scope": 2084, + "stateVariable": false, + "storageLocation": "default", + "type": "bool", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bool", + "type": "bool" + }, + "id": 2080, + "name": "ElementaryTypeName", + "src": "440:4:14" + } + ], + "id": 2081, + "name": "VariableDeclaration", + "src": "440:14:14" + } + ], + "id": 2082, + "name": "ParameterList", + "src": "419:36:14" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2083, + "name": "ParameterList", + "src": "464:0:14" + } + ], + "id": 2084, + "name": "FunctionDefinition", + "src": "392:73:14" }, { - "body": null, - "documentation": null, - "id": 1741, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "registerEtherToken", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1739, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1736, - "name": "_token", - "nodeType": "VariableDeclaration", - "scope": 1741, - "src": "420:18:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IEtherToken_$1412", - "typeString": "contract IEtherToken" - }, - "typeName": { - "contractScope": null, - "id": 1735, - "name": "IEtherToken", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1412, - "src": "420:11:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IEtherToken_$1412", - "typeString": "contract IEtherToken" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1738, - "name": "_register", - "nodeType": "VariableDeclaration", - "scope": 1741, - "src": "440:14:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1737, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "440:4:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "419:36:12" + "name": "conversionPath", + "scope": 2311, + "stateMutability": "view", + "superFunction": null, + "visibility": "external" }, - "returnParameters": { - "id": 1740, - "nodeType": "ParameterList", - "parameters": [], - "src": "464:0:12" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_sourceToken", + "scope": 2094, + "stateVariable": false, + "storageLocation": "default", + "type": "contract IERC20Token", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1570, + "type": "contract IERC20Token" + }, + "id": 2085, + "name": "UserDefinedTypeName", + "src": "492:11:14" + } + ], + "id": 2086, + "name": "VariableDeclaration", + "src": "492:24:14" + }, + { + "attributes": { + "constant": false, + "name": "_targetToken", + "scope": 2094, + "stateVariable": false, + "storageLocation": "default", + "type": "contract IERC20Token", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1570, + "type": "contract IERC20Token" + }, + "id": 2087, + "name": "UserDefinedTypeName", + "src": "518:11:14" + } + ], + "id": 2088, + "name": "VariableDeclaration", + "src": "518:24:14" + } + ], + "id": 2089, + "name": "ParameterList", + "src": "491:52:14" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2094, + "stateVariable": false, + "storageLocation": "memory", + "type": "contract IERC20Token[]", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "length": null, + "type": "contract IERC20Token[]" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1570, + "type": "contract IERC20Token" + }, + "id": 2090, + "name": "UserDefinedTypeName", + "src": "567:11:14" + } + ], + "id": 2091, + "name": "ArrayTypeName", + "src": "567:13:14" + } + ], + "id": 2092, + "name": "VariableDeclaration", + "src": "567:20:14" + } + ], + "id": 2093, + "name": "ParameterList", + "src": "566:22:14" + } + ], + "id": 2094, + "name": "FunctionDefinition", + "src": "468:121:14" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "rateByPath", + "scope": 2311, + "stateMutability": "view", + "superFunction": null, + "visibility": "external" }, - "scope": 1968, - "src": "392:73:12", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_path", + "scope": 2104, + "stateVariable": false, + "storageLocation": "calldata", + "type": "contract IERC20Token[]", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "length": null, + "type": "contract IERC20Token[]" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1570, + "type": "contract IERC20Token" + }, + "id": 2095, + "name": "UserDefinedTypeName", + "src": "612:11:14" + } + ], + "id": 2096, + "name": "ArrayTypeName", + "src": "612:13:14" + } + ], + "id": 2097, + "name": "VariableDeclaration", + "src": "612:28:14" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2104, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2098, + "name": "ElementaryTypeName", + "src": "642:7:14" + } + ], + "id": 2099, + "name": "VariableDeclaration", + "src": "642:15:14" + } + ], + "id": 2100, + "name": "ParameterList", + "src": "611:47:14" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2104, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2101, + "name": "ElementaryTypeName", + "src": "682:7:14" + } + ], + "id": 2102, + "name": "VariableDeclaration", + "src": "682:7:14" + } + ], + "id": 2103, + "name": "ParameterList", + "src": "681:9:14" + } + ], + "id": 2104, + "name": "FunctionDefinition", + "src": "592:99:14" }, { - "body": null, - "documentation": null, - "id": 1751, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "conversionPath", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1746, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1743, - "name": "_sourceToken", - "nodeType": "VariableDeclaration", - "scope": 1751, - "src": "492:24:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - }, - "typeName": { - "contractScope": null, - "id": 1742, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "492:11:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1745, - "name": "_targetToken", - "nodeType": "VariableDeclaration", - "scope": 1751, - "src": "518:24:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - }, - "typeName": { - "contractScope": null, - "id": 1744, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "518:11:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "491:52:12" + "name": "convertByPath", + "scope": 2311, + "stateMutability": "payable", + "superFunction": null, + "visibility": "external" }, - "returnParameters": { - "id": 1750, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1749, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1751, - "src": "567:16:12", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 1747, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "567:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_path", + "scope": 2122, + "stateVariable": false, + "storageLocation": "calldata", + "type": "contract IERC20Token[]", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "length": null, + "type": "contract IERC20Token[]" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1570, + "type": "contract IERC20Token" + }, + "id": 2105, + "name": "UserDefinedTypeName", + "src": "720:11:14" + } + ], + "id": 2106, + "name": "ArrayTypeName", + "src": "720:13:14" } + ], + "id": 2107, + "name": "VariableDeclaration", + "src": "720:28:14" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2122, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" }, - "id": 1748, - "length": null, - "nodeType": "ArrayTypeName", - "src": "567:9:12", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "value": null, - "visibility": "internal" - } + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2108, + "name": "ElementaryTypeName", + "src": "752:7:14" + } + ], + "id": 2109, + "name": "VariableDeclaration", + "src": "752:15:14" + }, + { + "attributes": { + "constant": false, + "name": "_minReturn", + "scope": 2122, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2110, + "name": "ElementaryTypeName", + "src": "771:7:14" + } + ], + "id": 2111, + "name": "VariableDeclaration", + "src": "771:18:14" + }, + { + "attributes": { + "constant": false, + "name": "_beneficiary", + "scope": 2122, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 2112, + "name": "ElementaryTypeName", + "src": "793:7:14" + } + ], + "id": 2113, + "name": "VariableDeclaration", + "src": "793:20:14" + }, + { + "attributes": { + "constant": false, + "name": "_affiliateAccount", + "scope": 2122, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 2114, + "name": "ElementaryTypeName", + "src": "817:7:14" + } + ], + "id": 2115, + "name": "VariableDeclaration", + "src": "817:25:14" + }, + { + "attributes": { + "constant": false, + "name": "_affiliateFee", + "scope": 2122, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2116, + "name": "ElementaryTypeName", + "src": "846:7:14" + } + ], + "id": 2117, + "name": "VariableDeclaration", + "src": "846:21:14" + } + ], + "id": 2118, + "name": "ParameterList", + "src": "716:154:14" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2122, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2119, + "name": "ElementaryTypeName", + "src": "897:7:14" + } + ], + "id": 2120, + "name": "VariableDeclaration", + "src": "897:7:14" + } + ], + "id": 2121, + "name": "ParameterList", + "src": "896:9:14" + } + ], + "id": 2122, + "name": "FunctionDefinition", + "src": "694:212:14" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "566:18:12" + "name": "xConvert", + "scope": 2311, + "stateMutability": "payable", + "superFunction": null, + "visibility": "external" }, - "scope": 1968, - "src": "468:117:12", - "stateMutability": "view", - "superFunction": null, - "visibility": "external" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_path", + "scope": 2140, + "stateVariable": false, + "storageLocation": "calldata", + "type": "contract IERC20Token[]", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "length": null, + "type": "contract IERC20Token[]" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1570, + "type": "contract IERC20Token" + }, + "id": 2123, + "name": "UserDefinedTypeName", + "src": "930:11:14" + } + ], + "id": 2124, + "name": "ArrayTypeName", + "src": "930:13:14" + } + ], + "id": 2125, + "name": "VariableDeclaration", + "src": "930:28:14" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2140, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2126, + "name": "ElementaryTypeName", + "src": "962:7:14" + } + ], + "id": 2127, + "name": "VariableDeclaration", + "src": "962:15:14" + }, + { + "attributes": { + "constant": false, + "name": "_minReturn", + "scope": 2140, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2128, + "name": "ElementaryTypeName", + "src": "981:7:14" + } + ], + "id": 2129, + "name": "VariableDeclaration", + "src": "981:18:14" + }, + { + "attributes": { + "constant": false, + "name": "_targetBlockchain", + "scope": 2140, + "stateVariable": false, + "storageLocation": "default", + "type": "bytes32", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 2130, + "name": "ElementaryTypeName", + "src": "1003:7:14" + } + ], + "id": 2131, + "name": "VariableDeclaration", + "src": "1003:25:14" + }, + { + "attributes": { + "constant": false, + "name": "_targetAccount", + "scope": 2140, + "stateVariable": false, + "storageLocation": "default", + "type": "bytes32", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 2132, + "name": "ElementaryTypeName", + "src": "1032:7:14" + } + ], + "id": 2133, + "name": "VariableDeclaration", + "src": "1032:22:14" + }, + { + "attributes": { + "constant": false, + "name": "_conversionId", + "scope": 2140, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2134, + "name": "ElementaryTypeName", + "src": "1058:7:14" + } + ], + "id": 2135, + "name": "VariableDeclaration", + "src": "1058:21:14" + } + ], + "id": 2136, + "name": "ParameterList", + "src": "926:156:14" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2140, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2137, + "name": "ElementaryTypeName", + "src": "1109:7:14" + } + ], + "id": 2138, + "name": "VariableDeclaration", + "src": "1109:7:14" + } + ], + "id": 2139, + "name": "ParameterList", + "src": "1108:9:14" + } + ], + "id": 2140, + "name": "FunctionDefinition", + "src": "909:209:14" }, { - "body": null, - "documentation": null, - "id": 1761, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "rateByPath", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1757, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1754, - "name": "_path", - "nodeType": "VariableDeclaration", - "scope": 1761, - "src": "608:28:12", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", - "typeString": "contract IERC20Token[]" - }, - "typeName": { - "baseType": { - "contractScope": null, - "id": 1752, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "608:11:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "xConvert2", + "scope": 2311, + "stateMutability": "payable", + "superFunction": null, + "visibility": "external" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_path", + "scope": 2162, + "stateVariable": false, + "storageLocation": "calldata", + "type": "contract IERC20Token[]", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "length": null, + "type": "contract IERC20Token[]" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1570, + "type": "contract IERC20Token" + }, + "id": 2141, + "name": "UserDefinedTypeName", + "src": "1143:11:14" + } + ], + "id": 2142, + "name": "ArrayTypeName", + "src": "1143:13:14" } + ], + "id": 2143, + "name": "VariableDeclaration", + "src": "1143:28:14" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2162, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" }, - "id": 1753, - "length": null, - "nodeType": "ArrayTypeName", - "src": "608:13:12", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", - "typeString": "contract IERC20Token[]" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1756, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1761, - "src": "638:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1755, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "638:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2144, + "name": "ElementaryTypeName", + "src": "1175:7:14" + } + ], + "id": 2145, + "name": "VariableDeclaration", + "src": "1175:15:14" + }, + { + "attributes": { + "constant": false, + "name": "_minReturn", + "scope": 2162, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2146, + "name": "ElementaryTypeName", + "src": "1194:7:14" + } + ], + "id": 2147, + "name": "VariableDeclaration", + "src": "1194:18:14" + }, + { + "attributes": { + "constant": false, + "name": "_targetBlockchain", + "scope": 2162, + "stateVariable": false, + "storageLocation": "default", + "type": "bytes32", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 2148, + "name": "ElementaryTypeName", + "src": "1216:7:14" + } + ], + "id": 2149, + "name": "VariableDeclaration", + "src": "1216:25:14" + }, + { + "attributes": { + "constant": false, + "name": "_targetAccount", + "scope": 2162, + "stateVariable": false, + "storageLocation": "default", + "type": "bytes32", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 2150, + "name": "ElementaryTypeName", + "src": "1245:7:14" + } + ], + "id": 2151, + "name": "VariableDeclaration", + "src": "1245:22:14" + }, + { + "attributes": { + "constant": false, + "name": "_conversionId", + "scope": 2162, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2152, + "name": "ElementaryTypeName", + "src": "1271:7:14" + } + ], + "id": 2153, + "name": "VariableDeclaration", + "src": "1271:21:14" + }, + { + "attributes": { + "constant": false, + "name": "_affiliateAccount", + "scope": 2162, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 2154, + "name": "ElementaryTypeName", + "src": "1296:7:14" + } + ], + "id": 2155, + "name": "VariableDeclaration", + "src": "1296:25:14" + }, + { + "attributes": { + "constant": false, + "name": "_affiliateFee", + "scope": 2162, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2156, + "name": "ElementaryTypeName", + "src": "1325:7:14" + } + ], + "id": 2157, + "name": "VariableDeclaration", + "src": "1325:21:14" + } + ], + "id": 2158, + "name": "ParameterList", + "src": "1139:210:14" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2162, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2159, + "name": "ElementaryTypeName", + "src": "1376:7:14" + } + ], + "id": 2160, + "name": "VariableDeclaration", + "src": "1376:7:14" + } + ], + "id": 2161, + "name": "ParameterList", + "src": "1375:9:14" + } + ], + "id": 2162, + "name": "FunctionDefinition", + "src": "1121:264:14" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "607:47:12" + "name": "completeXConversion", + "scope": 2311, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" }, - "returnParameters": { - "id": 1760, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1759, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1761, - "src": "678:7:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1758, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "678:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_path", + "scope": 2178, + "stateVariable": false, + "storageLocation": "calldata", + "type": "contract IERC20Token[]", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "length": null, + "type": "contract IERC20Token[]" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1570, + "type": "contract IERC20Token" + }, + "id": 2163, + "name": "UserDefinedTypeName", + "src": "1420:11:14" + } + ], + "id": 2164, + "name": "ArrayTypeName", + "src": "1420:13:14" + } + ], + "id": 2165, + "name": "VariableDeclaration", + "src": "1420:28:14" + }, + { + "attributes": { + "constant": false, + "name": "_sovrynSwapX", + "scope": 2178, + "stateVariable": false, + "storageLocation": "default", + "type": "contract ISovrynSwapX", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "ISovrynSwapX", + "referencedDeclaration": 2343, + "type": "contract ISovrynSwapX" + }, + "id": 2166, + "name": "UserDefinedTypeName", + "src": "1452:12:14" + } + ], + "id": 2167, + "name": "VariableDeclaration", + "src": "1452:25:14" + }, + { + "attributes": { + "constant": false, + "name": "_conversionId", + "scope": 2178, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2168, + "name": "ElementaryTypeName", + "src": "1481:7:14" + } + ], + "id": 2169, + "name": "VariableDeclaration", + "src": "1481:21:14" + }, + { + "attributes": { + "constant": false, + "name": "_minReturn", + "scope": 2178, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2170, + "name": "ElementaryTypeName", + "src": "1506:7:14" + } + ], + "id": 2171, + "name": "VariableDeclaration", + "src": "1506:18:14" + }, + { + "attributes": { + "constant": false, + "name": "_beneficiary", + "scope": 2178, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 2172, + "name": "ElementaryTypeName", + "src": "1528:7:14" + } + ], + "id": 2173, + "name": "VariableDeclaration", + "src": "1528:20:14" + } + ], + "id": 2174, + "name": "ParameterList", + "src": "1416:135:14" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2178, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2175, + "name": "ElementaryTypeName", + "src": "1570:7:14" + } + ], + "id": 2176, + "name": "VariableDeclaration", + "src": "1570:7:14" + } + ], + "id": 2177, + "name": "ParameterList", + "src": "1569:9:14" + } + ], + "id": 2178, + "name": "FunctionDefinition", + "src": "1388:191:14" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "677:9:12" + "name": "getReturnByPath", + "scope": 2311, + "stateMutability": "view", + "superFunction": null, + "visibility": "external" }, - "scope": 1968, - "src": "588:99:12", - "stateMutability": "view", - "superFunction": null, - "visibility": "external" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_path", + "scope": 2190, + "stateVariable": false, + "storageLocation": "calldata", + "type": "contract IERC20Token[]", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "length": null, + "type": "contract IERC20Token[]" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1570, + "type": "contract IERC20Token" + }, + "id": 2179, + "name": "UserDefinedTypeName", + "src": "1607:11:14" + } + ], + "id": 2180, + "name": "ArrayTypeName", + "src": "1607:13:14" + } + ], + "id": 2181, + "name": "VariableDeclaration", + "src": "1607:28:14" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2190, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2182, + "name": "ElementaryTypeName", + "src": "1637:7:14" + } + ], + "id": 2183, + "name": "VariableDeclaration", + "src": "1637:15:14" + } + ], + "id": 2184, + "name": "ParameterList", + "src": "1606:47:14" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2190, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2185, + "name": "ElementaryTypeName", + "src": "1677:7:14" + } + ], + "id": 2186, + "name": "VariableDeclaration", + "src": "1677:7:14" + }, + { + "attributes": { + "constant": false, + "name": "", + "scope": 2190, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2187, + "name": "ElementaryTypeName", + "src": "1686:7:14" + } + ], + "id": 2188, + "name": "VariableDeclaration", + "src": "1686:7:14" + } + ], + "id": 2189, + "name": "ParameterList", + "src": "1676:18:14" + } + ], + "id": 2190, + "name": "FunctionDefinition", + "src": "1582:113:14" }, { - "body": null, - "documentation": null, - "id": 1779, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "convertByPath", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1775, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1764, - "name": "_path", - "nodeType": "VariableDeclaration", - "scope": 1779, - "src": "716:28:12", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", - "typeString": "contract IERC20Token[]" - }, - "typeName": { - "baseType": { - "contractScope": null, - "id": 1762, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "716:11:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "convert", + "scope": 2311, + "stateMutability": "payable", + "superFunction": null, + "visibility": "external" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_path", + "scope": 2202, + "stateVariable": false, + "storageLocation": "calldata", + "type": "contract IERC20Token[]", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "length": null, + "type": "contract IERC20Token[]" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1570, + "type": "contract IERC20Token" + }, + "id": 2191, + "name": "UserDefinedTypeName", + "src": "1718:11:14" + } + ], + "id": 2192, + "name": "ArrayTypeName", + "src": "1718:13:14" } + ], + "id": 2193, + "name": "VariableDeclaration", + "src": "1718:28:14" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2202, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" }, - "id": 1763, - "length": null, - "nodeType": "ArrayTypeName", - "src": "716:13:12", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", - "typeString": "contract IERC20Token[]" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1766, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1779, - "src": "748:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1765, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "748:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1768, - "name": "_minReturn", - "nodeType": "VariableDeclaration", - "scope": 1779, - "src": "767:18:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1767, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "767:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1770, - "name": "_beneficiary", - "nodeType": "VariableDeclaration", - "scope": 1779, - "src": "789:20:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1769, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "789:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1772, - "name": "_affiliateAccount", - "nodeType": "VariableDeclaration", - "scope": 1779, - "src": "813:25:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1771, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "813:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1774, - "name": "_affiliateFee", - "nodeType": "VariableDeclaration", - "scope": 1779, - "src": "842:21:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1773, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "842:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2194, + "name": "ElementaryTypeName", + "src": "1750:7:14" + } + ], + "id": 2195, + "name": "VariableDeclaration", + "src": "1750:15:14" + }, + { + "attributes": { + "constant": false, + "name": "_minReturn", + "scope": 2202, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2196, + "name": "ElementaryTypeName", + "src": "1769:7:14" + } + ], + "id": 2197, + "name": "VariableDeclaration", + "src": "1769:18:14" + } + ], + "id": 2198, + "name": "ParameterList", + "src": "1714:76:14" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2202, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2199, + "name": "ElementaryTypeName", + "src": "1817:7:14" + } + ], + "id": 2200, + "name": "VariableDeclaration", + "src": "1817:7:14" + } + ], + "id": 2201, + "name": "ParameterList", + "src": "1816:9:14" + } + ], + "id": 2202, + "name": "FunctionDefinition", + "src": "1698:128:14" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "712:154:12" + "name": "convert2", + "scope": 2311, + "stateMutability": "payable", + "superFunction": null, + "visibility": "external" }, - "returnParameters": { - "id": 1778, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1777, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1779, - "src": "893:7:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1776, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "893:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_path", + "scope": 2218, + "stateVariable": false, + "storageLocation": "calldata", + "type": "contract IERC20Token[]", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "length": null, + "type": "contract IERC20Token[]" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1570, + "type": "contract IERC20Token" + }, + "id": 2203, + "name": "UserDefinedTypeName", + "src": "1850:11:14" + } + ], + "id": 2204, + "name": "ArrayTypeName", + "src": "1850:13:14" + } + ], + "id": 2205, + "name": "VariableDeclaration", + "src": "1850:28:14" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2218, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2206, + "name": "ElementaryTypeName", + "src": "1882:7:14" + } + ], + "id": 2207, + "name": "VariableDeclaration", + "src": "1882:15:14" + }, + { + "attributes": { + "constant": false, + "name": "_minReturn", + "scope": 2218, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2208, + "name": "ElementaryTypeName", + "src": "1901:7:14" + } + ], + "id": 2209, + "name": "VariableDeclaration", + "src": "1901:18:14" + }, + { + "attributes": { + "constant": false, + "name": "_affiliateAccount", + "scope": 2218, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 2210, + "name": "ElementaryTypeName", + "src": "1923:7:14" + } + ], + "id": 2211, + "name": "VariableDeclaration", + "src": "1923:25:14" + }, + { + "attributes": { + "constant": false, + "name": "_affiliateFee", + "scope": 2218, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2212, + "name": "ElementaryTypeName", + "src": "1952:7:14" + } + ], + "id": 2213, + "name": "VariableDeclaration", + "src": "1952:21:14" + } + ], + "id": 2214, + "name": "ParameterList", + "src": "1846:130:14" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2218, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2215, + "name": "ElementaryTypeName", + "src": "2003:7:14" + } + ], + "id": 2216, + "name": "VariableDeclaration", + "src": "2003:7:14" + } + ], + "id": 2217, + "name": "ParameterList", + "src": "2002:9:14" + } + ], + "id": 2218, + "name": "FunctionDefinition", + "src": "1829:183:14" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "892:9:12" + "name": "convertFor", + "scope": 2311, + "stateMutability": "payable", + "superFunction": null, + "visibility": "external" }, - "scope": 1968, - "src": "690:212:12", - "stateMutability": "payable", - "superFunction": null, - "visibility": "external" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_path", + "scope": 2232, + "stateVariable": false, + "storageLocation": "calldata", + "type": "contract IERC20Token[]", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "length": null, + "type": "contract IERC20Token[]" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1570, + "type": "contract IERC20Token" + }, + "id": 2219, + "name": "UserDefinedTypeName", + "src": "2038:11:14" + } + ], + "id": 2220, + "name": "ArrayTypeName", + "src": "2038:13:14" + } + ], + "id": 2221, + "name": "VariableDeclaration", + "src": "2038:28:14" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2232, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2222, + "name": "ElementaryTypeName", + "src": "2070:7:14" + } + ], + "id": 2223, + "name": "VariableDeclaration", + "src": "2070:15:14" + }, + { + "attributes": { + "constant": false, + "name": "_minReturn", + "scope": 2232, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2224, + "name": "ElementaryTypeName", + "src": "2089:7:14" + } + ], + "id": 2225, + "name": "VariableDeclaration", + "src": "2089:18:14" + }, + { + "attributes": { + "constant": false, + "name": "_beneficiary", + "scope": 2232, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 2226, + "name": "ElementaryTypeName", + "src": "2111:7:14" + } + ], + "id": 2227, + "name": "VariableDeclaration", + "src": "2111:20:14" + } + ], + "id": 2228, + "name": "ParameterList", + "src": "2034:100:14" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2232, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2229, + "name": "ElementaryTypeName", + "src": "2161:7:14" + } + ], + "id": 2230, + "name": "VariableDeclaration", + "src": "2161:7:14" + } + ], + "id": 2231, + "name": "ParameterList", + "src": "2160:9:14" + } + ], + "id": 2232, + "name": "FunctionDefinition", + "src": "2015:155:14" }, { - "body": null, - "documentation": null, - "id": 1797, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "xConvert", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1793, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1782, - "name": "_path", - "nodeType": "VariableDeclaration", - "scope": 1797, - "src": "926:28:12", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", - "typeString": "contract IERC20Token[]" - }, - "typeName": { - "baseType": { - "contractScope": null, - "id": 1780, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "926:11:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "id": 1781, - "length": null, - "nodeType": "ArrayTypeName", - "src": "926:13:12", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", - "typeString": "contract IERC20Token[]" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1784, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1797, - "src": "958:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1783, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "958:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1786, - "name": "_minReturn", - "nodeType": "VariableDeclaration", - "scope": 1797, - "src": "977:18:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1785, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "977:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1788, - "name": "_targetBlockchain", - "nodeType": "VariableDeclaration", - "scope": 1797, - "src": "999:25:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1787, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "999:7:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1790, - "name": "_targetAccount", - "nodeType": "VariableDeclaration", - "scope": 1797, - "src": "1028:22:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1789, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1028:7:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1792, - "name": "_conversionId", - "nodeType": "VariableDeclaration", - "scope": 1797, - "src": "1054:21:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1791, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1054:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "922:156:12" - }, - "returnParameters": { - "id": 1796, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1795, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1797, - "src": "1105:7:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1794, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1105:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1104:9:12" - }, - "scope": 1968, - "src": "905:209:12", - "stateMutability": "payable", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": null, - "id": 1819, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "xConvert2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1815, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1800, - "name": "_path", - "nodeType": "VariableDeclaration", - "scope": 1819, - "src": "1139:28:12", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", - "typeString": "contract IERC20Token[]" - }, - "typeName": { - "baseType": { - "contractScope": null, - "id": 1798, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "1139:11:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "id": 1799, - "length": null, - "nodeType": "ArrayTypeName", - "src": "1139:13:12", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", - "typeString": "contract IERC20Token[]" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1802, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1819, - "src": "1171:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1801, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1171:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1804, - "name": "_minReturn", - "nodeType": "VariableDeclaration", - "scope": 1819, - "src": "1190:18:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1803, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1190:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1806, - "name": "_targetBlockchain", - "nodeType": "VariableDeclaration", - "scope": 1819, - "src": "1212:25:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1805, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1212:7:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1808, - "name": "_targetAccount", - "nodeType": "VariableDeclaration", - "scope": 1819, - "src": "1241:22:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1807, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1241:7:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1810, - "name": "_conversionId", - "nodeType": "VariableDeclaration", - "scope": 1819, - "src": "1267:21:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1809, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1267:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1812, - "name": "_affiliateAccount", - "nodeType": "VariableDeclaration", - "scope": 1819, - "src": "1292:25:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1811, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1292:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1814, - "name": "_affiliateFee", - "nodeType": "VariableDeclaration", - "scope": 1819, - "src": "1321:21:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1813, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1321:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1135:210:12" - }, - "returnParameters": { - "id": 1818, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1817, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1819, - "src": "1372:7:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1816, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1372:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1371:9:12" - }, - "scope": 1968, - "src": "1117:264:12", - "stateMutability": "payable", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": null, - "id": 1835, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "completeXConversion", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1831, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1822, - "name": "_path", - "nodeType": "VariableDeclaration", - "scope": 1835, - "src": "1416:28:12", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", - "typeString": "contract IERC20Token[]" - }, - "typeName": { - "baseType": { - "contractScope": null, - "id": 1820, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "1416:11:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "id": 1821, - "length": null, - "nodeType": "ArrayTypeName", - "src": "1416:13:12", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", - "typeString": "contract IERC20Token[]" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1824, - "name": "_sovrynSwapX", - "nodeType": "VariableDeclaration", - "scope": 1835, - "src": "1448:25:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ISovrynSwapX_$2000", - "typeString": "contract ISovrynSwapX" - }, - "typeName": { - "contractScope": null, - "id": 1823, - "name": "ISovrynSwapX", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2000, - "src": "1448:12:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ISovrynSwapX_$2000", - "typeString": "contract ISovrynSwapX" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1826, - "name": "_conversionId", - "nodeType": "VariableDeclaration", - "scope": 1835, - "src": "1477:21:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1825, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1477:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1828, - "name": "_minReturn", - "nodeType": "VariableDeclaration", - "scope": 1835, - "src": "1502:18:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1827, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1502:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1830, - "name": "_beneficiary", - "nodeType": "VariableDeclaration", - "scope": 1835, - "src": "1524:20:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1829, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1524:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1412:135:12" - }, - "returnParameters": { - "id": 1834, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1833, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1835, - "src": "1566:7:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1832, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1566:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1565:9:12" - }, - "scope": 1968, - "src": "1384:191:12", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": null, - "id": 1847, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getReturnByPath", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1841, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1838, - "name": "_path", - "nodeType": "VariableDeclaration", - "scope": 1847, - "src": "1603:28:12", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", - "typeString": "contract IERC20Token[]" - }, - "typeName": { - "baseType": { - "contractScope": null, - "id": 1836, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "1603:11:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "id": 1837, - "length": null, - "nodeType": "ArrayTypeName", - "src": "1603:13:12", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", - "typeString": "contract IERC20Token[]" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1840, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1847, - "src": "1633:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1839, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1633:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1602:47:12" - }, - "returnParameters": { - "id": 1846, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1843, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1847, - "src": "1673:7:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1842, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1673:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1845, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1847, - "src": "1682:7:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1844, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1682:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1672:18:12" - }, - "scope": 1968, - "src": "1578:113:12", - "stateMutability": "view", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": null, - "id": 1859, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "convert", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1855, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1850, - "name": "_path", - "nodeType": "VariableDeclaration", - "scope": 1859, - "src": "1714:28:12", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", - "typeString": "contract IERC20Token[]" - }, - "typeName": { - "baseType": { - "contractScope": null, - "id": 1848, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "1714:11:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "id": 1849, - "length": null, - "nodeType": "ArrayTypeName", - "src": "1714:13:12", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", - "typeString": "contract IERC20Token[]" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1852, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1859, - "src": "1746:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1851, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1746:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1854, - "name": "_minReturn", - "nodeType": "VariableDeclaration", - "scope": 1859, - "src": "1765:18:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1853, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1765:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1710:76:12" - }, - "returnParameters": { - "id": 1858, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1857, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1859, - "src": "1813:7:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1856, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1813:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1812:9:12" - }, - "scope": 1968, - "src": "1694:128:12", - "stateMutability": "payable", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": null, - "id": 1875, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "convert2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1871, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1862, - "name": "_path", - "nodeType": "VariableDeclaration", - "scope": 1875, - "src": "1846:28:12", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", - "typeString": "contract IERC20Token[]" - }, - "typeName": { - "baseType": { - "contractScope": null, - "id": 1860, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "1846:11:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "id": 1861, - "length": null, - "nodeType": "ArrayTypeName", - "src": "1846:13:12", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", - "typeString": "contract IERC20Token[]" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1864, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1875, - "src": "1878:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1863, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1878:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1866, - "name": "_minReturn", - "nodeType": "VariableDeclaration", - "scope": 1875, - "src": "1897:18:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1865, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1897:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1868, - "name": "_affiliateAccount", - "nodeType": "VariableDeclaration", - "scope": 1875, - "src": "1919:25:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1867, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1919:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1870, - "name": "_affiliateFee", - "nodeType": "VariableDeclaration", - "scope": 1875, - "src": "1948:21:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1869, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1948:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1842:130:12" - }, - "returnParameters": { - "id": 1874, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1873, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1875, - "src": "1999:7:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1872, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1999:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1998:9:12" - }, - "scope": 1968, - "src": "1825:183:12", - "stateMutability": "payable", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": null, - "id": 1889, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "convertFor", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1885, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1878, - "name": "_path", - "nodeType": "VariableDeclaration", - "scope": 1889, - "src": "2034:28:12", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", - "typeString": "contract IERC20Token[]" - }, - "typeName": { - "baseType": { - "contractScope": null, - "id": 1876, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "2034:11:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "id": 1877, - "length": null, - "nodeType": "ArrayTypeName", - "src": "2034:13:12", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", - "typeString": "contract IERC20Token[]" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1880, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1889, - "src": "2066:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1879, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2066:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1882, - "name": "_minReturn", - "nodeType": "VariableDeclaration", - "scope": 1889, - "src": "2085:18:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1881, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2085:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1884, - "name": "_beneficiary", - "nodeType": "VariableDeclaration", - "scope": 1889, - "src": "2107:20:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1883, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2107:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2030:100:12" - }, - "returnParameters": { - "id": 1888, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1887, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1889, - "src": "2157:7:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1886, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2157:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2156:9:12" - }, - "scope": 1968, - "src": "2011:155:12", - "stateMutability": "payable", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": null, - "id": 1907, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "convertFor2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1903, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1892, - "name": "_path", - "nodeType": "VariableDeclaration", - "scope": 1907, - "src": "2193:28:12", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", - "typeString": "contract IERC20Token[]" - }, - "typeName": { - "baseType": { - "contractScope": null, - "id": 1890, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "2193:11:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "id": 1891, - "length": null, - "nodeType": "ArrayTypeName", - "src": "2193:13:12", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", - "typeString": "contract IERC20Token[]" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1894, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1907, - "src": "2225:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1893, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2225:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1896, - "name": "_minReturn", - "nodeType": "VariableDeclaration", - "scope": 1907, - "src": "2244:18:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1895, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2244:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1898, - "name": "_beneficiary", - "nodeType": "VariableDeclaration", - "scope": 1907, - "src": "2266:20:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1897, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2266:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1900, - "name": "_affiliateAccount", - "nodeType": "VariableDeclaration", - "scope": 1907, - "src": "2290:25:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1899, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2290:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1902, - "name": "_affiliateFee", - "nodeType": "VariableDeclaration", - "scope": 1907, - "src": "2319:21:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1901, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2319:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2189:154:12" - }, - "returnParameters": { - "id": 1906, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1905, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1907, - "src": "2370:7:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1904, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2370:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2369:9:12" - }, - "scope": 1968, - "src": "2169:210:12", - "stateMutability": "payable", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": null, - "id": 1919, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "claimAndConvert", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1915, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1910, - "name": "_path", - "nodeType": "VariableDeclaration", - "scope": 1919, - "src": "2410:28:12", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", - "typeString": "contract IERC20Token[]" - }, - "typeName": { - "baseType": { - "contractScope": null, - "id": 1908, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "2410:11:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "id": 1909, - "length": null, - "nodeType": "ArrayTypeName", - "src": "2410:13:12", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", - "typeString": "contract IERC20Token[]" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1912, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1919, - "src": "2442:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1911, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2442:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1914, - "name": "_minReturn", - "nodeType": "VariableDeclaration", - "scope": 1919, - "src": "2461:18:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1913, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2461:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2406:76:12" - }, - "returnParameters": { - "id": 1918, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1917, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1919, - "src": "2501:7:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1916, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2501:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2500:9:12" - }, - "scope": 1968, - "src": "2382:128:12", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": null, - "id": 1935, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "claimAndConvert2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1931, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1922, - "name": "_path", - "nodeType": "VariableDeclaration", - "scope": 1935, - "src": "2542:28:12", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", - "typeString": "contract IERC20Token[]" - }, - "typeName": { - "baseType": { - "contractScope": null, - "id": 1920, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "2542:11:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "id": 1921, - "length": null, - "nodeType": "ArrayTypeName", - "src": "2542:13:12", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", - "typeString": "contract IERC20Token[]" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1924, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1935, - "src": "2574:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1923, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2574:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1926, - "name": "_minReturn", - "nodeType": "VariableDeclaration", - "scope": 1935, - "src": "2593:18:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1925, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2593:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1928, - "name": "_affiliateAccount", - "nodeType": "VariableDeclaration", - "scope": 1935, - "src": "2615:25:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1927, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2615:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1930, - "name": "_affiliateFee", - "nodeType": "VariableDeclaration", - "scope": 1935, - "src": "2644:21:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1929, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2644:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2538:130:12" - }, - "returnParameters": { - "id": 1934, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1933, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1935, - "src": "2687:7:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1932, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2687:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2686:9:12" - }, - "scope": 1968, - "src": "2513:183:12", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" - }, - { - "body": null, - "documentation": null, - "id": 1949, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "claimAndConvertFor", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1945, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1938, - "name": "_path", - "nodeType": "VariableDeclaration", - "scope": 1949, - "src": "2730:28:12", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", - "typeString": "contract IERC20Token[]" - }, - "typeName": { - "baseType": { - "contractScope": null, - "id": 1936, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "2730:11:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "id": 1937, - "length": null, - "nodeType": "ArrayTypeName", - "src": "2730:13:12", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", - "typeString": "contract IERC20Token[]" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1940, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1949, - "src": "2762:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1939, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2762:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1942, - "name": "_minReturn", - "nodeType": "VariableDeclaration", - "scope": 1949, - "src": "2781:18:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1941, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2781:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1944, - "name": "_beneficiary", - "nodeType": "VariableDeclaration", - "scope": 1949, - "src": "2803:20:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1943, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2803:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2726:100:12" - }, - "returnParameters": { - "id": 1948, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1947, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1949, - "src": "2845:7:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1946, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2845:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "2844:9:12" + "name": "convertFor2", + "scope": 2311, + "stateMutability": "payable", + "superFunction": null, + "visibility": "external" }, - "scope": 1968, - "src": "2699:155:12", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_path", + "scope": 2250, + "stateVariable": false, + "storageLocation": "calldata", + "type": "contract IERC20Token[]", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "length": null, + "type": "contract IERC20Token[]" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1570, + "type": "contract IERC20Token" + }, + "id": 2233, + "name": "UserDefinedTypeName", + "src": "2197:11:14" + } + ], + "id": 2234, + "name": "ArrayTypeName", + "src": "2197:13:14" + } + ], + "id": 2235, + "name": "VariableDeclaration", + "src": "2197:28:14" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2250, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2236, + "name": "ElementaryTypeName", + "src": "2229:7:14" + } + ], + "id": 2237, + "name": "VariableDeclaration", + "src": "2229:15:14" + }, + { + "attributes": { + "constant": false, + "name": "_minReturn", + "scope": 2250, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2238, + "name": "ElementaryTypeName", + "src": "2248:7:14" + } + ], + "id": 2239, + "name": "VariableDeclaration", + "src": "2248:18:14" + }, + { + "attributes": { + "constant": false, + "name": "_beneficiary", + "scope": 2250, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 2240, + "name": "ElementaryTypeName", + "src": "2270:7:14" + } + ], + "id": 2241, + "name": "VariableDeclaration", + "src": "2270:20:14" + }, + { + "attributes": { + "constant": false, + "name": "_affiliateAccount", + "scope": 2250, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 2242, + "name": "ElementaryTypeName", + "src": "2294:7:14" + } + ], + "id": 2243, + "name": "VariableDeclaration", + "src": "2294:25:14" + }, + { + "attributes": { + "constant": false, + "name": "_affiliateFee", + "scope": 2250, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2244, + "name": "ElementaryTypeName", + "src": "2323:7:14" + } + ], + "id": 2245, + "name": "VariableDeclaration", + "src": "2323:21:14" + } + ], + "id": 2246, + "name": "ParameterList", + "src": "2193:154:14" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2250, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2247, + "name": "ElementaryTypeName", + "src": "2374:7:14" + } + ], + "id": 2248, + "name": "VariableDeclaration", + "src": "2374:7:14" + } + ], + "id": 2249, + "name": "ParameterList", + "src": "2373:9:14" + } + ], + "id": 2250, + "name": "FunctionDefinition", + "src": "2173:210:14" }, { - "body": null, - "documentation": null, - "id": 1967, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "claimAndConvertFor2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1963, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1952, - "name": "_path", - "nodeType": "VariableDeclaration", - "scope": 1967, - "src": "2889:28:12", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_calldata_ptr", - "typeString": "contract IERC20Token[]" - }, - "typeName": { - "baseType": { - "contractScope": null, - "id": 1950, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "2889:11:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "claimAndConvert", + "scope": 2311, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_path", + "scope": 2262, + "stateVariable": false, + "storageLocation": "calldata", + "type": "contract IERC20Token[]", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "length": null, + "type": "contract IERC20Token[]" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1570, + "type": "contract IERC20Token" + }, + "id": 2251, + "name": "UserDefinedTypeName", + "src": "2414:11:14" + } + ], + "id": 2252, + "name": "ArrayTypeName", + "src": "2414:13:14" } + ], + "id": 2253, + "name": "VariableDeclaration", + "src": "2414:28:14" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2262, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" }, - "id": 1951, - "length": null, - "nodeType": "ArrayTypeName", - "src": "2889:13:12", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_contract$_IERC20Token_$1386_$dyn_storage_ptr", - "typeString": "contract IERC20Token[]" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1954, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1967, - "src": "2921:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1953, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2921:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1956, - "name": "_minReturn", - "nodeType": "VariableDeclaration", - "scope": 1967, - "src": "2940:18:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1955, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2940:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1958, - "name": "_beneficiary", - "nodeType": "VariableDeclaration", - "scope": 1967, - "src": "2962:20:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1957, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2962:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1960, - "name": "_affiliateAccount", - "nodeType": "VariableDeclaration", - "scope": 1967, - "src": "2986:25:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1959, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2986:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1962, - "name": "_affiliateFee", - "nodeType": "VariableDeclaration", - "scope": 1967, - "src": "3015:21:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1961, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3015:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2254, + "name": "ElementaryTypeName", + "src": "2446:7:14" + } + ], + "id": 2255, + "name": "VariableDeclaration", + "src": "2446:15:14" + }, + { + "attributes": { + "constant": false, + "name": "_minReturn", + "scope": 2262, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2256, + "name": "ElementaryTypeName", + "src": "2465:7:14" + } + ], + "id": 2257, + "name": "VariableDeclaration", + "src": "2465:18:14" + } + ], + "id": 2258, + "name": "ParameterList", + "src": "2410:76:14" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2262, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2259, + "name": "ElementaryTypeName", + "src": "2505:7:14" + } + ], + "id": 2260, + "name": "VariableDeclaration", + "src": "2505:7:14" + } + ], + "id": 2261, + "name": "ParameterList", + "src": "2504:9:14" + } + ], + "id": 2262, + "name": "FunctionDefinition", + "src": "2386:128:14" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "2885:154:12" + "name": "claimAndConvert2", + "scope": 2311, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" }, - "returnParameters": { - "id": 1966, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1965, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1967, - "src": "3058:7:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1964, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3058:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_path", + "scope": 2278, + "stateVariable": false, + "storageLocation": "calldata", + "type": "contract IERC20Token[]", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "length": null, + "type": "contract IERC20Token[]" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1570, + "type": "contract IERC20Token" + }, + "id": 2263, + "name": "UserDefinedTypeName", + "src": "2546:11:14" + } + ], + "id": 2264, + "name": "ArrayTypeName", + "src": "2546:13:14" + } + ], + "id": 2265, + "name": "VariableDeclaration", + "src": "2546:28:14" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2278, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2266, + "name": "ElementaryTypeName", + "src": "2578:7:14" + } + ], + "id": 2267, + "name": "VariableDeclaration", + "src": "2578:15:14" + }, + { + "attributes": { + "constant": false, + "name": "_minReturn", + "scope": 2278, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2268, + "name": "ElementaryTypeName", + "src": "2597:7:14" + } + ], + "id": 2269, + "name": "VariableDeclaration", + "src": "2597:18:14" + }, + { + "attributes": { + "constant": false, + "name": "_affiliateAccount", + "scope": 2278, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 2270, + "name": "ElementaryTypeName", + "src": "2619:7:14" + } + ], + "id": 2271, + "name": "VariableDeclaration", + "src": "2619:25:14" + }, + { + "attributes": { + "constant": false, + "name": "_affiliateFee", + "scope": 2278, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2272, + "name": "ElementaryTypeName", + "src": "2648:7:14" + } + ], + "id": 2273, + "name": "VariableDeclaration", + "src": "2648:21:14" + } + ], + "id": 2274, + "name": "ParameterList", + "src": "2542:130:14" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2278, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2275, + "name": "ElementaryTypeName", + "src": "2691:7:14" + } + ], + "id": 2276, + "name": "VariableDeclaration", + "src": "2691:7:14" + } + ], + "id": 2277, + "name": "ParameterList", + "src": "2690:9:14" + } + ], + "id": 2278, + "name": "FunctionDefinition", + "src": "2517:183:14" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "3057:9:12" + "name": "claimAndConvertFor", + "scope": 2311, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" }, - "scope": 1968, - "src": "2857:210:12", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_path", + "scope": 2292, + "stateVariable": false, + "storageLocation": "calldata", + "type": "contract IERC20Token[]", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "length": null, + "type": "contract IERC20Token[]" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1570, + "type": "contract IERC20Token" + }, + "id": 2279, + "name": "UserDefinedTypeName", + "src": "2734:11:14" + } + ], + "id": 2280, + "name": "ArrayTypeName", + "src": "2734:13:14" + } + ], + "id": 2281, + "name": "VariableDeclaration", + "src": "2734:28:14" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2292, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2282, + "name": "ElementaryTypeName", + "src": "2766:7:14" + } + ], + "id": 2283, + "name": "VariableDeclaration", + "src": "2766:15:14" + }, + { + "attributes": { + "constant": false, + "name": "_minReturn", + "scope": 2292, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2284, + "name": "ElementaryTypeName", + "src": "2785:7:14" + } + ], + "id": 2285, + "name": "VariableDeclaration", + "src": "2785:18:14" + }, + { + "attributes": { + "constant": false, + "name": "_beneficiary", + "scope": 2292, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 2286, + "name": "ElementaryTypeName", + "src": "2807:7:14" + } + ], + "id": 2287, + "name": "VariableDeclaration", + "src": "2807:20:14" + } + ], + "id": 2288, + "name": "ParameterList", + "src": "2730:100:14" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2292, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2289, + "name": "ElementaryTypeName", + "src": "2849:7:14" + } + ], + "id": 2290, + "name": "VariableDeclaration", + "src": "2849:7:14" + } + ], + "id": 2291, + "name": "ParameterList", + "src": "2848:9:14" + } + ], + "id": 2292, + "name": "FunctionDefinition", + "src": "2703:155:14" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "claimAndConvertFor2", + "scope": 2311, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_path", + "scope": 2310, + "stateVariable": false, + "storageLocation": "calldata", + "type": "contract IERC20Token[]", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "length": null, + "type": "contract IERC20Token[]" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1570, + "type": "contract IERC20Token" + }, + "id": 2293, + "name": "UserDefinedTypeName", + "src": "2893:11:14" + } + ], + "id": 2294, + "name": "ArrayTypeName", + "src": "2893:13:14" + } + ], + "id": 2295, + "name": "VariableDeclaration", + "src": "2893:28:14" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2310, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2296, + "name": "ElementaryTypeName", + "src": "2925:7:14" + } + ], + "id": 2297, + "name": "VariableDeclaration", + "src": "2925:15:14" + }, + { + "attributes": { + "constant": false, + "name": "_minReturn", + "scope": 2310, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2298, + "name": "ElementaryTypeName", + "src": "2944:7:14" + } + ], + "id": 2299, + "name": "VariableDeclaration", + "src": "2944:18:14" + }, + { + "attributes": { + "constant": false, + "name": "_beneficiary", + "scope": 2310, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 2300, + "name": "ElementaryTypeName", + "src": "2966:7:14" + } + ], + "id": 2301, + "name": "VariableDeclaration", + "src": "2966:20:14" + }, + { + "attributes": { + "constant": false, + "name": "_affiliateAccount", + "scope": 2310, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 2302, + "name": "ElementaryTypeName", + "src": "2990:7:14" + } + ], + "id": 2303, + "name": "VariableDeclaration", + "src": "2990:25:14" + }, + { + "attributes": { + "constant": false, + "name": "_affiliateFee", + "scope": 2310, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2304, + "name": "ElementaryTypeName", + "src": "3019:7:14" + } + ], + "id": 2305, + "name": "VariableDeclaration", + "src": "3019:21:14" + } + ], + "id": 2306, + "name": "ParameterList", + "src": "2889:154:14" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2310, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2307, + "name": "ElementaryTypeName", + "src": "3062:7:14" + } + ], + "id": 2308, + "name": "VariableDeclaration", + "src": "3062:7:14" + } + ], + "id": 2309, + "name": "ParameterList", + "src": "3061:9:14" + } + ], + "id": 2310, + "name": "FunctionDefinition", + "src": "2861:210:14" } ], - "scope": 1969, - "src": "119:2950:12" + "id": 2311, + "name": "ContractDefinition", + "src": "119:2954:14" } ], - "src": "0:3070:12" + "id": 2312, + "name": "SourceUnit", + "src": "0:3074:14" }, "compiler": { "name": "solc", "version": "0.5.16+commit.9c3226ce.Emscripten.clang" }, "networks": {}, - "schemaVersion": "3.3.2", - "updatedAt": "2021-03-26T10:10:09.419Z", + "schemaVersion": "3.4.1", + "updatedAt": "2022-05-04T05:07:48.637Z", "devdoc": { "methods": {} }, diff --git a/rbtcwrapperproxy/build/contracts/ISovrynSwapX.json b/rbtcwrapperproxy/build/contracts/ISovrynSwapX.json index 8005e04..291c028 100644 --- a/rbtcwrapperproxy/build/contracts/ISovrynSwapX.json +++ b/rbtcwrapperproxy/build/contracts/ISovrynSwapX.json @@ -73,25 +73,25 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_xTransferId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_for\",\"type\":\"address\"}],\"name\":\"getXTransferAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"token\",\"outputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_toBlockchain\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"_to\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_id\",\"type\":\"uint256\"}],\"name\":\"xTransfer\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISovrynSwapX.sol\":\"ISovrynSwapX\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol\":{\"keccak256\":\"0x85f3acaf53418f63817c8b5d8e047203891bbb9c3fc9558a541a8c446857783b\",\"urls\":[\"bzz-raw://b80d05aeb3fc866a791d3de7f7a8d7c2a65dddc72ad436920e3f043414c82158\",\"dweb:/ipfs/QmVXNmZfw6pQ2xg6xJwHR5ptCxGKx9PRzX9dgQWK7KUTTE\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISovrynSwapX.sol\":{\"keccak256\":\"0x946afc11ce88d7009675d2300587bae469c245d97c741f0b72b427a2f08141c4\",\"urls\":[\"bzz-raw://5c7c6f81cc8bfefd518a3f4cc44fb5995ba137a10d0da94a3b7802939b63f39d\",\"dweb:/ipfs/QmWs6EbpwZH9LFpuuVJWDMHHfZ81KFqtVF8NAWSoES4x2x\"]}},\"version\":1}", + "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_xTransferId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_for\",\"type\":\"address\"}],\"name\":\"getXTransferAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"token\",\"outputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_toBlockchain\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"_to\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_id\",\"type\":\"uint256\"}],\"name\":\"xTransfer\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISovrynSwapX.sol\":\"ISovrynSwapX\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol\":{\"keccak256\":\"0x85f3acaf53418f63817c8b5d8e047203891bbb9c3fc9558a541a8c446857783b\",\"urls\":[\"bzz-raw://b80d05aeb3fc866a791d3de7f7a8d7c2a65dddc72ad436920e3f043414c82158\",\"dweb:/ipfs/QmVXNmZfw6pQ2xg6xJwHR5ptCxGKx9PRzX9dgQWK7KUTTE\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISovrynSwapX.sol\":{\"keccak256\":\"0x946afc11ce88d7009675d2300587bae469c245d97c741f0b72b427a2f08141c4\",\"urls\":[\"bzz-raw://5c7c6f81cc8bfefd518a3f4cc44fb5995ba137a10d0da94a3b7802939b63f39d\",\"dweb:/ipfs/QmWs6EbpwZH9LFpuuVJWDMHHfZ81KFqtVF8NAWSoES4x2x\"]}},\"version\":1}", "bytecode": "0x", "deployedBytecode": "0x", "sourceMap": "", "deployedSourceMap": "", "source": "pragma solidity >=0.5.0 <0.6.0;\nimport \"./IERC20Token.sol\";\n\ncontract ISovrynSwapX {\n\tfunction token() public view returns (IERC20Token) {\n\t\tthis;\n\t}\n\n\tfunction xTransfer(\n\t\tbytes32 _toBlockchain,\n\t\tbytes32 _to,\n\t\tuint256 _amount,\n\t\tuint256 _id\n\t) public;\n\n\tfunction getXTransferAmount(uint256 _xTransferId, address _for) public view returns (uint256);\n}\n", - "sourcePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISovrynSwapX.sol", + "sourcePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISovrynSwapX.sol", "ast": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISovrynSwapX.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISovrynSwapX.sol", "exportedSymbols": { "ISovrynSwapX": [ - 2000 + 2750 ] }, - "id": 2001, + "id": 2751, "nodeType": "SourceUnit", "nodes": [ { - "id": 1970, + "id": 2720, "literals": [ "solidity", ">=", @@ -102,16 +102,16 @@ ".0" ], "nodeType": "PragmaDirective", - "src": "0:31:13" + "src": "0:31:17" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol", "file": "./IERC20Token.sol", - "id": 1971, + "id": 2721, "nodeType": "ImportDirective", - "scope": 2001, - "sourceUnit": 1387, - "src": "32:27:13", + "scope": 2751, + "sourceUnit": 1978, + "src": "32:27:17", "symbolAliases": [], "unitAlias": "" }, @@ -121,78 +121,78 @@ "contractKind": "contract", "documentation": null, "fullyImplemented": false, - "id": 2000, + "id": 2750, "linearizedBaseContracts": [ - 2000 + 2750 ], "name": "ISovrynSwapX", "nodeType": "ContractDefinition", "nodes": [ { "body": { - "id": 1978, + "id": 2728, "nodeType": "Block", - "src": "137:12:13", + "src": "137:12:17", "statements": [ { "expression": { "argumentTypes": null, - "id": 1976, + "id": 2726, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2275, - "src": "141:4:13", + "referencedDeclaration": 3546, + "src": "141:4:17", "typeDescriptions": { - "typeIdentifier": "t_contract$_ISovrynSwapX_$2000", + "typeIdentifier": "t_contract$_ISovrynSwapX_$2750", "typeString": "contract ISovrynSwapX" } }, - "id": 1977, + "id": 2727, "nodeType": "ExpressionStatement", - "src": "141:4:13" + "src": "141:4:17" } ] }, "documentation": null, - "id": 1979, + "id": 2729, "implemented": true, "kind": "function", "modifiers": [], "name": "token", "nodeType": "FunctionDefinition", "parameters": { - "id": 1972, + "id": 2722, "nodeType": "ParameterList", "parameters": [], - "src": "100:2:13" + "src": "100:2:17" }, "returnParameters": { - "id": 1975, + "id": 2725, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1974, + "id": 2724, "name": "", "nodeType": "VariableDeclaration", - "scope": 1979, - "src": "124:11:13", + "scope": 2729, + "src": "124:11:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" }, "typeName": { "contractScope": null, - "id": 1973, + "id": 2723, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "124:11:13", + "referencedDeclaration": 1977, + "src": "124:11:17", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" } }, @@ -200,10 +200,10 @@ "visibility": "internal" } ], - "src": "123:13:13" + "src": "123:13:17" }, - "scope": 2000, - "src": "86:63:13", + "scope": 2750, + "src": "86:63:17", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -211,23 +211,23 @@ { "body": null, "documentation": null, - "id": 1990, + "id": 2740, "implemented": false, "kind": "function", "modifiers": [], "name": "xTransfer", "nodeType": "FunctionDefinition", "parameters": { - "id": 1988, + "id": 2738, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1981, + "id": 2731, "name": "_toBlockchain", "nodeType": "VariableDeclaration", - "scope": 1990, - "src": "174:21:13", + "scope": 2740, + "src": "174:21:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -235,10 +235,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1980, + "id": 2730, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "174:7:13", + "src": "174:7:17", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -249,11 +249,11 @@ }, { "constant": false, - "id": 1983, + "id": 2733, "name": "_to", "nodeType": "VariableDeclaration", - "scope": 1990, - "src": "199:11:13", + "scope": 2740, + "src": "199:11:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -261,10 +261,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1982, + "id": 2732, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "199:7:13", + "src": "199:7:17", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -275,11 +275,11 @@ }, { "constant": false, - "id": 1985, + "id": 2735, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1990, - "src": "214:15:13", + "scope": 2740, + "src": "214:15:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -287,10 +287,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1984, + "id": 2734, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "214:7:13", + "src": "214:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -301,11 +301,11 @@ }, { "constant": false, - "id": 1987, + "id": 2737, "name": "_id", "nodeType": "VariableDeclaration", - "scope": 1990, - "src": "233:11:13", + "scope": 2740, + "src": "233:11:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -313,10 +313,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1986, + "id": 2736, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "233:7:13", + "src": "233:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -326,16 +326,16 @@ "visibility": "internal" } ], - "src": "170:77:13" + "src": "170:77:17" }, "returnParameters": { - "id": 1989, + "id": 2739, "nodeType": "ParameterList", "parameters": [], - "src": "254:0:13" + "src": "254:0:17" }, - "scope": 2000, - "src": "152:103:13", + "scope": 2750, + "src": "152:103:17", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -343,23 +343,23 @@ { "body": null, "documentation": null, - "id": 1999, + "id": 2749, "implemented": false, "kind": "function", "modifiers": [], "name": "getXTransferAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1995, + "id": 2745, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1992, + "id": 2742, "name": "_xTransferId", "nodeType": "VariableDeclaration", - "scope": 1999, - "src": "286:20:13", + "scope": 2749, + "src": "286:20:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -367,10 +367,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1991, + "id": 2741, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "286:7:13", + "src": "286:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -381,11 +381,11 @@ }, { "constant": false, - "id": 1994, + "id": 2744, "name": "_for", "nodeType": "VariableDeclaration", - "scope": 1999, - "src": "308:12:13", + "scope": 2749, + "src": "308:12:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -393,10 +393,10 @@ "typeString": "address" }, "typeName": { - "id": 1993, + "id": 2743, "name": "address", "nodeType": "ElementaryTypeName", - "src": "308:7:13", + "src": "308:7:17", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -407,19 +407,19 @@ "visibility": "internal" } ], - "src": "285:36:13" + "src": "285:36:17" }, "returnParameters": { - "id": 1998, + "id": 2748, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1997, + "id": 2747, "name": "", "nodeType": "VariableDeclaration", - "scope": 1999, - "src": "343:7:13", + "scope": 2749, + "src": "343:7:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -427,10 +427,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1996, + "id": 2746, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "343:7:13", + "src": "343:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -440,403 +440,451 @@ "visibility": "internal" } ], - "src": "342:9:13" + "src": "342:9:17" }, - "scope": 2000, - "src": "258:94:13", + "scope": 2750, + "src": "258:94:17", "stateMutability": "view", "superFunction": null, "visibility": "public" } ], - "scope": 2001, - "src": "61:293:13" + "scope": 2751, + "src": "61:293:17" } ], - "src": "0:355:13" + "src": "0:355:17" }, "legacyAST": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ISovrynSwapX.sol", - "exportedSymbols": { - "ISovrynSwapX": [ - 2000 - ] + "attributes": { + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ISovrynSwapX.sol", + "exportedSymbols": { + "ISovrynSwapX": [ + 2750 + ] + } }, - "id": 2001, - "nodeType": "SourceUnit", - "nodes": [ + "children": [ { - "id": 1970, - "literals": [ - "solidity", - ">=", - "0.5", - ".0", - "<", - "0.6", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "0:31:13" + "attributes": { + "literals": [ + "solidity", + ">=", + "0.5", + ".0", + "<", + "0.6", + ".0" + ] + }, + "id": 2720, + "name": "PragmaDirective", + "src": "0:31:17" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol", - "file": "./IERC20Token.sol", - "id": 1971, - "nodeType": "ImportDirective", - "scope": 2001, - "sourceUnit": 1387, - "src": "32:27:13", - "symbolAliases": [], - "unitAlias": "" + "attributes": { + "SourceUnit": 1978, + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol", + "file": "./IERC20Token.sol", + "scope": 2751, + "symbolAliases": [ + null + ], + "unitAlias": "" + }, + "id": 2721, + "name": "ImportDirective", + "src": "32:27:17" }, { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": false, - "id": 2000, - "linearizedBaseContracts": [ - 2000 - ], - "name": "ISovrynSwapX", - "nodeType": "ContractDefinition", - "nodes": [ + "attributes": { + "baseContracts": [ + null + ], + "contractDependencies": [ + null + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": false, + "linearizedBaseContracts": [ + 2750 + ], + "name": "ISovrynSwapX", + "scope": 2751 + }, + "children": [ { - "body": { - "id": 1978, - "nodeType": "Block", - "src": "137:12:13", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1976, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2275, - "src": "141:4:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ISovrynSwapX_$2000", - "typeString": "contract ISovrynSwapX" - } - }, - "id": 1977, - "nodeType": "ExpressionStatement", - "src": "141:4:13" - } - ] - }, - "documentation": null, - "id": 1979, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "token", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1972, - "nodeType": "ParameterList", - "parameters": [], - "src": "100:2:13" - }, - "returnParameters": { - "id": 1975, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1974, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1979, - "src": "124:11:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - }, - "typeName": { - "contractScope": null, - "id": 1973, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "124:11:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "123:13:13" + "name": "token", + "scope": 2750, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" }, - "scope": 2000, - "src": "86:63:13", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2722, + "name": "ParameterList", + "src": "100:2:17" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2729, + "stateVariable": false, + "storageLocation": "default", + "type": "contract IERC20Token", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1977, + "type": "contract IERC20Token" + }, + "id": 2723, + "name": "UserDefinedTypeName", + "src": "124:11:17" + } + ], + "id": 2724, + "name": "VariableDeclaration", + "src": "124:11:17" + } + ], + "id": 2725, + "name": "ParameterList", + "src": "123:13:17" + }, + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3546, + "type": "contract ISovrynSwapX", + "value": "this" + }, + "id": 2726, + "name": "Identifier", + "src": "141:4:17" + } + ], + "id": 2727, + "name": "ExpressionStatement", + "src": "141:4:17" + } + ], + "id": 2728, + "name": "Block", + "src": "137:12:17" + } + ], + "id": 2729, + "name": "FunctionDefinition", + "src": "86:63:17" }, { - "body": null, - "documentation": null, - "id": 1990, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "xTransfer", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1988, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1981, - "name": "_toBlockchain", - "nodeType": "VariableDeclaration", - "scope": 1990, - "src": "174:21:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1980, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "174:7:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1983, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 1990, - "src": "199:11:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1982, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "199:7:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1985, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1990, - "src": "214:15:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1984, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "214:7:13", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1987, - "name": "_id", - "nodeType": "VariableDeclaration", - "scope": 1990, - "src": "233:11:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1986, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "233:7:13", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "170:77:13" - }, - "returnParameters": { - "id": 1989, - "nodeType": "ParameterList", - "parameters": [], - "src": "254:0:13" + "name": "xTransfer", + "scope": 2750, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" }, - "scope": 2000, - "src": "152:103:13", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_toBlockchain", + "scope": 2740, + "stateVariable": false, + "storageLocation": "default", + "type": "bytes32", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 2730, + "name": "ElementaryTypeName", + "src": "174:7:17" + } + ], + "id": 2731, + "name": "VariableDeclaration", + "src": "174:21:17" + }, + { + "attributes": { + "constant": false, + "name": "_to", + "scope": 2740, + "stateVariable": false, + "storageLocation": "default", + "type": "bytes32", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bytes32", + "type": "bytes32" + }, + "id": 2732, + "name": "ElementaryTypeName", + "src": "199:7:17" + } + ], + "id": 2733, + "name": "VariableDeclaration", + "src": "199:11:17" + }, + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2740, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2734, + "name": "ElementaryTypeName", + "src": "214:7:17" + } + ], + "id": 2735, + "name": "VariableDeclaration", + "src": "214:15:17" + }, + { + "attributes": { + "constant": false, + "name": "_id", + "scope": 2740, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2736, + "name": "ElementaryTypeName", + "src": "233:7:17" + } + ], + "id": 2737, + "name": "VariableDeclaration", + "src": "233:11:17" + } + ], + "id": 2738, + "name": "ParameterList", + "src": "170:77:17" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2739, + "name": "ParameterList", + "src": "254:0:17" + } + ], + "id": 2740, + "name": "FunctionDefinition", + "src": "152:103:17" }, { - "body": null, - "documentation": null, - "id": 1999, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getXTransferAmount", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1995, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1992, - "name": "_xTransferId", - "nodeType": "VariableDeclaration", - "scope": 1999, - "src": "286:20:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1991, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "286:7:13", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1994, - "name": "_for", - "nodeType": "VariableDeclaration", - "scope": 1999, - "src": "308:12:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1993, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "308:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "285:36:13" + "name": "getXTransferAmount", + "scope": 2750, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" }, - "returnParameters": { - "id": 1998, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1997, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1999, - "src": "343:7:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1996, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "343:7:13", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "342:9:13" - }, - "scope": 2000, - "src": "258:94:13", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_xTransferId", + "scope": 2749, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2741, + "name": "ElementaryTypeName", + "src": "286:7:17" + } + ], + "id": 2742, + "name": "VariableDeclaration", + "src": "286:20:17" + }, + { + "attributes": { + "constant": false, + "name": "_for", + "scope": 2749, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 2743, + "name": "ElementaryTypeName", + "src": "308:7:17" + } + ], + "id": 2744, + "name": "VariableDeclaration", + "src": "308:12:17" + } + ], + "id": 2745, + "name": "ParameterList", + "src": "285:36:17" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 2749, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2746, + "name": "ElementaryTypeName", + "src": "343:7:17" + } + ], + "id": 2747, + "name": "VariableDeclaration", + "src": "343:7:17" + } + ], + "id": 2748, + "name": "ParameterList", + "src": "342:9:17" + } + ], + "id": 2749, + "name": "FunctionDefinition", + "src": "258:94:17" } ], - "scope": 2001, - "src": "61:293:13" + "id": 2750, + "name": "ContractDefinition", + "src": "61:293:17" } ], - "src": "0:355:13" + "id": 2751, + "name": "SourceUnit", + "src": "0:355:17" }, "compiler": { "name": "solc", "version": "0.5.16+commit.9c3226ce.Emscripten.clang" }, "networks": {}, - "schemaVersion": "3.3.2", - "updatedAt": "2021-03-26T10:10:09.422Z", + "schemaVersion": "3.4.1", + "updatedAt": "2022-02-15T06:13:50.481Z", "devdoc": { "methods": {} }, diff --git a/rbtcwrapperproxy/build/contracts/ITokenHolder.json b/rbtcwrapperproxy/build/contracts/ITokenHolder.json index fd8835b..c9f4671 100644 --- a/rbtcwrapperproxy/build/contracts/ITokenHolder.json +++ b/rbtcwrapperproxy/build/contracts/ITokenHolder.json @@ -66,25 +66,25 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":false,\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"withdrawTokens\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ITokenHolder.sol\":\"ITokenHolder\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol\":{\"keccak256\":\"0x85f3acaf53418f63817c8b5d8e047203891bbb9c3fc9558a541a8c446857783b\",\"urls\":[\"bzz-raw://b80d05aeb3fc866a791d3de7f7a8d7c2a65dddc72ad436920e3f043414c82158\",\"dweb:/ipfs/QmVXNmZfw6pQ2xg6xJwHR5ptCxGKx9PRzX9dgQWK7KUTTE\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IOwned.sol\":{\"keccak256\":\"0xa82c5cce1bb1c13dccdcb590bcbfeda3409efb67adc55fce3a301c76075e320c\",\"urls\":[\"bzz-raw://272cd112c211795db57e41fd9c49aae08ead3f7169e73dd8f594c1a8ca3932ad\",\"dweb:/ipfs/QmVTXpDDZEJ6aPUt9f6dTLupE16Rh4HembDTNR2X678svt\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ITokenHolder.sol\":{\"keccak256\":\"0xf4285fadaccd2065e9373f7e9ba9e9d510450ef5b00a297b04b35236f3ae8021\",\"urls\":[\"bzz-raw://52c708e32e441410130ef32316924621cf2daef5d94e043e5d2dba47df89500f\",\"dweb:/ipfs/QmXzFDueMA48Y2Cvyx9cdtSTcM6c3b2Y437BhGsfACvRsG\"]}},\"version\":1}", + "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":false,\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"withdrawTokens\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ITokenHolder.sol\":\"ITokenHolder\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol\":{\"keccak256\":\"0x85f3acaf53418f63817c8b5d8e047203891bbb9c3fc9558a541a8c446857783b\",\"urls\":[\"bzz-raw://b80d05aeb3fc866a791d3de7f7a8d7c2a65dddc72ad436920e3f043414c82158\",\"dweb:/ipfs/QmVXNmZfw6pQ2xg6xJwHR5ptCxGKx9PRzX9dgQWK7KUTTE\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IOwned.sol\":{\"keccak256\":\"0xa82c5cce1bb1c13dccdcb590bcbfeda3409efb67adc55fce3a301c76075e320c\",\"urls\":[\"bzz-raw://272cd112c211795db57e41fd9c49aae08ead3f7169e73dd8f594c1a8ca3932ad\",\"dweb:/ipfs/QmVTXpDDZEJ6aPUt9f6dTLupE16Rh4HembDTNR2X678svt\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ITokenHolder.sol\":{\"keccak256\":\"0xf4285fadaccd2065e9373f7e9ba9e9d510450ef5b00a297b04b35236f3ae8021\",\"urls\":[\"bzz-raw://52c708e32e441410130ef32316924621cf2daef5d94e043e5d2dba47df89500f\",\"dweb:/ipfs/QmXzFDueMA48Y2Cvyx9cdtSTcM6c3b2Y437BhGsfACvRsG\"]}},\"version\":1}", "bytecode": "0x", "deployedBytecode": "0x", "sourceMap": "", "deployedSourceMap": "", "source": "pragma solidity >=0.5.0 <0.6.0;\n\nimport \"./IOwned.sol\";\nimport \"./IERC20Token.sol\";\n\n/*\n Token Holder interface\n*/\ncontract ITokenHolder is IOwned {\n\tfunction withdrawTokens(\n\t\tIERC20Token _token,\n\t\taddress _to,\n\t\tuint256 _amount\n\t) public;\n}\n", - "sourcePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ITokenHolder.sol", + "sourcePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ITokenHolder.sol", "ast": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ITokenHolder.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ITokenHolder.sol", "exportedSymbols": { "ITokenHolder": [ - 2016 + 2766 ] }, - "id": 2017, + "id": 2767, "nodeType": "SourceUnit", "nodes": [ { - "id": 2002, + "id": 2752, "literals": [ "solidity", ">=", @@ -95,27 +95,27 @@ ".0" ], "nodeType": "PragmaDirective", - "src": "0:31:14" + "src": "0:31:18" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IOwned.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IOwned.sol", "file": "./IOwned.sol", - "id": 2003, + "id": 2753, "nodeType": "ImportDirective", - "scope": 2017, - "sourceUnit": 1682, - "src": "33:22:14", + "scope": 2767, + "sourceUnit": 2332, + "src": "33:22:18", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol", "file": "./IERC20Token.sol", - "id": 2004, + "id": 2754, "nodeType": "ImportDirective", - "scope": 2017, - "sourceUnit": 1387, - "src": "56:27:14", + "scope": 2767, + "sourceUnit": 1978, + "src": "56:27:18", "symbolAliases": [], "unitAlias": "" }, @@ -125,31 +125,31 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 2005, + "id": 2755, "name": "IOwned", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1681, - "src": "143:6:14", + "referencedDeclaration": 2331, + "src": "143:6:18", "typeDescriptions": { - "typeIdentifier": "t_contract$_IOwned_$1681", + "typeIdentifier": "t_contract$_IOwned_$2331", "typeString": "contract IOwned" } }, - "id": 2006, + "id": 2756, "nodeType": "InheritanceSpecifier", - "src": "143:6:14" + "src": "143:6:18" } ], "contractDependencies": [ - 1681 + 2331 ], "contractKind": "contract", "documentation": null, "fullyImplemented": false, - "id": 2016, + "id": 2766, "linearizedBaseContracts": [ - 2016, - 1681 + 2766, + 2331 ], "name": "ITokenHolder", "nodeType": "ContractDefinition", @@ -157,38 +157,38 @@ { "body": null, "documentation": null, - "id": 2015, + "id": 2765, "implemented": false, "kind": "function", "modifiers": [], "name": "withdrawTokens", "nodeType": "FunctionDefinition", "parameters": { - "id": 2013, + "id": 2763, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2008, + "id": 2758, "name": "_token", "nodeType": "VariableDeclaration", - "scope": 2015, - "src": "180:18:14", + "scope": 2765, + "src": "180:18:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" }, "typeName": { "contractScope": null, - "id": 2007, + "id": 2757, "name": "IERC20Token", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "180:11:14", + "referencedDeclaration": 1977, + "src": "180:11:18", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", + "typeIdentifier": "t_contract$_IERC20Token_$1977", "typeString": "contract IERC20Token" } }, @@ -197,11 +197,11 @@ }, { "constant": false, - "id": 2010, + "id": 2760, "name": "_to", "nodeType": "VariableDeclaration", - "scope": 2015, - "src": "202:11:14", + "scope": 2765, + "src": "202:11:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -209,10 +209,10 @@ "typeString": "address" }, "typeName": { - "id": 2009, + "id": 2759, "name": "address", "nodeType": "ElementaryTypeName", - "src": "202:7:14", + "src": "202:7:18", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -224,11 +224,11 @@ }, { "constant": false, - "id": 2012, + "id": 2762, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 2015, - "src": "217:15:14", + "scope": 2765, + "src": "217:15:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -236,10 +236,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2011, + "id": 2761, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "217:7:14", + "src": "217:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -249,231 +249,258 @@ "visibility": "internal" } ], - "src": "176:59:14" + "src": "176:59:18" }, "returnParameters": { - "id": 2014, + "id": 2764, "nodeType": "ParameterList", "parameters": [], - "src": "242:0:14" + "src": "242:0:18" }, - "scope": 2016, - "src": "153:90:14", + "scope": 2766, + "src": "153:90:18", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" } ], - "scope": 2017, - "src": "118:127:14" + "scope": 2767, + "src": "118:127:18" } ], - "src": "0:246:14" + "src": "0:246:18" }, "legacyAST": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/ITokenHolder.sol", - "exportedSymbols": { - "ITokenHolder": [ - 2016 - ] + "attributes": { + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/ITokenHolder.sol", + "exportedSymbols": { + "ITokenHolder": [ + 2766 + ] + } }, - "id": 2017, - "nodeType": "SourceUnit", - "nodes": [ + "children": [ { - "id": 2002, - "literals": [ - "solidity", - ">=", - "0.5", - ".0", - "<", - "0.6", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "0:31:14" + "attributes": { + "literals": [ + "solidity", + ">=", + "0.5", + ".0", + "<", + "0.6", + ".0" + ] + }, + "id": 2752, + "name": "PragmaDirective", + "src": "0:31:18" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IOwned.sol", - "file": "./IOwned.sol", - "id": 2003, - "nodeType": "ImportDirective", - "scope": 2017, - "sourceUnit": 1682, - "src": "33:22:14", - "symbolAliases": [], - "unitAlias": "" + "attributes": { + "SourceUnit": 2332, + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IOwned.sol", + "file": "./IOwned.sol", + "scope": 2767, + "symbolAliases": [ + null + ], + "unitAlias": "" + }, + "id": 2753, + "name": "ImportDirective", + "src": "33:22:18" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20Token.sol", - "file": "./IERC20Token.sol", - "id": 2004, - "nodeType": "ImportDirective", - "scope": 2017, - "sourceUnit": 1387, - "src": "56:27:14", - "symbolAliases": [], - "unitAlias": "" + "attributes": { + "SourceUnit": 1978, + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20Token.sol", + "file": "./IERC20Token.sol", + "scope": 2767, + "symbolAliases": [ + null + ], + "unitAlias": "" + }, + "id": 2754, + "name": "ImportDirective", + "src": "56:27:18" }, { - "baseContracts": [ + "attributes": { + "contractDependencies": [ + 2331 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": false, + "linearizedBaseContracts": [ + 2766, + 2331 + ], + "name": "ITokenHolder", + "scope": 2767 + }, + "children": [ { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 2005, - "name": "IOwned", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1681, - "src": "143:6:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IOwned_$1681", - "typeString": "contract IOwned" - } + "attributes": { + "arguments": null }, - "id": 2006, - "nodeType": "InheritanceSpecifier", - "src": "143:6:14" - } - ], - "contractDependencies": [ - 1681 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": false, - "id": 2016, - "linearizedBaseContracts": [ - 2016, - 1681 - ], - "name": "ITokenHolder", - "nodeType": "ContractDefinition", - "nodes": [ - { - "body": null, - "documentation": null, - "id": 2015, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "withdrawTokens", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2013, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2008, - "name": "_token", - "nodeType": "VariableDeclaration", - "scope": 2015, - "src": "180:18:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - }, - "typeName": { - "contractScope": null, - "id": 2007, - "name": "IERC20Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1386, - "src": "180:11:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20Token_$1386", - "typeString": "contract IERC20Token" - } - }, - "value": null, - "visibility": "internal" + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IOwned", + "referencedDeclaration": 2331, + "type": "contract IOwned" }, - { - "constant": false, - "id": 2010, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 2015, - "src": "202:11:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "id": 2755, + "name": "UserDefinedTypeName", + "src": "143:6:18" + } + ], + "id": 2756, + "name": "InheritanceSpecifier", + "src": "143:6:18" + }, + { + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "withdrawTokens", + "scope": 2766, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_token", + "scope": 2765, + "stateVariable": false, + "storageLocation": "default", + "type": "contract IERC20Token", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20Token", + "referencedDeclaration": 1977, + "type": "contract IERC20Token" + }, + "id": 2757, + "name": "UserDefinedTypeName", + "src": "180:11:18" + } + ], + "id": 2758, + "name": "VariableDeclaration", + "src": "180:18:18" }, - "typeName": { - "id": 2009, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "202:7:14", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + { + "attributes": { + "constant": false, + "name": "_to", + "scope": 2765, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 2759, + "name": "ElementaryTypeName", + "src": "202:7:18" + } + ], + "id": 2760, + "name": "VariableDeclaration", + "src": "202:11:18" }, - "value": null, - "visibility": "internal" + { + "attributes": { + "constant": false, + "name": "_amount", + "scope": 2765, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2761, + "name": "ElementaryTypeName", + "src": "217:7:18" + } + ], + "id": 2762, + "name": "VariableDeclaration", + "src": "217:15:18" + } + ], + "id": 2763, + "name": "ParameterList", + "src": "176:59:18" + }, + { + "attributes": { + "parameters": [ + null + ] }, - { - "constant": false, - "id": 2012, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 2015, - "src": "217:15:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2011, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "217:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "176:59:14" - }, - "returnParameters": { - "id": 2014, - "nodeType": "ParameterList", - "parameters": [], - "src": "242:0:14" - }, - "scope": 2016, - "src": "153:90:14", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" + "children": [], + "id": 2764, + "name": "ParameterList", + "src": "242:0:18" + } + ], + "id": 2765, + "name": "FunctionDefinition", + "src": "153:90:18" } ], - "scope": 2017, - "src": "118:127:14" + "id": 2766, + "name": "ContractDefinition", + "src": "118:127:18" } ], - "src": "0:246:14" + "id": 2767, + "name": "SourceUnit", + "src": "0:246:18" }, "compiler": { "name": "solc", "version": "0.5.16+commit.9c3226ce.Emscripten.clang" }, "networks": {}, - "schemaVersion": "3.3.2", - "updatedAt": "2021-03-26T10:10:09.423Z", + "schemaVersion": "3.4.1", + "updatedAt": "2022-02-15T06:13:50.482Z", "devdoc": { "methods": {} }, diff --git a/rbtcwrapperproxy/build/contracts/IWrbtc.json b/rbtcwrapperproxy/build/contracts/IWrbtc.json index 548856e..6e5cf3e 100644 --- a/rbtcwrapperproxy/build/contracts/IWrbtc.json +++ b/rbtcwrapperproxy/build/contracts/IWrbtc.json @@ -26,25 +26,25 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":false,\"inputs\":[],\"name\":\"deposit\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"withdraw\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IWrbtc.sol\":\"IWrbtc\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IWrbtc.sol\":{\"keccak256\":\"0xb0fd032bd60665a4b5856438dd59df244ef7a6195201726181b39266710e2754\",\"urls\":[\"bzz-raw://065529151deab2b9d35f1dbd9f95f86b23ed919d4365d7382fa9dcc49cc0031c\",\"dweb:/ipfs/QmfFWufmoBdsuVEYvZUAhF9SFpNBA2EGZezcKzdjgR4MgS\"]}},\"version\":1}", + "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":false,\"inputs\":[],\"name\":\"deposit\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"withdraw\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IWrbtc.sol\":\"IWrbtc\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IWrbtc.sol\":{\"keccak256\":\"0xb0fd032bd60665a4b5856438dd59df244ef7a6195201726181b39266710e2754\",\"urls\":[\"bzz-raw://065529151deab2b9d35f1dbd9f95f86b23ed919d4365d7382fa9dcc49cc0031c\",\"dweb:/ipfs/QmfFWufmoBdsuVEYvZUAhF9SFpNBA2EGZezcKzdjgR4MgS\"]}},\"version\":1}", "bytecode": "0x", "deployedBytecode": "0x", "sourceMap": "", "deployedSourceMap": "", "source": "/**\n * Copyright 2017-2020, bZeroX, LLC. All Rights Reserved.\n * Licensed under the Apache License, Version 2.0.\n */\n\npragma solidity >=0.5.0 <0.6.0;\n\ninterface IWrbtc {\n\tfunction deposit() external payable;\n\n\tfunction withdraw(uint256 wad) external;\n}\n", - "sourcePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IWrbtc.sol", + "sourcePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IWrbtc.sol", "ast": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IWrbtc.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IWrbtc.sol", "exportedSymbols": { "IWrbtc": [ - 2027 + 2777 ] }, - "id": 2028, + "id": 2778, "nodeType": "SourceUnit", "nodes": [ { - "id": 2018, + "id": 2768, "literals": [ "solidity", ">=", @@ -55,7 +55,7 @@ ".0" ], "nodeType": "PragmaDirective", - "src": "118:31:15" + "src": "118:31:19" }, { "baseContracts": [], @@ -63,9 +63,9 @@ "contractKind": "interface", "documentation": null, "fullyImplemented": false, - "id": 2027, + "id": 2777, "linearizedBaseContracts": [ - 2027 + 2777 ], "name": "IWrbtc", "nodeType": "ContractDefinition", @@ -73,26 +73,26 @@ { "body": null, "documentation": null, - "id": 2021, + "id": 2771, "implemented": false, "kind": "function", "modifiers": [], "name": "deposit", "nodeType": "FunctionDefinition", "parameters": { - "id": 2019, + "id": 2769, "nodeType": "ParameterList", "parameters": [], - "src": "187:2:15" + "src": "187:2:19" }, "returnParameters": { - "id": 2020, + "id": 2770, "nodeType": "ParameterList", "parameters": [], - "src": "206:0:15" + "src": "206:0:19" }, - "scope": 2027, - "src": "171:36:15", + "scope": 2777, + "src": "171:36:19", "stateMutability": "payable", "superFunction": null, "visibility": "external" @@ -100,23 +100,23 @@ { "body": null, "documentation": null, - "id": 2026, + "id": 2776, "implemented": false, "kind": "function", "modifiers": [], "name": "withdraw", "nodeType": "FunctionDefinition", "parameters": { - "id": 2024, + "id": 2774, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2023, + "id": 2773, "name": "wad", "nodeType": "VariableDeclaration", - "scope": 2026, - "src": "228:11:15", + "scope": 2776, + "src": "228:11:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -124,10 +124,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2022, + "id": 2772, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "228:7:15", + "src": "228:7:19", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -137,159 +137,198 @@ "visibility": "internal" } ], - "src": "227:13:15" + "src": "227:13:19" }, "returnParameters": { - "id": 2025, + "id": 2775, "nodeType": "ParameterList", "parameters": [], - "src": "249:0:15" + "src": "249:0:19" }, - "scope": 2027, - "src": "210:40:15", + "scope": 2777, + "src": "210:40:19", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" } ], - "scope": 2028, - "src": "151:101:15" + "scope": 2778, + "src": "151:101:19" } ], - "src": "118:135:15" + "src": "118:135:19" }, "legacyAST": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IWrbtc.sol", - "exportedSymbols": { - "IWrbtc": [ - 2027 - ] + "attributes": { + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IWrbtc.sol", + "exportedSymbols": { + "IWrbtc": [ + 2777 + ] + } }, - "id": 2028, - "nodeType": "SourceUnit", - "nodes": [ + "children": [ { - "id": 2018, - "literals": [ - "solidity", - ">=", - "0.5", - ".0", - "<", - "0.6", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "118:31:15" + "attributes": { + "literals": [ + "solidity", + ">=", + "0.5", + ".0", + "<", + "0.6", + ".0" + ] + }, + "id": 2768, + "name": "PragmaDirective", + "src": "118:31:19" }, { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "interface", - "documentation": null, - "fullyImplemented": false, - "id": 2027, - "linearizedBaseContracts": [ - 2027 - ], - "name": "IWrbtc", - "nodeType": "ContractDefinition", - "nodes": [ + "attributes": { + "baseContracts": [ + null + ], + "contractDependencies": [ + null + ], + "contractKind": "interface", + "documentation": null, + "fullyImplemented": false, + "linearizedBaseContracts": [ + 2777 + ], + "name": "IWrbtc", + "scope": 2778 + }, + "children": [ { - "body": null, - "documentation": null, - "id": 2021, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "deposit", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2019, - "nodeType": "ParameterList", - "parameters": [], - "src": "187:2:15" - }, - "returnParameters": { - "id": 2020, - "nodeType": "ParameterList", - "parameters": [], - "src": "206:0:15" + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "deposit", + "scope": 2777, + "stateMutability": "payable", + "superFunction": null, + "visibility": "external" }, - "scope": 2027, - "src": "171:36:15", - "stateMutability": "payable", - "superFunction": null, - "visibility": "external" + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2769, + "name": "ParameterList", + "src": "187:2:19" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2770, + "name": "ParameterList", + "src": "206:0:19" + } + ], + "id": 2771, + "name": "FunctionDefinition", + "src": "171:36:19" }, { - "body": null, - "documentation": null, - "id": 2026, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "withdraw", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2024, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2023, - "name": "wad", - "nodeType": "VariableDeclaration", - "scope": 2026, - "src": "228:11:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2022, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "228:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "body": null, + "documentation": null, + "implemented": false, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "227:13:15" - }, - "returnParameters": { - "id": 2025, - "nodeType": "ParameterList", - "parameters": [], - "src": "249:0:15" + "name": "withdraw", + "scope": 2777, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" }, - "scope": 2027, - "src": "210:40:15", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "wad", + "scope": 2776, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 2772, + "name": "ElementaryTypeName", + "src": "228:7:19" + } + ], + "id": 2773, + "name": "VariableDeclaration", + "src": "228:11:19" + } + ], + "id": 2774, + "name": "ParameterList", + "src": "227:13:19" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 2775, + "name": "ParameterList", + "src": "249:0:19" + } + ], + "id": 2776, + "name": "FunctionDefinition", + "src": "210:40:19" } ], - "scope": 2028, - "src": "151:101:15" + "id": 2777, + "name": "ContractDefinition", + "src": "151:101:19" } ], - "src": "118:135:15" + "id": 2778, + "name": "SourceUnit", + "src": "118:135:19" }, "compiler": { "name": "solc", "version": "0.5.16+commit.9c3226ce.Emscripten.clang" }, "networks": {}, - "schemaVersion": "3.3.2", - "updatedAt": "2021-03-26T10:10:09.424Z", + "schemaVersion": "3.4.1", + "updatedAt": "2022-02-15T06:13:50.484Z", "devdoc": { "methods": {} }, diff --git a/rbtcwrapperproxy/build/contracts/IWrbtcERC20.json b/rbtcwrapperproxy/build/contracts/IWrbtcERC20.json index 825ee63..5d9feeb 100644 --- a/rbtcwrapperproxy/build/contracts/IWrbtcERC20.json +++ b/rbtcwrapperproxy/build/contracts/IWrbtcERC20.json @@ -266,25 +266,25 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_who\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"deposit\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"withdraw\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IWrbtcERC20.sol\":\"IWrbtcERC20\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20.sol\":{\"keccak256\":\"0x3b6b0238755a6e5ab7b12e67736f5b0ccb6953960725bacee18d6fd53532bf66\",\"urls\":[\"bzz-raw://ebaa11bee8b232757af0b7486d185d6c4f745c0ec10ac4d65223b17143eb2f85\",\"dweb:/ipfs/QmUMt1FNEopfayCC45nvimhWqC7zegcCv54y89N5g8nx6t\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IWrbtc.sol\":{\"keccak256\":\"0xb0fd032bd60665a4b5856438dd59df244ef7a6195201726181b39266710e2754\",\"urls\":[\"bzz-raw://065529151deab2b9d35f1dbd9f95f86b23ed919d4365d7382fa9dcc49cc0031c\",\"dweb:/ipfs/QmfFWufmoBdsuVEYvZUAhF9SFpNBA2EGZezcKzdjgR4MgS\"]},\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IWrbtcERC20.sol\":{\"keccak256\":\"0x7301a8c8ca7aa016ec94268a16d07366875f2e406442e929968dd745b1ee5be5\",\"urls\":[\"bzz-raw://12d22b4d1e74d95f82d2bc84b5e3c978e2341cb7a1b8fc383b64aaef59f13a00\",\"dweb:/ipfs/QmZkPrztJ5nwiKKudgz8aWX6kk3YHKCtmxJndMvV1NJuS6\"]}},\"version\":1}", + "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_who\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"deposit\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"withdraw\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IWrbtcERC20.sol\":\"IWrbtcERC20\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20.sol\":{\"keccak256\":\"0x3b6b0238755a6e5ab7b12e67736f5b0ccb6953960725bacee18d6fd53532bf66\",\"urls\":[\"bzz-raw://ebaa11bee8b232757af0b7486d185d6c4f745c0ec10ac4d65223b17143eb2f85\",\"dweb:/ipfs/QmUMt1FNEopfayCC45nvimhWqC7zegcCv54y89N5g8nx6t\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IWrbtc.sol\":{\"keccak256\":\"0xb0fd032bd60665a4b5856438dd59df244ef7a6195201726181b39266710e2754\",\"urls\":[\"bzz-raw://065529151deab2b9d35f1dbd9f95f86b23ed919d4365d7382fa9dcc49cc0031c\",\"dweb:/ipfs/QmfFWufmoBdsuVEYvZUAhF9SFpNBA2EGZezcKzdjgR4MgS\"]},\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IWrbtcERC20.sol\":{\"keccak256\":\"0x7301a8c8ca7aa016ec94268a16d07366875f2e406442e929968dd745b1ee5be5\",\"urls\":[\"bzz-raw://12d22b4d1e74d95f82d2bc84b5e3c978e2341cb7a1b8fc383b64aaef59f13a00\",\"dweb:/ipfs/QmZkPrztJ5nwiKKudgz8aWX6kk3YHKCtmxJndMvV1NJuS6\"]}},\"version\":1}", "bytecode": "0x", "deployedBytecode": "0x", "sourceMap": "", "deployedSourceMap": "", "source": "/**\n * Copyright 2017-2020, bZeroX, LLC. All Rights Reserved.\n * Licensed under the Apache License, Version 2.0.\n */\n\npragma solidity >=0.5.0 <0.6.0;\n\nimport \"./IWrbtc.sol\";\nimport \"./IERC20.sol\";\n\ncontract IWrbtcERC20 is IWrbtc, IERC20 {}\n", - "sourcePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IWrbtcERC20.sol", + "sourcePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IWrbtcERC20.sol", "ast": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IWrbtcERC20.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IWrbtcERC20.sol", "exportedSymbols": { "IWrbtcERC20": [ - 2036 + 2786 ] }, - "id": 2037, + "id": 2787, "nodeType": "SourceUnit", "nodes": [ { - "id": 2029, + "id": 2779, "literals": [ "solidity", ">=", @@ -295,27 +295,27 @@ ".0" ], "nodeType": "PragmaDirective", - "src": "118:31:16" + "src": "118:31:20" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IWrbtc.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IWrbtc.sol", "file": "./IWrbtc.sol", - "id": 2030, + "id": 2780, "nodeType": "ImportDirective", - "scope": 2037, - "sourceUnit": 2028, - "src": "151:22:16", + "scope": 2787, + "sourceUnit": 2778, + "src": "151:22:20", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20.sol", "file": "./IERC20.sol", - "id": 2031, + "id": 2781, "nodeType": "ImportDirective", - "scope": 2037, - "sourceUnit": 1295, - "src": "174:22:16", + "scope": 2787, + "sourceUnit": 1886, + "src": "174:22:20", "symbolAliases": [], "unitAlias": "" }, @@ -325,175 +325,197 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 2032, + "id": 2782, "name": "IWrbtc", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2027, - "src": "222:6:16", + "referencedDeclaration": 2777, + "src": "222:6:20", "typeDescriptions": { - "typeIdentifier": "t_contract$_IWrbtc_$2027", + "typeIdentifier": "t_contract$_IWrbtc_$2777", "typeString": "contract IWrbtc" } }, - "id": 2033, + "id": 2783, "nodeType": "InheritanceSpecifier", - "src": "222:6:16" + "src": "222:6:20" }, { "arguments": null, "baseName": { "contractScope": null, - "id": 2034, + "id": 2784, "name": "IERC20", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1294, - "src": "230:6:16", + "referencedDeclaration": 1885, + "src": "230:6:20", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1294", + "typeIdentifier": "t_contract$_IERC20_$1885", "typeString": "contract IERC20" } }, - "id": 2035, + "id": 2785, "nodeType": "InheritanceSpecifier", - "src": "230:6:16" + "src": "230:6:20" } ], "contractDependencies": [ - 1294, - 2027 + 1885, + 2777 ], "contractKind": "contract", "documentation": null, "fullyImplemented": false, - "id": 2036, + "id": 2786, "linearizedBaseContracts": [ - 2036, - 1294, - 2027 + 2786, + 1885, + 2777 ], "name": "IWrbtcERC20", "nodeType": "ContractDefinition", "nodes": [], - "scope": 2037, - "src": "198:41:16" + "scope": 2787, + "src": "198:41:20" } ], - "src": "118:122:16" + "src": "118:122:20" }, "legacyAST": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IWrbtcERC20.sol", - "exportedSymbols": { - "IWrbtcERC20": [ - 2036 - ] + "attributes": { + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IWrbtcERC20.sol", + "exportedSymbols": { + "IWrbtcERC20": [ + 2786 + ] + } }, - "id": 2037, - "nodeType": "SourceUnit", - "nodes": [ + "children": [ { - "id": 2029, - "literals": [ - "solidity", - ">=", - "0.5", - ".0", - "<", - "0.6", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "118:31:16" + "attributes": { + "literals": [ + "solidity", + ">=", + "0.5", + ".0", + "<", + "0.6", + ".0" + ] + }, + "id": 2779, + "name": "PragmaDirective", + "src": "118:31:20" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IWrbtc.sol", - "file": "./IWrbtc.sol", - "id": 2030, - "nodeType": "ImportDirective", - "scope": 2037, - "sourceUnit": 2028, - "src": "151:22:16", - "symbolAliases": [], - "unitAlias": "" + "attributes": { + "SourceUnit": 2778, + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IWrbtc.sol", + "file": "./IWrbtc.sol", + "scope": 2787, + "symbolAliases": [ + null + ], + "unitAlias": "" + }, + "id": 2780, + "name": "ImportDirective", + "src": "151:22:20" }, { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/interfaces/IERC20.sol", - "file": "./IERC20.sol", - "id": 2031, - "nodeType": "ImportDirective", - "scope": 2037, - "sourceUnit": 1295, - "src": "174:22:16", - "symbolAliases": [], - "unitAlias": "" + "attributes": { + "SourceUnit": 1886, + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/interfaces/IERC20.sol", + "file": "./IERC20.sol", + "scope": 2787, + "symbolAliases": [ + null + ], + "unitAlias": "" + }, + "id": 2781, + "name": "ImportDirective", + "src": "174:22:20" }, { - "baseContracts": [ + "attributes": { + "contractDependencies": [ + 1885, + 2777 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": false, + "linearizedBaseContracts": [ + 2786, + 1885, + 2777 + ], + "name": "IWrbtcERC20", + "nodes": [ + null + ], + "scope": 2787 + }, + "children": [ { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 2032, - "name": "IWrbtc", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2027, - "src": "222:6:16", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IWrbtc_$2027", - "typeString": "contract IWrbtc" - } + "attributes": { + "arguments": null }, - "id": 2033, - "nodeType": "InheritanceSpecifier", - "src": "222:6:16" + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IWrbtc", + "referencedDeclaration": 2777, + "type": "contract IWrbtc" + }, + "id": 2782, + "name": "UserDefinedTypeName", + "src": "222:6:20" + } + ], + "id": 2783, + "name": "InheritanceSpecifier", + "src": "222:6:20" }, { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 2034, - "name": "IERC20", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1294, - "src": "230:6:16", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1294", - "typeString": "contract IERC20" - } + "attributes": { + "arguments": null }, - "id": 2035, - "nodeType": "InheritanceSpecifier", - "src": "230:6:16" + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IERC20", + "referencedDeclaration": 1885, + "type": "contract IERC20" + }, + "id": 2784, + "name": "UserDefinedTypeName", + "src": "230:6:20" + } + ], + "id": 2785, + "name": "InheritanceSpecifier", + "src": "230:6:20" } ], - "contractDependencies": [ - 1294, - 2027 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": false, - "id": 2036, - "linearizedBaseContracts": [ - 2036, - 1294, - 2027 - ], - "name": "IWrbtcERC20", - "nodeType": "ContractDefinition", - "nodes": [], - "scope": 2037, - "src": "198:41:16" + "id": 2786, + "name": "ContractDefinition", + "src": "198:41:20" } ], - "src": "118:122:16" + "id": 2787, + "name": "SourceUnit", + "src": "118:122:20" }, "compiler": { "name": "solc", "version": "0.5.16+commit.9c3226ce.Emscripten.clang" }, "networks": {}, - "schemaVersion": "3.3.2", - "updatedAt": "2021-03-26T10:10:09.425Z", + "schemaVersion": "3.4.1", + "updatedAt": "2022-02-15T06:13:50.485Z", "devdoc": { "methods": {} }, diff --git a/rbtcwrapperproxy/build/contracts/Migrations.json b/rbtcwrapperproxy/build/contracts/Migrations.json index 7abae7b..b3f3f76 100644 --- a/rbtcwrapperproxy/build/contracts/Migrations.json +++ b/rbtcwrapperproxy/build/contracts/Migrations.json @@ -47,25 +47,25 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[],\"name\":\"last_completed_migration\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"completed\",\"type\":\"uint256\"}],\"name\":\"setCompleted\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/Migrations.sol\":\"Migrations\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/Migrations.sol\":{\"keccak256\":\"0x7797e159bfd6b953422b4bd6d5de5946971d8b5ed74c4b1f6517d61fe236b851\",\"urls\":[\"bzz-raw://56bdf6130f3ced3e78baa0f3e7f34cb4c5131d90721326056bbf0dd202d8539d\",\"dweb:/ipfs/QmZqRKebKwn6YXejnnPribsyiXLmrAx32JpatFhvS76NKp\"]}},\"version\":1}", - "bytecode": "0x6080604052336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555034801561005057600080fd5b5061021e806100606000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063445df0ac146100465780638da5cb5b14610064578063fdacd576146100ae575b600080fd5b61004e6100dc565b6040518082815260200191505060405180910390f35b61006c6100e2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6100da600480360360208110156100c457600080fd5b8101908080359060200190929190505050610107565b005b60015481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146101ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260338152602001806101b76033913960400191505060405180910390fd5b806001819055505056fe546869732066756e6374696f6e206973207265737472696374656420746f2074686520636f6e74726163742773206f776e6572a265627a7a72315820e9bd41431d175ba39e6bab5f77934e56efb27a536d1628137b903f5d2a9546bc64736f6c63430005100032", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100415760003560e01c8063445df0ac146100465780638da5cb5b14610064578063fdacd576146100ae575b600080fd5b61004e6100dc565b6040518082815260200191505060405180910390f35b61006c6100e2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6100da600480360360208110156100c457600080fd5b8101908080359060200190929190505050610107565b005b60015481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146101ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260338152602001806101b76033913960400191505060405180910390fd5b806001819055505056fe546869732066756e6374696f6e206973207265737472696374656420746f2074686520636f6e74726163742773206f776e6572a265627a7a72315820e9bd41431d175ba39e6bab5f77934e56efb27a536d1628137b903f5d2a9546bc64736f6c63430005100032", - "sourceMap": "66:352:0:-;;;113:10;90:33;;;;;;;;;;;;;;;;;;;;66:352;8:9:-1;5:2;;;30:1;27;20:12;5:2;66:352:0;;;;;;;", - "deployedSourceMap": "66:352:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;66:352:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;127:36;;;:::i;:::-;;;;;;;;;;;;;;;;;;;90:33;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;313:103;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;313:103:0;;;;;;;;;;;;;;;;;:::i;:::-;;127:36;;;;:::o;90:33::-;;;;;;;;;;;;;:::o;313:103::-;225:5;;;;;;;;;;;211:19;;:10;:19;;;196:101;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;402:9;375:24;:36;;;;313:103;:::o", + "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[],\"name\":\"last_completed_migration\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"completed\",\"type\":\"uint256\"}],\"name\":\"setCompleted\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/Migrations.sol\":\"Migrations\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/Migrations.sol\":{\"keccak256\":\"0x7797e159bfd6b953422b4bd6d5de5946971d8b5ed74c4b1f6517d61fe236b851\",\"urls\":[\"bzz-raw://56bdf6130f3ced3e78baa0f3e7f34cb4c5131d90721326056bbf0dd202d8539d\",\"dweb:/ipfs/QmZqRKebKwn6YXejnnPribsyiXLmrAx32JpatFhvS76NKp\"]}},\"version\":1}", + "bytecode": "0x6080604052336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555034801561005057600080fd5b5061021e806100606000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063445df0ac146100465780638da5cb5b14610064578063fdacd576146100ae575b600080fd5b61004e6100dc565b6040518082815260200191505060405180910390f35b61006c6100e2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6100da600480360360208110156100c457600080fd5b8101908080359060200190929190505050610107565b005b60015481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146101ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260338152602001806101b76033913960400191505060405180910390fd5b806001819055505056fe546869732066756e6374696f6e206973207265737472696374656420746f2074686520636f6e74726163742773206f776e6572a265627a7a723158209edad2afcdae17a2ab8fd22b7806287ac091e5c3da3654b7c07e8b2ea4dd2deb64736f6c63430005100032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100415760003560e01c8063445df0ac146100465780638da5cb5b14610064578063fdacd576146100ae575b600080fd5b61004e6100dc565b6040518082815260200191505060405180910390f35b61006c6100e2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6100da600480360360208110156100c457600080fd5b8101908080359060200190929190505050610107565b005b60015481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146101ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260338152602001806101b76033913960400191505060405180910390fd5b806001819055505056fe546869732066756e6374696f6e206973207265737472696374656420746f2074686520636f6e74726163742773206f776e6572a265627a7a723158209edad2afcdae17a2ab8fd22b7806287ac091e5c3da3654b7c07e8b2ea4dd2deb64736f6c63430005100032", + "sourceMap": "66:352:1:-;;;113:10;90:33;;;;;;;;;;;;;;;;;;;;66:352;8:9:-1;5:2;;;30:1;27;20:12;5:2;66:352:1;;;;;;;", + "deployedSourceMap": "66:352:1:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;66:352:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;127:36;;;:::i;:::-;;;;;;;;;;;;;;;;;;;90:33;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;313:103;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;313:103:1;;;;;;;;;;;;;;;;;:::i;:::-;;127:36;;;;:::o;90:33::-;;;;;;;;;;;;;:::o;313:103::-;225:5;;;;;;;;;;;211:19;;:10;:19;;;196:101;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;402:9;375:24;:36;;;;313:103;:::o", "source": "// SPDX-License-Identifier: MIT\npragma solidity >=0.4.22 <0.8.0;\n\ncontract Migrations {\n address public owner = msg.sender;\n uint public last_completed_migration;\n\n modifier restricted() {\n require(\n msg.sender == owner,\n \"This function is restricted to the contract's owner\"\n );\n _;\n }\n\n function setCompleted(uint completed) public restricted {\n last_completed_migration = completed;\n }\n}\n", - "sourcePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/Migrations.sol", + "sourcePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/Migrations.sol", "ast": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/Migrations.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/Migrations.sol", "exportedSymbols": { "Migrations": [ - 32 + 230 ] }, - "id": 33, + "id": 231, "nodeType": "SourceUnit", "nodes": [ { - "id": 1, + "id": 199, "literals": [ "solidity", ">=", @@ -76,7 +76,7 @@ ".0" ], "nodeType": "PragmaDirective", - "src": "32:32:0" + "src": "32:32:1" }, { "baseContracts": [], @@ -84,20 +84,20 @@ "contractKind": "contract", "documentation": null, "fullyImplemented": true, - "id": 32, + "id": 230, "linearizedBaseContracts": [ - 32 + 230 ], "name": "Migrations", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 5, + "id": 203, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 32, - "src": "90:33:0", + "scope": 230, + "src": "90:33:1", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -105,10 +105,10 @@ "typeString": "address" }, "typeName": { - "id": 2, + "id": 200, "name": "address", "nodeType": "ElementaryTypeName", - "src": "90:7:0", + "src": "90:7:1", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -119,18 +119,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3, + "id": 201, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 47, - "src": "113:3:0", + "referencedDeclaration": 3494, + "src": "113:3:1", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 4, + "id": 202, "isConstant": false, "isLValue": false, "isPure": false, @@ -138,7 +138,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "113:10:0", + "src": "113:10:1", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" @@ -148,11 +148,11 @@ }, { "constant": false, - "id": 7, + "id": 205, "name": "last_completed_migration", "nodeType": "VariableDeclaration", - "scope": 32, - "src": "127:36:0", + "scope": 230, + "src": "127:36:1", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -160,10 +160,10 @@ "typeString": "uint256" }, "typeName": { - "id": 6, + "id": 204, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "127:4:0", + "src": "127:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -174,9 +174,9 @@ }, { "body": { - "id": 18, + "id": 216, "nodeType": "Block", - "src": "190:119:0", + "src": "190:119:1", "statements": [ { "expression": { @@ -188,7 +188,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 13, + "id": 211, "isConstant": false, "isLValue": false, "isPure": false, @@ -197,18 +197,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 10, + "id": 208, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 47, - "src": "211:3:0", + "referencedDeclaration": 3494, + "src": "211:3:1", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 11, + "id": 209, "isConstant": false, "isLValue": false, "isPure": false, @@ -216,7 +216,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "211:10:0", + "src": "211:10:1", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" @@ -226,18 +226,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 12, + "id": 210, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5, - "src": "225:5:0", + "referencedDeclaration": 203, + "src": "225:5:1", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "211:19:0", + "src": "211:19:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -246,14 +246,14 @@ { "argumentTypes": null, "hexValue": "546869732066756e6374696f6e206973207265737472696374656420746f2074686520636f6e74726163742773206f776e6572", - "id": 14, + "id": 212, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "238:53:0", + "src": "238:53:1", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_f60fe2d9d123295bf92ecf95167f1fa709e374da35e4c083bd39dc2d82acd8b1", @@ -273,21 +273,21 @@ "typeString": "literal_string \"This function is restricted to the contract's owner\"" } ], - "id": 9, + "id": 207, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 50, - 51 + 3497, + 3498 ], - "referencedDeclaration": 51, - "src": "196:7:0", + "referencedDeclaration": 3498, + "src": "196:7:1", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 15, + "id": 213, "isConstant": false, "isLValue": false, "isPure": false, @@ -295,58 +295,58 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "196:101:0", + "src": "196:101:1", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 16, + "id": 214, "nodeType": "ExpressionStatement", - "src": "196:101:0" + "src": "196:101:1" }, { - "id": 17, + "id": 215, "nodeType": "PlaceholderStatement", - "src": "303:1:0" + "src": "303:1:1" } ] }, "documentation": null, - "id": 19, + "id": 217, "name": "restricted", "nodeType": "ModifierDefinition", "parameters": { - "id": 8, + "id": 206, "nodeType": "ParameterList", "parameters": [], - "src": "187:2:0" + "src": "187:2:1" }, - "src": "168:141:0", + "src": "168:141:1", "visibility": "internal" }, { "body": { - "id": 30, + "id": 228, "nodeType": "Block", - "src": "369:47:0", + "src": "369:47:1", "statements": [ { "expression": { "argumentTypes": null, - "id": 28, + "id": 226, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 26, + "id": 224, "name": "last_completed_migration", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7, - "src": "375:24:0", + "referencedDeclaration": 205, + "src": "375:24:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -356,67 +356,67 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 27, + "id": 225, "name": "completed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 21, - "src": "402:9:0", + "referencedDeclaration": 219, + "src": "402:9:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "375:36:0", + "src": "375:36:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 29, + "id": 227, "nodeType": "ExpressionStatement", - "src": "375:36:0" + "src": "375:36:1" } ] }, "documentation": null, - "id": 31, + "id": 229, "implemented": true, "kind": "function", "modifiers": [ { "arguments": null, - "id": 24, + "id": 222, "modifierName": { "argumentTypes": null, - "id": 23, + "id": 221, "name": "restricted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 19, - "src": "358:10:0", + "referencedDeclaration": 217, + "src": "358:10:1", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "358:10:0" + "src": "358:10:1" } ], "name": "setCompleted", "nodeType": "FunctionDefinition", "parameters": { - "id": 22, + "id": 220, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 21, + "id": 219, "name": "completed", "nodeType": "VariableDeclaration", - "scope": 31, - "src": "335:14:0", + "scope": 229, + "src": "335:14:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -424,10 +424,10 @@ "typeString": "uint256" }, "typeName": { - "id": 20, + "id": 218, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "335:4:0", + "src": "335:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -437,430 +437,475 @@ "visibility": "internal" } ], - "src": "334:16:0" + "src": "334:16:1" }, "returnParameters": { - "id": 25, + "id": 223, "nodeType": "ParameterList", "parameters": [], - "src": "369:0:0" + "src": "369:0:1" }, - "scope": 32, - "src": "313:103:0", + "scope": 230, + "src": "313:103:1", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" } ], - "scope": 33, - "src": "66:352:0" + "scope": 231, + "src": "66:352:1" } ], - "src": "32:387:0" + "src": "32:387:1" }, "legacyAST": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/Migrations.sol", - "exportedSymbols": { - "Migrations": [ - 32 - ] + "attributes": { + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/Migrations.sol", + "exportedSymbols": { + "Migrations": [ + 230 + ] + } }, - "id": 33, - "nodeType": "SourceUnit", - "nodes": [ + "children": [ { - "id": 1, - "literals": [ - "solidity", - ">=", - "0.4", - ".22", - "<", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "32:32:0" + "attributes": { + "literals": [ + "solidity", + ">=", + "0.4", + ".22", + "<", + "0.8", + ".0" + ] + }, + "id": 199, + "name": "PragmaDirective", + "src": "32:32:1" }, { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 32, - "linearizedBaseContracts": [ - 32 - ], - "name": "Migrations", - "nodeType": "ContractDefinition", - "nodes": [ + "attributes": { + "baseContracts": [ + null + ], + "contractDependencies": [ + null + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "linearizedBaseContracts": [ + 230 + ], + "name": "Migrations", + "scope": 231 + }, + "children": [ { - "constant": false, - "id": 5, - "name": "owner", - "nodeType": "VariableDeclaration", - "scope": 32, - "src": "90:33:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "attributes": { + "constant": false, + "name": "owner", + "scope": 230, + "stateVariable": true, + "storageLocation": "default", + "type": "address", + "visibility": "public" }, - "typeName": { - "id": 2, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "90:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 47, - "src": "113:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 200, + "name": "ElementaryTypeName", + "src": "90:7:1" }, - "id": 4, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "113:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3494, + "type": "msg", + "value": "msg" + }, + "id": 201, + "name": "Identifier", + "src": "113:3:1" + } + ], + "id": 202, + "name": "MemberAccess", + "src": "113:10:1" } - }, - "visibility": "public" + ], + "id": 203, + "name": "VariableDeclaration", + "src": "90:33:1" }, { - "constant": false, - "id": 7, - "name": "last_completed_migration", - "nodeType": "VariableDeclaration", - "scope": 32, - "src": "127:36:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "attributes": { + "constant": false, + "name": "last_completed_migration", + "scope": 230, + "stateVariable": true, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "public" }, - "typeName": { - "id": 6, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "127:4:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "children": [ + { + "attributes": { + "name": "uint", + "type": "uint256" + }, + "id": 204, + "name": "ElementaryTypeName", + "src": "127:4:1" } - }, - "value": null, - "visibility": "public" + ], + "id": 205, + "name": "VariableDeclaration", + "src": "127:36:1" }, { - "body": { - "id": 18, - "nodeType": "Block", - "src": "190:119:0", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ + "attributes": { + "documentation": null, + "name": "restricted", + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 206, + "name": "ParameterList", + "src": "187:2:1" + }, + { + "children": [ + { + "children": [ { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 13, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { + "attributes": { "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 10, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 47, - "src": "211:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 11, "isConstant": false, "isLValue": false, "isPure": false, + "isStructConstructorCall": false, "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "211:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 12, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5, - "src": "225:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_f60fe2d9d123295bf92ecf95167f1fa709e374da35e4c083bd39dc2d82acd8b1", + "typeString": "literal_string \"This function is restricted to the contract's owner\"" + } + ], + "overloadedDeclarations": [ + 3497, + 3498 + ], + "referencedDeclaration": 3498, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 207, + "name": "Identifier", + "src": "196:7:1" + }, + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "==", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3494, + "type": "msg", + "value": "msg" + }, + "id": 208, + "name": "Identifier", + "src": "211:3:1" + } + ], + "id": 209, + "name": "MemberAccess", + "src": "211:10:1" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 203, + "type": "address", + "value": "owner" + }, + "id": 210, + "name": "Identifier", + "src": "225:5:1" + } + ], + "id": 211, + "name": "BinaryOperation", + "src": "211:19:1" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "546869732066756e6374696f6e206973207265737472696374656420746f2074686520636f6e74726163742773206f776e6572", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"This function is restricted to the contract's owner\"", + "value": "This function is restricted to the contract's owner" + }, + "id": 212, + "name": "Literal", + "src": "238:53:1" } - }, - "src": "211:19:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "argumentTypes": null, - "hexValue": "546869732066756e6374696f6e206973207265737472696374656420746f2074686520636f6e74726163742773206f776e6572", - "id": 14, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "238:53:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_f60fe2d9d123295bf92ecf95167f1fa709e374da35e4c083bd39dc2d82acd8b1", - "typeString": "literal_string \"This function is restricted to the contract's owner\"" - }, - "value": "This function is restricted to the contract's owner" + ], + "id": 213, + "name": "FunctionCall", + "src": "196:101:1" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_f60fe2d9d123295bf92ecf95167f1fa709e374da35e4c083bd39dc2d82acd8b1", - "typeString": "literal_string \"This function is restricted to the contract's owner\"" - } - ], - "id": 9, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 50, - 51 - ], - "referencedDeclaration": 51, - "src": "196:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 15, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "196:101:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } + "id": 214, + "name": "ExpressionStatement", + "src": "196:101:1" }, - "id": 16, - "nodeType": "ExpressionStatement", - "src": "196:101:0" - }, - { - "id": 17, - "nodeType": "PlaceholderStatement", - "src": "303:1:0" - } - ] - }, - "documentation": null, - "id": 19, - "name": "restricted", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 8, - "nodeType": "ParameterList", - "parameters": [], - "src": "187:2:0" - }, - "src": "168:141:0", - "visibility": "internal" + { + "id": 215, + "name": "PlaceholderStatement", + "src": "303:1:1" + } + ], + "id": 216, + "name": "Block", + "src": "190:119:1" + } + ], + "id": 217, + "name": "ModifierDefinition", + "src": "168:141:1" }, { - "body": { - "id": 30, - "nodeType": "Block", - "src": "369:47:0", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 28, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 26, - "name": "last_completed_migration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7, - "src": "375:24:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 27, + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "name": "setCompleted", + "scope": 230, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, "name": "completed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 21, - "src": "402:9:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "scope": 229, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint", + "type": "uint256" + }, + "id": 218, + "name": "ElementaryTypeName", + "src": "335:4:1" } + ], + "id": 219, + "name": "VariableDeclaration", + "src": "335:14:1" + } + ], + "id": 220, + "name": "ParameterList", + "src": "334:16:1" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 223, + "name": "ParameterList", + "src": "369:0:1" + }, + { + "attributes": { + "arguments": null + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 217, + "type": "modifier ()", + "value": "restricted" }, - "src": "375:36:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 29, - "nodeType": "ExpressionStatement", - "src": "375:36:0" - } - ] - }, - "documentation": null, - "id": 31, - "implemented": true, - "kind": "function", - "modifiers": [ + "id": 221, + "name": "Identifier", + "src": "358:10:1" + } + ], + "id": 222, + "name": "ModifierInvocation", + "src": "358:10:1" + }, { - "arguments": null, - "id": 24, - "modifierName": { - "argumentTypes": null, - "id": 23, - "name": "restricted", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 19, - "src": "358:10:0", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "=", + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 205, + "type": "uint256", + "value": "last_completed_migration" + }, + "id": 224, + "name": "Identifier", + "src": "375:24:1" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 219, + "type": "uint256", + "value": "completed" + }, + "id": 225, + "name": "Identifier", + "src": "402:9:1" + } + ], + "id": 226, + "name": "Assignment", + "src": "375:36:1" + } + ], + "id": 227, + "name": "ExpressionStatement", + "src": "375:36:1" } - }, - "nodeType": "ModifierInvocation", - "src": "358:10:0" + ], + "id": 228, + "name": "Block", + "src": "369:47:1" } ], - "name": "setCompleted", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 22, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 21, - "name": "completed", - "nodeType": "VariableDeclaration", - "scope": 31, - "src": "335:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 20, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "335:4:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "334:16:0" - }, - "returnParameters": { - "id": 25, - "nodeType": "ParameterList", - "parameters": [], - "src": "369:0:0" - }, - "scope": 32, - "src": "313:103:0", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" + "id": 229, + "name": "FunctionDefinition", + "src": "313:103:1" } ], - "scope": 33, - "src": "66:352:0" + "id": 230, + "name": "ContractDefinition", + "src": "66:352:1" } ], - "src": "32:387:0" + "id": 231, + "name": "SourceUnit", + "src": "32:387:1" }, "compiler": { "name": "solc", @@ -884,10 +929,28 @@ "links": {}, "address": "0x26E46d9D9eEF3eBd938e119529e182C8ae5Ec338", "transactionHash": "0x001da155bcc24c6987aa99b4985d086dd6ff4dc3b1f6076da42926db826ee241" + }, + "1644905510682": { + "events": {}, + "links": {}, + "address": "0x62821645d294aeb9b3562f2280564f1d2C73b808", + "transactionHash": "0xfb972a4cdb9dbf2cf0913b80537bf83ecc988fffeb6a4004c7cf034e6a4c6bfc" + }, + "1644912976585": { + "events": {}, + "links": {}, + "address": "0x83E3356Eef716363805A7b696882Eadea59F72C4", + "transactionHash": "0x76b0db50518ea16fe70b828e12de0b470cdb7a92430f6dc083e200f2e6646fa2" + }, + "1644934435331": { + "events": {}, + "links": {}, + "address": "0x77733871C6b5E9AB191FB334dAC3c41499a3B1dD", + "transactionHash": "0x22bd6bb7aa30bab84bd9586cff623d67577403b459ca4d008c637260ed9f7c1a" } }, - "schemaVersion": "3.3.3", - "updatedAt": "2021-04-27T19:21:09.202Z", + "schemaVersion": "3.4.1", + "updatedAt": "2022-02-16T03:15:47.283Z", "networkType": "ethereum", "devdoc": { "methods": {} diff --git a/rbtcwrapperproxy/build/contracts/Owned.json b/rbtcwrapperproxy/build/contracts/Owned.json index b5027b7..7705219 100644 --- a/rbtcwrapperproxy/build/contracts/Owned.json +++ b/rbtcwrapperproxy/build/contracts/Owned.json @@ -81,32 +81,32 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_prevOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"OwnerUpdate\",\"type\":\"event\"},{\"constant\":false,\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"newOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Provides support and utilities for contract ownership\",\"methods\":{\"acceptOwnership()\":{\"details\":\"used by a new owner to accept an ownership transfer\"},\"constructor\":{\"details\":\"initializes a new Owned instance\"},\"transferOwnership(address)\":{\"details\":\"allows transferring the contract ownership the new owner still needs to accept the transfer can only be called by the contract owner \",\"params\":{\"_newOwner\":\"new contract owner\"}}}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/Owned.sol\":\"Owned\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/Owned.sol\":{\"keccak256\":\"0x66fcb1ed45798b9f4d9f57f34c7d46b598db576ac868b6e308225cb3615f2931\",\"urls\":[\"bzz-raw://e4b2fa7cd8db47b7c62a8caa2cf6fd886b480c1d12bda67b627c2dc351cb1e2b\",\"dweb:/ipfs/QmXt3Fwwjg2ZayQJH6M3YfZXxh3qQzFJtCjNxQMdBrPNrH\"]}},\"version\":1}", - "bytecode": "0x608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061058c806100606000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806379ba5097146100515780638da5cb5b1461005b578063d4ee1d90146100a5578063f2fde38b146100ef575b600080fd5b610059610133565b005b610063610339565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6100ad61035e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101316004803603602081101561010557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610384565b005b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146101f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f4552525f4143434553535f44454e49454400000000000000000000000000000081525060200191505060405180910390fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a60405160405180910390a3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61038c610493565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561044f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4552525f53414d455f4f574e455200000000000000000000000000000000000081525060200191505060405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610555576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f4552525f4143434553535f44454e49454400000000000000000000000000000081525060200191505060405180910390fd5b56fea265627a7a72315820bac789bc63c13096f5bf669a5a05639af3d1ac298e6aa02e074fcb5aed9ad2fc64736f6c63430005100032", - "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061004c5760003560e01c806379ba5097146100515780638da5cb5b1461005b578063d4ee1d90146100a5578063f2fde38b146100ef575b600080fd5b610059610133565b005b610063610339565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6100ad61035e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101316004803603602081101561010557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610384565b005b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146101f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f4552525f4143434553535f44454e49454400000000000000000000000000000081525060200191505060405180910390fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a60405160405180910390a3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61038c610493565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561044f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4552525f53414d455f4f574e455200000000000000000000000000000000000081525060200191505060405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610555576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f4552525f4143434553535f44454e49454400000000000000000000000000000081525060200191505060405180910390fd5b56fea265627a7a72315820bac789bc63c13096f5bf669a5a05639af3d1ac298e6aa02e074fcb5aed9ad2fc64736f6c63430005100032", - "sourceMap": "100:1418:21:-;;;481:58;8:9:-1;5:2;;;30:1;27;20:12;5:2;481:58:21;521:10;513:5;;:18;;;;;;;;;;;;;;;;;;100:1418;;;;;;", - "deployedSourceMap": "100:1418:21:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;100:1418:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1307:208;;;:::i;:::-;;122:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;149:23;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1058:158;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1058:158:21;;;;;;;;;;;;;;;;;;;:::i;:::-;;1307:208;1374:8;;;;;;;;;;;1360:22;;:10;:22;;;1352:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1439:8;;;;;;;;;;;1420:28;;1432:5;;;;;;;;;;;1420:28;;;;;;;;;;;;1467:8;;;;;;;;;;;1459:5;;:16;;;;;;;;;;;;;;;;;;1505:1;1486:8;;:21;;;;;;;;;;;;;;;;;;1307:208::o;122:20::-;;;;;;;;;;;;;:::o;149:23::-;;;;;;;;;;;;;:::o;1058:158::-;620:12;:10;:12::i;:::-;1153:5;;;;;;;;;;;1140:18;;:9;:18;;;;1132:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1199:9;1188:8;;:20;;;;;;;;;;;;;;;;;;1058:158;:::o;707:104::-;776:5;;;;;;;;;;;762:19;;:10;:19;;;754:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;707:104::o", + "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_prevOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"OwnerUpdate\",\"type\":\"event\"},{\"constant\":false,\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"newOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Provides support and utilities for contract ownership\",\"methods\":{\"acceptOwnership()\":{\"details\":\"used by a new owner to accept an ownership transfer\"},\"constructor\":{\"details\":\"initializes a new Owned instance\"},\"transferOwnership(address)\":{\"details\":\"allows transferring the contract ownership the new owner still needs to accept the transfer can only be called by the contract owner \",\"params\":{\"_newOwner\":\"new contract owner\"}}}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/Owned.sol\":\"Owned\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/Owned.sol\":{\"keccak256\":\"0x66fcb1ed45798b9f4d9f57f34c7d46b598db576ac868b6e308225cb3615f2931\",\"urls\":[\"bzz-raw://e4b2fa7cd8db47b7c62a8caa2cf6fd886b480c1d12bda67b627c2dc351cb1e2b\",\"dweb:/ipfs/QmXt3Fwwjg2ZayQJH6M3YfZXxh3qQzFJtCjNxQMdBrPNrH\"]}},\"version\":1}", + "bytecode": "0x608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061058c806100606000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806379ba5097146100515780638da5cb5b1461005b578063d4ee1d90146100a5578063f2fde38b146100ef575b600080fd5b610059610133565b005b610063610339565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6100ad61035e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101316004803603602081101561010557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610384565b005b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146101f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f4552525f4143434553535f44454e49454400000000000000000000000000000081525060200191505060405180910390fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a60405160405180910390a3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61038c610493565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561044f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4552525f53414d455f4f574e455200000000000000000000000000000000000081525060200191505060405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610555576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f4552525f4143434553535f44454e49454400000000000000000000000000000081525060200191505060405180910390fd5b56fea265627a7a7231582081038f4634d0e05e3511294f5eb004e508e629b59989c6472ad58813e6e5955864736f6c63430005100032", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061004c5760003560e01c806379ba5097146100515780638da5cb5b1461005b578063d4ee1d90146100a5578063f2fde38b146100ef575b600080fd5b610059610133565b005b610063610339565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6100ad61035e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101316004803603602081101561010557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610384565b005b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146101f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f4552525f4143434553535f44454e49454400000000000000000000000000000081525060200191505060405180910390fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a60405160405180910390a3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61038c610493565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561044f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4552525f53414d455f4f574e455200000000000000000000000000000000000081525060200191505060405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610555576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f4552525f4143434553535f44454e49454400000000000000000000000000000081525060200191505060405180910390fd5b56fea265627a7a7231582081038f4634d0e05e3511294f5eb004e508e629b59989c6472ad58813e6e5955864736f6c63430005100032", + "sourceMap": "100:1418:24:-;;;481:58;8:9:-1;5:2;;;30:1;27;20:12;5:2;481:58:24;521:10;513:5;;:18;;;;;;;;;;;;;;;;;;100:1418;;;;;;", + "deployedSourceMap": "100:1418:24:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;100:1418:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1307:208;;;:::i;:::-;;122:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;149:23;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1058:158;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1058:158:24;;;;;;;;;;;;;;;;;;;:::i;:::-;;1307:208;1374:8;;;;;;;;;;;1360:22;;:10;:22;;;1352:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1439:8;;;;;;;;;;;1420:28;;1432:5;;;;;;;;;;;1420:28;;;;;;;;;;;;1467:8;;;;;;;;;;;1459:5;;:16;;;;;;;;;;;;;;;;;;1505:1;1486:8;;:21;;;;;;;;;;;;;;;;;;1307:208::o;122:20::-;;;;;;;;;;;;;:::o;149:23::-;;;;;;;;;;;;;:::o;1058:158::-;620:12;:10;:12::i;:::-;1153:5;;;;;;;;;;;1140:18;;:9;:18;;;;1132:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1199:9;1188:8;;:20;;;;;;;;;;;;;;;;;;1058:158;:::o;707:104::-;776:5;;;;;;;;;;;762:19;;:10;:19;;;754:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;707:104::o", "source": "pragma solidity 0.5.16;\r\n\r\n/**\r\n * @dev Provides support and utilities for contract ownership\r\n*/\r\ncontract Owned {\r\n address public owner;\r\n address public newOwner;\r\n\r\n /**\r\n * @dev triggered when the owner is updated\r\n *\r\n * @param _prevOwner previous owner\r\n * @param _newOwner new owner\r\n */\r\n event OwnerUpdate(address indexed _prevOwner, address indexed _newOwner);\r\n\r\n /**\r\n * @dev initializes a new Owned instance\r\n */\r\n constructor() public {\r\n owner = msg.sender;\r\n }\r\n\r\n // allows execution by the owner only\r\n modifier ownerOnly {\r\n _ownerOnly();\r\n _;\r\n }\r\n\r\n // error message binary size optimization\r\n function _ownerOnly() internal view {\r\n require(msg.sender == owner, \"ERR_ACCESS_DENIED\");\r\n }\r\n\r\n /**\r\n * @dev allows transferring the contract ownership\r\n * the new owner still needs to accept the transfer\r\n * can only be called by the contract owner\r\n *\r\n * @param _newOwner new contract owner\r\n */\r\n function transferOwnership(address _newOwner) public ownerOnly {\r\n require(_newOwner != owner, \"ERR_SAME_OWNER\");\r\n newOwner = _newOwner;\r\n }\r\n\r\n /**\r\n * @dev used by a new owner to accept an ownership transfer\r\n */\r\n function acceptOwnership() public {\r\n require(msg.sender == newOwner, \"ERR_ACCESS_DENIED\");\r\n emit OwnerUpdate(owner, newOwner);\r\n owner = newOwner;\r\n newOwner = address(0);\r\n }\r\n}\r\n", - "sourcePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/Owned.sol", + "sourcePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/Owned.sol", "ast": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/Owned.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/Owned.sol", "exportedSymbols": { "Owned": [ - 2713 + 3265 ] }, - "id": 2714, + "id": 3266, "nodeType": "SourceUnit", "nodes": [ { - "id": 2628, + "id": 3180, "literals": [ "solidity", "0.5", ".16" ], "nodeType": "PragmaDirective", - "src": "0:23:21" + "src": "0:23:24" }, { "baseContracts": [], @@ -114,20 +114,20 @@ "contractKind": "contract", "documentation": "@dev Provides support and utilities for contract ownership", "fullyImplemented": true, - "id": 2713, + "id": 3265, "linearizedBaseContracts": [ - 2713 + 3265 ], "name": "Owned", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 2630, + "id": 3182, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 2713, - "src": "122:20:21", + "scope": 3265, + "src": "122:20:24", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -135,10 +135,10 @@ "typeString": "address" }, "typeName": { - "id": 2629, + "id": 3181, "name": "address", "nodeType": "ElementaryTypeName", - "src": "122:7:21", + "src": "122:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -150,11 +150,11 @@ }, { "constant": false, - "id": 2632, + "id": 3184, "name": "newOwner", "nodeType": "VariableDeclaration", - "scope": 2713, - "src": "149:23:21", + "scope": 3265, + "src": "149:23:24", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -162,10 +162,10 @@ "typeString": "address" }, "typeName": { - "id": 2631, + "id": 3183, "name": "address", "nodeType": "ElementaryTypeName", - "src": "149:7:21", + "src": "149:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -178,21 +178,21 @@ { "anonymous": false, "documentation": "@dev triggered when the owner is updated\n\n * @param _prevOwner previous owner\n@param _newOwner new owner", - "id": 2638, + "id": 3190, "name": "OwnerUpdate", "nodeType": "EventDefinition", "parameters": { - "id": 2637, + "id": 3189, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2634, + "id": 3186, "indexed": true, "name": "_prevOwner", "nodeType": "VariableDeclaration", - "scope": 2638, - "src": "354:26:21", + "scope": 3190, + "src": "354:26:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -200,10 +200,10 @@ "typeString": "address" }, "typeName": { - "id": 2633, + "id": 3185, "name": "address", "nodeType": "ElementaryTypeName", - "src": "354:7:21", + "src": "354:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -215,12 +215,12 @@ }, { "constant": false, - "id": 2636, + "id": 3188, "indexed": true, "name": "_newOwner", "nodeType": "VariableDeclaration", - "scope": 2638, - "src": "382:25:21", + "scope": 3190, + "src": "382:25:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -228,10 +228,10 @@ "typeString": "address" }, "typeName": { - "id": 2635, + "id": 3187, "name": "address", "nodeType": "ElementaryTypeName", - "src": "382:7:21", + "src": "382:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -242,32 +242,32 @@ "visibility": "internal" } ], - "src": "353:55:21" + "src": "353:55:24" }, - "src": "336:73:21" + "src": "336:73:24" }, { "body": { - "id": 2646, + "id": 3198, "nodeType": "Block", - "src": "502:37:21", + "src": "502:37:24", "statements": [ { "expression": { "argumentTypes": null, - "id": 2644, + "id": 3196, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2641, + "id": 3193, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2630, - "src": "513:5:21", + "referencedDeclaration": 3182, + "src": "513:5:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -279,18 +279,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2642, + "id": 3194, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2942, - "src": "521:3:21", + "referencedDeclaration": 3494, + "src": "521:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2643, + "id": 3195, "isConstant": false, "isLValue": false, "isPure": false, @@ -298,54 +298,54 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "521:10:21", + "src": "521:10:24", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, - "src": "513:18:21", + "src": "513:18:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 2645, + "id": 3197, "nodeType": "ExpressionStatement", - "src": "513:18:21" + "src": "513:18:24" } ] }, "documentation": "@dev initializes a new Owned instance", - "id": 2647, + "id": 3199, "implemented": true, "kind": "constructor", "modifiers": [], "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 2639, + "id": 3191, "nodeType": "ParameterList", "parameters": [], - "src": "492:2:21" + "src": "492:2:24" }, "returnParameters": { - "id": 2640, + "id": 3192, "nodeType": "ParameterList", "parameters": [], - "src": "502:0:21" + "src": "502:0:24" }, - "scope": 2713, - "src": "481:58:21", + "scope": 3265, + "src": "481:58:24", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2653, + "id": 3205, "nodeType": "Block", - "src": "609:43:21", + "src": "609:43:24", "statements": [ { "expression": { @@ -353,18 +353,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 2649, + "id": 3201, "name": "_ownerOnly", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2666, - "src": "620:10:21", + "referencedDeclaration": 3218, + "src": "620:10:24", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$__$", "typeString": "function () view" } }, - "id": 2650, + "id": 3202, "isConstant": false, "isLValue": false, "isPure": false, @@ -372,41 +372,41 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "620:12:21", + "src": "620:12:24", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2651, + "id": 3203, "nodeType": "ExpressionStatement", - "src": "620:12:21" + "src": "620:12:24" }, { - "id": 2652, + "id": 3204, "nodeType": "PlaceholderStatement", - "src": "643:1:21" + "src": "643:1:24" } ] }, "documentation": null, - "id": 2654, + "id": 3206, "name": "ownerOnly", "nodeType": "ModifierDefinition", "parameters": { - "id": 2648, + "id": 3200, "nodeType": "ParameterList", "parameters": [], - "src": "609:0:21" + "src": "609:0:24" }, - "src": "590:62:21", + "src": "590:62:24", "visibility": "internal" }, { "body": { - "id": 2665, + "id": 3217, "nodeType": "Block", - "src": "743:68:21", + "src": "743:68:24", "statements": [ { "expression": { @@ -418,7 +418,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2661, + "id": 3213, "isConstant": false, "isLValue": false, "isPure": false, @@ -427,18 +427,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2658, + "id": 3210, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2942, - "src": "762:3:21", + "referencedDeclaration": 3494, + "src": "762:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2659, + "id": 3211, "isConstant": false, "isLValue": false, "isPure": false, @@ -446,7 +446,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "762:10:21", + "src": "762:10:24", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" @@ -456,18 +456,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2660, + "id": 3212, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2630, - "src": "776:5:21", + "referencedDeclaration": 3182, + "src": "776:5:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "762:19:21", + "src": "762:19:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -476,14 +476,14 @@ { "argumentTypes": null, "hexValue": "4552525f4143434553535f44454e494544", - "id": 2662, + "id": 3214, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "783:19:21", + "src": "783:19:24", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_f5894269650d3e1726ed81a4f48c5b62c7dd6fa025b89d639952a7012960d666", @@ -503,21 +503,21 @@ "typeString": "literal_string \"ERR_ACCESS_DENIED\"" } ], - "id": 2657, + "id": 3209, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 2945, - 2946 + 3497, + 3498 ], - "referencedDeclaration": 2946, - "src": "754:7:21", + "referencedDeclaration": 3498, + "src": "754:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 2663, + "id": 3215, "isConstant": false, "isLValue": false, "isPure": false, @@ -525,48 +525,48 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "754:49:21", + "src": "754:49:24", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2664, + "id": 3216, "nodeType": "ExpressionStatement", - "src": "754:49:21" + "src": "754:49:24" } ] }, "documentation": null, - "id": 2666, + "id": 3218, "implemented": true, "kind": "function", "modifiers": [], "name": "_ownerOnly", "nodeType": "FunctionDefinition", "parameters": { - "id": 2655, + "id": 3207, "nodeType": "ParameterList", "parameters": [], - "src": "726:2:21" + "src": "726:2:24" }, "returnParameters": { - "id": 2656, + "id": 3208, "nodeType": "ParameterList", "parameters": [], - "src": "743:0:21" + "src": "743:0:24" }, - "scope": 2713, - "src": "707:104:21", + "scope": 3265, + "src": "707:104:24", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 2684, + "id": 3236, "nodeType": "Block", - "src": "1121:95:21", + "src": "1121:95:24", "statements": [ { "expression": { @@ -578,19 +578,19 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2676, + "id": 3228, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2674, + "id": 3226, "name": "_newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2668, - "src": "1140:9:21", + "referencedDeclaration": 3220, + "src": "1140:9:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -600,18 +600,18 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 2675, + "id": 3227, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2630, - "src": "1153:5:21", + "referencedDeclaration": 3182, + "src": "1153:5:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "1140:18:21", + "src": "1140:18:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -620,14 +620,14 @@ { "argumentTypes": null, "hexValue": "4552525f53414d455f4f574e4552", - "id": 2677, + "id": 3229, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "1160:16:21", + "src": "1160:16:24", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_3fd4538e1d572c08b9fe188370db4ccb2fa173c576dfdb888a76c86a53b83133", @@ -647,21 +647,21 @@ "typeString": "literal_string \"ERR_SAME_OWNER\"" } ], - "id": 2673, + "id": 3225, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 2945, - 2946 + 3497, + 3498 ], - "referencedDeclaration": 2946, - "src": "1132:7:21", + "referencedDeclaration": 3498, + "src": "1132:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 2678, + "id": 3230, "isConstant": false, "isLValue": false, "isPure": false, @@ -669,32 +669,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1132:45:21", + "src": "1132:45:24", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2679, + "id": 3231, "nodeType": "ExpressionStatement", - "src": "1132:45:21" + "src": "1132:45:24" }, { "expression": { "argumentTypes": null, - "id": 2682, + "id": 3234, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2680, + "id": 3232, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2632, - "src": "1188:8:21", + "referencedDeclaration": 3184, + "src": "1188:8:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -704,67 +704,67 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2681, + "id": 3233, "name": "_newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2668, - "src": "1199:9:21", + "referencedDeclaration": 3220, + "src": "1199:9:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "1188:20:21", + "src": "1188:20:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 2683, + "id": 3235, "nodeType": "ExpressionStatement", - "src": "1188:20:21" + "src": "1188:20:24" } ] }, "documentation": "@dev allows transferring the contract ownership\nthe new owner still needs to accept the transfer\ncan only be called by the contract owner\n\n * @param _newOwner new contract owner", - "id": 2685, + "id": 3237, "implemented": true, "kind": "function", "modifiers": [ { "arguments": null, - "id": 2671, + "id": 3223, "modifierName": { "argumentTypes": null, - "id": 2670, + "id": 3222, "name": "ownerOnly", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2654, - "src": "1111:9:21", + "referencedDeclaration": 3206, + "src": "1111:9:24", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "1111:9:21" + "src": "1111:9:24" } ], "name": "transferOwnership", "nodeType": "FunctionDefinition", "parameters": { - "id": 2669, + "id": 3221, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2668, + "id": 3220, "name": "_newOwner", "nodeType": "VariableDeclaration", - "scope": 2685, - "src": "1085:17:21", + "scope": 3237, + "src": "1085:17:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -772,10 +772,10 @@ "typeString": "address" }, "typeName": { - "id": 2667, + "id": 3219, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1085:7:21", + "src": "1085:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -786,25 +786,25 @@ "visibility": "internal" } ], - "src": "1084:19:21" + "src": "1084:19:24" }, "returnParameters": { - "id": 2672, + "id": 3224, "nodeType": "ParameterList", "parameters": [], - "src": "1121:0:21" + "src": "1121:0:24" }, - "scope": 2713, - "src": "1058:158:21", + "scope": 3265, + "src": "1058:158:24", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2711, + "id": 3263, "nodeType": "Block", - "src": "1341:174:21", + "src": "1341:174:24", "statements": [ { "expression": { @@ -816,7 +816,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2692, + "id": 3244, "isConstant": false, "isLValue": false, "isPure": false, @@ -825,18 +825,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2689, + "id": 3241, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2942, - "src": "1360:3:21", + "referencedDeclaration": 3494, + "src": "1360:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2690, + "id": 3242, "isConstant": false, "isLValue": false, "isPure": false, @@ -844,7 +844,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1360:10:21", + "src": "1360:10:24", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" @@ -854,18 +854,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2691, + "id": 3243, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2632, - "src": "1374:8:21", + "referencedDeclaration": 3184, + "src": "1374:8:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "1360:22:21", + "src": "1360:22:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -874,14 +874,14 @@ { "argumentTypes": null, "hexValue": "4552525f4143434553535f44454e494544", - "id": 2693, + "id": 3245, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "1384:19:21", + "src": "1384:19:24", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_f5894269650d3e1726ed81a4f48c5b62c7dd6fa025b89d639952a7012960d666", @@ -901,21 +901,21 @@ "typeString": "literal_string \"ERR_ACCESS_DENIED\"" } ], - "id": 2688, + "id": 3240, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 2945, - 2946 + 3497, + 3498 ], - "referencedDeclaration": 2946, - "src": "1352:7:21", + "referencedDeclaration": 3498, + "src": "1352:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 2694, + "id": 3246, "isConstant": false, "isLValue": false, "isPure": false, @@ -923,15 +923,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1352:52:21", + "src": "1352:52:24", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2695, + "id": 3247, "nodeType": "ExpressionStatement", - "src": "1352:52:21" + "src": "1352:52:24" }, { "eventCall": { @@ -939,12 +939,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2697, + "id": 3249, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2630, - "src": "1432:5:21", + "referencedDeclaration": 3182, + "src": "1432:5:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -952,12 +952,12 @@ }, { "argumentTypes": null, - "id": 2698, + "id": 3250, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2632, - "src": "1439:8:21", + "referencedDeclaration": 3184, + "src": "1439:8:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -975,18 +975,18 @@ "typeString": "address" } ], - "id": 2696, + "id": 3248, "name": "OwnerUpdate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2638, - "src": "1420:11:21", + "referencedDeclaration": 3190, + "src": "1420:11:24", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 2699, + "id": 3251, "isConstant": false, "isLValue": false, "isPure": false, @@ -994,32 +994,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1420:28:21", + "src": "1420:28:24", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2700, + "id": 3252, "nodeType": "EmitStatement", - "src": "1415:33:21" + "src": "1415:33:24" }, { "expression": { "argumentTypes": null, - "id": 2703, + "id": 3255, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2701, + "id": 3253, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2630, - "src": "1459:5:21", + "referencedDeclaration": 3182, + "src": "1459:5:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1029,43 +1029,43 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2702, + "id": 3254, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2632, - "src": "1467:8:21", + "referencedDeclaration": 3184, + "src": "1467:8:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "1459:16:21", + "src": "1459:16:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 2704, + "id": 3256, "nodeType": "ExpressionStatement", - "src": "1459:16:21" + "src": "1459:16:24" }, { "expression": { "argumentTypes": null, - "id": 2709, + "id": 3261, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2705, + "id": 3257, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2632, - "src": "1486:8:21", + "referencedDeclaration": 3184, + "src": "1486:8:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1079,14 +1079,14 @@ { "argumentTypes": null, "hexValue": "30", - "id": 2707, + "id": 3259, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1505:1:21", + "src": "1505:1:24", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -1102,20 +1102,20 @@ "typeString": "int_const 0" } ], - "id": 2706, + "id": 3258, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1497:7:21", + "src": "1497:7:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, - "id": 2708, + "id": 3260, "isConstant": false, "isLValue": false, "isPure": true, @@ -1123,1148 +1123,1290 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1497:10:21", + "src": "1497:10:24", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, - "src": "1486:21:21", + "src": "1486:21:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 2710, + "id": 3262, "nodeType": "ExpressionStatement", - "src": "1486:21:21" + "src": "1486:21:24" } ] }, "documentation": "@dev used by a new owner to accept an ownership transfer", - "id": 2712, + "id": 3264, "implemented": true, "kind": "function", "modifiers": [], "name": "acceptOwnership", "nodeType": "FunctionDefinition", "parameters": { - "id": 2686, + "id": 3238, "nodeType": "ParameterList", "parameters": [], - "src": "1331:2:21" + "src": "1331:2:24" }, "returnParameters": { - "id": 2687, + "id": 3239, "nodeType": "ParameterList", "parameters": [], - "src": "1341:0:21" + "src": "1341:0:24" }, - "scope": 2713, - "src": "1307:208:21", + "scope": 3265, + "src": "1307:208:24", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" } ], - "scope": 2714, - "src": "100:1418:21" + "scope": 3266, + "src": "100:1418:24" } ], - "src": "0:1520:21" + "src": "0:1520:24" }, "legacyAST": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/Owned.sol", - "exportedSymbols": { - "Owned": [ - 2713 - ] + "attributes": { + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/Owned.sol", + "exportedSymbols": { + "Owned": [ + 3265 + ] + } }, - "id": 2714, - "nodeType": "SourceUnit", - "nodes": [ + "children": [ { - "id": 2628, - "literals": [ - "solidity", - "0.5", - ".16" - ], - "nodeType": "PragmaDirective", - "src": "0:23:21" + "attributes": { + "literals": [ + "solidity", + "0.5", + ".16" + ] + }, + "id": 3180, + "name": "PragmaDirective", + "src": "0:23:24" }, { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "contract", - "documentation": "@dev Provides support and utilities for contract ownership", - "fullyImplemented": true, - "id": 2713, - "linearizedBaseContracts": [ - 2713 - ], - "name": "Owned", - "nodeType": "ContractDefinition", - "nodes": [ + "attributes": { + "baseContracts": [ + null + ], + "contractDependencies": [ + null + ], + "contractKind": "contract", + "documentation": "@dev Provides support and utilities for contract ownership", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 3265 + ], + "name": "Owned", + "scope": 3266 + }, + "children": [ { - "constant": false, - "id": 2630, - "name": "owner", - "nodeType": "VariableDeclaration", - "scope": 2713, - "src": "122:20:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "attributes": { + "constant": false, + "name": "owner", + "scope": 3265, + "stateVariable": true, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "public" }, - "typeName": { - "id": 2629, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "122:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 3181, + "name": "ElementaryTypeName", + "src": "122:7:24" } + ], + "id": 3182, + "name": "VariableDeclaration", + "src": "122:20:24" + }, + { + "attributes": { + "constant": false, + "name": "newOwner", + "scope": 3265, + "stateVariable": true, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "public" }, - "value": null, - "visibility": "public" + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 3183, + "name": "ElementaryTypeName", + "src": "149:7:24" + } + ], + "id": 3184, + "name": "VariableDeclaration", + "src": "149:23:24" }, { - "constant": false, - "id": 2632, - "name": "newOwner", - "nodeType": "VariableDeclaration", - "scope": 2713, - "src": "149:23:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "attributes": { + "anonymous": false, + "documentation": "@dev triggered when the owner is updated\n\n * @param _prevOwner previous owner\n@param _newOwner new owner", + "name": "OwnerUpdate" }, - "typeName": { - "id": 2631, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "149:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "indexed": true, + "name": "_prevOwner", + "scope": 3190, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 3185, + "name": "ElementaryTypeName", + "src": "354:7:24" + } + ], + "id": 3186, + "name": "VariableDeclaration", + "src": "354:26:24" + }, + { + "attributes": { + "constant": false, + "indexed": true, + "name": "_newOwner", + "scope": 3190, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 3187, + "name": "ElementaryTypeName", + "src": "382:7:24" + } + ], + "id": 3188, + "name": "VariableDeclaration", + "src": "382:25:24" + } + ], + "id": 3189, + "name": "ParameterList", + "src": "353:55:24" } + ], + "id": 3190, + "name": "EventDefinition", + "src": "336:73:24" + }, + { + "attributes": { + "documentation": "@dev initializes a new Owned instance", + "implemented": true, + "isConstructor": true, + "kind": "constructor", + "modifiers": [ + null + ], + "name": "", + "scope": 3265, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" }, - "value": null, - "visibility": "public" + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 3191, + "name": "ParameterList", + "src": "492:2:24" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 3192, + "name": "ParameterList", + "src": "502:0:24" + }, + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "=", + "type": "address" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3182, + "type": "address", + "value": "owner" + }, + "id": 3193, + "name": "Identifier", + "src": "513:5:24" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3494, + "type": "msg", + "value": "msg" + }, + "id": 3194, + "name": "Identifier", + "src": "521:3:24" + } + ], + "id": 3195, + "name": "MemberAccess", + "src": "521:10:24" + } + ], + "id": 3196, + "name": "Assignment", + "src": "513:18:24" + } + ], + "id": 3197, + "name": "ExpressionStatement", + "src": "513:18:24" + } + ], + "id": 3198, + "name": "Block", + "src": "502:37:24" + } + ], + "id": 3199, + "name": "FunctionDefinition", + "src": "481:58:24" }, { - "anonymous": false, - "documentation": "@dev triggered when the owner is updated\n\n * @param _prevOwner previous owner\n@param _newOwner new owner", - "id": 2638, - "name": "OwnerUpdate", - "nodeType": "EventDefinition", - "parameters": { - "id": 2637, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2634, - "indexed": true, - "name": "_prevOwner", - "nodeType": "VariableDeclaration", - "scope": 2638, - "src": "354:26:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2633, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "354:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" + "attributes": { + "documentation": null, + "name": "ownerOnly", + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "parameters": [ + null + ] }, - { - "constant": false, - "id": 2636, - "indexed": true, - "name": "_newOwner", - "nodeType": "VariableDeclaration", - "scope": 2638, - "src": "382:25:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2635, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "382:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + "children": [], + "id": 3200, + "name": "ParameterList", + "src": "609:0:24" + }, + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "arguments": [ + null + ], + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + null + ], + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3218, + "type": "function () view", + "value": "_ownerOnly" + }, + "id": 3201, + "name": "Identifier", + "src": "620:10:24" + } + ], + "id": 3202, + "name": "FunctionCall", + "src": "620:12:24" + } + ], + "id": 3203, + "name": "ExpressionStatement", + "src": "620:12:24" }, - "value": null, - "visibility": "internal" - } + { + "id": 3204, + "name": "PlaceholderStatement", + "src": "643:1:24" + } + ], + "id": 3205, + "name": "Block", + "src": "609:43:24" + } + ], + "id": 3206, + "name": "ModifierDefinition", + "src": "590:62:24" + }, + { + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "353:55:21" + "name": "_ownerOnly", + "scope": 3265, + "stateMutability": "view", + "superFunction": null, + "visibility": "internal" }, - "src": "336:73:21" + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 3207, + "name": "ParameterList", + "src": "726:2:24" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 3208, + "name": "ParameterList", + "src": "743:0:24" + }, + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_f5894269650d3e1726ed81a4f48c5b62c7dd6fa025b89d639952a7012960d666", + "typeString": "literal_string \"ERR_ACCESS_DENIED\"" + } + ], + "overloadedDeclarations": [ + 3497, + 3498 + ], + "referencedDeclaration": 3498, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 3209, + "name": "Identifier", + "src": "754:7:24" + }, + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "==", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3494, + "type": "msg", + "value": "msg" + }, + "id": 3210, + "name": "Identifier", + "src": "762:3:24" + } + ], + "id": 3211, + "name": "MemberAccess", + "src": "762:10:24" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3182, + "type": "address", + "value": "owner" + }, + "id": 3212, + "name": "Identifier", + "src": "776:5:24" + } + ], + "id": 3213, + "name": "BinaryOperation", + "src": "762:19:24" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "4552525f4143434553535f44454e494544", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"ERR_ACCESS_DENIED\"", + "value": "ERR_ACCESS_DENIED" + }, + "id": 3214, + "name": "Literal", + "src": "783:19:24" + } + ], + "id": 3215, + "name": "FunctionCall", + "src": "754:49:24" + } + ], + "id": 3216, + "name": "ExpressionStatement", + "src": "754:49:24" + } + ], + "id": 3217, + "name": "Block", + "src": "743:68:24" + } + ], + "id": 3218, + "name": "FunctionDefinition", + "src": "707:104:24" }, { - "body": { - "id": 2646, - "nodeType": "Block", - "src": "502:37:21", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 2644, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 2641, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2630, - "src": "513:5:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + "attributes": { + "documentation": "@dev allows transferring the contract ownership\nthe new owner still needs to accept the transfer\ncan only be called by the contract owner\n\n * @param _newOwner new contract owner", + "implemented": true, + "isConstructor": false, + "kind": "function", + "name": "transferOwnership", + "scope": 3265, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_newOwner", + "scope": 3237, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2642, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2942, - "src": "521:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2643, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "521:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "src": "513:18:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2645, - "nodeType": "ExpressionStatement", - "src": "513:18:21" - } - ] - }, - "documentation": "@dev initializes a new Owned instance", - "id": 2647, - "implemented": true, - "kind": "constructor", - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2639, - "nodeType": "ParameterList", - "parameters": [], - "src": "492:2:21" - }, - "returnParameters": { - "id": 2640, - "nodeType": "ParameterList", - "parameters": [], - "src": "502:0:21" - }, - "scope": 2713, - "src": "481:58:21", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2653, - "nodeType": "Block", - "src": "609:43:21", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 2649, - "name": "_ownerOnly", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2666, - "src": "620:10:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$__$", - "typeString": "function () view" - } - }, - "id": 2650, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "620:12:21", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2651, - "nodeType": "ExpressionStatement", - "src": "620:12:21" - }, - { - "id": 2652, - "nodeType": "PlaceholderStatement", - "src": "643:1:21" - } - ] - }, - "documentation": null, - "id": 2654, - "name": "ownerOnly", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 2648, - "nodeType": "ParameterList", - "parameters": [], - "src": "609:0:21" - }, - "src": "590:62:21", - "visibility": "internal" - }, - { - "body": { - "id": 2665, - "nodeType": "Block", - "src": "743:68:21", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2661, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2658, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2942, - "src": "762:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2659, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "762:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 2660, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2630, - "src": "776:5:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "762:19:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "argumentTypes": null, - "hexValue": "4552525f4143434553535f44454e494544", - "id": 2662, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "783:19:21", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_f5894269650d3e1726ed81a4f48c5b62c7dd6fa025b89d639952a7012960d666", - "typeString": "literal_string \"ERR_ACCESS_DENIED\"" - }, - "value": "ERR_ACCESS_DENIED" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_f5894269650d3e1726ed81a4f48c5b62c7dd6fa025b89d639952a7012960d666", - "typeString": "literal_string \"ERR_ACCESS_DENIED\"" - } - ], - "id": 2657, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 2945, - 2946 - ], - "referencedDeclaration": 2946, - "src": "754:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2663, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "754:49:21", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2664, - "nodeType": "ExpressionStatement", - "src": "754:49:21" - } - ] - }, - "documentation": null, - "id": 2666, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_ownerOnly", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2655, - "nodeType": "ParameterList", - "parameters": [], - "src": "726:2:21" - }, - "returnParameters": { - "id": 2656, - "nodeType": "ParameterList", - "parameters": [], - "src": "743:0:21" - }, - "scope": 2713, - "src": "707:104:21", - "stateMutability": "view", - "superFunction": null, - "visibility": "internal" - }, - { - "body": { - "id": 2684, - "nodeType": "Block", - "src": "1121:95:21", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2676, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2674, - "name": "_newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2668, - "src": "1140:9:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "argumentTypes": null, - "id": 2675, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2630, - "src": "1153:5:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1140:18:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "argumentTypes": null, - "hexValue": "4552525f53414d455f4f574e4552", - "id": 2677, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1160:16:21", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_3fd4538e1d572c08b9fe188370db4ccb2fa173c576dfdb888a76c86a53b83133", - "typeString": "literal_string \"ERR_SAME_OWNER\"" - }, - "value": "ERR_SAME_OWNER" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_3fd4538e1d572c08b9fe188370db4ccb2fa173c576dfdb888a76c86a53b83133", - "typeString": "literal_string \"ERR_SAME_OWNER\"" - } - ], - "id": 2673, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 2945, - 2946 - ], - "referencedDeclaration": 2946, - "src": "1132:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2678, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1132:45:21", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2679, - "nodeType": "ExpressionStatement", - "src": "1132:45:21" - }, - { - "expression": { - "argumentTypes": null, - "id": 2682, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 2680, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2632, - "src": "1188:8:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 2681, - "name": "_newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2668, - "src": "1199:9:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1188:20:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2683, - "nodeType": "ExpressionStatement", - "src": "1188:20:21" - } - ] - }, - "documentation": "@dev allows transferring the contract ownership\nthe new owner still needs to accept the transfer\ncan only be called by the contract owner\n\n * @param _newOwner new contract owner", - "id": 2685, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": null, - "id": 2671, - "modifierName": { - "argumentTypes": null, - "id": 2670, - "name": "ownerOnly", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2654, - "src": "1111:9:21", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "1111:9:21" - } - ], - "name": "transferOwnership", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2669, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2668, - "name": "_newOwner", - "nodeType": "VariableDeclaration", - "scope": 2685, - "src": "1085:17:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2667, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1085:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1084:19:21" - }, - "returnParameters": { - "id": 2672, - "nodeType": "ParameterList", - "parameters": [], - "src": "1121:0:21" - }, - "scope": 2713, - "src": "1058:158:21", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2711, - "nodeType": "Block", - "src": "1341:174:21", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2692, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2689, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2942, - "src": "1360:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2690, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1360:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 2691, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2632, - "src": "1374:8:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1360:22:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "argumentTypes": null, - "hexValue": "4552525f4143434553535f44454e494544", - "id": 2693, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1384:19:21", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_f5894269650d3e1726ed81a4f48c5b62c7dd6fa025b89d639952a7012960d666", - "typeString": "literal_string \"ERR_ACCESS_DENIED\"" - }, - "value": "ERR_ACCESS_DENIED" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_f5894269650d3e1726ed81a4f48c5b62c7dd6fa025b89d639952a7012960d666", - "typeString": "literal_string \"ERR_ACCESS_DENIED\"" - } - ], - "id": 2688, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 2945, - 2946 - ], - "referencedDeclaration": 2946, - "src": "1352:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2694, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1352:52:21", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2695, - "nodeType": "ExpressionStatement", - "src": "1352:52:21" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2697, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2630, - "src": "1432:5:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 2698, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2632, - "src": "1439:8:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 3219, + "name": "ElementaryTypeName", + "src": "1085:7:24" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2696, - "name": "OwnerUpdate", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2638, - "src": "1420:11:21", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", - "typeString": "function (address,address)" - } - }, - "id": 2699, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1420:28:21", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2700, - "nodeType": "EmitStatement", - "src": "1415:33:21" + "id": 3220, + "name": "VariableDeclaration", + "src": "1085:17:24" + } + ], + "id": 3221, + "name": "ParameterList", + "src": "1084:19:24" + }, + { + "attributes": { + "parameters": [ + null + ] }, - { - "expression": { - "argumentTypes": null, - "id": 2703, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { + "children": [], + "id": 3224, + "name": "ParameterList", + "src": "1121:0:24" + }, + { + "attributes": { + "arguments": null + }, + "children": [ + { + "attributes": { "argumentTypes": null, - "id": 2701, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2630, - "src": "1459:5:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3206, + "type": "modifier ()", + "value": "ownerOnly" }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 2702, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2632, - "src": "1467:8:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "id": 3222, + "name": "Identifier", + "src": "1111:9:24" + } + ], + "id": 3223, + "name": "ModifierInvocation", + "src": "1111:9:24" + }, + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_3fd4538e1d572c08b9fe188370db4ccb2fa173c576dfdb888a76c86a53b83133", + "typeString": "literal_string \"ERR_SAME_OWNER\"" + } + ], + "overloadedDeclarations": [ + 3497, + 3498 + ], + "referencedDeclaration": 3498, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 3225, + "name": "Identifier", + "src": "1132:7:24" + }, + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "!=", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3220, + "type": "address", + "value": "_newOwner" + }, + "id": 3226, + "name": "Identifier", + "src": "1140:9:24" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3182, + "type": "address", + "value": "owner" + }, + "id": 3227, + "name": "Identifier", + "src": "1153:5:24" + } + ], + "id": 3228, + "name": "BinaryOperation", + "src": "1140:18:24" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "4552525f53414d455f4f574e4552", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"ERR_SAME_OWNER\"", + "value": "ERR_SAME_OWNER" + }, + "id": 3229, + "name": "Literal", + "src": "1160:16:24" + } + ], + "id": 3230, + "name": "FunctionCall", + "src": "1132:45:24" } - }, - "src": "1459:16:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + ], + "id": 3231, + "name": "ExpressionStatement", + "src": "1132:45:24" }, - "id": 2704, - "nodeType": "ExpressionStatement", - "src": "1459:16:21" + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "=", + "type": "address" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3184, + "type": "address", + "value": "newOwner" + }, + "id": 3232, + "name": "Identifier", + "src": "1188:8:24" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3220, + "type": "address", + "value": "_newOwner" + }, + "id": 3233, + "name": "Identifier", + "src": "1199:9:24" + } + ], + "id": 3234, + "name": "Assignment", + "src": "1188:20:24" + } + ], + "id": 3235, + "name": "ExpressionStatement", + "src": "1188:20:24" + } + ], + "id": 3236, + "name": "Block", + "src": "1121:95:24" + } + ], + "id": 3237, + "name": "FunctionDefinition", + "src": "1058:158:24" + }, + { + "attributes": { + "documentation": "@dev used by a new owner to accept an ownership transfer", + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "acceptOwnership", + "scope": 3265, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + "children": [ + { + "attributes": { + "parameters": [ + null + ] }, - { - "expression": { - "argumentTypes": null, - "id": 2709, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 2705, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2632, - "src": "1486:8:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "children": [], + "id": 3238, + "name": "ParameterList", + "src": "1331:2:24" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 3239, + "name": "ParameterList", + "src": "1341:0:24" + }, + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_f5894269650d3e1726ed81a4f48c5b62c7dd6fa025b89d639952a7012960d666", + "typeString": "literal_string \"ERR_ACCESS_DENIED\"" + } + ], + "overloadedDeclarations": [ + 3497, + 3498 + ], + "referencedDeclaration": 3498, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 3240, + "name": "Identifier", + "src": "1352:7:24" + }, + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "==", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3494, + "type": "msg", + "value": "msg" + }, + "id": 3241, + "name": "Identifier", + "src": "1360:3:24" + } + ], + "id": 3242, + "name": "MemberAccess", + "src": "1360:10:24" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3184, + "type": "address", + "value": "newOwner" + }, + "id": 3243, + "name": "Identifier", + "src": "1374:8:24" + } + ], + "id": 3244, + "name": "BinaryOperation", + "src": "1360:22:24" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "4552525f4143434553535f44454e494544", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"ERR_ACCESS_DENIED\"", + "value": "ERR_ACCESS_DENIED" + }, + "id": 3245, + "name": "Literal", + "src": "1384:19:24" + } + ], + "id": 3246, + "name": "FunctionCall", + "src": "1352:52:24" } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { + ], + "id": 3247, + "name": "ExpressionStatement", + "src": "1352:52:24" + }, + { + "children": [ + { + "attributes": { "argumentTypes": null, - "hexValue": "30", - "id": 2707, "isConstant": false, "isLValue": false, - "isPure": true, - "kind": "number", + "isPure": false, + "isStructConstructorCall": false, "lValueRequested": false, - "nodeType": "Literal", - "src": "1505:1:21", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3190, + "type": "function (address,address)", + "value": "OwnerUpdate" + }, + "id": 3248, + "name": "Identifier", + "src": "1420:11:24" }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3182, + "type": "address", + "value": "owner" + }, + "id": 3249, + "name": "Identifier", + "src": "1432:5:24" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3184, + "type": "address", + "value": "newOwner" + }, + "id": 3250, + "name": "Identifier", + "src": "1439:8:24" } ], - "id": 2706, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1497:7:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" + "id": 3251, + "name": "FunctionCall", + "src": "1420:28:24" + } + ], + "id": 3252, + "name": "EmitStatement", + "src": "1415:33:24" + }, + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "=", + "type": "address" }, - "typeName": "address" - }, - "id": 2708, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1497:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3182, + "type": "address", + "value": "owner" + }, + "id": 3253, + "name": "Identifier", + "src": "1459:5:24" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3184, + "type": "address", + "value": "newOwner" + }, + "id": 3254, + "name": "Identifier", + "src": "1467:8:24" + } + ], + "id": 3255, + "name": "Assignment", + "src": "1459:16:24" } - }, - "src": "1486:21:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + ], + "id": 3256, + "name": "ExpressionStatement", + "src": "1459:16:24" }, - "id": 2710, - "nodeType": "ExpressionStatement", - "src": "1486:21:21" - } - ] - }, - "documentation": "@dev used by a new owner to accept an ownership transfer", - "id": 2712, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "acceptOwnership", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2686, - "nodeType": "ParameterList", - "parameters": [], - "src": "1331:2:21" - }, - "returnParameters": { - "id": 2687, - "nodeType": "ParameterList", - "parameters": [], - "src": "1341:0:21" - }, - "scope": 2713, - "src": "1307:208:21", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "=", + "type": "address" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3184, + "type": "address", + "value": "newOwner" + }, + "id": 3257, + "name": "Identifier", + "src": "1486:8:24" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": true, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "address payable", + "type_conversion": true + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "type": "type(address)", + "value": "address" + }, + "id": 3258, + "name": "ElementaryTypeNameExpression", + "src": "1497:7:24" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "30", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "number", + "type": "int_const 0", + "value": "0" + }, + "id": 3259, + "name": "Literal", + "src": "1505:1:24" + } + ], + "id": 3260, + "name": "FunctionCall", + "src": "1497:10:24" + } + ], + "id": 3261, + "name": "Assignment", + "src": "1486:21:24" + } + ], + "id": 3262, + "name": "ExpressionStatement", + "src": "1486:21:24" + } + ], + "id": 3263, + "name": "Block", + "src": "1341:174:24" + } + ], + "id": 3264, + "name": "FunctionDefinition", + "src": "1307:208:24" } ], - "scope": 2714, - "src": "100:1418:21" + "id": 3265, + "name": "ContractDefinition", + "src": "100:1418:24" } ], - "src": "0:1520:21" + "id": 3266, + "name": "SourceUnit", + "src": "0:1520:24" }, "compiler": { "name": "solc", "version": "0.5.16+commit.9c3226ce.Emscripten.clang" }, "networks": {}, - "schemaVersion": "3.3.2", - "updatedAt": "2021-04-07T07:37:58.300Z", + "schemaVersion": "3.4.1", + "updatedAt": "2022-02-15T06:13:50.491Z", "devdoc": { "details": "Provides support and utilities for contract ownership", "methods": { diff --git a/rbtcwrapperproxy/build/contracts/ReentrancyGuard.json b/rbtcwrapperproxy/build/contracts/ReentrancyGuard.json index 2f15d95..a4b15f6 100644 --- a/rbtcwrapperproxy/build/contracts/ReentrancyGuard.json +++ b/rbtcwrapperproxy/build/contracts/ReentrancyGuard.json @@ -1,25 +1,25 @@ { "contractName": "ReentrancyGuard", "abi": [], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"author\":\"Remco Bloemen , Eenae \",\"details\":\"If you mark a function `nonReentrant`, you should also mark it `external`.\",\"methods\":{},\"title\":\"Helps contracts guard against reentrancy attacks.\"},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/ReentrancyGuard.sol\":\"ReentrancyGuard\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/ReentrancyGuard.sol\":{\"keccak256\":\"0xc0af8131293bf6588ace09caec796d8f3e9f9408d618d4ce04cce7fb51b3a4bd\",\"urls\":[\"bzz-raw://2341f6c68d28b30732619243430e05ebd882692a3a977f3135d0bf3ca3ab7c1a\",\"dweb:/ipfs/QmRQF4eTRWRuTSgBFTA3TkVYvvrqCvp32PbwUuDFavE64H\"]}},\"version\":1}", - "bytecode": "0x60806040526001600055348015601457600080fd5b50603e8060226000396000f3fe6080604052600080fdfea265627a7a72315820c6db044dbf3996a2f87925fc805745e17044902681103d1658096f5ccf20475464736f6c63430005100032", - "deployedBytecode": "0x6080604052600080fdfea265627a7a72315820c6db044dbf3996a2f87925fc805745e17044902681103d1658096f5ccf20475464736f6c63430005100032", - "sourceMap": "256:1022:18:-;;;493:1;661:55;;256:1022;8:9:-1;5:2;;;30:1;27;20:12;5:2;256:1022:18;;;;;;;", - "deployedSourceMap": "256:1022:18:-;;;;;", + "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"author\":\"Remco Bloemen , Eenae \",\"details\":\"If you mark a function `nonReentrant`, you should also mark it `external`.\",\"methods\":{},\"title\":\"Helps contracts guard against reentrancy attacks.\"},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/ReentrancyGuard.sol\":\"ReentrancyGuard\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/ReentrancyGuard.sol\":{\"keccak256\":\"0xc0af8131293bf6588ace09caec796d8f3e9f9408d618d4ce04cce7fb51b3a4bd\",\"urls\":[\"bzz-raw://2341f6c68d28b30732619243430e05ebd882692a3a977f3135d0bf3ca3ab7c1a\",\"dweb:/ipfs/QmRQF4eTRWRuTSgBFTA3TkVYvvrqCvp32PbwUuDFavE64H\"]}},\"version\":1}", + "bytecode": "0x60806040526001600055348015601457600080fd5b50603e8060226000396000f3fe6080604052600080fdfea265627a7a723158201532597de6128ef6fc6bd1d907bf028ae1d9fedcfc8edc3ee611a0049f4bf48f64736f6c63430005100032", + "deployedBytecode": "0x6080604052600080fdfea265627a7a723158201532597de6128ef6fc6bd1d907bf028ae1d9fedcfc8edc3ee611a0049f4bf48f64736f6c63430005100032", + "sourceMap": "256:1022:25:-;;;493:1;661:55;;256:1022;8:9:-1;5:2;;;30:1;27;20:12;5:2;256:1022:25;;;;;;;", + "deployedSourceMap": "256:1022:25:-;;;;;", "source": "pragma solidity >=0.5.0 <0.6.0;\n\n/**\n * @title Helps contracts guard against reentrancy attacks.\n * @author Remco Bloemen , Eenae \n * @dev If you mark a function `nonReentrant`, you should also\n * mark it `external`.\n */\ncontract ReentrancyGuard {\n\t/// @dev Constant for unlocked guard state - non-zero to prevent extra gas costs.\n\t/// See: https://github.com/OpenZeppelin/openzeppelin-solidity/issues/1056\n\tuint256 internal constant REENTRANCY_GUARD_FREE = 1;\n\n\t/// @dev Constant for locked guard state\n\tuint256 internal constant REENTRANCY_GUARD_LOCKED = 2;\n\n\t/**\n\t * @dev We use a single lock for the whole contract.\n\t */\n\tuint256 internal reentrancyLock = REENTRANCY_GUARD_FREE;\n\n\t/**\n\t * @dev Prevents a contract from calling itself, directly or indirectly.\n\t * If you mark a function `nonReentrant`, you should also\n\t * mark it `external`. Calling one `nonReentrant` function from\n\t * another is not supported. Instead, you can implement a\n\t * `private` function doing the actual work, and an `external`\n\t * wrapper marked as `nonReentrant`.\n\t */\n\tmodifier nonReentrant() {\n\t\trequire(reentrancyLock == REENTRANCY_GUARD_FREE, \"nonReentrant\");\n\t\treentrancyLock = REENTRANCY_GUARD_LOCKED;\n\t\t_;\n\t\treentrancyLock = REENTRANCY_GUARD_FREE;\n\t}\n}\n", - "sourcePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/ReentrancyGuard.sol", + "sourcePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/ReentrancyGuard.sol", "ast": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/ReentrancyGuard.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/ReentrancyGuard.sol", "exportedSymbols": { "ReentrancyGuard": [ - 2185 + 3296 ] }, - "id": 2186, + "id": 3297, "nodeType": "SourceUnit", "nodes": [ { - "id": 2156, + "id": 3267, "literals": [ "solidity", ">=", @@ -30,7 +30,7 @@ ".0" ], "nodeType": "PragmaDirective", - "src": "0:31:18" + "src": "0:31:25" }, { "baseContracts": [], @@ -38,20 +38,20 @@ "contractKind": "contract", "documentation": "@title Helps contracts guard against reentrancy attacks.\n@author Remco Bloemen , Eenae \n@dev If you mark a function `nonReentrant`, you should also\nmark it `external`.", "fullyImplemented": true, - "id": 2185, + "id": 3296, "linearizedBaseContracts": [ - 2185 + 3296 ], "name": "ReentrancyGuard", "nodeType": "ContractDefinition", "nodes": [ { "constant": true, - "id": 2159, + "id": 3270, "name": "REENTRANCY_GUARD_FREE", "nodeType": "VariableDeclaration", - "scope": 2185, - "src": "443:51:18", + "scope": 3296, + "src": "443:51:25", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -59,10 +59,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2157, + "id": 3268, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "443:7:18", + "src": "443:7:25", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -71,14 +71,14 @@ "value": { "argumentTypes": null, "hexValue": "31", - "id": 2158, + "id": 3269, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "493:1:18", + "src": "493:1:25", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -90,11 +90,11 @@ }, { "constant": true, - "id": 2162, + "id": 3273, "name": "REENTRANCY_GUARD_LOCKED", "nodeType": "VariableDeclaration", - "scope": 2185, - "src": "540:53:18", + "scope": 3296, + "src": "540:53:25", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -102,10 +102,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2160, + "id": 3271, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "540:7:18", + "src": "540:7:25", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -114,14 +114,14 @@ "value": { "argumentTypes": null, "hexValue": "32", - "id": 2161, + "id": 3272, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "592:1:18", + "src": "592:1:25", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", @@ -133,11 +133,11 @@ }, { "constant": false, - "id": 2165, + "id": 3276, "name": "reentrancyLock", "nodeType": "VariableDeclaration", - "scope": 2185, - "src": "661:55:18", + "scope": 3296, + "src": "661:55:25", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -145,10 +145,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2163, + "id": 3274, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "661:7:18", + "src": "661:7:25", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -156,12 +156,12 @@ }, "value": { "argumentTypes": null, - "id": 2164, + "id": 3275, "name": "REENTRANCY_GUARD_FREE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2159, - "src": "695:21:18", + "referencedDeclaration": 3270, + "src": "695:21:25", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -171,9 +171,9 @@ }, { "body": { - "id": 2183, + "id": 3294, "nodeType": "Block", - "src": "1113:163:18", + "src": "1113:163:25", "statements": [ { "expression": { @@ -185,19 +185,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2170, + "id": 3281, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2168, + "id": 3279, "name": "reentrancyLock", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2165, - "src": "1125:14:18", + "referencedDeclaration": 3276, + "src": "1125:14:25", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -207,18 +207,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2169, + "id": 3280, "name": "REENTRANCY_GUARD_FREE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2159, - "src": "1143:21:18", + "referencedDeclaration": 3270, + "src": "1143:21:25", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1125:39:18", + "src": "1125:39:25", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -227,14 +227,14 @@ { "argumentTypes": null, "hexValue": "6e6f6e5265656e7472616e74", - "id": 2171, + "id": 3282, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "1166:14:18", + "src": "1166:14:25", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_d4d824a0cb85932bce2008d0970b61f5e00c87b10638bd01486d81160e65132e", @@ -254,21 +254,21 @@ "typeString": "literal_string \"nonReentrant\"" } ], - "id": 2167, + "id": 3278, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 2310, - 2311 + 3497, + 3498 ], - "referencedDeclaration": 2311, - "src": "1117:7:18", + "referencedDeclaration": 3498, + "src": "1117:7:25", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 2172, + "id": 3283, "isConstant": false, "isLValue": false, "isPure": false, @@ -276,32 +276,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1117:64:18", + "src": "1117:64:25", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2173, + "id": 3284, "nodeType": "ExpressionStatement", - "src": "1117:64:18" + "src": "1117:64:25" }, { "expression": { "argumentTypes": null, - "id": 2176, + "id": 3287, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2174, + "id": 3285, "name": "reentrancyLock", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2165, - "src": "1185:14:18", + "referencedDeclaration": 3276, + "src": "1185:14:25", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -311,48 +311,48 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2175, + "id": 3286, "name": "REENTRANCY_GUARD_LOCKED", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2162, - "src": "1202:23:18", + "referencedDeclaration": 3273, + "src": "1202:23:25", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1185:40:18", + "src": "1185:40:25", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2177, + "id": 3288, "nodeType": "ExpressionStatement", - "src": "1185:40:18" + "src": "1185:40:25" }, { - "id": 2178, + "id": 3289, "nodeType": "PlaceholderStatement", - "src": "1229:1:18" + "src": "1229:1:25" }, { "expression": { "argumentTypes": null, - "id": 2181, + "id": 3292, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2179, + "id": 3290, "name": "reentrancyLock", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2165, - "src": "1234:14:18", + "referencedDeclaration": 3276, + "src": "1234:14:25", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -362,453 +362,486 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2180, + "id": 3291, "name": "REENTRANCY_GUARD_FREE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2159, - "src": "1251:21:18", + "referencedDeclaration": 3270, + "src": "1251:21:25", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1234:38:18", + "src": "1234:38:25", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2182, + "id": 3293, "nodeType": "ExpressionStatement", - "src": "1234:38:18" + "src": "1234:38:25" } ] }, "documentation": "@dev Prevents a contract from calling itself, directly or indirectly.\nIf you mark a function `nonReentrant`, you should also\nmark it `external`. Calling one `nonReentrant` function from\nanother is not supported. Instead, you can implement a\n`private` function doing the actual work, and an `external`\nwrapper marked as `nonReentrant`.", - "id": 2184, + "id": 3295, "name": "nonReentrant", "nodeType": "ModifierDefinition", "parameters": { - "id": 2166, + "id": 3277, "nodeType": "ParameterList", "parameters": [], - "src": "1110:2:18" + "src": "1110:2:25" }, - "src": "1089:187:18", + "src": "1089:187:25", "visibility": "internal" } ], - "scope": 2186, - "src": "256:1022:18" + "scope": 3297, + "src": "256:1022:25" } ], - "src": "0:1279:18" + "src": "0:1279:25" }, "legacyAST": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/ReentrancyGuard.sol", - "exportedSymbols": { - "ReentrancyGuard": [ - 2185 - ] + "attributes": { + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/ReentrancyGuard.sol", + "exportedSymbols": { + "ReentrancyGuard": [ + 3296 + ] + } }, - "id": 2186, - "nodeType": "SourceUnit", - "nodes": [ + "children": [ { - "id": 2156, - "literals": [ - "solidity", - ">=", - "0.5", - ".0", - "<", - "0.6", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "0:31:18" + "attributes": { + "literals": [ + "solidity", + ">=", + "0.5", + ".0", + "<", + "0.6", + ".0" + ] + }, + "id": 3267, + "name": "PragmaDirective", + "src": "0:31:25" }, { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "contract", - "documentation": "@title Helps contracts guard against reentrancy attacks.\n@author Remco Bloemen , Eenae \n@dev If you mark a function `nonReentrant`, you should also\nmark it `external`.", - "fullyImplemented": true, - "id": 2185, - "linearizedBaseContracts": [ - 2185 - ], - "name": "ReentrancyGuard", - "nodeType": "ContractDefinition", - "nodes": [ + "attributes": { + "baseContracts": [ + null + ], + "contractDependencies": [ + null + ], + "contractKind": "contract", + "documentation": "@title Helps contracts guard against reentrancy attacks.\n@author Remco Bloemen , Eenae \n@dev If you mark a function `nonReentrant`, you should also\nmark it `external`.", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 3296 + ], + "name": "ReentrancyGuard", + "scope": 3297 + }, + "children": [ { - "constant": true, - "id": 2159, - "name": "REENTRANCY_GUARD_FREE", - "nodeType": "VariableDeclaration", - "scope": 2185, - "src": "443:51:18", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2157, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "443:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + "attributes": { + "constant": true, + "name": "REENTRANCY_GUARD_FREE", + "scope": 3296, + "stateVariable": true, + "storageLocation": "default", + "type": "uint256", + "visibility": "internal" }, - "value": { - "argumentTypes": null, - "hexValue": "31", - "id": 2158, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "493:1:18", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 3268, + "name": "ElementaryTypeName", + "src": "443:7:25" }, - "value": "1" - }, - "visibility": "internal" + { + "attributes": { + "argumentTypes": null, + "hexvalue": "31", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "number", + "type": "int_const 1", + "value": "1" + }, + "id": 3269, + "name": "Literal", + "src": "493:1:25" + } + ], + "id": 3270, + "name": "VariableDeclaration", + "src": "443:51:25" }, { - "constant": true, - "id": 2162, - "name": "REENTRANCY_GUARD_LOCKED", - "nodeType": "VariableDeclaration", - "scope": 2185, - "src": "540:53:18", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2160, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "540:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + "attributes": { + "constant": true, + "name": "REENTRANCY_GUARD_LOCKED", + "scope": 3296, + "stateVariable": true, + "storageLocation": "default", + "type": "uint256", + "visibility": "internal" }, - "value": { - "argumentTypes": null, - "hexValue": "32", - "id": 2161, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "592:1:18", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 3271, + "name": "ElementaryTypeName", + "src": "540:7:25" }, - "value": "2" - }, - "visibility": "internal" + { + "attributes": { + "argumentTypes": null, + "hexvalue": "32", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "number", + "type": "int_const 2", + "value": "2" + }, + "id": 3272, + "name": "Literal", + "src": "592:1:25" + } + ], + "id": 3273, + "name": "VariableDeclaration", + "src": "540:53:25" }, { - "constant": false, - "id": 2165, - "name": "reentrancyLock", - "nodeType": "VariableDeclaration", - "scope": 2185, - "src": "661:55:18", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "attributes": { + "constant": false, + "name": "reentrancyLock", + "scope": 3296, + "stateVariable": true, + "storageLocation": "default", + "type": "uint256", + "visibility": "internal" }, - "typeName": { - "id": 2163, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "661:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "argumentTypes": null, - "id": 2164, - "name": "REENTRANCY_GUARD_FREE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2159, - "src": "695:21:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 3274, + "name": "ElementaryTypeName", + "src": "661:7:25" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3270, + "type": "uint256", + "value": "REENTRANCY_GUARD_FREE" + }, + "id": 3275, + "name": "Identifier", + "src": "695:21:25" } - }, - "visibility": "internal" + ], + "id": 3276, + "name": "VariableDeclaration", + "src": "661:55:25" }, { - "body": { - "id": 2183, - "nodeType": "Block", - "src": "1113:163:18", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ + "attributes": { + "documentation": "@dev Prevents a contract from calling itself, directly or indirectly.\nIf you mark a function `nonReentrant`, you should also\nmark it `external`. Calling one `nonReentrant` function from\nanother is not supported. Instead, you can implement a\n`private` function doing the actual work, and an `external`\nwrapper marked as `nonReentrant`.", + "name": "nonReentrant", + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 3277, + "name": "ParameterList", + "src": "1110:2:25" + }, + { + "children": [ + { + "children": [ { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2170, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { + "attributes": { "argumentTypes": null, - "id": 2168, - "name": "reentrancyLock", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2165, - "src": "1125:14:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 2169, - "name": "REENTRANCY_GUARD_FREE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2159, - "src": "1143:21:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_d4d824a0cb85932bce2008d0970b61f5e00c87b10638bd01486d81160e65132e", + "typeString": "literal_string \"nonReentrant\"" + } + ], + "overloadedDeclarations": [ + 3497, + 3498 + ], + "referencedDeclaration": 3498, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 3278, + "name": "Identifier", + "src": "1117:7:25" + }, + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "==", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3276, + "type": "uint256", + "value": "reentrancyLock" + }, + "id": 3279, + "name": "Identifier", + "src": "1125:14:25" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3270, + "type": "uint256", + "value": "REENTRANCY_GUARD_FREE" + }, + "id": 3280, + "name": "Identifier", + "src": "1143:21:25" + } + ], + "id": 3281, + "name": "BinaryOperation", + "src": "1125:39:25" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "6e6f6e5265656e7472616e74", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"nonReentrant\"", + "value": "nonReentrant" + }, + "id": 3282, + "name": "Literal", + "src": "1166:14:25" } - }, - "src": "1125:39:18", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "argumentTypes": null, - "hexValue": "6e6f6e5265656e7472616e74", - "id": 2171, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1166:14:18", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_d4d824a0cb85932bce2008d0970b61f5e00c87b10638bd01486d81160e65132e", - "typeString": "literal_string \"nonReentrant\"" - }, - "value": "nonReentrant" + ], + "id": 3283, + "name": "FunctionCall", + "src": "1117:64:25" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" + "id": 3284, + "name": "ExpressionStatement", + "src": "1117:64:25" + }, + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "=", + "type": "uint256" }, - { - "typeIdentifier": "t_stringliteral_d4d824a0cb85932bce2008d0970b61f5e00c87b10638bd01486d81160e65132e", - "typeString": "literal_string \"nonReentrant\"" - } - ], - "id": 2167, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 2310, - 2311 - ], - "referencedDeclaration": 2311, - "src": "1117:7:18", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3276, + "type": "uint256", + "value": "reentrancyLock" + }, + "id": 3285, + "name": "Identifier", + "src": "1185:14:25" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3273, + "type": "uint256", + "value": "REENTRANCY_GUARD_LOCKED" + }, + "id": 3286, + "name": "Identifier", + "src": "1202:23:25" + } + ], + "id": 3287, + "name": "Assignment", + "src": "1185:40:25" } - }, - "id": 2172, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1117:64:18", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } + ], + "id": 3288, + "name": "ExpressionStatement", + "src": "1185:40:25" }, - "id": 2173, - "nodeType": "ExpressionStatement", - "src": "1117:64:18" - }, - { - "expression": { - "argumentTypes": null, - "id": 2176, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 2174, - "name": "reentrancyLock", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2165, - "src": "1185:14:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 2175, - "name": "REENTRANCY_GUARD_LOCKED", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2162, - "src": "1202:23:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1185:40:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + { + "id": 3289, + "name": "PlaceholderStatement", + "src": "1229:1:25" }, - "id": 2177, - "nodeType": "ExpressionStatement", - "src": "1185:40:18" - }, - { - "id": 2178, - "nodeType": "PlaceholderStatement", - "src": "1229:1:18" - }, - { - "expression": { - "argumentTypes": null, - "id": 2181, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 2179, - "name": "reentrancyLock", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2165, - "src": "1234:14:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 2180, - "name": "REENTRANCY_GUARD_FREE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2159, - "src": "1251:21:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "=", + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3276, + "type": "uint256", + "value": "reentrancyLock" + }, + "id": 3290, + "name": "Identifier", + "src": "1234:14:25" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3270, + "type": "uint256", + "value": "REENTRANCY_GUARD_FREE" + }, + "id": 3291, + "name": "Identifier", + "src": "1251:21:25" + } + ], + "id": 3292, + "name": "Assignment", + "src": "1234:38:25" } - }, - "src": "1234:38:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2182, - "nodeType": "ExpressionStatement", - "src": "1234:38:18" - } - ] - }, - "documentation": "@dev Prevents a contract from calling itself, directly or indirectly.\nIf you mark a function `nonReentrant`, you should also\nmark it `external`. Calling one `nonReentrant` function from\nanother is not supported. Instead, you can implement a\n`private` function doing the actual work, and an `external`\nwrapper marked as `nonReentrant`.", - "id": 2184, - "name": "nonReentrant", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 2166, - "nodeType": "ParameterList", - "parameters": [], - "src": "1110:2:18" - }, - "src": "1089:187:18", - "visibility": "internal" + ], + "id": 3293, + "name": "ExpressionStatement", + "src": "1234:38:25" + } + ], + "id": 3294, + "name": "Block", + "src": "1113:163:25" + } + ], + "id": 3295, + "name": "ModifierDefinition", + "src": "1089:187:25" } ], - "scope": 2186, - "src": "256:1022:18" + "id": 3296, + "name": "ContractDefinition", + "src": "256:1022:25" } ], - "src": "0:1279:18" + "id": 3297, + "name": "SourceUnit", + "src": "0:1279:25" }, "compiler": { "name": "solc", "version": "0.5.16+commit.9c3226ce.Emscripten.clang" }, "networks": {}, - "schemaVersion": "3.3.2", - "updatedAt": "2021-04-01T07:58:50.594Z", + "schemaVersion": "3.4.1", + "updatedAt": "2022-02-15T06:13:50.493Z", "devdoc": { "author": "Remco Bloemen , Eenae ", "details": "If you mark a function `nonReentrant`, you should also mark it `external`.", diff --git a/rbtcwrapperproxy/build/contracts/SafeMath.json b/rbtcwrapperproxy/build/contracts/SafeMath.json index e556563..f37d892 100644 --- a/rbtcwrapperproxy/build/contracts/SafeMath.json +++ b/rbtcwrapperproxy/build/contracts/SafeMath.json @@ -1,25 +1,25 @@ { "contractName": "SafeMath", "abi": [], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"Library for basic math operations with overflow/underflow protection\",\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/SafeMath.sol\":\"SafeMath\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/SafeMath.sol\":{\"keccak256\":\"0x0eba76081f74ff9d8aaa7ad6ad2d736e15228d0a1aafe148d564b3e917d0091e\",\"urls\":[\"bzz-raw://7a3987adcda80eac5600c7237c02ddae05312da94f3d2dc778c15f4d95bd8327\",\"dweb:/ipfs/Qmf9uTHziMLFJ4H1WznCJNq7FRcvM3beBaFvZkmmomrmhS\"]}},\"version\":1}", - "bytecode": "0x60556023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a723158201bea1ca802f460846e9ca65b22527f90c6975c9dc99490a8967179288d1658a964736f6c63430005100032", - "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a723158201bea1ca802f460846e9ca65b22527f90c6975c9dc99490a8967179288d1658a964736f6c63430005100032", - "sourceMap": "118:1348:18:-;;132:2:-1;166:7;155:9;146:7;137:37;255:7;249:14;246:1;241:23;235:4;232:33;222:2;;269:9;222:2;293:9;290:1;283:20;323:4;314:7;306:22;347:7;338;331:24", - "deployedSourceMap": "118:1348:18:-;;;;;;;;", + "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"Library for basic math operations with overflow/underflow protection\",\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/SafeMath.sol\":\"SafeMath\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/SafeMath.sol\":{\"keccak256\":\"0x0eba76081f74ff9d8aaa7ad6ad2d736e15228d0a1aafe148d564b3e917d0091e\",\"urls\":[\"bzz-raw://7a3987adcda80eac5600c7237c02ddae05312da94f3d2dc778c15f4d95bd8327\",\"dweb:/ipfs/Qmf9uTHziMLFJ4H1WznCJNq7FRcvM3beBaFvZkmmomrmhS\"]}},\"version\":1}", + "bytecode": "0x60556023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a72315820a74110835077e519c886dd1d88d2e3e75b7c8f2eac1a50e37b195c829ae804e764736f6c63430005100032", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a72315820a74110835077e519c886dd1d88d2e3e75b7c8f2eac1a50e37b195c829ae804e764736f6c63430005100032", + "sourceMap": "118:1348:26:-;;132:2:-1;166:7;155:9;146:7;137:37;255:7;249:14;246:1;241:23;235:4;232:33;222:2;;269:9;222:2;293:9;290:1;283:20;323:4;314:7;306:22;347:7;338;331:24", + "deployedSourceMap": "118:1348:26:-;;;;;;;;", "source": "pragma solidity >=0.5.0 <0.6.0;\n\n/**\n * @dev Library for basic math operations with overflow/underflow protection\n */\nlibrary SafeMath {\n\t/**\n\t * @dev returns the sum of _x and _y, reverts if the calculation overflows\n\t *\n\t * @param _x value 1\n\t * @param _y value 2\n\t *\n\t * @return sum\n\t */\n\tfunction add(uint256 _x, uint256 _y) internal pure returns (uint256) {\n\t\tuint256 z = _x + _y;\n\t\trequire(z >= _x, \"ERR_OVERFLOW\");\n\t\treturn z;\n\t}\n\n\t/**\n\t * @dev returns the difference of _x minus _y, reverts if the calculation underflows\n\t *\n\t * @param _x minuend\n\t * @param _y subtrahend\n\t *\n\t * @return difference\n\t */\n\tfunction sub(uint256 _x, uint256 _y) internal pure returns (uint256) {\n\t\trequire(_x >= _y, \"ERR_UNDERFLOW\");\n\t\treturn _x - _y;\n\t}\n\n\t/**\n\t * @dev returns the product of multiplying _x by _y, reverts if the calculation overflows\n\t *\n\t * @param _x factor 1\n\t * @param _y factor 2\n\t *\n\t * @return product\n\t */\n\tfunction mul(uint256 _x, uint256 _y) internal pure returns (uint256) {\n\t\t// gas optimization\n\t\tif (_x == 0) return 0;\n\n\t\tuint256 z = _x * _y;\n\t\trequire(z / _x == _y, \"ERR_OVERFLOW\");\n\t\treturn z;\n\t}\n\n\t/**\n\t * @dev Integer division of two numbers truncating the quotient, reverts on division by zero.\n\t *\n\t * @param _x dividend\n\t * @param _y divisor\n\t *\n\t * @return quotient\n\t */\n\tfunction div(uint256 _x, uint256 _y) internal pure returns (uint256) {\n\t\trequire(_y > 0, \"ERR_DIVIDE_BY_ZERO\");\n\t\tuint256 c = _x / _y;\n\t\treturn c;\n\t}\n}\n", - "sourcePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/SafeMath.sol", + "sourcePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/SafeMath.sol", "ast": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/SafeMath.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/SafeMath.sol", "exportedSymbols": { "SafeMath": [ - 2218 + 3403 ] }, - "id": 2219, + "id": 3404, "nodeType": "SourceUnit", "nodes": [ { - "id": 2113, + "id": 3298, "literals": [ "solidity", ">=", @@ -30,7 +30,7 @@ ".0" ], "nodeType": "PragmaDirective", - "src": "0:31:18" + "src": "0:31:26" }, { "baseContracts": [], @@ -38,31 +38,31 @@ "contractKind": "library", "documentation": "@dev Library for basic math operations with overflow/underflow protection", "fullyImplemented": true, - "id": 2218, + "id": 3403, "linearizedBaseContracts": [ - 2218 + 3403 ], "name": "SafeMath", "nodeType": "ContractDefinition", "nodes": [ { "body": { - "id": 2137, + "id": 3322, "nodeType": "Block", - "src": "365:75:18", + "src": "365:75:26", "statements": [ { "assignments": [ - 2123 + 3308 ], "declarations": [ { "constant": false, - "id": 2123, + "id": 3308, "name": "z", "nodeType": "VariableDeclaration", - "scope": 2137, - "src": "369:9:18", + "scope": 3322, + "src": "369:9:26", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -70,10 +70,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2122, + "id": 3307, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "369:7:18", + "src": "369:7:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -83,26 +83,26 @@ "visibility": "internal" } ], - "id": 2127, + "id": 3312, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2126, + "id": 3311, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2124, + "id": 3309, "name": "_x", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2115, - "src": "381:2:18", + "referencedDeclaration": 3300, + "src": "381:2:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -112,25 +112,25 @@ "operator": "+", "rightExpression": { "argumentTypes": null, - "id": 2125, + "id": 3310, "name": "_y", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2117, - "src": "386:2:18", + "referencedDeclaration": 3302, + "src": "386:2:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "381:7:18", + "src": "381:7:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "369:19:18" + "src": "369:19:26" }, { "expression": { @@ -142,19 +142,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2131, + "id": 3316, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2129, + "id": 3314, "name": "z", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2123, - "src": "400:1:18", + "referencedDeclaration": 3308, + "src": "400:1:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -164,18 +164,18 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 2130, + "id": 3315, "name": "_x", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2115, - "src": "405:2:18", + "referencedDeclaration": 3300, + "src": "405:2:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "400:7:18", + "src": "400:7:26", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -184,14 +184,14 @@ { "argumentTypes": null, "hexValue": "4552525f4f564552464c4f57", - "id": 2132, + "id": 3317, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "409:14:18", + "src": "409:14:26", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_5857855e77a7ad10ccf8b5bcb17297771c10c957a1c88a434eb5a16fc4dad486", @@ -211,21 +211,21 @@ "typeString": "literal_string \"ERR_OVERFLOW\"" } ], - "id": 2128, + "id": 3313, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 2236, - 2237 + 3497, + 3498 ], - "referencedDeclaration": 2237, - "src": "392:7:18", + "referencedDeclaration": 3498, + "src": "392:7:26", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 2133, + "id": 3318, "isConstant": false, "isLValue": false, "isPure": false, @@ -233,55 +233,55 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "392:32:18", + "src": "392:32:26", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2134, + "id": 3319, "nodeType": "ExpressionStatement", - "src": "392:32:18" + "src": "392:32:26" }, { "expression": { "argumentTypes": null, - "id": 2135, + "id": 3320, "name": "z", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2123, - "src": "435:1:18", + "referencedDeclaration": 3308, + "src": "435:1:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 2121, - "id": 2136, + "functionReturnParameters": 3306, + "id": 3321, "nodeType": "Return", - "src": "428:8:18" + "src": "428:8:26" } ] }, "documentation": "@dev returns the sum of _x and _y, reverts if the calculation overflows\n\t * @param _x value 1\n@param _y value 2\n\t * @return sum", - "id": 2138, + "id": 3323, "implemented": true, "kind": "function", "modifiers": [], "name": "add", "nodeType": "FunctionDefinition", "parameters": { - "id": 2118, + "id": 3303, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2115, + "id": 3300, "name": "_x", "nodeType": "VariableDeclaration", - "scope": 2138, - "src": "309:10:18", + "scope": 3323, + "src": "309:10:26", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -289,10 +289,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2114, + "id": 3299, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "309:7:18", + "src": "309:7:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -303,11 +303,11 @@ }, { "constant": false, - "id": 2117, + "id": 3302, "name": "_y", "nodeType": "VariableDeclaration", - "scope": 2138, - "src": "321:10:18", + "scope": 3323, + "src": "321:10:26", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -315,10 +315,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2116, + "id": 3301, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "321:7:18", + "src": "321:7:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -328,19 +328,19 @@ "visibility": "internal" } ], - "src": "308:24:18" + "src": "308:24:26" }, "returnParameters": { - "id": 2121, + "id": 3306, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2120, + "id": 3305, "name": "", "nodeType": "VariableDeclaration", - "scope": 2138, - "src": "356:7:18", + "scope": 3323, + "src": "356:7:26", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -348,10 +348,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2119, + "id": 3304, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "356:7:18", + "src": "356:7:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -361,19 +361,19 @@ "visibility": "internal" } ], - "src": "355:9:18" + "src": "355:9:26" }, - "scope": 2218, - "src": "296:144:18", + "scope": 3403, + "src": "296:144:26", "stateMutability": "pure", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 2158, + "id": 3343, "nodeType": "Block", - "src": "690:60:18", + "src": "690:60:26", "statements": [ { "expression": { @@ -385,19 +385,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2150, + "id": 3335, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2148, + "id": 3333, "name": "_x", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2140, - "src": "702:2:18", + "referencedDeclaration": 3325, + "src": "702:2:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -407,18 +407,18 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 2149, + "id": 3334, "name": "_y", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2142, - "src": "708:2:18", + "referencedDeclaration": 3327, + "src": "708:2:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "702:8:18", + "src": "702:8:26", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -427,14 +427,14 @@ { "argumentTypes": null, "hexValue": "4552525f554e444552464c4f57", - "id": 2151, + "id": 3336, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "712:15:18", + "src": "712:15:26", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_ddfa1b728b94871fcaf7b3731a21cfe44f7a2b4b84261190a1aa6f6b13e2a1f4", @@ -454,21 +454,21 @@ "typeString": "literal_string \"ERR_UNDERFLOW\"" } ], - "id": 2147, + "id": 3332, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 2236, - 2237 + 3497, + 3498 ], - "referencedDeclaration": 2237, - "src": "694:7:18", + "referencedDeclaration": 3498, + "src": "694:7:26", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 2152, + "id": 3337, "isConstant": false, "isLValue": false, "isPure": false, @@ -476,15 +476,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "694:34:18", + "src": "694:34:26", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2153, + "id": 3338, "nodeType": "ExpressionStatement", - "src": "694:34:18" + "src": "694:34:26" }, { "expression": { @@ -493,19 +493,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2156, + "id": 3341, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2154, + "id": 3339, "name": "_x", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2140, - "src": "739:2:18", + "referencedDeclaration": 3325, + "src": "739:2:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -515,48 +515,48 @@ "operator": "-", "rightExpression": { "argumentTypes": null, - "id": 2155, + "id": 3340, "name": "_y", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2142, - "src": "744:2:18", + "referencedDeclaration": 3327, + "src": "744:2:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "739:7:18", + "src": "739:7:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 2146, - "id": 2157, + "functionReturnParameters": 3331, + "id": 3342, "nodeType": "Return", - "src": "732:14:18" + "src": "732:14:26" } ] }, "documentation": "@dev returns the difference of _x minus _y, reverts if the calculation underflows\n\t * @param _x minuend\n@param _y subtrahend\n\t * @return difference", - "id": 2159, + "id": 3344, "implemented": true, "kind": "function", "modifiers": [], "name": "sub", "nodeType": "FunctionDefinition", "parameters": { - "id": 2143, + "id": 3328, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2140, + "id": 3325, "name": "_x", "nodeType": "VariableDeclaration", - "scope": 2159, - "src": "634:10:18", + "scope": 3344, + "src": "634:10:26", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -564,10 +564,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2139, + "id": 3324, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "634:7:18", + "src": "634:7:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -578,11 +578,11 @@ }, { "constant": false, - "id": 2142, + "id": 3327, "name": "_y", "nodeType": "VariableDeclaration", - "scope": 2159, - "src": "646:10:18", + "scope": 3344, + "src": "646:10:26", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -590,10 +590,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2141, + "id": 3326, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "646:7:18", + "src": "646:7:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -603,19 +603,19 @@ "visibility": "internal" } ], - "src": "633:24:18" + "src": "633:24:26" }, "returnParameters": { - "id": 2146, + "id": 3331, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2145, + "id": 3330, "name": "", "nodeType": "VariableDeclaration", - "scope": 2159, - "src": "681:7:18", + "scope": 3344, + "src": "681:7:26", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -623,10 +623,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2144, + "id": 3329, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "681:7:18", + "src": "681:7:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -636,19 +636,19 @@ "visibility": "internal" } ], - "src": "680:9:18" + "src": "680:9:26" }, - "scope": 2218, - "src": "621:129:18", + "scope": 3403, + "src": "621:129:26", "stateMutability": "pure", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 2191, + "id": 3376, "nodeType": "Block", - "src": "1001:128:18", + "src": "1001:128:26", "statements": [ { "condition": { @@ -657,19 +657,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2170, + "id": 3355, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2168, + "id": 3353, "name": "_x", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2161, - "src": "1031:2:18", + "referencedDeclaration": 3346, + "src": "1031:2:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -680,14 +680,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 2169, + "id": 3354, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1037:1:18", + "src": "1037:1:26", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -695,28 +695,28 @@ }, "value": "0" }, - "src": "1031:7:18", + "src": "1031:7:26", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 2173, + "id": 3358, "nodeType": "IfStatement", - "src": "1027:21:18", + "src": "1027:21:26", "trueBody": { "expression": { "argumentTypes": null, "hexValue": "30", - "id": 2171, + "id": 3356, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1047:1:18", + "src": "1047:1:26", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -724,24 +724,24 @@ }, "value": "0" }, - "functionReturnParameters": 2167, - "id": 2172, + "functionReturnParameters": 3352, + "id": 3357, "nodeType": "Return", - "src": "1040:8:18" + "src": "1040:8:26" } }, { "assignments": [ - 2175 + 3360 ], "declarations": [ { "constant": false, - "id": 2175, + "id": 3360, "name": "z", "nodeType": "VariableDeclaration", - "scope": 2191, - "src": "1053:9:18", + "scope": 3376, + "src": "1053:9:26", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -749,10 +749,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2174, + "id": 3359, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1053:7:18", + "src": "1053:7:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -762,26 +762,26 @@ "visibility": "internal" } ], - "id": 2179, + "id": 3364, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2178, + "id": 3363, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2176, + "id": 3361, "name": "_x", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2161, - "src": "1065:2:18", + "referencedDeclaration": 3346, + "src": "1065:2:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -791,25 +791,25 @@ "operator": "*", "rightExpression": { "argumentTypes": null, - "id": 2177, + "id": 3362, "name": "_y", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2163, - "src": "1070:2:18", + "referencedDeclaration": 3348, + "src": "1070:2:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1065:7:18", + "src": "1065:7:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "1053:19:18" + "src": "1053:19:26" }, { "expression": { @@ -821,7 +821,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2185, + "id": 3370, "isConstant": false, "isLValue": false, "isPure": false, @@ -832,19 +832,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2183, + "id": 3368, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2181, + "id": 3366, "name": "z", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2175, - "src": "1084:1:18", + "referencedDeclaration": 3360, + "src": "1084:1:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -854,18 +854,18 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 2182, + "id": 3367, "name": "_x", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2161, - "src": "1088:2:18", + "referencedDeclaration": 3346, + "src": "1088:2:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1084:6:18", + "src": "1084:6:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -875,18 +875,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2184, + "id": 3369, "name": "_y", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2163, - "src": "1094:2:18", + "referencedDeclaration": 3348, + "src": "1094:2:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1084:12:18", + "src": "1084:12:26", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -895,14 +895,14 @@ { "argumentTypes": null, "hexValue": "4552525f4f564552464c4f57", - "id": 2186, + "id": 3371, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "1098:14:18", + "src": "1098:14:26", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_5857855e77a7ad10ccf8b5bcb17297771c10c957a1c88a434eb5a16fc4dad486", @@ -922,21 +922,21 @@ "typeString": "literal_string \"ERR_OVERFLOW\"" } ], - "id": 2180, + "id": 3365, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 2236, - 2237 + 3497, + 3498 ], - "referencedDeclaration": 2237, - "src": "1076:7:18", + "referencedDeclaration": 3498, + "src": "1076:7:26", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 2187, + "id": 3372, "isConstant": false, "isLValue": false, "isPure": false, @@ -944,55 +944,55 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1076:37:18", + "src": "1076:37:26", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2188, + "id": 3373, "nodeType": "ExpressionStatement", - "src": "1076:37:18" + "src": "1076:37:26" }, { "expression": { "argumentTypes": null, - "id": 2189, + "id": 3374, "name": "z", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2175, - "src": "1124:1:18", + "referencedDeclaration": 3360, + "src": "1124:1:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 2167, - "id": 2190, + "functionReturnParameters": 3352, + "id": 3375, "nodeType": "Return", - "src": "1117:8:18" + "src": "1117:8:26" } ] }, "documentation": "@dev returns the product of multiplying _x by _y, reverts if the calculation overflows\n\t * @param _x factor 1\n@param _y factor 2\n\t * @return product", - "id": 2192, + "id": 3377, "implemented": true, "kind": "function", "modifiers": [], "name": "mul", "nodeType": "FunctionDefinition", "parameters": { - "id": 2164, + "id": 3349, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2161, + "id": 3346, "name": "_x", "nodeType": "VariableDeclaration", - "scope": 2192, - "src": "945:10:18", + "scope": 3377, + "src": "945:10:26", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1000,10 +1000,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2160, + "id": 3345, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "945:7:18", + "src": "945:7:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1014,11 +1014,11 @@ }, { "constant": false, - "id": 2163, + "id": 3348, "name": "_y", "nodeType": "VariableDeclaration", - "scope": 2192, - "src": "957:10:18", + "scope": 3377, + "src": "957:10:26", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1026,10 +1026,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2162, + "id": 3347, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "957:7:18", + "src": "957:7:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1039,19 +1039,19 @@ "visibility": "internal" } ], - "src": "944:24:18" + "src": "944:24:26" }, "returnParameters": { - "id": 2167, + "id": 3352, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2166, + "id": 3351, "name": "", "nodeType": "VariableDeclaration", - "scope": 2192, - "src": "992:7:18", + "scope": 3377, + "src": "992:7:26", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1059,10 +1059,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2165, + "id": 3350, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "992:7:18", + "src": "992:7:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1072,19 +1072,19 @@ "visibility": "internal" } ], - "src": "991:9:18" + "src": "991:9:26" }, - "scope": 2218, - "src": "932:197:18", + "scope": 3403, + "src": "932:197:26", "stateMutability": "pure", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 2216, + "id": 3401, "nodeType": "Block", - "src": "1384:80:18", + "src": "1384:80:26", "statements": [ { "expression": { @@ -1096,19 +1096,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2204, + "id": 3389, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2202, + "id": 3387, "name": "_y", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2196, - "src": "1396:2:18", + "referencedDeclaration": 3381, + "src": "1396:2:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1119,14 +1119,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 2203, + "id": 3388, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1401:1:18", + "src": "1401:1:26", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -1134,7 +1134,7 @@ }, "value": "0" }, - "src": "1396:6:18", + "src": "1396:6:26", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1143,14 +1143,14 @@ { "argumentTypes": null, "hexValue": "4552525f4449564944455f42595f5a45524f", - "id": 2205, + "id": 3390, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "1404:20:18", + "src": "1404:20:26", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_80c66eaebdd007de3c36bb5849ffa95e14b2130dc26a35fe1154627fc9dd838e", @@ -1170,21 +1170,21 @@ "typeString": "literal_string \"ERR_DIVIDE_BY_ZERO\"" } ], - "id": 2201, + "id": 3386, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 2236, - 2237 + 3497, + 3498 ], - "referencedDeclaration": 2237, - "src": "1388:7:18", + "referencedDeclaration": 3498, + "src": "1388:7:26", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 2206, + "id": 3391, "isConstant": false, "isLValue": false, "isPure": false, @@ -1192,28 +1192,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1388:37:18", + "src": "1388:37:26", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2207, + "id": 3392, "nodeType": "ExpressionStatement", - "src": "1388:37:18" + "src": "1388:37:26" }, { "assignments": [ - 2209 + 3394 ], "declarations": [ { "constant": false, - "id": 2209, + "id": 3394, "name": "c", "nodeType": "VariableDeclaration", - "scope": 2216, - "src": "1429:9:18", + "scope": 3401, + "src": "1429:9:26", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1221,10 +1221,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2208, + "id": 3393, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1429:7:18", + "src": "1429:7:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1234,26 +1234,26 @@ "visibility": "internal" } ], - "id": 2213, + "id": 3398, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2212, + "id": 3397, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2210, + "id": 3395, "name": "_x", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2194, - "src": "1441:2:18", + "referencedDeclaration": 3379, + "src": "1441:2:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1263,65 +1263,65 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 2211, + "id": 3396, "name": "_y", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2196, - "src": "1446:2:18", + "referencedDeclaration": 3381, + "src": "1446:2:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1441:7:18", + "src": "1441:7:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "1429:19:18" + "src": "1429:19:26" }, { "expression": { "argumentTypes": null, - "id": 2214, + "id": 3399, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2209, - "src": "1459:1:18", + "referencedDeclaration": 3394, + "src": "1459:1:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 2200, - "id": 2215, + "functionReturnParameters": 3385, + "id": 3400, "nodeType": "Return", - "src": "1452:8:18" + "src": "1452:8:26" } ] }, "documentation": "@dev Integer division of two numbers truncating the quotient, reverts on division by zero.\n\t * @param _x dividend\n@param _y divisor\n\t * @return quotient", - "id": 2217, + "id": 3402, "implemented": true, "kind": "function", "modifiers": [], "name": "div", "nodeType": "FunctionDefinition", "parameters": { - "id": 2197, + "id": 3382, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2194, + "id": 3379, "name": "_x", "nodeType": "VariableDeclaration", - "scope": 2217, - "src": "1328:10:18", + "scope": 3402, + "src": "1328:10:26", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1329,10 +1329,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2193, + "id": 3378, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1328:7:18", + "src": "1328:7:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1343,11 +1343,11 @@ }, { "constant": false, - "id": 2196, + "id": 3381, "name": "_y", "nodeType": "VariableDeclaration", - "scope": 2217, - "src": "1340:10:18", + "scope": 3402, + "src": "1340:10:26", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1355,10 +1355,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2195, + "id": 3380, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1340:7:18", + "src": "1340:7:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1368,19 +1368,19 @@ "visibility": "internal" } ], - "src": "1327:24:18" + "src": "1327:24:26" }, "returnParameters": { - "id": 2200, + "id": 3385, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2199, + "id": 3384, "name": "", "nodeType": "VariableDeclaration", - "scope": 2217, - "src": "1375:7:18", + "scope": 3402, + "src": "1375:7:26", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1388,10 +1388,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2198, + "id": 3383, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1375:7:18", + "src": "1375:7:26", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1401,1436 +1401,1539 @@ "visibility": "internal" } ], - "src": "1374:9:18" + "src": "1374:9:26" }, - "scope": 2218, - "src": "1315:149:18", + "scope": 3403, + "src": "1315:149:26", "stateMutability": "pure", "superFunction": null, "visibility": "internal" } ], - "scope": 2219, - "src": "118:1348:18" + "scope": 3404, + "src": "118:1348:26" } ], - "src": "0:1467:18" + "src": "0:1467:26" }, "legacyAST": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/SafeMath.sol", - "exportedSymbols": { - "SafeMath": [ - 2218 - ] + "attributes": { + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/SafeMath.sol", + "exportedSymbols": { + "SafeMath": [ + 3403 + ] + } }, - "id": 2219, - "nodeType": "SourceUnit", - "nodes": [ + "children": [ { - "id": 2113, - "literals": [ - "solidity", - ">=", - "0.5", - ".0", - "<", - "0.6", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "0:31:18" + "attributes": { + "literals": [ + "solidity", + ">=", + "0.5", + ".0", + "<", + "0.6", + ".0" + ] + }, + "id": 3298, + "name": "PragmaDirective", + "src": "0:31:26" }, { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "library", - "documentation": "@dev Library for basic math operations with overflow/underflow protection", - "fullyImplemented": true, - "id": 2218, - "linearizedBaseContracts": [ - 2218 - ], - "name": "SafeMath", - "nodeType": "ContractDefinition", - "nodes": [ + "attributes": { + "baseContracts": [ + null + ], + "contractDependencies": [ + null + ], + "contractKind": "library", + "documentation": "@dev Library for basic math operations with overflow/underflow protection", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 3403 + ], + "name": "SafeMath", + "scope": 3404 + }, + "children": [ { - "body": { - "id": 2137, - "nodeType": "Block", - "src": "365:75:18", - "statements": [ - { - "assignments": [ - 2123 - ], - "declarations": [ - { + "attributes": { + "documentation": "@dev returns the sum of _x and _y, reverts if the calculation overflows\n\t * @param _x value 1\n@param _y value 2\n\t * @return sum", + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "add", + "scope": 3403, + "stateMutability": "pure", + "superFunction": null, + "visibility": "internal" + }, + "children": [ + { + "children": [ + { + "attributes": { "constant": false, - "id": 2123, - "name": "z", - "nodeType": "VariableDeclaration", - "scope": 2137, - "src": "369:9:18", + "name": "_x", + "scope": 3323, "stateVariable": false, "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2122, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "369:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, + "type": "uint256", "value": null, "visibility": "internal" - } - ], - "id": 2127, - "initialValue": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" }, - "id": 2126, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2124, - "name": "_x", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2115, - "src": "381:2:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 3299, + "name": "ElementaryTypeName", + "src": "309:7:26" } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "argumentTypes": null, - "id": 2125, + ], + "id": 3300, + "name": "VariableDeclaration", + "src": "309:10:26" + }, + { + "attributes": { + "constant": false, "name": "_y", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2117, - "src": "386:2:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "scope": 3323, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 3301, + "name": "ElementaryTypeName", + "src": "321:7:26" } + ], + "id": 3302, + "name": "VariableDeclaration", + "src": "321:10:26" + } + ], + "id": 3303, + "name": "ParameterList", + "src": "308:24:26" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 3323, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" }, - "src": "381:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "369:19:18" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ + "children": [ { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "attributes": { + "name": "uint256", + "type": "uint256" }, - "id": 2131, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2129, + "id": 3304, + "name": "ElementaryTypeName", + "src": "356:7:26" + } + ], + "id": 3305, + "name": "VariableDeclaration", + "src": "356:7:26" + } + ], + "id": 3306, + "name": "ParameterList", + "src": "355:9:26" + }, + { + "children": [ + { + "attributes": { + "assignments": [ + 3308 + ] + }, + "children": [ + { + "attributes": { + "constant": false, "name": "z", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2123, - "src": "400:1:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + "scope": 3322, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 3307, + "name": "ElementaryTypeName", + "src": "369:7:26" + } + ], + "id": 3308, + "name": "VariableDeclaration", + "src": "369:9:26" + }, + { + "attributes": { "argumentTypes": null, - "id": 2130, - "name": "_x", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2115, - "src": "405:2:18", - "typeDescriptions": { + "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" - } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "+", + "type": "uint256" }, - "src": "400:7:18", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3300, + "type": "uint256", + "value": "_x" + }, + "id": 3309, + "name": "Identifier", + "src": "381:2:26" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3302, + "type": "uint256", + "value": "_y" + }, + "id": 3310, + "name": "Identifier", + "src": "386:2:26" + } + ], + "id": 3311, + "name": "BinaryOperation", + "src": "381:7:26" + } + ], + "id": 3312, + "name": "VariableDeclarationStatement", + "src": "369:19:26" + }, + { + "children": [ { - "argumentTypes": null, - "hexValue": "4552525f4f564552464c4f57", - "id": 2132, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "409:14:18", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5857855e77a7ad10ccf8b5bcb17297771c10c957a1c88a434eb5a16fc4dad486", - "typeString": "literal_string \"ERR_OVERFLOW\"" + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false }, - "value": "ERR_OVERFLOW" + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_5857855e77a7ad10ccf8b5bcb17297771c10c957a1c88a434eb5a16fc4dad486", + "typeString": "literal_string \"ERR_OVERFLOW\"" + } + ], + "overloadedDeclarations": [ + 3497, + 3498 + ], + "referencedDeclaration": 3498, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 3313, + "name": "Identifier", + "src": "392:7:26" + }, + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": ">=", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3308, + "type": "uint256", + "value": "z" + }, + "id": 3314, + "name": "Identifier", + "src": "400:1:26" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3300, + "type": "uint256", + "value": "_x" + }, + "id": 3315, + "name": "Identifier", + "src": "405:2:26" + } + ], + "id": 3316, + "name": "BinaryOperation", + "src": "400:7:26" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "4552525f4f564552464c4f57", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"ERR_OVERFLOW\"", + "value": "ERR_OVERFLOW" + }, + "id": 3317, + "name": "Literal", + "src": "409:14:26" + } + ], + "id": 3318, + "name": "FunctionCall", + "src": "392:32:26" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" + "id": 3319, + "name": "ExpressionStatement", + "src": "392:32:26" + }, + { + "attributes": { + "functionReturnParameters": 3306 + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3308, + "type": "uint256", + "value": "z" }, - { - "typeIdentifier": "t_stringliteral_5857855e77a7ad10ccf8b5bcb17297771c10c957a1c88a434eb5a16fc4dad486", - "typeString": "literal_string \"ERR_OVERFLOW\"" - } - ], - "id": 2128, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 2236, - 2237 - ], - "referencedDeclaration": 2237, - "src": "392:7:18", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" + "id": 3320, + "name": "Identifier", + "src": "435:1:26" } + ], + "id": 3321, + "name": "Return", + "src": "428:8:26" + } + ], + "id": 3322, + "name": "Block", + "src": "365:75:26" + } + ], + "id": 3323, + "name": "FunctionDefinition", + "src": "296:144:26" + }, + { + "attributes": { + "documentation": "@dev returns the difference of _x minus _y, reverts if the calculation underflows\n\t * @param _x minuend\n@param _y subtrahend\n\t * @return difference", + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "sub", + "scope": 3403, + "stateMutability": "pure", + "superFunction": null, + "visibility": "internal" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_x", + "scope": 3344, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" }, - "id": 2133, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "392:32:18", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2134, - "nodeType": "ExpressionStatement", - "src": "392:32:18" - }, - { - "expression": { - "argumentTypes": null, - "id": 2135, - "name": "z", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2123, - "src": "435:1:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 3324, + "name": "ElementaryTypeName", + "src": "634:7:26" + } + ], + "id": 3325, + "name": "VariableDeclaration", + "src": "634:10:26" }, - "functionReturnParameters": 2121, - "id": 2136, - "nodeType": "Return", - "src": "428:8:18" - } - ] - }, - "documentation": "@dev returns the sum of _x and _y, reverts if the calculation overflows\n\t * @param _x value 1\n@param _y value 2\n\t * @return sum", - "id": 2138, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "add", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2118, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2115, - "name": "_x", - "nodeType": "VariableDeclaration", - "scope": 2138, - "src": "309:10:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2114, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "309:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2117, - "name": "_y", - "nodeType": "VariableDeclaration", - "scope": 2138, - "src": "321:10:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2116, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "321:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + { + "attributes": { + "constant": false, + "name": "_y", + "scope": 3344, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 3326, + "name": "ElementaryTypeName", + "src": "646:7:26" + } + ], + "id": 3327, + "name": "VariableDeclaration", + "src": "646:10:26" + } + ], + "id": 3328, + "name": "ParameterList", + "src": "633:24:26" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 3344, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 3329, + "name": "ElementaryTypeName", + "src": "681:7:26" + } + ], + "id": 3330, + "name": "VariableDeclaration", + "src": "681:7:26" + } + ], + "id": 3331, + "name": "ParameterList", + "src": "680:9:26" + }, + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_ddfa1b728b94871fcaf7b3731a21cfe44f7a2b4b84261190a1aa6f6b13e2a1f4", + "typeString": "literal_string \"ERR_UNDERFLOW\"" + } + ], + "overloadedDeclarations": [ + 3497, + 3498 + ], + "referencedDeclaration": 3498, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 3332, + "name": "Identifier", + "src": "694:7:26" + }, + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": ">=", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3325, + "type": "uint256", + "value": "_x" + }, + "id": 3333, + "name": "Identifier", + "src": "702:2:26" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3327, + "type": "uint256", + "value": "_y" + }, + "id": 3334, + "name": "Identifier", + "src": "708:2:26" + } + ], + "id": 3335, + "name": "BinaryOperation", + "src": "702:8:26" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "4552525f554e444552464c4f57", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"ERR_UNDERFLOW\"", + "value": "ERR_UNDERFLOW" + }, + "id": 3336, + "name": "Literal", + "src": "712:15:26" + } + ], + "id": 3337, + "name": "FunctionCall", + "src": "694:34:26" + } + ], + "id": 3338, + "name": "ExpressionStatement", + "src": "694:34:26" }, - "value": null, - "visibility": "internal" - } + { + "attributes": { + "functionReturnParameters": 3331 + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "-", + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3325, + "type": "uint256", + "value": "_x" + }, + "id": 3339, + "name": "Identifier", + "src": "739:2:26" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3327, + "type": "uint256", + "value": "_y" + }, + "id": 3340, + "name": "Identifier", + "src": "744:2:26" + } + ], + "id": 3341, + "name": "BinaryOperation", + "src": "739:7:26" + } + ], + "id": 3342, + "name": "Return", + "src": "732:14:26" + } + ], + "id": 3343, + "name": "Block", + "src": "690:60:26" + } + ], + "id": 3344, + "name": "FunctionDefinition", + "src": "621:129:26" + }, + { + "attributes": { + "documentation": "@dev returns the product of multiplying _x by _y, reverts if the calculation overflows\n\t * @param _x factor 1\n@param _y factor 2\n\t * @return product", + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null ], - "src": "308:24:18" + "name": "mul", + "scope": 3403, + "stateMutability": "pure", + "superFunction": null, + "visibility": "internal" }, - "returnParameters": { - "id": 2121, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2120, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2138, - "src": "356:7:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2119, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "356:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_x", + "scope": 3377, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 3345, + "name": "ElementaryTypeName", + "src": "945:7:26" + } + ], + "id": 3346, + "name": "VariableDeclaration", + "src": "945:10:26" }, - "value": null, - "visibility": "internal" - } - ], - "src": "355:9:18" - }, - "scope": 2218, - "src": "296:144:18", - "stateMutability": "pure", - "superFunction": null, - "visibility": "internal" - }, - { - "body": { - "id": 2158, - "nodeType": "Block", - "src": "690:60:18", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ + { + "attributes": { + "constant": false, + "name": "_y", + "scope": 3377, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "attributes": { + "name": "uint256", + "type": "uint256" }, - "id": 2150, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { + "id": 3347, + "name": "ElementaryTypeName", + "src": "957:7:26" + } + ], + "id": 3348, + "name": "VariableDeclaration", + "src": "957:10:26" + } + ], + "id": 3349, + "name": "ParameterList", + "src": "944:24:26" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 3377, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 3350, + "name": "ElementaryTypeName", + "src": "992:7:26" + } + ], + "id": 3351, + "name": "VariableDeclaration", + "src": "992:7:26" + } + ], + "id": 3352, + "name": "ParameterList", + "src": "991:9:26" + }, + { + "children": [ + { + "attributes": { + "falseBody": null + }, + "children": [ + { + "attributes": { "argumentTypes": null, - "id": 2148, - "name": "_x", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2140, - "src": "702:2:18", - "typeDescriptions": { + "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "==", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3346, + "type": "uint256", + "value": "_x" + }, + "id": 3353, + "name": "Identifier", + "src": "1031:2:26" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "30", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "number", + "type": "int_const 0", + "value": "0" + }, + "id": 3354, + "name": "Literal", + "src": "1037:1:26" } + ], + "id": 3355, + "name": "BinaryOperation", + "src": "1031:7:26" + }, + { + "attributes": { + "functionReturnParameters": 3352 }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { + "children": [ + { + "attributes": { + "argumentTypes": null, + "hexvalue": "30", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "number", + "type": "int_const 0", + "value": "0" + }, + "id": 3356, + "name": "Literal", + "src": "1047:1:26" + } + ], + "id": 3357, + "name": "Return", + "src": "1040:8:26" + } + ], + "id": 3358, + "name": "IfStatement", + "src": "1027:21:26" + }, + { + "attributes": { + "assignments": [ + 3360 + ] + }, + "children": [ + { + "attributes": { + "constant": false, + "name": "z", + "scope": 3376, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 3359, + "name": "ElementaryTypeName", + "src": "1053:7:26" + } + ], + "id": 3360, + "name": "VariableDeclaration", + "src": "1053:9:26" + }, + { + "attributes": { "argumentTypes": null, - "id": 2149, - "name": "_y", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2142, - "src": "708:2:18", - "typeDescriptions": { + "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" - } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "*", + "type": "uint256" }, - "src": "702:8:18", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3346, + "type": "uint256", + "value": "_x" + }, + "id": 3361, + "name": "Identifier", + "src": "1065:2:26" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3348, + "type": "uint256", + "value": "_y" + }, + "id": 3362, + "name": "Identifier", + "src": "1070:2:26" + } + ], + "id": 3363, + "name": "BinaryOperation", + "src": "1065:7:26" + } + ], + "id": 3364, + "name": "VariableDeclarationStatement", + "src": "1053:19:26" + }, + { + "children": [ { - "argumentTypes": null, - "hexValue": "4552525f554e444552464c4f57", - "id": 2151, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "712:15:18", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ddfa1b728b94871fcaf7b3731a21cfe44f7a2b4b84261190a1aa6f6b13e2a1f4", - "typeString": "literal_string \"ERR_UNDERFLOW\"" + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false }, - "value": "ERR_UNDERFLOW" + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_5857855e77a7ad10ccf8b5bcb17297771c10c957a1c88a434eb5a16fc4dad486", + "typeString": "literal_string \"ERR_OVERFLOW\"" + } + ], + "overloadedDeclarations": [ + 3497, + 3498 + ], + "referencedDeclaration": 3498, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 3365, + "name": "Identifier", + "src": "1076:7:26" + }, + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "==", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "/", + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3360, + "type": "uint256", + "value": "z" + }, + "id": 3366, + "name": "Identifier", + "src": "1084:1:26" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3346, + "type": "uint256", + "value": "_x" + }, + "id": 3367, + "name": "Identifier", + "src": "1088:2:26" + } + ], + "id": 3368, + "name": "BinaryOperation", + "src": "1084:6:26" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3348, + "type": "uint256", + "value": "_y" + }, + "id": 3369, + "name": "Identifier", + "src": "1094:2:26" + } + ], + "id": 3370, + "name": "BinaryOperation", + "src": "1084:12:26" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "4552525f4f564552464c4f57", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"ERR_OVERFLOW\"", + "value": "ERR_OVERFLOW" + }, + "id": 3371, + "name": "Literal", + "src": "1098:14:26" + } + ], + "id": 3372, + "name": "FunctionCall", + "src": "1076:37:26" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" + "id": 3373, + "name": "ExpressionStatement", + "src": "1076:37:26" + }, + { + "attributes": { + "functionReturnParameters": 3352 + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3360, + "type": "uint256", + "value": "z" }, - { - "typeIdentifier": "t_stringliteral_ddfa1b728b94871fcaf7b3731a21cfe44f7a2b4b84261190a1aa6f6b13e2a1f4", - "typeString": "literal_string \"ERR_UNDERFLOW\"" - } - ], - "id": 2147, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 2236, - 2237 - ], - "referencedDeclaration": 2237, - "src": "694:7:18", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2152, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "694:34:18", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2153, - "nodeType": "ExpressionStatement", - "src": "694:34:18" - }, - { - "expression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2156, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2154, - "name": "_x", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2140, - "src": "739:2:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "argumentTypes": null, - "id": 2155, - "name": "_y", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2142, - "src": "744:2:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "739:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 2146, - "id": 2157, - "nodeType": "Return", - "src": "732:14:18" - } - ] - }, - "documentation": "@dev returns the difference of _x minus _y, reverts if the calculation underflows\n\t * @param _x minuend\n@param _y subtrahend\n\t * @return difference", - "id": 2159, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "sub", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2143, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2140, - "name": "_x", - "nodeType": "VariableDeclaration", - "scope": 2159, - "src": "634:10:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2139, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "634:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2142, - "name": "_y", - "nodeType": "VariableDeclaration", - "scope": 2159, - "src": "646:10:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2141, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "646:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "633:24:18" - }, - "returnParameters": { - "id": 2146, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2145, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2159, - "src": "681:7:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2144, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "681:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "680:9:18" - }, - "scope": 2218, - "src": "621:129:18", - "stateMutability": "pure", - "superFunction": null, - "visibility": "internal" - }, - { - "body": { - "id": 2191, - "nodeType": "Block", - "src": "1001:128:18", - "statements": [ - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2170, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2168, - "name": "_x", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2161, - "src": "1031:2:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "hexValue": "30", - "id": 2169, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1037:1:18", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1031:7:18", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 2173, - "nodeType": "IfStatement", - "src": "1027:21:18", - "trueBody": { - "expression": { - "argumentTypes": null, - "hexValue": "30", - "id": 2171, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1047:1:18", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "functionReturnParameters": 2167, - "id": 2172, - "nodeType": "Return", - "src": "1040:8:18" - } - }, - { - "assignments": [ - 2175 - ], - "declarations": [ - { - "constant": false, - "id": 2175, - "name": "z", - "nodeType": "VariableDeclaration", - "scope": 2191, - "src": "1053:9:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2174, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1053:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2179, - "initialValue": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2178, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2176, - "name": "_x", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2161, - "src": "1065:2:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "argumentTypes": null, - "id": 2177, - "name": "_y", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2163, - "src": "1070:2:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1065:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1053:19:18" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2185, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2183, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2181, - "name": "z", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2175, - "src": "1084:1:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "argumentTypes": null, - "id": 2182, - "name": "_x", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2161, - "src": "1088:2:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1084:6:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 2184, - "name": "_y", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2163, - "src": "1094:2:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1084:12:18", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "argumentTypes": null, - "hexValue": "4552525f4f564552464c4f57", - "id": 2186, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1098:14:18", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5857855e77a7ad10ccf8b5bcb17297771c10c957a1c88a434eb5a16fc4dad486", - "typeString": "literal_string \"ERR_OVERFLOW\"" - }, - "value": "ERR_OVERFLOW" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5857855e77a7ad10ccf8b5bcb17297771c10c957a1c88a434eb5a16fc4dad486", - "typeString": "literal_string \"ERR_OVERFLOW\"" - } - ], - "id": 2180, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 2236, - 2237 - ], - "referencedDeclaration": 2237, - "src": "1076:7:18", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2187, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1076:37:18", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2188, - "nodeType": "ExpressionStatement", - "src": "1076:37:18" - }, - { - "expression": { - "argumentTypes": null, - "id": 2189, - "name": "z", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2175, - "src": "1124:1:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 2167, - "id": 2190, - "nodeType": "Return", - "src": "1117:8:18" - } - ] - }, - "documentation": "@dev returns the product of multiplying _x by _y, reverts if the calculation overflows\n\t * @param _x factor 1\n@param _y factor 2\n\t * @return product", - "id": 2192, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "mul", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2164, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2161, - "name": "_x", - "nodeType": "VariableDeclaration", - "scope": 2192, - "src": "945:10:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2160, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "945:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2163, - "name": "_y", - "nodeType": "VariableDeclaration", - "scope": 2192, - "src": "957:10:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2162, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "957:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "944:24:18" - }, - "returnParameters": { - "id": 2167, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2166, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2192, - "src": "992:7:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2165, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "992:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "991:9:18" - }, - "scope": 2218, - "src": "932:197:18", - "stateMutability": "pure", - "superFunction": null, - "visibility": "internal" - }, - { - "body": { - "id": 2216, - "nodeType": "Block", - "src": "1384:80:18", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2204, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2202, - "name": "_y", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2196, - "src": "1396:2:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "argumentTypes": null, - "hexValue": "30", - "id": 2203, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1401:1:18", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1396:6:18", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "argumentTypes": null, - "hexValue": "4552525f4449564944455f42595f5a45524f", - "id": 2205, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1404:20:18", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_80c66eaebdd007de3c36bb5849ffa95e14b2130dc26a35fe1154627fc9dd838e", - "typeString": "literal_string \"ERR_DIVIDE_BY_ZERO\"" - }, - "value": "ERR_DIVIDE_BY_ZERO" + "id": 3374, + "name": "Identifier", + "src": "1124:1:26" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" + "id": 3375, + "name": "Return", + "src": "1117:8:26" + } + ], + "id": 3376, + "name": "Block", + "src": "1001:128:26" + } + ], + "id": 3377, + "name": "FunctionDefinition", + "src": "932:197:26" + }, + { + "attributes": { + "documentation": "@dev Integer division of two numbers truncating the quotient, reverts on division by zero.\n\t * @param _x dividend\n@param _y divisor\n\t * @return quotient", + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "div", + "scope": 3403, + "stateMutability": "pure", + "superFunction": null, + "visibility": "internal" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_x", + "scope": 3402, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" }, - { - "typeIdentifier": "t_stringliteral_80c66eaebdd007de3c36bb5849ffa95e14b2130dc26a35fe1154627fc9dd838e", - "typeString": "literal_string \"ERR_DIVIDE_BY_ZERO\"" - } - ], - "id": 2201, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 2236, - 2237 - ], - "referencedDeclaration": 2237, - "src": "1388:7:18", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" + "id": 3378, + "name": "ElementaryTypeName", + "src": "1328:7:26" } - }, - "id": 2206, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1388:37:18", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } + ], + "id": 3379, + "name": "VariableDeclaration", + "src": "1328:10:26" }, - "id": 2207, - "nodeType": "ExpressionStatement", - "src": "1388:37:18" - }, - { - "assignments": [ - 2209 - ], - "declarations": [ - { + { + "attributes": { "constant": false, - "id": 2209, - "name": "c", - "nodeType": "VariableDeclaration", - "scope": 2216, - "src": "1429:9:18", + "name": "_y", + "scope": 3402, "stateVariable": false, "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2208, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1429:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, + "type": "uint256", "value": null, "visibility": "internal" - } - ], - "id": 2213, - "initialValue": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" }, - "id": 2212, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2210, - "name": "_x", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2194, - "src": "1441:2:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 3380, + "name": "ElementaryTypeName", + "src": "1340:7:26" } + ], + "id": 3381, + "name": "VariableDeclaration", + "src": "1340:10:26" + } + ], + "id": 3382, + "name": "ParameterList", + "src": "1327:24:26" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 3402, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "argumentTypes": null, - "id": 2211, - "name": "_y", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2196, - "src": "1446:2:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 3383, + "name": "ElementaryTypeName", + "src": "1375:7:26" } + ], + "id": 3384, + "name": "VariableDeclaration", + "src": "1375:7:26" + } + ], + "id": 3385, + "name": "ParameterList", + "src": "1374:9:26" + }, + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_80c66eaebdd007de3c36bb5849ffa95e14b2130dc26a35fe1154627fc9dd838e", + "typeString": "literal_string \"ERR_DIVIDE_BY_ZERO\"" + } + ], + "overloadedDeclarations": [ + 3497, + 3498 + ], + "referencedDeclaration": 3498, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 3386, + "name": "Identifier", + "src": "1388:7:26" + }, + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": ">", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3381, + "type": "uint256", + "value": "_y" + }, + "id": 3387, + "name": "Identifier", + "src": "1396:2:26" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "30", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "number", + "type": "int_const 0", + "value": "0" + }, + "id": 3388, + "name": "Literal", + "src": "1401:1:26" + } + ], + "id": 3389, + "name": "BinaryOperation", + "src": "1396:6:26" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "4552525f4449564944455f42595f5a45524f", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"ERR_DIVIDE_BY_ZERO\"", + "value": "ERR_DIVIDE_BY_ZERO" + }, + "id": 3390, + "name": "Literal", + "src": "1404:20:26" + } + ], + "id": 3391, + "name": "FunctionCall", + "src": "1388:37:26" + } + ], + "id": 3392, + "name": "ExpressionStatement", + "src": "1388:37:26" + }, + { + "attributes": { + "assignments": [ + 3394 + ] }, - "src": "1441:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1429:19:18" - }, - { - "expression": { - "argumentTypes": null, - "id": 2214, - "name": "c", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2209, - "src": "1459:1:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 2200, - "id": 2215, - "nodeType": "Return", - "src": "1452:8:18" - } - ] - }, - "documentation": "@dev Integer division of two numbers truncating the quotient, reverts on division by zero.\n\t * @param _x dividend\n@param _y divisor\n\t * @return quotient", - "id": 2217, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "div", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2197, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2194, - "name": "_x", - "nodeType": "VariableDeclaration", - "scope": 2217, - "src": "1328:10:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2193, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1328:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2196, - "name": "_y", - "nodeType": "VariableDeclaration", - "scope": 2217, - "src": "1340:10:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2195, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1340:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1327:24:18" - }, - "returnParameters": { - "id": 2200, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2199, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2217, - "src": "1375:7:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2198, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1375:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + "children": [ + { + "attributes": { + "constant": false, + "name": "c", + "scope": 3401, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 3393, + "name": "ElementaryTypeName", + "src": "1429:7:26" + } + ], + "id": 3394, + "name": "VariableDeclaration", + "src": "1429:9:26" + }, + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "/", + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3379, + "type": "uint256", + "value": "_x" + }, + "id": 3395, + "name": "Identifier", + "src": "1441:2:26" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3381, + "type": "uint256", + "value": "_y" + }, + "id": 3396, + "name": "Identifier", + "src": "1446:2:26" + } + ], + "id": 3397, + "name": "BinaryOperation", + "src": "1441:7:26" + } + ], + "id": 3398, + "name": "VariableDeclarationStatement", + "src": "1429:19:26" }, - "value": null, - "visibility": "internal" - } - ], - "src": "1374:9:18" - }, - "scope": 2218, - "src": "1315:149:18", - "stateMutability": "pure", - "superFunction": null, - "visibility": "internal" + { + "attributes": { + "functionReturnParameters": 3385 + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3394, + "type": "uint256", + "value": "c" + }, + "id": 3399, + "name": "Identifier", + "src": "1459:1:26" + } + ], + "id": 3400, + "name": "Return", + "src": "1452:8:26" + } + ], + "id": 3401, + "name": "Block", + "src": "1384:80:26" + } + ], + "id": 3402, + "name": "FunctionDefinition", + "src": "1315:149:26" } ], - "scope": 2219, - "src": "118:1348:18" + "id": 3403, + "name": "ContractDefinition", + "src": "118:1348:26" } ], - "src": "0:1467:18" + "id": 3404, + "name": "SourceUnit", + "src": "0:1467:26" }, "compiler": { "name": "solc", "version": "0.5.16+commit.9c3226ce.Emscripten.clang" }, "networks": {}, - "schemaVersion": "3.3.2", - "updatedAt": "2021-03-26T10:10:09.427Z", + "schemaVersion": "3.4.1", + "updatedAt": "2022-02-15T06:13:50.495Z", "devdoc": { "details": "Library for basic math operations with overflow/underflow protection", "methods": {} diff --git a/rbtcwrapperproxy/build/contracts/Utils.json b/rbtcwrapperproxy/build/contracts/Utils.json index 2994c95..30210a2 100644 --- a/rbtcwrapperproxy/build/contracts/Utils.json +++ b/rbtcwrapperproxy/build/contracts/Utils.json @@ -1,25 +1,25 @@ { "contractName": "Utils", "abi": [], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"Utilities & Common Modifiers\",\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/Utils.sol\":\"Utils\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/Utils.sol\":{\"keccak256\":\"0x129c13c988cc49e769159cb47ab533f72daf169a85ced101dddf8b1f7c44ac23\",\"urls\":[\"bzz-raw://955d900ae9d12219e4e95a2ac146c21a6cfd800646d0213a81e22afd6eab8195\",\"dweb:/ipfs/QmRe2nge1iJUsvwRrVSvw8thBFyYKZMeCLDhafxx8zEebC\"]}},\"version\":1}", - "bytecode": "0x6080604052348015600f57600080fd5b50603e80601d6000396000f3fe6080604052600080fdfea265627a7a723158202998e7534f60b1910fe6b0a271afc17bd3f312b6c5460ffb0d1bf9fb6791d0d664736f6c63430005100032", - "deployedBytecode": "0x6080604052600080fdfea265627a7a723158202998e7534f60b1910fe6b0a271afc17bd3f312b6c5460ffb0d1bf9fb6791d0d664736f6c63430005100032", + "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"Utilities & Common Modifiers\",\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/Utils.sol\":\"Utils\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/Utils.sol\":{\"keccak256\":\"0x129c13c988cc49e769159cb47ab533f72daf169a85ced101dddf8b1f7c44ac23\",\"urls\":[\"bzz-raw://955d900ae9d12219e4e95a2ac146c21a6cfd800646d0213a81e22afd6eab8195\",\"dweb:/ipfs/QmRe2nge1iJUsvwRrVSvw8thBFyYKZMeCLDhafxx8zEebC\"]}},\"version\":1}", + "bytecode": "0x6080604052348015600f57600080fd5b50603e80601d6000396000f3fe6080604052600080fdfea265627a7a7231582056a4e3d9ff036d5cd5a167051f2ea805ddccbb1acbc6edcf31ba758ad8d34b8b64736f6c63430005100032", + "deployedBytecode": "0x6080604052600080fdfea265627a7a7231582056a4e3d9ff036d5cd5a167051f2ea805ddccbb1acbc6edcf31ba758ad8d34b8b64736f6c63430005100032", "sourceMap": "75:1043:24:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;75:1043:24;;;;;;;", "deployedSourceMap": "75:1043:24:-;;;;;", "source": "pragma solidity 0.5.16;\r\n\r\n/**\r\n * @dev Utilities & Common Modifiers\r\n*/\r\ncontract Utils {\r\n // verifies that a value is greater than zero\r\n modifier greaterThanZero(uint256 _value) {\r\n _greaterThanZero(_value);\r\n _;\r\n }\r\n\r\n // error message binary size optimization\r\n function _greaterThanZero(uint256 _value) internal pure {\r\n require(_value > 0, \"ERR_ZERO_VALUE\");\r\n }\r\n\r\n // validates an address - currently only checks that it isn't null\r\n modifier validAddress(address _address) {\r\n _validAddress(_address);\r\n _;\r\n }\r\n\r\n // error message binary size optimization\r\n function _validAddress(address _address) internal pure {\r\n require(_address != address(0), \"ERR_INVALID_ADDRESS\");\r\n }\r\n\r\n // verifies that the address is different than this contract address\r\n modifier notThis(address _address) {\r\n _notThis(_address);\r\n _;\r\n }\r\n\r\n // error message binary size optimization\r\n function _notThis(address _address) internal view {\r\n require(_address != address(this), \"ERR_ADDRESS_IS_SELF\");\r\n }\r\n}\r\n", - "sourcePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/Utils.sol", + "sourcePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/Utils.sol", "ast": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/Utils.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/Utils.sol", "exportedSymbols": { "Utils": [ - 2927 + 3169 ] }, - "id": 2928, + "id": 3170, "nodeType": "SourceUnit", "nodes": [ { - "id": 2853, + "id": 3095, "literals": [ "solidity", "0.5", @@ -34,16 +34,16 @@ "contractKind": "contract", "documentation": "@dev Utilities & Common Modifiers", "fullyImplemented": true, - "id": 2927, + "id": 3169, "linearizedBaseContracts": [ - 2927 + 3169 ], "name": "Utils", "nodeType": "ContractDefinition", "nodes": [ { "body": { - "id": 2862, + "id": 3104, "nodeType": "Block", "src": "189:55:24", "statements": [ @@ -53,11 +53,11 @@ "arguments": [ { "argumentTypes": null, - "id": 2858, + "id": 3100, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2855, + "referencedDeclaration": 3097, "src": "217:6:24", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -72,18 +72,18 @@ "typeString": "uint256" } ], - "id": 2857, + "id": 3099, "name": "_greaterThanZero", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2876, + "referencedDeclaration": 3118, "src": "200:16:24", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$__$", "typeString": "function (uint256) pure" } }, - "id": 2859, + "id": 3101, "isConstant": false, "isLValue": false, "isPure": false, @@ -97,31 +97,31 @@ "typeString": "tuple()" } }, - "id": 2860, + "id": 3102, "nodeType": "ExpressionStatement", "src": "200:24:24" }, { - "id": 2861, + "id": 3103, "nodeType": "PlaceholderStatement", "src": "235:1:24" } ] }, "documentation": null, - "id": 2863, + "id": 3105, "name": "greaterThanZero", "nodeType": "ModifierDefinition", "parameters": { - "id": 2856, + "id": 3098, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2855, + "id": 3097, "name": "_value", "nodeType": "VariableDeclaration", - "scope": 2863, + "scope": 3105, "src": "173:14:24", "stateVariable": false, "storageLocation": "default", @@ -130,7 +130,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2854, + "id": 3096, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "173:7:24", @@ -150,7 +150,7 @@ }, { "body": { - "id": 2875, + "id": 3117, "nodeType": "Block", "src": "355:56:24", "statements": [ @@ -164,18 +164,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2871, + "id": 3113, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2869, + "id": 3111, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2865, + "referencedDeclaration": 3107, "src": "374:6:24", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -187,7 +187,7 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 2870, + "id": 3112, "isConstant": false, "isLValue": false, "isPure": true, @@ -211,7 +211,7 @@ { "argumentTypes": null, "hexValue": "4552525f5a45524f5f56414c5545", - "id": 2872, + "id": 3114, "isConstant": false, "isLValue": false, "isPure": true, @@ -238,21 +238,21 @@ "typeString": "literal_string \"ERR_ZERO_VALUE\"" } ], - "id": 2868, + "id": 3110, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 2945, - 2946 + 3187, + 3188 ], - "referencedDeclaration": 2946, + "referencedDeclaration": 3188, "src": "366:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 2873, + "id": 3115, "isConstant": false, "isLValue": false, "isPure": false, @@ -266,29 +266,29 @@ "typeString": "tuple()" } }, - "id": 2874, + "id": 3116, "nodeType": "ExpressionStatement", "src": "366:37:24" } ] }, "documentation": null, - "id": 2876, + "id": 3118, "implemented": true, "kind": "function", "modifiers": [], "name": "_greaterThanZero", "nodeType": "FunctionDefinition", "parameters": { - "id": 2866, + "id": 3108, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2865, + "id": 3107, "name": "_value", "nodeType": "VariableDeclaration", - "scope": 2876, + "scope": 3118, "src": "325:14:24", "stateVariable": false, "storageLocation": "default", @@ -297,7 +297,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2864, + "id": 3106, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "325:7:24", @@ -313,12 +313,12 @@ "src": "324:16:24" }, "returnParameters": { - "id": 2867, + "id": 3109, "nodeType": "ParameterList", "parameters": [], "src": "355:0:24" }, - "scope": 2927, + "scope": 3169, "src": "299:112:24", "stateMutability": "pure", "superFunction": null, @@ -326,7 +326,7 @@ }, { "body": { - "id": 2885, + "id": 3127, "nodeType": "Block", "src": "531:54:24", "statements": [ @@ -336,11 +336,11 @@ "arguments": [ { "argumentTypes": null, - "id": 2881, + "id": 3123, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2878, + "referencedDeclaration": 3120, "src": "556:8:24", "typeDescriptions": { "typeIdentifier": "t_address", @@ -355,18 +355,18 @@ "typeString": "address" } ], - "id": 2880, + "id": 3122, "name": "_validAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2901, + "referencedDeclaration": 3143, "src": "542:13:24", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_address_$returns$__$", "typeString": "function (address) pure" } }, - "id": 2882, + "id": 3124, "isConstant": false, "isLValue": false, "isPure": false, @@ -380,31 +380,31 @@ "typeString": "tuple()" } }, - "id": 2883, + "id": 3125, "nodeType": "ExpressionStatement", "src": "542:23:24" }, { - "id": 2884, + "id": 3126, "nodeType": "PlaceholderStatement", "src": "576:1:24" } ] }, "documentation": null, - "id": 2886, + "id": 3128, "name": "validAddress", "nodeType": "ModifierDefinition", "parameters": { - "id": 2879, + "id": 3121, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2878, + "id": 3120, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 2886, + "scope": 3128, "src": "513:16:24", "stateVariable": false, "storageLocation": "default", @@ -413,7 +413,7 @@ "typeString": "address" }, "typeName": { - "id": 2877, + "id": 3119, "name": "address", "nodeType": "ElementaryTypeName", "src": "513:7:24", @@ -434,7 +434,7 @@ }, { "body": { - "id": 2900, + "id": 3142, "nodeType": "Block", "src": "695:73:24", "statements": [ @@ -448,18 +448,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2896, + "id": 3138, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2892, + "id": 3134, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2888, + "referencedDeclaration": 3130, "src": "714:8:24", "typeDescriptions": { "typeIdentifier": "t_address", @@ -474,7 +474,7 @@ { "argumentTypes": null, "hexValue": "30", - "id": 2894, + "id": 3136, "isConstant": false, "isLValue": false, "isPure": true, @@ -497,7 +497,7 @@ "typeString": "int_const 0" } ], - "id": 2893, + "id": 3135, "isConstant": false, "isLValue": false, "isPure": true, @@ -510,7 +510,7 @@ }, "typeName": "address" }, - "id": 2895, + "id": 3137, "isConstant": false, "isLValue": false, "isPure": true, @@ -533,7 +533,7 @@ { "argumentTypes": null, "hexValue": "4552525f494e56414c49445f41444452455353", - "id": 2897, + "id": 3139, "isConstant": false, "isLValue": false, "isPure": true, @@ -560,21 +560,21 @@ "typeString": "literal_string \"ERR_INVALID_ADDRESS\"" } ], - "id": 2891, + "id": 3133, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 2945, - 2946 + 3187, + 3188 ], - "referencedDeclaration": 2946, + "referencedDeclaration": 3188, "src": "706:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 2898, + "id": 3140, "isConstant": false, "isLValue": false, "isPure": false, @@ -588,29 +588,29 @@ "typeString": "tuple()" } }, - "id": 2899, + "id": 3141, "nodeType": "ExpressionStatement", "src": "706:54:24" } ] }, "documentation": null, - "id": 2901, + "id": 3143, "implemented": true, "kind": "function", "modifiers": [], "name": "_validAddress", "nodeType": "FunctionDefinition", "parameters": { - "id": 2889, + "id": 3131, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2888, + "id": 3130, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 2901, + "scope": 3143, "src": "663:16:24", "stateVariable": false, "storageLocation": "default", @@ -619,7 +619,7 @@ "typeString": "address" }, "typeName": { - "id": 2887, + "id": 3129, "name": "address", "nodeType": "ElementaryTypeName", "src": "663:7:24", @@ -636,12 +636,12 @@ "src": "662:18:24" }, "returnParameters": { - "id": 2890, + "id": 3132, "nodeType": "ParameterList", "parameters": [], "src": "695:0:24" }, - "scope": 2927, + "scope": 3169, "src": "640:128:24", "stateMutability": "pure", "superFunction": null, @@ -649,7 +649,7 @@ }, { "body": { - "id": 2910, + "id": 3152, "nodeType": "Block", "src": "885:49:24", "statements": [ @@ -659,11 +659,11 @@ "arguments": [ { "argumentTypes": null, - "id": 2906, + "id": 3148, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2903, + "referencedDeclaration": 3145, "src": "905:8:24", "typeDescriptions": { "typeIdentifier": "t_address", @@ -678,18 +678,18 @@ "typeString": "address" } ], - "id": 2905, + "id": 3147, "name": "_notThis", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2926, + "referencedDeclaration": 3168, "src": "896:8:24", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$__$", "typeString": "function (address) view" } }, - "id": 2907, + "id": 3149, "isConstant": false, "isLValue": false, "isPure": false, @@ -703,31 +703,31 @@ "typeString": "tuple()" } }, - "id": 2908, + "id": 3150, "nodeType": "ExpressionStatement", "src": "896:18:24" }, { - "id": 2909, + "id": 3151, "nodeType": "PlaceholderStatement", "src": "925:1:24" } ] }, "documentation": null, - "id": 2911, + "id": 3153, "name": "notThis", "nodeType": "ModifierDefinition", "parameters": { - "id": 2904, + "id": 3146, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2903, + "id": 3145, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 2911, + "scope": 3153, "src": "867:16:24", "stateVariable": false, "storageLocation": "default", @@ -736,7 +736,7 @@ "typeString": "address" }, "typeName": { - "id": 2902, + "id": 3144, "name": "address", "nodeType": "ElementaryTypeName", "src": "867:7:24", @@ -757,7 +757,7 @@ }, { "body": { - "id": 2925, + "id": 3167, "nodeType": "Block", "src": "1039:76:24", "statements": [ @@ -771,18 +771,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2921, + "id": 3163, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2917, + "id": 3159, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2913, + "referencedDeclaration": 3155, "src": "1058:8:24", "typeDescriptions": { "typeIdentifier": "t_address", @@ -796,14 +796,14 @@ "arguments": [ { "argumentTypes": null, - "id": 2919, + "id": 3161, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2956, + "referencedDeclaration": 3198, "src": "1078:4:24", "typeDescriptions": { - "typeIdentifier": "t_contract$_Utils_$2927", + "typeIdentifier": "t_contract$_Utils_$3169", "typeString": "contract Utils" } } @@ -811,11 +811,11 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Utils_$2927", + "typeIdentifier": "t_contract$_Utils_$3169", "typeString": "contract Utils" } ], - "id": 2918, + "id": 3160, "isConstant": false, "isLValue": false, "isPure": true, @@ -828,7 +828,7 @@ }, "typeName": "address" }, - "id": 2920, + "id": 3162, "isConstant": false, "isLValue": false, "isPure": false, @@ -851,7 +851,7 @@ { "argumentTypes": null, "hexValue": "4552525f414444524553535f49535f53454c46", - "id": 2922, + "id": 3164, "isConstant": false, "isLValue": false, "isPure": true, @@ -878,21 +878,21 @@ "typeString": "literal_string \"ERR_ADDRESS_IS_SELF\"" } ], - "id": 2916, + "id": 3158, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 2945, - 2946 + 3187, + 3188 ], - "referencedDeclaration": 2946, + "referencedDeclaration": 3188, "src": "1050:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 2923, + "id": 3165, "isConstant": false, "isLValue": false, "isPure": false, @@ -906,29 +906,29 @@ "typeString": "tuple()" } }, - "id": 2924, + "id": 3166, "nodeType": "ExpressionStatement", "src": "1050:57:24" } ] }, "documentation": null, - "id": 2926, + "id": 3168, "implemented": true, "kind": "function", "modifiers": [], "name": "_notThis", "nodeType": "FunctionDefinition", "parameters": { - "id": 2914, + "id": 3156, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2913, + "id": 3155, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 2926, + "scope": 3168, "src": "1007:16:24", "stateVariable": false, "storageLocation": "default", @@ -937,7 +937,7 @@ "typeString": "address" }, "typeName": { - "id": 2912, + "id": 3154, "name": "address", "nodeType": "ElementaryTypeName", "src": "1007:7:24", @@ -954,986 +954,1075 @@ "src": "1006:18:24" }, "returnParameters": { - "id": 2915, + "id": 3157, "nodeType": "ParameterList", "parameters": [], "src": "1039:0:24" }, - "scope": 2927, + "scope": 3169, "src": "989:126:24", "stateMutability": "view", "superFunction": null, "visibility": "internal" } ], - "scope": 2928, + "scope": 3170, "src": "75:1043:24" } ], "src": "0:1120:24" }, "legacyAST": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/openzeppelin/Utils.sol", - "exportedSymbols": { - "Utils": [ - 2927 - ] + "attributes": { + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/openzeppelin/Utils.sol", + "exportedSymbols": { + "Utils": [ + 3169 + ] + } }, - "id": 2928, - "nodeType": "SourceUnit", - "nodes": [ + "children": [ { - "id": 2853, - "literals": [ - "solidity", - "0.5", - ".16" - ], - "nodeType": "PragmaDirective", + "attributes": { + "literals": [ + "solidity", + "0.5", + ".16" + ] + }, + "id": 3095, + "name": "PragmaDirective", "src": "0:23:24" }, { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "contract", - "documentation": "@dev Utilities & Common Modifiers", - "fullyImplemented": true, - "id": 2927, - "linearizedBaseContracts": [ - 2927 - ], - "name": "Utils", - "nodeType": "ContractDefinition", - "nodes": [ + "attributes": { + "baseContracts": [ + null + ], + "contractDependencies": [ + null + ], + "contractKind": "contract", + "documentation": "@dev Utilities & Common Modifiers", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 3169 + ], + "name": "Utils", + "scope": 3170 + }, + "children": [ { - "body": { - "id": 2862, - "nodeType": "Block", - "src": "189:55:24", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ + "attributes": { + "documentation": null, + "name": "greaterThanZero", + "visibility": "internal" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_value", + "scope": 3105, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ { - "argumentTypes": null, - "id": 2858, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2855, - "src": "217:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + "attributes": { + "name": "uint256", + "type": "uint256" + }, + "id": 3096, + "name": "ElementaryTypeName", + "src": "173:7:24" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 2857, - "name": "_greaterThanZero", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2876, - "src": "200:16:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$__$", - "typeString": "function (uint256) pure" + "id": 3097, + "name": "VariableDeclaration", + "src": "173:14:24" + } + ], + "id": 3098, + "name": "ParameterList", + "src": "172:16:24" + }, + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3118, + "type": "function (uint256) pure", + "value": "_greaterThanZero" + }, + "id": 3099, + "name": "Identifier", + "src": "200:16:24" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3097, + "type": "uint256", + "value": "_value" + }, + "id": 3100, + "name": "Identifier", + "src": "217:6:24" + } + ], + "id": 3101, + "name": "FunctionCall", + "src": "200:24:24" } - }, - "id": 2859, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "200:24:24", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2860, - "nodeType": "ExpressionStatement", - "src": "200:24:24" - }, - { - "id": 2861, - "nodeType": "PlaceholderStatement", - "src": "235:1:24" - } - ] - }, - "documentation": null, - "id": 2863, - "name": "greaterThanZero", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 2856, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2855, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 2863, - "src": "173:14:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2854, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "173:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + ], + "id": 3102, + "name": "ExpressionStatement", + "src": "200:24:24" }, - "value": null, - "visibility": "internal" - } - ], - "src": "172:16:24" - }, - "src": "148:96:24", - "visibility": "internal" + { + "id": 3103, + "name": "PlaceholderStatement", + "src": "235:1:24" + } + ], + "id": 3104, + "name": "Block", + "src": "189:55:24" + } + ], + "id": 3105, + "name": "ModifierDefinition", + "src": "148:96:24" }, { - "body": { - "id": 2875, - "nodeType": "Block", - "src": "355:56:24", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "_greaterThanZero", + "scope": 3169, + "stateMutability": "pure", + "superFunction": null, + "visibility": "internal" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_value", + "scope": 3118, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "attributes": { + "name": "uint256", + "type": "uint256" }, - "id": 2871, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { + "id": 3106, + "name": "ElementaryTypeName", + "src": "325:7:24" + } + ], + "id": 3107, + "name": "VariableDeclaration", + "src": "325:14:24" + } + ], + "id": 3108, + "name": "ParameterList", + "src": "324:16:24" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 3109, + "name": "ParameterList", + "src": "355:0:24" + }, + { + "children": [ + { + "children": [ + { + "attributes": { "argumentTypes": null, - "id": 2869, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2865, - "src": "374:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_6d867a5fb86a4ba31dbc28b32cea703c5633c272ff1c7db7eff591a6c9397723", + "typeString": "literal_string \"ERR_ZERO_VALUE\"" + } + ], + "overloadedDeclarations": [ + 3187, + 3188 + ], + "referencedDeclaration": 3188, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 3110, + "name": "Identifier", + "src": "366:7:24" + }, + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": ">", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3107, + "type": "uint256", + "value": "_value" + }, + "id": 3111, + "name": "Identifier", + "src": "374:6:24" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "30", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "number", + "type": "int_const 0", + "value": "0" + }, + "id": 3112, + "name": "Literal", + "src": "383:1:24" + } + ], + "id": 3113, + "name": "BinaryOperation", + "src": "374:10:24" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "4552525f5a45524f5f56414c5545", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"ERR_ZERO_VALUE\"", + "value": "ERR_ZERO_VALUE" + }, + "id": 3114, + "name": "Literal", + "src": "386:16:24" } + ], + "id": 3115, + "name": "FunctionCall", + "src": "366:37:24" + } + ], + "id": 3116, + "name": "ExpressionStatement", + "src": "366:37:24" + } + ], + "id": 3117, + "name": "Block", + "src": "355:56:24" + } + ], + "id": 3118, + "name": "FunctionDefinition", + "src": "299:112:24" + }, + { + "attributes": { + "documentation": null, + "name": "validAddress", + "visibility": "internal" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_address", + "scope": 3128, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { + "id": 3119, + "name": "ElementaryTypeName", + "src": "513:7:24" + } + ], + "id": 3120, + "name": "VariableDeclaration", + "src": "513:16:24" + } + ], + "id": 3121, + "name": "ParameterList", + "src": "512:18:24" + }, + { + "children": [ + { + "children": [ + { + "attributes": { "argumentTypes": null, - "hexValue": "30", - "id": 2870, "isConstant": false, "isLValue": false, - "isPure": true, - "kind": "number", + "isPure": false, + "isStructConstructorCall": false, "lValueRequested": false, - "nodeType": "Literal", - "src": "383:1:24", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false }, - "src": "374:10:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3143, + "type": "function (address) pure", + "value": "_validAddress" + }, + "id": 3122, + "name": "Identifier", + "src": "542:13:24" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3120, + "type": "address", + "value": "_address" + }, + "id": 3123, + "name": "Identifier", + "src": "556:8:24" + } + ], + "id": 3124, + "name": "FunctionCall", + "src": "542:23:24" + } + ], + "id": 3125, + "name": "ExpressionStatement", + "src": "542:23:24" + }, + { + "id": 3126, + "name": "PlaceholderStatement", + "src": "576:1:24" + } + ], + "id": 3127, + "name": "Block", + "src": "531:54:24" + } + ], + "id": 3128, + "name": "ModifierDefinition", + "src": "491:94:24" + }, + { + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "_validAddress", + "scope": 3169, + "stateMutability": "pure", + "superFunction": null, + "visibility": "internal" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_address", + "scope": 3143, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ { - "argumentTypes": null, - "hexValue": "4552525f5a45524f5f56414c5545", - "id": 2872, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "386:16:24", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_6d867a5fb86a4ba31dbc28b32cea703c5633c272ff1c7db7eff591a6c9397723", - "typeString": "literal_string \"ERR_ZERO_VALUE\"" + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" }, - "value": "ERR_ZERO_VALUE" + "id": 3129, + "name": "ElementaryTypeName", + "src": "663:7:24" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" + "id": 3130, + "name": "VariableDeclaration", + "src": "663:16:24" + } + ], + "id": 3131, + "name": "ParameterList", + "src": "662:18:24" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 3132, + "name": "ParameterList", + "src": "695:0:24" + }, + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false }, - { - "typeIdentifier": "t_stringliteral_6d867a5fb86a4ba31dbc28b32cea703c5633c272ff1c7db7eff591a6c9397723", - "typeString": "literal_string \"ERR_ZERO_VALUE\"" - } - ], - "id": 2868, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 2945, - 2946 - ], - "referencedDeclaration": 2946, - "src": "366:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_a7d3f5b8fcfdb9260fb71cc6af515e9b07a68a1202d1cb2f5a3f8f30449ddc07", + "typeString": "literal_string \"ERR_INVALID_ADDRESS\"" + } + ], + "overloadedDeclarations": [ + 3187, + 3188 + ], + "referencedDeclaration": 3188, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 3133, + "name": "Identifier", + "src": "706:7:24" + }, + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "!=", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3130, + "type": "address", + "value": "_address" + }, + "id": 3134, + "name": "Identifier", + "src": "714:8:24" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": true, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "address payable", + "type_conversion": true + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "type": "type(address)", + "value": "address" + }, + "id": 3135, + "name": "ElementaryTypeNameExpression", + "src": "726:7:24" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "30", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "number", + "type": "int_const 0", + "value": "0" + }, + "id": 3136, + "name": "Literal", + "src": "734:1:24" + } + ], + "id": 3137, + "name": "FunctionCall", + "src": "726:10:24" + } + ], + "id": 3138, + "name": "BinaryOperation", + "src": "714:22:24" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "4552525f494e56414c49445f41444452455353", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"ERR_INVALID_ADDRESS\"", + "value": "ERR_INVALID_ADDRESS" + }, + "id": 3139, + "name": "Literal", + "src": "738:21:24" + } + ], + "id": 3140, + "name": "FunctionCall", + "src": "706:54:24" } - }, - "id": 2873, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "366:37:24", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2874, - "nodeType": "ExpressionStatement", - "src": "366:37:24" - } - ] - }, - "documentation": null, - "id": 2876, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_greaterThanZero", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2866, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2865, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 2876, - "src": "325:14:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2864, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "325:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "324:16:24" - }, - "returnParameters": { - "id": 2867, - "nodeType": "ParameterList", - "parameters": [], - "src": "355:0:24" - }, - "scope": 2927, - "src": "299:112:24", - "stateMutability": "pure", - "superFunction": null, - "visibility": "internal" + ], + "id": 3141, + "name": "ExpressionStatement", + "src": "706:54:24" + } + ], + "id": 3142, + "name": "Block", + "src": "695:73:24" + } + ], + "id": 3143, + "name": "FunctionDefinition", + "src": "640:128:24" }, { - "body": { - "id": 2885, - "nodeType": "Block", - "src": "531:54:24", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ + "attributes": { + "documentation": null, + "name": "notThis", + "visibility": "internal" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_address", + "scope": 3153, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ { - "argumentTypes": null, - "id": 2881, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2878, - "src": "556:8:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 3144, + "name": "ElementaryTypeName", + "src": "867:7:24" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2880, - "name": "_validAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2901, - "src": "542:13:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_address_$returns$__$", - "typeString": "function (address) pure" + "id": 3145, + "name": "VariableDeclaration", + "src": "867:16:24" + } + ], + "id": 3146, + "name": "ParameterList", + "src": "866:18:24" + }, + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3168, + "type": "function (address) view", + "value": "_notThis" + }, + "id": 3147, + "name": "Identifier", + "src": "896:8:24" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3145, + "type": "address", + "value": "_address" + }, + "id": 3148, + "name": "Identifier", + "src": "905:8:24" + } + ], + "id": 3149, + "name": "FunctionCall", + "src": "896:18:24" } - }, - "id": 2882, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "542:23:24", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2883, - "nodeType": "ExpressionStatement", - "src": "542:23:24" - }, - { - "id": 2884, - "nodeType": "PlaceholderStatement", - "src": "576:1:24" - } - ] - }, - "documentation": null, - "id": 2886, - "name": "validAddress", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 2879, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2878, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 2886, - "src": "513:16:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2877, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "513:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + ], + "id": 3150, + "name": "ExpressionStatement", + "src": "896:18:24" }, - "value": null, - "visibility": "internal" - } - ], - "src": "512:18:24" - }, - "src": "491:94:24", - "visibility": "internal" + { + "id": 3151, + "name": "PlaceholderStatement", + "src": "925:1:24" + } + ], + "id": 3152, + "name": "Block", + "src": "885:49:24" + } + ], + "id": 3153, + "name": "ModifierDefinition", + "src": "850:84:24" }, { - "body": { - "id": 2900, - "nodeType": "Block", - "src": "695:73:24", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "_notThis", + "scope": 3169, + "stateMutability": "view", + "superFunction": null, + "visibility": "internal" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_address", + "scope": 3168, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" }, - "id": 2896, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { + "id": 3154, + "name": "ElementaryTypeName", + "src": "1007:7:24" + } + ], + "id": 3155, + "name": "VariableDeclaration", + "src": "1007:16:24" + } + ], + "id": 3156, + "name": "ParameterList", + "src": "1006:18:24" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 3157, + "name": "ParameterList", + "src": "1039:0:24" + }, + { + "children": [ + { + "children": [ + { + "attributes": { "argumentTypes": null, - "id": 2892, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2888, - "src": "714:8:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_d6038575e9704a3ea491558fda267e4bebfff2c5aa46f54a3ab71ebfebd80861", + "typeString": "literal_string \"ERR_ADDRESS_IS_SELF\"" + } + ], + "overloadedDeclarations": [ + 3187, + 3188 + ], + "referencedDeclaration": 3188, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 3158, + "name": "Identifier", + "src": "1050:7:24" + }, + { + "attributes": { "argumentTypes": null, - "hexValue": "30", - "id": 2894, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, "isConstant": false, "isLValue": false, - "isPure": true, - "kind": "number", + "isPure": false, "lValueRequested": false, - "nodeType": "Literal", - "src": "734:1:24", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" + "operator": "!=", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3155, + "type": "address", + "value": "_address" + }, + "id": 3159, + "name": "Identifier", + "src": "1058:8:24" }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "address", + "type_conversion": true + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Utils_$3169", + "typeString": "contract Utils" + } + ], + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "type": "type(address)", + "value": "address" + }, + "id": 3160, + "name": "ElementaryTypeNameExpression", + "src": "1070:7:24" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3198, + "type": "contract Utils", + "value": "this" + }, + "id": 3161, + "name": "Identifier", + "src": "1078:4:24" + } + ], + "id": 3162, + "name": "FunctionCall", + "src": "1070:13:24" } ], - "id": 2893, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "726:7:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": "address" + "id": 3163, + "name": "BinaryOperation", + "src": "1058:25:24" }, - "id": 2895, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "726:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "src": "714:22:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "argumentTypes": null, - "hexValue": "4552525f494e56414c49445f41444452455353", - "id": 2897, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "738:21:24", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a7d3f5b8fcfdb9260fb71cc6af515e9b07a68a1202d1cb2f5a3f8f30449ddc07", - "typeString": "literal_string \"ERR_INVALID_ADDRESS\"" - }, - "value": "ERR_INVALID_ADDRESS" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_a7d3f5b8fcfdb9260fb71cc6af515e9b07a68a1202d1cb2f5a3f8f30449ddc07", - "typeString": "literal_string \"ERR_INVALID_ADDRESS\"" - } - ], - "id": 2891, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 2945, - 2946 - ], - "referencedDeclaration": 2946, - "src": "706:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2898, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "706:54:24", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2899, - "nodeType": "ExpressionStatement", - "src": "706:54:24" - } - ] - }, - "documentation": null, - "id": 2901, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_validAddress", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2889, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2888, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 2901, - "src": "663:16:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2887, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "663:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "662:18:24" - }, - "returnParameters": { - "id": 2890, - "nodeType": "ParameterList", - "parameters": [], - "src": "695:0:24" - }, - "scope": 2927, - "src": "640:128:24", - "stateMutability": "pure", - "superFunction": null, - "visibility": "internal" - }, - { - "body": { - "id": 2910, - "nodeType": "Block", - "src": "885:49:24", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2906, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2903, - "src": "905:8:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2905, - "name": "_notThis", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2926, - "src": "896:8:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$__$", - "typeString": "function (address) view" - } - }, - "id": 2907, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "896:18:24", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2908, - "nodeType": "ExpressionStatement", - "src": "896:18:24" - }, - { - "id": 2909, - "nodeType": "PlaceholderStatement", - "src": "925:1:24" - } - ] - }, - "documentation": null, - "id": 2911, - "name": "notThis", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 2904, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2903, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 2911, - "src": "867:16:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2902, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "867:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "866:18:24" - }, - "src": "850:84:24", - "visibility": "internal" - }, - { - "body": { - "id": 2925, - "nodeType": "Block", - "src": "1039:76:24", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2921, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2917, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2913, - "src": "1058:8:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { + { + "attributes": { "argumentTypes": null, - "id": 2919, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2956, - "src": "1078:4:24", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Utils_$2927", - "typeString": "contract Utils" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_Utils_$2927", - "typeString": "contract Utils" - } - ], - "id": 2918, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1070:7:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" + "hexvalue": "4552525f414444524553535f49535f53454c46", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"ERR_ADDRESS_IS_SELF\"", + "value": "ERR_ADDRESS_IS_SELF" }, - "typeName": "address" - }, - "id": 2920, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1070:13:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "id": 3164, + "name": "Literal", + "src": "1085:21:24" } - }, - "src": "1058:25:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "argumentTypes": null, - "hexValue": "4552525f414444524553535f49535f53454c46", - "id": 2922, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1085:21:24", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_d6038575e9704a3ea491558fda267e4bebfff2c5aa46f54a3ab71ebfebd80861", - "typeString": "literal_string \"ERR_ADDRESS_IS_SELF\"" - }, - "value": "ERR_ADDRESS_IS_SELF" + ], + "id": 3165, + "name": "FunctionCall", + "src": "1050:57:24" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_d6038575e9704a3ea491558fda267e4bebfff2c5aa46f54a3ab71ebfebd80861", - "typeString": "literal_string \"ERR_ADDRESS_IS_SELF\"" - } - ], - "id": 2916, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 2945, - 2946 - ], - "referencedDeclaration": 2946, - "src": "1050:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2923, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1050:57:24", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2924, - "nodeType": "ExpressionStatement", - "src": "1050:57:24" - } - ] - }, - "documentation": null, - "id": 2926, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_notThis", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2914, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2913, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 2926, - "src": "1007:16:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2912, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1007:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1006:18:24" - }, - "returnParameters": { - "id": 2915, - "nodeType": "ParameterList", - "parameters": [], - "src": "1039:0:24" - }, - "scope": 2927, - "src": "989:126:24", - "stateMutability": "view", - "superFunction": null, - "visibility": "internal" + "id": 3166, + "name": "ExpressionStatement", + "src": "1050:57:24" + } + ], + "id": 3167, + "name": "Block", + "src": "1039:76:24" + } + ], + "id": 3168, + "name": "FunctionDefinition", + "src": "989:126:24" } ], - "scope": 2928, + "id": 3169, + "name": "ContractDefinition", "src": "75:1043:24" } ], + "id": 3170, + "name": "SourceUnit", "src": "0:1120:24" }, "compiler": { @@ -1941,8 +2030,8 @@ "version": "0.5.16+commit.9c3226ce.Emscripten.clang" }, "networks": {}, - "schemaVersion": "3.3.2", - "updatedAt": "2021-04-07T07:37:58.301Z", + "schemaVersion": "3.4.1", + "updatedAt": "2022-02-16T07:18:27.900Z", "devdoc": { "details": "Utilities & Common Modifiers", "methods": {} diff --git a/rbtcwrapperproxy/build/contracts/WRBTC.json b/rbtcwrapperproxy/build/contracts/WRBTC.json index 69f0758..890c81d 100644 --- a/rbtcwrapperproxy/build/contracts/WRBTC.json +++ b/rbtcwrapperproxy/build/contracts/WRBTC.json @@ -309,25 +309,25 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"src\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"guy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"dst\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"Deposit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"src\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"dst\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"src\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"Withdrawal\",\"type\":\"event\"},{\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"guy\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"deposit\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"dst\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"src\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"dst\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"withdraw\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/WRBTC.sol\":\"WRBTC\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/WRBTC.sol\":{\"keccak256\":\"0xf552b968be5908c81eefe8cab0bec5e4124459dd63210ac6de875382289b7e16\",\"urls\":[\"bzz-raw://a9f2cfcb92d2ca087071a0d12d67397b58ae104c556079d0edc8a0b2231bb2a2\",\"dweb:/ipfs/QmPmorYconW5Wm9MB5dLswQDYXDYKmNvcG4Xyb7mFZ8H1b\"]}},\"version\":1}", - "bytecode": "0x60806040526040518060400160405280600b81526020017f57726170706564204254430000000000000000000000000000000000000000008152506000908051906020019061004f9291906100ca565b506040518060400160405280600581526020017f57524254430000000000000000000000000000000000000000000000000000008152506001908051906020019061009b9291906100ca565b506012600260006101000a81548160ff021916908360ff1602179055503480156100c457600080fd5b5061016f565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061010b57805160ff1916838001178555610139565b82800160010185558215610139579182015b8281111561013857825182559160200191906001019061011d565b5b509050610146919061014a565b5090565b61016c91905b80821115610168576000816000905550600101610150565b5090565b90565b610cb18061017e6000396000f3fe60806040526004361061009c5760003560e01c8063313ce56711610064578063313ce567146102a257806370a08231146102d357806395d89b4114610338578063a9059cbb146103c8578063d0e30db01461043b578063dd62ed3e146104455761009c565b806306fdde03146100a6578063095ea7b31461013657806318160ddd146101a957806323b872dd146101d45780632e1a7d4d14610267575b6100a46104ca565b005b3480156100b257600080fd5b506100bb610567565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100fb5780820151818401526020810190506100e0565b50505050905090810190601f1680156101285780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561014257600080fd5b5061018f6004803603604081101561015957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610605565b604051808215151515815260200191505060405180910390f35b3480156101b557600080fd5b506101be6106f7565b6040518082815260200191505060405180910390f35b3480156101e057600080fd5b5061024d600480360360608110156101f757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506106ff565b604051808215151515815260200191505060405180910390f35b34801561027357600080fd5b506102a06004803603602081101561028a57600080fd5b8101908080359060200190929190505050610a48565b005b3480156102ae57600080fd5b506102b7610b79565b604051808260ff1660ff16815260200191505060405180910390f35b3480156102df57600080fd5b50610322600480360360208110156102f657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b8c565b6040518082815260200191505060405180910390f35b34801561034457600080fd5b5061034d610ba4565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561038d578082015181840152602081019050610372565b50505050905090810190601f1680156103ba5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103d457600080fd5b50610421600480360360408110156103eb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c42565b604051808215151515815260200191505060405180910390f35b6104436104ca565b005b34801561045157600080fd5b506104b46004803603604081101561046857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c57565b6040518082815260200191505060405180910390f35b34600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055503373ffffffffffffffffffffffffffffffffffffffff167fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c346040518082815260200191505060405180910390a2565b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105fd5780601f106105d2576101008083540402835291602001916105fd565b820191906000526020600020905b8154815290600101906020018083116105e057829003601f168201915b505050505081565b600081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b600047905090565b600081600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561074d57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561082557507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414155b1561093e5781600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156108b357600080fd5b81600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055505b81600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b80600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610a9457600080fd5b80600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015610b27573d6000803e3d6000fd5b503373ffffffffffffffffffffffffffffffffffffffff167f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b65826040518082815260200191505060405180910390a250565b600260009054906101000a900460ff1681565b60036020528060005260406000206000915090505481565b60018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b505050505081565b6000610c4f3384846106ff565b905092915050565b600460205281600052604060002060205280600052604060002060009150915050548156fea265627a7a723158200679204663409e9cbe250c6c26848e00e9ebde35d7d9a031d3cca8ae03a4aafc64736f6c63430005100032", - "deployedBytecode": "0x60806040526004361061009c5760003560e01c8063313ce56711610064578063313ce567146102a257806370a08231146102d357806395d89b4114610338578063a9059cbb146103c8578063d0e30db01461043b578063dd62ed3e146104455761009c565b806306fdde03146100a6578063095ea7b31461013657806318160ddd146101a957806323b872dd146101d45780632e1a7d4d14610267575b6100a46104ca565b005b3480156100b257600080fd5b506100bb610567565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100fb5780820151818401526020810190506100e0565b50505050905090810190601f1680156101285780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561014257600080fd5b5061018f6004803603604081101561015957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610605565b604051808215151515815260200191505060405180910390f35b3480156101b557600080fd5b506101be6106f7565b6040518082815260200191505060405180910390f35b3480156101e057600080fd5b5061024d600480360360608110156101f757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506106ff565b604051808215151515815260200191505060405180910390f35b34801561027357600080fd5b506102a06004803603602081101561028a57600080fd5b8101908080359060200190929190505050610a48565b005b3480156102ae57600080fd5b506102b7610b79565b604051808260ff1660ff16815260200191505060405180910390f35b3480156102df57600080fd5b50610322600480360360208110156102f657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b8c565b6040518082815260200191505060405180910390f35b34801561034457600080fd5b5061034d610ba4565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561038d578082015181840152602081019050610372565b50505050905090810190601f1680156103ba5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103d457600080fd5b50610421600480360360408110156103eb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c42565b604051808215151515815260200191505060405180910390f35b6104436104ca565b005b34801561045157600080fd5b506104b46004803603604081101561046857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c57565b6040518082815260200191505060405180910390f35b34600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055503373ffffffffffffffffffffffffffffffffffffffff167fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c346040518082815260200191505060405180910390a2565b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105fd5780601f106105d2576101008083540402835291602001916105fd565b820191906000526020600020905b8154815290600101906020018083116105e057829003601f168201915b505050505081565b600081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b600047905090565b600081600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561074d57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561082557507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414155b1561093e5781600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156108b357600080fd5b81600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055505b81600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b80600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610a9457600080fd5b80600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015610b27573d6000803e3d6000fd5b503373ffffffffffffffffffffffffffffffffffffffff167f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b65826040518082815260200191505060405180910390a250565b600260009054906101000a900460ff1681565b60036020528060005260406000206000915090505481565b60018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b505050505081565b6000610c4f3384846106ff565b905092915050565b600460205281600052604060002060205280600052604060002060009150915050548156fea265627a7a723158200679204663409e9cbe250c6c26848e00e9ebde35d7d9a031d3cca8ae03a4aafc64736f6c63430005100032", - "sourceMap": "721:1808:2:-;;;742:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;786:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;849:2;824:27;;;;;;;;;;;;;;;;;;;;721:1808;8:9:-1;5:2;;;30:1;27;20:12;5:2;721:1808:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;", - "deployedSourceMap": "721:1808:2:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1291:9;:7;:9::i;:::-;721:1808;742:38;;8:9:-1;5:2;;;30:1;27;20:12;5:2;742:38:2;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;742:38:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1757:177;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1757:177:2;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1757:177:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1656:95;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1656:95:2;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2067:460;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2067:460:2;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2067:460:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1447:203;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1447:203:2;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1447:203:2;;;;;;;;;;;;;;;;;:::i;:::-;;824:27;;8:9:-1;5:2;;;30:1;27;20:12;5:2;824:27:2;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1110:65;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1110:65:2;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1110:65:2;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;786:32;;8:9:-1;5:2;;;30:1;27;20:12;5:2;786:32:2;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;786:32:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1940:121;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1940:121:2;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1940:121:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1312:130;;;:::i;:::-;;1181:65;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1181:65:2;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1181:65:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1312:130;1381:9;1356;:21;1366:10;1356:21;;;;;;;;;;;;;;;;:34;;;;;;;;;;;1413:10;1405:30;;;1425:9;1405:30;;;;;;;;;;;;;;;;;;1312:130::o;742:38::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1757:177::-;1813:4;1858:3;1829:9;:21;1839:10;1829:21;;;;;;;;;;;;;;;:26;1851:3;1829:26;;;;;;;;;;;;;;;:32;;;;1897:3;1876:30;;1885:10;1876:30;;;1902:3;1876:30;;;;;;;;;;;;;;;;;;1923:4;1916:11;;1757:177;;;;:::o;1656:95::-;1700:4;1723:21;1716:28;;1656:95;:::o;2067:460::-;2157:4;2203:3;2185:9;:14;2195:3;2185:14;;;;;;;;;;;;;;;;:21;;2177:30;;;;;;2229:10;2222:17;;:3;:17;;;;:59;;;;;2278:2;2243:9;:14;2253:3;2243:14;;;;;;;;;;;;;;;:26;2258:10;2243:26;;;;;;;;;;;;;;;;:38;;2222:59;2218:179;;;2335:3;2305:9;:14;2315:3;2305:14;;;;;;;;;;;;;;;:26;2320:10;2305:26;;;;;;;;;;;;;;;;:33;;2297:42;;;;;;2383:3;2353:9;:14;2363:3;2353:14;;;;;;;;;;;;;;;:26;2368:10;2353:26;;;;;;;;;;;;;;;;:33;;;;;;;;;;;2218:179;2425:3;2407:9;:14;2417:3;2407:14;;;;;;;;;;;;;;;;:21;;;;;;;;;;;2456:3;2438:9;:14;2448:3;2438:14;;;;;;;;;;;;;;;;:21;;;;;;;;;;;2489:3;2475:23;;2484:3;2475:23;;;2494:3;2475:23;;;;;;;;;;;;;;;;;;2516:4;2509:11;;2067:460;;;;;:::o;1447:203::-;1525:3;1500:9;:21;1510:10;1500:21;;;;;;;;;;;;;;;;:28;;1492:37;;;;;;1564:3;1539:9;:21;1549:10;1539:21;;;;;;;;;;;;;;;;:28;;;;;;;;;;;1577:10;:19;;:24;1597:3;1577:24;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1577:24:2;1627:10;1616:27;;;1639:3;1616:27;;;;;;;;;;;;;;;;;;1447:203;:::o;824:27::-;;;;;;;;;;;;;:::o;1110:65::-;;;;;;;;;;;;;;;;;:::o;786:32::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1940:121::-;1997:4;2020:34;2033:10;2045:3;2050;2020:12;:34::i;:::-;2013:41;;1940:121;;;;:::o;1181:65::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o", + "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"src\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"guy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"dst\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"Deposit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"src\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"dst\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"src\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"Withdrawal\",\"type\":\"event\"},{\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"guy\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"deposit\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"dst\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"src\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"dst\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\"}],\"name\":\"withdraw\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/WRBTC.sol\":\"WRBTC\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/WRBTC.sol\":{\"keccak256\":\"0xf552b968be5908c81eefe8cab0bec5e4124459dd63210ac6de875382289b7e16\",\"urls\":[\"bzz-raw://a9f2cfcb92d2ca087071a0d12d67397b58ae104c556079d0edc8a0b2231bb2a2\",\"dweb:/ipfs/QmPmorYconW5Wm9MB5dLswQDYXDYKmNvcG4Xyb7mFZ8H1b\"]}},\"version\":1}", + "bytecode": "0x60806040526040518060400160405280600b81526020017f57726170706564204254430000000000000000000000000000000000000000008152506000908051906020019061004f9291906100ca565b506040518060400160405280600581526020017f57524254430000000000000000000000000000000000000000000000000000008152506001908051906020019061009b9291906100ca565b506012600260006101000a81548160ff021916908360ff1602179055503480156100c457600080fd5b5061016f565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061010b57805160ff1916838001178555610139565b82800160010185558215610139579182015b8281111561013857825182559160200191906001019061011d565b5b509050610146919061014a565b5090565b61016c91905b80821115610168576000816000905550600101610150565b5090565b90565b610cb18061017e6000396000f3fe60806040526004361061009c5760003560e01c8063313ce56711610064578063313ce567146102a257806370a08231146102d357806395d89b4114610338578063a9059cbb146103c8578063d0e30db01461043b578063dd62ed3e146104455761009c565b806306fdde03146100a6578063095ea7b31461013657806318160ddd146101a957806323b872dd146101d45780632e1a7d4d14610267575b6100a46104ca565b005b3480156100b257600080fd5b506100bb610567565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100fb5780820151818401526020810190506100e0565b50505050905090810190601f1680156101285780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561014257600080fd5b5061018f6004803603604081101561015957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610605565b604051808215151515815260200191505060405180910390f35b3480156101b557600080fd5b506101be6106f7565b6040518082815260200191505060405180910390f35b3480156101e057600080fd5b5061024d600480360360608110156101f757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506106ff565b604051808215151515815260200191505060405180910390f35b34801561027357600080fd5b506102a06004803603602081101561028a57600080fd5b8101908080359060200190929190505050610a48565b005b3480156102ae57600080fd5b506102b7610b79565b604051808260ff1660ff16815260200191505060405180910390f35b3480156102df57600080fd5b50610322600480360360208110156102f657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b8c565b6040518082815260200191505060405180910390f35b34801561034457600080fd5b5061034d610ba4565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561038d578082015181840152602081019050610372565b50505050905090810190601f1680156103ba5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103d457600080fd5b50610421600480360360408110156103eb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c42565b604051808215151515815260200191505060405180910390f35b6104436104ca565b005b34801561045157600080fd5b506104b46004803603604081101561046857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c57565b6040518082815260200191505060405180910390f35b34600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055503373ffffffffffffffffffffffffffffffffffffffff167fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c346040518082815260200191505060405180910390a2565b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105fd5780601f106105d2576101008083540402835291602001916105fd565b820191906000526020600020905b8154815290600101906020018083116105e057829003601f168201915b505050505081565b600081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b600047905090565b600081600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561074d57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561082557507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414155b1561093e5781600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156108b357600080fd5b81600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055505b81600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b80600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610a9457600080fd5b80600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015610b27573d6000803e3d6000fd5b503373ffffffffffffffffffffffffffffffffffffffff167f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b65826040518082815260200191505060405180910390a250565b600260009054906101000a900460ff1681565b60036020528060005260406000206000915090505481565b60018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b505050505081565b6000610c4f3384846106ff565b905092915050565b600460205281600052604060002060205280600052604060002060009150915050548156fea265627a7a723158200daa7bb0ca5e56a012f6a1aff174873aafb4a470544849272fe7330881afe65664736f6c63430005100032", + "deployedBytecode": "0x60806040526004361061009c5760003560e01c8063313ce56711610064578063313ce567146102a257806370a08231146102d357806395d89b4114610338578063a9059cbb146103c8578063d0e30db01461043b578063dd62ed3e146104455761009c565b806306fdde03146100a6578063095ea7b31461013657806318160ddd146101a957806323b872dd146101d45780632e1a7d4d14610267575b6100a46104ca565b005b3480156100b257600080fd5b506100bb610567565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100fb5780820151818401526020810190506100e0565b50505050905090810190601f1680156101285780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561014257600080fd5b5061018f6004803603604081101561015957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610605565b604051808215151515815260200191505060405180910390f35b3480156101b557600080fd5b506101be6106f7565b6040518082815260200191505060405180910390f35b3480156101e057600080fd5b5061024d600480360360608110156101f757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506106ff565b604051808215151515815260200191505060405180910390f35b34801561027357600080fd5b506102a06004803603602081101561028a57600080fd5b8101908080359060200190929190505050610a48565b005b3480156102ae57600080fd5b506102b7610b79565b604051808260ff1660ff16815260200191505060405180910390f35b3480156102df57600080fd5b50610322600480360360208110156102f657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b8c565b6040518082815260200191505060405180910390f35b34801561034457600080fd5b5061034d610ba4565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561038d578082015181840152602081019050610372565b50505050905090810190601f1680156103ba5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103d457600080fd5b50610421600480360360408110156103eb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c42565b604051808215151515815260200191505060405180910390f35b6104436104ca565b005b34801561045157600080fd5b506104b46004803603604081101561046857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c57565b6040518082815260200191505060405180910390f35b34600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055503373ffffffffffffffffffffffffffffffffffffffff167fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c346040518082815260200191505060405180910390a2565b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105fd5780601f106105d2576101008083540402835291602001916105fd565b820191906000526020600020905b8154815290600101906020018083116105e057829003601f168201915b505050505081565b600081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b600047905090565b600081600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561074d57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561082557507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414155b1561093e5781600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156108b357600080fd5b81600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055505b81600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b80600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610a9457600080fd5b80600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015610b27573d6000803e3d6000fd5b503373ffffffffffffffffffffffffffffffffffffffff167f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b65826040518082815260200191505060405180910390a250565b600260009054906101000a900460ff1681565b60036020528060005260406000206000915090505481565b60018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b505050505081565b6000610c4f3384846106ff565b905092915050565b600460205281600052604060002060205280600052604060002060009150915050548156fea265627a7a723158200daa7bb0ca5e56a012f6a1aff174873aafb4a470544849272fe7330881afe65664736f6c63430005100032", + "sourceMap": "721:1808:3:-;;;742:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;786:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;849:2;824:27;;;;;;;;;;;;;;;;;;;;721:1808;8:9:-1;5:2;;;30:1;27;20:12;5:2;721:1808:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;", + "deployedSourceMap": "721:1808:3:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1291:9;:7;:9::i;:::-;721:1808;742:38;;8:9:-1;5:2;;;30:1;27;20:12;5:2;742:38:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;742:38:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1757:177;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1757:177:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1757:177:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1656:95;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1656:95:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2067:460;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2067:460:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2067:460:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1447:203;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1447:203:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1447:203:3;;;;;;;;;;;;;;;;;:::i;:::-;;824:27;;8:9:-1;5:2;;;30:1;27;20:12;5:2;824:27:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1110:65;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1110:65:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1110:65:3;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;786:32;;8:9:-1;5:2;;;30:1;27;20:12;5:2;786:32:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;786:32:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1940:121;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1940:121:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1940:121:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1312:130;;;:::i;:::-;;1181:65;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1181:65:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1181:65:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1312:130;1381:9;1356;:21;1366:10;1356:21;;;;;;;;;;;;;;;;:34;;;;;;;;;;;1413:10;1405:30;;;1425:9;1405:30;;;;;;;;;;;;;;;;;;1312:130::o;742:38::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1757:177::-;1813:4;1858:3;1829:9;:21;1839:10;1829:21;;;;;;;;;;;;;;;:26;1851:3;1829:26;;;;;;;;;;;;;;;:32;;;;1897:3;1876:30;;1885:10;1876:30;;;1902:3;1876:30;;;;;;;;;;;;;;;;;;1923:4;1916:11;;1757:177;;;;:::o;1656:95::-;1700:4;1723:21;1716:28;;1656:95;:::o;2067:460::-;2157:4;2203:3;2185:9;:14;2195:3;2185:14;;;;;;;;;;;;;;;;:21;;2177:30;;;;;;2229:10;2222:17;;:3;:17;;;;:59;;;;;2278:2;2243:9;:14;2253:3;2243:14;;;;;;;;;;;;;;;:26;2258:10;2243:26;;;;;;;;;;;;;;;;:38;;2222:59;2218:179;;;2335:3;2305:9;:14;2315:3;2305:14;;;;;;;;;;;;;;;:26;2320:10;2305:26;;;;;;;;;;;;;;;;:33;;2297:42;;;;;;2383:3;2353:9;:14;2363:3;2353:14;;;;;;;;;;;;;;;:26;2368:10;2353:26;;;;;;;;;;;;;;;;:33;;;;;;;;;;;2218:179;2425:3;2407:9;:14;2417:3;2407:14;;;;;;;;;;;;;;;;:21;;;;;;;;;;;2456:3;2438:9;:14;2448:3;2438:14;;;;;;;;;;;;;;;;:21;;;;;;;;;;;2489:3;2475:23;;2484:3;2475:23;;;2494:3;2475:23;;;;;;;;;;;;;;;;;;2516:4;2509:11;;2067:460;;;;;:::o;1447:203::-;1525:3;1500:9;:21;1510:10;1500:21;;;;;;;;;;;;;;;;:28;;1492:37;;;;;;1564:3;1539:9;:21;1549:10;1539:21;;;;;;;;;;;;;;;;:28;;;;;;;;;;;1577:10;:19;;:24;1597:3;1577:24;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1577:24:3;1627:10;1616:27;;;1639:3;1616:27;;;;;;;;;;;;;;;;;;1447:203;:::o;824:27::-;;;;;;;;;;;;;:::o;1110:65::-;;;;;;;;;;;;;;;;;:::o;786:32::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1940:121::-;1997:4;2020:34;2033:10;2045:3;2050;2020:12;:34::i;:::-;2013:41;;1940:121;;;;:::o;1181:65::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o", "source": "// Copyright (C) 2015, 2016, 2017 Dapphub\n\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU General Public License for more details.\n\n// You should have received a copy of the GNU General Public License\n// along with this program. If not, see .\n\npragma solidity >=0.5.16 <0.6.0;\n\n\ncontract WRBTC {\n string public name = \"Wrapped BTC\";\n string public symbol = \"WRBTC\";\n uint8 public decimals = 18;\n\n event Approval(address indexed src, address indexed guy, uint wad);\n event Transfer(address indexed src, address indexed dst, uint wad);\n event Deposit(address indexed dst, uint wad);\n event Withdrawal(address indexed src, uint wad);\n\n mapping (address => uint) public balanceOf;\n mapping (address => mapping (address => uint)) public allowance;\n\n function() external payable {\n deposit();\n }\n function deposit() public payable {\n balanceOf[msg.sender] += msg.value;\n emit Deposit(msg.sender, msg.value);\n }\n function withdraw(uint wad) public {\n require(balanceOf[msg.sender] >= wad);\n balanceOf[msg.sender] -= wad;\n msg.sender.transfer(wad);\n emit Withdrawal(msg.sender, wad);\n }\n\n function totalSupply() public view returns (uint) {\n return address(this).balance;\n }\n\n function approve(address guy, uint wad) public returns (bool) {\n allowance[msg.sender][guy] = wad;\n emit Approval(msg.sender, guy, wad);\n return true;\n }\n\n function transfer(address dst, uint wad) public returns (bool) {\n return transferFrom(msg.sender, dst, wad);\n }\n\n function transferFrom(address src, address dst, uint wad)\n public\n returns (bool)\n {\n require(balanceOf[src] >= wad);\n\n if (src != msg.sender && allowance[src][msg.sender] != uint(-1)) {\n require(allowance[src][msg.sender] >= wad);\n allowance[src][msg.sender] -= wad;\n }\n\n balanceOf[src] -= wad;\n balanceOf[dst] += wad;\n\n emit Transfer(src, dst, wad);\n\n return true;\n }\n}\n\n\n/*\n GNU GENERAL PUBLIC LICENSE\n Version 3, 29 June 2007\n\n Copyright (C) 2007 Free Software Foundation, Inc. \n Everyone is permitted to copy and distribute verbatim copies\n of this license document, but changing it is not allowed.\n\n Preamble\n\n The GNU General Public License is a free, copyleft license for\nsoftware and other kinds of works.\n\n The licenses for most software and other practical works are designed\nto take away your freedom to share and change the works. By contrast,\nthe GNU General Public License is intended to guarantee your freedom to\nshare and change all versions of a program--to make sure it remains free\nsoftware for all its users. We, the Free Software Foundation, use the\nGNU General Public License for most of our software; it applies also to\nany other work released this way by its authors. You can apply it to\nyour programs, too.\n\n When we speak of free software, we are referring to freedom, not\nprice. Our General Public Licenses are designed to make sure that you\nhave the freedom to distribute copies of free software (and charge for\nthem if you wish), that you receive source code or can get it if you\nwant it, that you can change the software or use pieces of it in new\nfree programs, and that you know you can do these things.\n\n To protect your rights, we need to prevent others from denying you\nthese rights or asking you to surrender the rights. Therefore, you have\ncertain responsibilities if you distribute copies of the software, or if\nyou modify it: responsibilities to respect the freedom of others.\n\n For example, if you distribute copies of such a program, whether\ngratis or for a fee, you must pass on to the recipients the same\nfreedoms that you received. You must make sure that they, too, receive\nor can get the source code. And you must show them these terms so they\nknow their rights.\n\n Developers that use the GNU GPL protect your rights with two steps:\n(1) assert copyright on the software, and (2) offer you this License\ngiving you legal permission to copy, distribute and/or modify it.\n\n For the developers' and authors' protection, the GPL clearly explains\nthat there is no warranty for this free software. For both users' and\nauthors' sake, the GPL requires that modified versions be marked as\nchanged, so that their problems will not be attributed erroneously to\nauthors of previous versions.\n\n Some devices are designed to deny users access to install or run\nmodified versions of the software inside them, although the manufacturer\ncan do so. This is fundamentally incompatible with the aim of\nprotecting users' freedom to change the software. The systematic\npattern of such abuse occurs in the area of products for individuals to\nuse, which is precisely where it is most unacceptable. Therefore, we\nhave designed this version of the GPL to prohibit the practice for those\nproducts. If such problems arise substantially in other domains, we\nstand ready to extend this provision to those domains in future versions\nof the GPL, as needed to protect the freedom of users.\n\n Finally, every program is threatened constantly by software patents.\nStates should not allow patents to restrict development and use of\nsoftware on general-purpose computers, but in those that do, we wish to\navoid the special danger that patents applied to a free program could\nmake it effectively proprietary. To prevent this, the GPL assures that\npatents cannot be used to render the program non-free.\n\n The precise terms and conditions for copying, distribution and\nmodification follow.\n\n TERMS AND CONDITIONS\n\n 0. Definitions.\n\n \"This License\" refers to version 3 of the GNU General Public License.\n\n \"Copyright\" also means copyright-like laws that apply to other kinds of\nworks, such as semiconductor masks.\n\n \"The Program\" refers to any copyrightable work licensed under this\nLicense. Each licensee is addressed as \"you\". \"Licensees\" and\n\"recipients\" may be individuals or organizations.\n\n To \"modify\" a work means to copy from or adapt all or part of the work\nin a fashion requiring copyright permission, other than the making of an\nexact copy. The resulting work is called a \"modified version\" of the\nearlier work or a work \"based on\" the earlier work.\n\n A \"covered work\" means either the unmodified Program or a work based\non the Program.\n\n To \"propagate\" a work means to do anything with it that, without\npermission, would make you directly or secondarily liable for\ninfringement under applicable copyright law, except executing it on a\ncomputer or modifying a private copy. Propagation includes copying,\ndistribution (with or without modification), making available to the\npublic, and in some countries other activities as well.\n\n To \"convey\" a work means any kind of propagation that enables other\nparties to make or receive copies. Mere interaction with a user through\na computer network, with no transfer of a copy, is not conveying.\n\n An interactive user interface displays \"Appropriate Legal Notices\"\nto the extent that it includes a convenient and prominently visible\nfeature that (1) displays an appropriate copyright notice, and (2)\ntells the user that there is no warranty for the work (except to the\nextent that warranties are provided), that licensees may convey the\nwork under this License, and how to view a copy of this License. If\nthe interface presents a list of user commands or options, such as a\nmenu, a prominent item in the list meets this criterion.\n\n 1. Source Code.\n\n The \"source code\" for a work means the preferred form of the work\nfor making modifications to it. \"Object code\" means any non-source\nform of a work.\n\n A \"Standard Interface\" means an interface that either is an official\nstandard defined by a recognized standards body, or, in the case of\ninterfaces specified for a particular programming language, one that\nis widely used among developers working in that language.\n\n The \"System Libraries\" of an executable work include anything, other\nthan the work as a whole, that (a) is included in the normal form of\npackaging a Major Component, but which is not part of that Major\nComponent, and (b) serves only to enable use of the work with that\nMajor Component, or to implement a Standard Interface for which an\nimplementation is available to the public in source code form. A\n\"Major Component\", in this context, means a major essential component\n(kernel, window system, and so on) of the specific operating system\n(if any) on which the executable work runs, or a compiler used to\nproduce the work, or an object code interpreter used to run it.\n\n The \"Corresponding Source\" for a work in object code form means all\nthe source code needed to generate, install, and (for an executable\nwork) run the object code and to modify the work, including scripts to\ncontrol those activities. However, it does not include the work's\nSystem Libraries, or general-purpose tools or generally available free\nprograms which are used unmodified in performing those activities but\nwhich are not part of the work. For example, Corresponding Source\nincludes interface definition files associated with source files for\nthe work, and the source code for shared libraries and dynamically\nlinked subprograms that the work is specifically designed to require,\nsuch as by intimate data communication or control flow between those\nsubprograms and other parts of the work.\n\n The Corresponding Source need not include anything that users\ncan regenerate automatically from other parts of the Corresponding\nSource.\n\n The Corresponding Source for a work in source code form is that\nsame work.\n\n 2. Basic Permissions.\n\n All rights granted under this License are granted for the term of\ncopyright on the Program, and are irrevocable provided the stated\nconditions are met. This License explicitly affirms your unlimited\npermission to run the unmodified Program. The output from running a\ncovered work is covered by this License only if the output, given its\ncontent, constitutes a covered work. This License acknowledges your\nrights of fair use or other equivalent, as provided by copyright law.\n\n You may make, run and propagate covered works that you do not\nconvey, without conditions so long as your license otherwise remains\nin force. You may convey covered works to others for the sole purpose\nof having them make modifications exclusively for you, or provide you\nwith facilities for running those works, provided that you comply with\nthe terms of this License in conveying all material for which you do\nnot control copyright. Those thus making or running the covered works\nfor you must do so exclusively on your behalf, under your direction\nand control, on terms that prohibit them from making any copies of\nyour copyrighted material outside their relationship with you.\n\n Conveying under any other circumstances is permitted solely under\nthe conditions stated below. Sublicensing is not allowed; section 10\nmakes it unnecessary.\n\n 3. Protecting Users' Legal Rights From Anti-Circumvention Law.\n\n No covered work shall be deemed part of an effective technological\nmeasure under any applicable law fulfilling obligations under article\n11 of the WIPO copyright treaty adopted on 20 December 1996, or\nsimilar laws prohibiting or restricting circumvention of such\nmeasures.\n\n When you convey a covered work, you waive any legal power to forbid\ncircumvention of technological measures to the extent such circumvention\nis effected by exercising rights under this License with respect to\nthe covered work, and you disclaim any intention to limit operation or\nmodification of the work as a means of enforcing, against the work's\nusers, your or third parties' legal rights to forbid circumvention of\ntechnological measures.\n\n 4. Conveying Verbatim Copies.\n\n You may convey verbatim copies of the Program's source code as you\nreceive it, in any medium, provided that you conspicuously and\nappropriately publish on each copy an appropriate copyright notice;\nkeep intact all notices stating that this License and any\nnon-permissive terms added in accord with section 7 apply to the code;\nkeep intact all notices of the absence of any warranty; and give all\nrecipients a copy of this License along with the Program.\n\n You may charge any price or no price for each copy that you convey,\nand you may offer support or warranty protection for a fee.\n\n 5. Conveying Modified Source Versions.\n\n You may convey a work based on the Program, or the modifications to\nproduce it from the Program, in the form of source code under the\nterms of section 4, provided that you also meet all of these conditions:\n\n a) The work must carry prominent notices stating that you modified\n it, and giving a relevant date.\n\n b) The work must carry prominent notices stating that it is\n released under this License and any conditions added under section\n 7. This requirement modifies the requirement in section 4 to\n \"keep intact all notices\".\n\n c) You must license the entire work, as a whole, under this\n License to anyone who comes into possession of a copy. This\n License will therefore apply, along with any applicable section 7\n additional terms, to the whole of the work, and all its parts,\n regardless of how they are packaged. This License gives no\n permission to license the work in any other way, but it does not\n invalidate such permission if you have separately received it.\n\n d) If the work has interactive user interfaces, each must display\n Appropriate Legal Notices; however, if the Program has interactive\n interfaces that do not display Appropriate Legal Notices, your\n work need not make them do so.\n\n A compilation of a covered work with other separate and independent\nworks, which are not by their nature extensions of the covered work,\nand which are not combined with it such as to form a larger program,\nin or on a volume of a storage or distribution medium, is called an\n\"aggregate\" if the compilation and its resulting copyright are not\nused to limit the access or legal rights of the compilation's users\nbeyond what the individual works permit. Inclusion of a covered work\nin an aggregate does not cause this License to apply to the other\nparts of the aggregate.\n\n 6. Conveying Non-Source Forms.\n\n You may convey a covered work in object code form under the terms\nof sections 4 and 5, provided that you also convey the\nmachine-readable Corresponding Source under the terms of this License,\nin one of these ways:\n\n a) Convey the object code in, or embodied in, a physical product\n (including a physical distribution medium), accompanied by the\n Corresponding Source fixed on a durable physical medium\n customarily used for software interchange.\n\n b) Convey the object code in, or embodied in, a physical product\n (including a physical distribution medium), accompanied by a\n written offer, valid for at least three years and valid for as\n long as you offer spare parts or customer support for that product\n model, to give anyone who possesses the object code either (1) a\n copy of the Corresponding Source for all the software in the\n product that is covered by this License, on a durable physical\n medium customarily used for software interchange, for a price no\n more than your reasonable cost of physically performing this\n conveying of source, or (2) access to copy the\n Corresponding Source from a network server at no charge.\n\n c) Convey individual copies of the object code with a copy of the\n written offer to provide the Corresponding Source. This\n alternative is allowed only occasionally and noncommercially, and\n only if you received the object code with such an offer, in accord\n with subsection 6b.\n\n d) Convey the object code by offering access from a designated\n place (gratis or for a charge), and offer equivalent access to the\n Corresponding Source in the same way through the same place at no\n further charge. You need not require recipients to copy the\n Corresponding Source along with the object code. If the place to\n copy the object code is a network server, the Corresponding Source\n may be on a different server (operated by you or a third party)\n that supports equivalent copying facilities, provided you maintain\n clear directions next to the object code saying where to find the\n Corresponding Source. Regardless of what server hosts the\n Corresponding Source, you remain obligated to ensure that it is\n available for as long as needed to satisfy these requirements.\n\n e) Convey the object code using peer-to-peer transmission, provided\n you inform other peers where the object code and Corresponding\n Source of the work are being offered to the general public at no\n charge under subsection 6d.\n\n A separable portion of the object code, whose source code is excluded\nfrom the Corresponding Source as a System Library, need not be\nincluded in conveying the object code work.\n\n A \"User Product\" is either (1) a \"consumer product\", which means any\ntangible personal property which is normally used for personal, family,\nor household purposes, or (2) anything designed or sold for incorporation\ninto a dwelling. In determining whether a product is a consumer product,\ndoubtful cases shall be resolved in favor of coverage. For a particular\nproduct received by a particular user, \"normally used\" refers to a\ntypical or common use of that class of product, regardless of the status\nof the particular user or of the way in which the particular user\nactually uses, or expects or is expected to use, the product. A product\nis a consumer product regardless of whether the product has substantial\ncommercial, industrial or non-consumer uses, unless such uses represent\nthe only significant mode of use of the product.\n\n \"Installation Information\" for a User Product means any methods,\nprocedures, authorization keys, or other information required to install\nand execute modified versions of a covered work in that User Product from\na modified version of its Corresponding Source. The information must\nsuffice to ensure that the continued functioning of the modified object\ncode is in no case prevented or interfered with solely because\nmodification has been made.\n\n If you convey an object code work under this section in, or with, or\nspecifically for use in, a User Product, and the conveying occurs as\npart of a transaction in which the right of possession and use of the\nUser Product is transferred to the recipient in perpetuity or for a\nfixed term (regardless of how the transaction is characterized), the\nCorresponding Source conveyed under this section must be accompanied\nby the Installation Information. But this requirement does not apply\nif neither you nor any third party retains the ability to install\nmodified object code on the User Product (for example, the work has\nbeen installed in ROM).\n\n The requirement to provide Installation Information does not include a\nrequirement to continue to provide support service, warranty, or updates\nfor a work that has been modified or installed by the recipient, or for\nthe User Product in which it has been modified or installed. Access to a\nnetwork may be denied when the modification itself materially and\nadversely affects the operation of the network or violates the rules and\nprotocols for communication across the network.\n\n Corresponding Source conveyed, and Installation Information provided,\nin accord with this section must be in a format that is publicly\ndocumented (and with an implementation available to the public in\nsource code form), and must require no special password or key for\nunpacking, reading or copying.\n\n 7. Additional Terms.\n\n \"Additional permissions\" are terms that supplement the terms of this\nLicense by making exceptions from one or more of its conditions.\nAdditional permissions that are applicable to the entire Program shall\nbe treated as though they were included in this License, to the extent\nthat they are valid under applicable law. If additional permissions\napply only to part of the Program, that part may be used separately\nunder those permissions, but the entire Program remains governed by\nthis License without regard to the additional permissions.\n\n When you convey a copy of a covered work, you may at your option\nremove any additional permissions from that copy, or from any part of\nit. (Additional permissions may be written to require their own\nremoval in certain cases when you modify the work.) You may place\nadditional permissions on material, added by you to a covered work,\nfor which you have or can give appropriate copyright permission.\n\n Notwithstanding any other provision of this License, for material you\nadd to a covered work, you may (if authorized by the copyright holders of\nthat material) supplement the terms of this License with terms:\n\n a) Disclaiming warranty or limiting liability differently from the\n terms of sections 15 and 16 of this License; or\n\n b) Requiring preservation of specified reasonable legal notices or\n author attributions in that material or in the Appropriate Legal\n Notices displayed by works containing it; or\n\n c) Prohibiting misrepresentation of the origin of that material, or\n requiring that modified versions of such material be marked in\n reasonable ways as different from the original version; or\n\n d) Limiting the use for publicity purposes of names of licensors or\n authors of the material; or\n\n e) Declining to grant rights under trademark law for use of some\n trade names, trademarks, or service marks; or\n\n f) Requiring indemnification of licensors and authors of that\n material by anyone who conveys the material (or modified versions of\n it) with contractual assumptions of liability to the recipient, for\n any liability that these contractual assumptions directly impose on\n those licensors and authors.\n\n All other non-permissive additional terms are considered \"further\nrestrictions\" within the meaning of section 10. If the Program as you\nreceived it, or any part of it, contains a notice stating that it is\ngoverned by this License along with a term that is a further\nrestriction, you may remove that term. If a license document contains\na further restriction but permits relicensing or conveying under this\nLicense, you may add to a covered work material governed by the terms\nof that license document, provided that the further restriction does\nnot survive such relicensing or conveying.\n\n If you add terms to a covered work in accord with this section, you\nmust place, in the relevant source files, a statement of the\nadditional terms that apply to those files, or a notice indicating\nwhere to find the applicable terms.\n\n Additional terms, permissive or non-permissive, may be stated in the\nform of a separately written license, or stated as exceptions;\nthe above requirements apply either way.\n\n 8. Termination.\n\n You may not propagate or modify a covered work except as expressly\nprovided under this License. Any attempt otherwise to propagate or\nmodify it is void, and will automatically terminate your rights under\nthis License (including any patent licenses granted under the third\nparagraph of section 11).\n\n However, if you cease all violation of this License, then your\nlicense from a particular copyright holder is reinstated (a)\nprovisionally, unless and until the copyright holder explicitly and\nfinally terminates your license, and (b) permanently, if the copyright\nholder fails to notify you of the violation by some reasonable means\nprior to 60 days after the cessation.\n\n Moreover, your license from a particular copyright holder is\nreinstated permanently if the copyright holder notifies you of the\nviolation by some reasonable means, this is the first time you have\nreceived notice of violation of this License (for any work) from that\ncopyright holder, and you cure the violation prior to 30 days after\nyour receipt of the notice.\n\n Termination of your rights under this section does not terminate the\nlicenses of parties who have received copies or rights from you under\nthis License. If your rights have been terminated and not permanently\nreinstated, you do not qualify to receive new licenses for the same\nmaterial under section 10.\n\n 9. Acceptance Not Required for Having Copies.\n\n You are not required to accept this License in order to receive or\nrun a copy of the Program. Ancillary propagation of a covered work\noccurring solely as a consequence of using peer-to-peer transmission\nto receive a copy likewise does not require acceptance. However,\nnothing other than this License grants you permission to propagate or\nmodify any covered work. These actions infringe copyright if you do\nnot accept this License. Therefore, by modifying or propagating a\ncovered work, you indicate your acceptance of this License to do so.\n\n 10. Automatic Licensing of Downstream Recipients.\n\n Each time you convey a covered work, the recipient automatically\nreceives a license from the original licensors, to run, modify and\npropagate that work, subject to this License. You are not responsible\nfor enforcing compliance by third parties with this License.\n\n An \"entity transaction\" is a transaction transferring control of an\norganization, or substantially all assets of one, or subdividing an\norganization, or merging organizations. If propagation of a covered\nwork results from an entity transaction, each party to that\ntransaction who receives a copy of the work also receives whatever\nlicenses to the work the party's predecessor in interest had or could\ngive under the previous paragraph, plus a right to possession of the\nCorresponding Source of the work from the predecessor in interest, if\nthe predecessor has it or can get it with reasonable efforts.\n\n You may not impose any further restrictions on the exercise of the\nrights granted or affirmed under this License. For example, you may\nnot impose a license fee, royalty, or other charge for exercise of\nrights granted under this License, and you may not initiate litigation\n(including a cross-claim or counterclaim in a lawsuit) alleging that\nany patent claim is infringed by making, using, selling, offering for\nsale, or importing the Program or any portion of it.\n\n 11. Patents.\n\n A \"contributor\" is a copyright holder who authorizes use under this\nLicense of the Program or a work on which the Program is based. The\nwork thus licensed is called the contributor's \"contributor version\".\n\n A contributor's \"essential patent claims\" are all patent claims\nowned or controlled by the contributor, whether already acquired or\nhereafter acquired, that would be infringed by some manner, permitted\nby this License, of making, using, or selling its contributor version,\nbut do not include claims that would be infringed only as a\nconsequence of further modification of the contributor version. For\npurposes of this definition, \"control\" includes the right to grant\npatent sublicenses in a manner consistent with the requirements of\nthis License.\n\n Each contributor grants you a non-exclusive, worldwide, royalty-free\npatent license under the contributor's essential patent claims, to\nmake, use, sell, offer for sale, import and otherwise run, modify and\npropagate the contents of its contributor version.\n\n In the following three paragraphs, a \"patent license\" is any express\nagreement or commitment, however denominated, not to enforce a patent\n(such as an express permission to practice a patent or covenant not to\nsue for patent infringement). To \"grant\" such a patent license to a\nparty means to make such an agreement or commitment not to enforce a\npatent against the party.\n\n If you convey a covered work, knowingly relying on a patent license,\nand the Corresponding Source of the work is not available for anyone\nto copy, free of charge and under the terms of this License, through a\npublicly available network server or other readily accessible means,\nthen you must either (1) cause the Corresponding Source to be so\navailable, or (2) arrange to deprive yourself of the benefit of the\npatent license for this particular work, or (3) arrange, in a manner\nconsistent with the requirements of this License, to extend the patent\nlicense to downstream recipients. \"Knowingly relying\" means you have\nactual knowledge that, but for the patent license, your conveying the\ncovered work in a country, or your recipient's use of the covered work\nin a country, would infringe one or more identifiable patents in that\ncountry that you have reason to believe are valid.\n\n If, pursuant to or in connection with a single transaction or\narrangement, you convey, or propagate by procuring conveyance of, a\ncovered work, and grant a patent license to some of the parties\nreceiving the covered work authorizing them to use, propagate, modify\nor convey a specific copy of the covered work, then the patent license\nyou grant is automatically extended to all recipients of the covered\nwork and works based on it.\n\n A patent license is \"discriminatory\" if it does not include within\nthe scope of its coverage, prohibits the exercise of, or is\nconditioned on the non-exercise of one or more of the rights that are\nspecifically granted under this License. You may not convey a covered\nwork if you are a party to an arrangement with a third party that is\nin the business of distributing software, under which you make payment\nto the third party based on the extent of your activity of conveying\nthe work, and under which the third party grants, to any of the\nparties who would receive the covered work from you, a discriminatory\npatent license (a) in connection with copies of the covered work\nconveyed by you (or copies made from those copies), or (b) primarily\nfor and in connection with specific products or compilations that\ncontain the covered work, unless you entered into that arrangement,\nor that patent license was granted, prior to 28 March 2007.\n\n Nothing in this License shall be construed as excluding or limiting\nany implied license or other defenses to infringement that may\notherwise be available to you under applicable patent law.\n\n 12. No Surrender of Others' Freedom.\n\n If conditions are imposed on you (whether by court order, agreement or\notherwise) that contradict the conditions of this License, they do not\nexcuse you from the conditions of this License. If you cannot convey a\ncovered work so as to satisfy simultaneously your obligations under this\nLicense and any other pertinent obligations, then as a consequence you may\nnot convey it at all. For example, if you agree to terms that obligate you\nto collect a royalty for further conveying from those to whom you convey\nthe Program, the only way you could satisfy both those terms and this\nLicense would be to refrain entirely from conveying the Program.\n\n 13. Use with the GNU Affero General Public License.\n\n Notwithstanding any other provision of this License, you have\npermission to link or combine any covered work with a work licensed\nunder version 3 of the GNU Affero General Public License into a single\ncombined work, and to convey the resulting work. The terms of this\nLicense will continue to apply to the part which is the covered work,\nbut the special requirements of the GNU Affero General Public License,\nsection 13, concerning interaction through a network will apply to the\ncombination as such.\n\n 14. Revised Versions of this License.\n\n The Free Software Foundation may publish revised and/or new versions of\nthe GNU General Public License from time to time. Such new versions will\nbe similar in spirit to the present version, but may differ in detail to\naddress new problems or concerns.\n\n Each version is given a distinguishing version number. If the\nProgram specifies that a certain numbered version of the GNU General\nPublic License \"or any later version\" applies to it, you have the\noption of following the terms and conditions either of that numbered\nversion or of any later version published by the Free Software\nFoundation. If the Program does not specify a version number of the\nGNU General Public License, you may choose any version ever published\nby the Free Software Foundation.\n\n If the Program specifies that a proxy can decide which future\nversions of the GNU General Public License can be used, that proxy's\npublic statement of acceptance of a version permanently authorizes you\nto choose that version for the Program.\n\n Later license versions may give you additional or different\npermissions. However, no additional obligations are imposed on any\nauthor or copyright holder as a result of your choosing to follow a\nlater version.\n\n 15. Disclaimer of Warranty.\n\n THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY\nAPPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT\nHOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY\nOF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,\nTHE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\nPURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM\nIS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF\nALL NECESSARY SERVICING, REPAIR OR CORRECTION.\n\n 16. Limitation of Liability.\n\n IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING\nWILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS\nTHE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY\nGENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE\nUSE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF\nDATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD\nPARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),\nEVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF\nSUCH DAMAGES.\n\n 17. Interpretation of Sections 15 and 16.\n\n If the disclaimer of warranty and limitation of liability provided\nabove cannot be given local legal effect according to their terms,\nreviewing courts shall apply local law that most closely approximates\nan absolute waiver of all civil liability in connection with the\nProgram, unless a warranty or assumption of liability accompanies a\ncopy of the Program in return for a fee.\n\n END OF TERMS AND CONDITIONS\n\n How to Apply These Terms to Your New Programs\n\n If you develop a new program, and you want it to be of the greatest\npossible use to the public, the best way to achieve this is to make it\nfree software which everyone can redistribute and change under these terms.\n\n To do so, attach the following notices to the program. It is safest\nto attach them to the start of each source file to most effectively\nstate the exclusion of warranty; and each file should have at least\nthe \"copyright\" line and a pointer to where the full notice is found.\n\n \n Copyright (C) \n\n This program is free software: you can redistribute it and/or modify\n it under the terms of the GNU General Public License as published by\n the Free Software Foundation, either version 3 of the License, or\n (at your option) any later version.\n\n This program is distributed in the hope that it will be useful,\n but WITHOUT ANY WARRANTY; without even the implied warranty of\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n GNU General Public License for more details.\n\n You should have received a copy of the GNU General Public License\n along with this program. If not, see .\n\nAlso add information on how to contact you by electronic and paper mail.\n\n If the program does terminal interaction, make it output a short\nnotice like this when it starts in an interactive mode:\n\n Copyright (C) \n This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.\n This is free software, and you are welcome to redistribute it\n under certain conditions; type `show c' for details.\n\nThe hypothetical commands `show w' and `show c' should show the appropriate\nparts of the General Public License. Of course, your program's commands\nmight be different; for a GUI interface, you would use an \"about box\".\n\n You should also get your employer (if you work as a programmer) or school,\nif any, to sign a \"copyright disclaimer\" for the program, if necessary.\nFor more information on this, and how to apply and follow the GNU GPL, see\n.\n\n The GNU General Public License does not permit incorporating your program\ninto proprietary programs. If your program is a subroutine library, you\nmay consider it more useful to permit linking proprietary applications with\nthe library. If this is what you want to do, use the GNU Lesser General\nPublic License instead of this License. But first, please read\n.\n\n*/\n", - "sourcePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/WRBTC.sol", + "sourcePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/WRBTC.sol", "ast": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/WRBTC.sol", + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/WRBTC.sol", "exportedSymbols": { "WRBTC": [ - 1197 + 1771 ] }, - "id": 1198, + "id": 1772, "nodeType": "SourceUnit", "nodes": [ { - "id": 953, + "id": 1527, "literals": [ "solidity", ">=", @@ -338,7 +338,7 @@ ".0" ], "nodeType": "PragmaDirective", - "src": "686:32:2" + "src": "686:32:3" }, { "baseContracts": [], @@ -346,20 +346,20 @@ "contractKind": "contract", "documentation": null, "fullyImplemented": true, - "id": 1197, + "id": 1771, "linearizedBaseContracts": [ - 1197 + 1771 ], "name": "WRBTC", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 956, + "id": 1530, "name": "name", "nodeType": "VariableDeclaration", - "scope": 1197, - "src": "742:38:2", + "scope": 1771, + "src": "742:38:3", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -367,10 +367,10 @@ "typeString": "string" }, "typeName": { - "id": 954, + "id": 1528, "name": "string", "nodeType": "ElementaryTypeName", - "src": "742:6:2", + "src": "742:6:3", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -379,14 +379,14 @@ "value": { "argumentTypes": null, "hexValue": "5772617070656420425443", - "id": 955, + "id": 1529, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "767:13:2", + "src": "767:13:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_2ef08214ff447791a5e9afb7318f8e3059fd5f496df6b60a73eead50d2471ef1", @@ -398,11 +398,11 @@ }, { "constant": false, - "id": 959, + "id": 1533, "name": "symbol", "nodeType": "VariableDeclaration", - "scope": 1197, - "src": "786:32:2", + "scope": 1771, + "src": "786:32:3", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -410,10 +410,10 @@ "typeString": "string" }, "typeName": { - "id": 957, + "id": 1531, "name": "string", "nodeType": "ElementaryTypeName", - "src": "786:6:2", + "src": "786:6:3", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -422,14 +422,14 @@ "value": { "argumentTypes": null, "hexValue": "5752425443", - "id": 958, + "id": 1532, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "811:7:2", + "src": "811:7:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_6b397d8935abccafa78f3e5148e735827501c342a87ecd5d9c3dfa8da20d8cb4", @@ -441,11 +441,11 @@ }, { "constant": false, - "id": 962, + "id": 1536, "name": "decimals", "nodeType": "VariableDeclaration", - "scope": 1197, - "src": "824:27:2", + "scope": 1771, + "src": "824:27:3", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -453,10 +453,10 @@ "typeString": "uint8" }, "typeName": { - "id": 960, + "id": 1534, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "824:5:2", + "src": "824:5:3", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -465,14 +465,14 @@ "value": { "argumentTypes": null, "hexValue": "3138", - "id": 961, + "id": 1535, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "849:2:2", + "src": "849:2:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_18_by_1", @@ -485,21 +485,21 @@ { "anonymous": false, "documentation": null, - "id": 970, + "id": 1544, "name": "Approval", "nodeType": "EventDefinition", "parameters": { - "id": 969, + "id": 1543, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 964, + "id": 1538, "indexed": true, "name": "src", "nodeType": "VariableDeclaration", - "scope": 970, - "src": "874:19:2", + "scope": 1544, + "src": "874:19:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -507,10 +507,10 @@ "typeString": "address" }, "typeName": { - "id": 963, + "id": 1537, "name": "address", "nodeType": "ElementaryTypeName", - "src": "874:7:2", + "src": "874:7:3", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -522,12 +522,12 @@ }, { "constant": false, - "id": 966, + "id": 1540, "indexed": true, "name": "guy", "nodeType": "VariableDeclaration", - "scope": 970, - "src": "895:19:2", + "scope": 1544, + "src": "895:19:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -535,10 +535,10 @@ "typeString": "address" }, "typeName": { - "id": 965, + "id": 1539, "name": "address", "nodeType": "ElementaryTypeName", - "src": "895:7:2", + "src": "895:7:3", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -550,12 +550,12 @@ }, { "constant": false, - "id": 968, + "id": 1542, "indexed": false, "name": "wad", "nodeType": "VariableDeclaration", - "scope": 970, - "src": "916:8:2", + "scope": 1544, + "src": "916:8:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -563,10 +563,10 @@ "typeString": "uint256" }, "typeName": { - "id": 967, + "id": 1541, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "916:4:2", + "src": "916:4:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -576,28 +576,28 @@ "visibility": "internal" } ], - "src": "873:52:2" + "src": "873:52:3" }, - "src": "858:68:2" + "src": "858:68:3" }, { "anonymous": false, "documentation": null, - "id": 978, + "id": 1552, "name": "Transfer", "nodeType": "EventDefinition", "parameters": { - "id": 977, + "id": 1551, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 972, + "id": 1546, "indexed": true, "name": "src", "nodeType": "VariableDeclaration", - "scope": 978, - "src": "947:19:2", + "scope": 1552, + "src": "947:19:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -605,10 +605,10 @@ "typeString": "address" }, "typeName": { - "id": 971, + "id": 1545, "name": "address", "nodeType": "ElementaryTypeName", - "src": "947:7:2", + "src": "947:7:3", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -620,12 +620,12 @@ }, { "constant": false, - "id": 974, + "id": 1548, "indexed": true, "name": "dst", "nodeType": "VariableDeclaration", - "scope": 978, - "src": "968:19:2", + "scope": 1552, + "src": "968:19:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -633,10 +633,10 @@ "typeString": "address" }, "typeName": { - "id": 973, + "id": 1547, "name": "address", "nodeType": "ElementaryTypeName", - "src": "968:7:2", + "src": "968:7:3", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -648,12 +648,12 @@ }, { "constant": false, - "id": 976, + "id": 1550, "indexed": false, "name": "wad", "nodeType": "VariableDeclaration", - "scope": 978, - "src": "989:8:2", + "scope": 1552, + "src": "989:8:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -661,10 +661,10 @@ "typeString": "uint256" }, "typeName": { - "id": 975, + "id": 1549, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "989:4:2", + "src": "989:4:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -674,28 +674,28 @@ "visibility": "internal" } ], - "src": "946:52:2" + "src": "946:52:3" }, - "src": "931:68:2" + "src": "931:68:3" }, { "anonymous": false, "documentation": null, - "id": 984, + "id": 1558, "name": "Deposit", "nodeType": "EventDefinition", "parameters": { - "id": 983, + "id": 1557, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 980, + "id": 1554, "indexed": true, "name": "dst", "nodeType": "VariableDeclaration", - "scope": 984, - "src": "1019:19:2", + "scope": 1558, + "src": "1019:19:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -703,10 +703,10 @@ "typeString": "address" }, "typeName": { - "id": 979, + "id": 1553, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1019:7:2", + "src": "1019:7:3", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -718,12 +718,12 @@ }, { "constant": false, - "id": 982, + "id": 1556, "indexed": false, "name": "wad", "nodeType": "VariableDeclaration", - "scope": 984, - "src": "1040:8:2", + "scope": 1558, + "src": "1040:8:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -731,10 +731,10 @@ "typeString": "uint256" }, "typeName": { - "id": 981, + "id": 1555, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1040:4:2", + "src": "1040:4:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -744,28 +744,28 @@ "visibility": "internal" } ], - "src": "1018:31:2" + "src": "1018:31:3" }, - "src": "1004:46:2" + "src": "1004:46:3" }, { "anonymous": false, "documentation": null, - "id": 990, + "id": 1564, "name": "Withdrawal", "nodeType": "EventDefinition", "parameters": { - "id": 989, + "id": 1563, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 986, + "id": 1560, "indexed": true, "name": "src", "nodeType": "VariableDeclaration", - "scope": 990, - "src": "1073:19:2", + "scope": 1564, + "src": "1073:19:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -773,10 +773,10 @@ "typeString": "address" }, "typeName": { - "id": 985, + "id": 1559, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1073:7:2", + "src": "1073:7:3", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -788,12 +788,12 @@ }, { "constant": false, - "id": 988, + "id": 1562, "indexed": false, "name": "wad", "nodeType": "VariableDeclaration", - "scope": 990, - "src": "1094:8:2", + "scope": 1564, + "src": "1094:8:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -801,10 +801,10 @@ "typeString": "uint256" }, "typeName": { - "id": 987, + "id": 1561, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1094:4:2", + "src": "1094:4:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -814,17 +814,17 @@ "visibility": "internal" } ], - "src": "1072:31:2" + "src": "1072:31:3" }, - "src": "1055:49:2" + "src": "1055:49:3" }, { "constant": false, - "id": 994, + "id": 1568, "name": "balanceOf", "nodeType": "VariableDeclaration", - "scope": 1197, - "src": "1110:65:2", + "scope": 1771, + "src": "1110:65:3", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -832,28 +832,28 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 993, + "id": 1567, "keyType": { - "id": 991, + "id": 1565, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1119:7:2", + "src": "1119:7:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1110:25:2", + "src": "1110:25:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" }, "valueType": { - "id": 992, + "id": 1566, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1130:4:2", + "src": "1130:4:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -865,11 +865,11 @@ }, { "constant": false, - "id": 1000, + "id": 1574, "name": "allowance", "nodeType": "VariableDeclaration", - "scope": 1197, - "src": "1181:65:2", + "scope": 1771, + "src": "1181:65:3", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -877,46 +877,46 @@ "typeString": "mapping(address => mapping(address => uint256))" }, "typeName": { - "id": 999, + "id": 1573, "keyType": { - "id": 995, + "id": 1569, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1190:7:2", + "src": "1190:7:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1181:46:2", + "src": "1181:46:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", "typeString": "mapping(address => mapping(address => uint256))" }, "valueType": { - "id": 998, + "id": 1572, "keyType": { - "id": 996, + "id": 1570, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1210:7:2", + "src": "1210:7:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1201:25:2", + "src": "1201:25:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" }, "valueType": { - "id": 997, + "id": 1571, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1221:4:2", + "src": "1221:4:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -929,9 +929,9 @@ }, { "body": { - "id": 1006, + "id": 1580, "nodeType": "Block", - "src": "1281:26:2", + "src": "1281:26:3", "statements": [ { "expression": { @@ -939,18 +939,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1003, + "id": 1577, "name": "deposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1026, - "src": "1291:7:2", + "referencedDeclaration": 1600, + "src": "1291:7:3", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, - "id": 1004, + "id": 1578, "isConstant": false, "isLValue": false, "isPure": false, @@ -958,53 +958,53 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1291:9:2", + "src": "1291:9:3", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1005, + "id": 1579, "nodeType": "ExpressionStatement", - "src": "1291:9:2" + "src": "1291:9:3" } ] }, "documentation": null, - "id": 1007, + "id": 1581, "implemented": true, "kind": "fallback", "modifiers": [], "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 1001, + "id": 1575, "nodeType": "ParameterList", "parameters": [], - "src": "1261:2:2" + "src": "1261:2:3" }, "returnParameters": { - "id": 1002, + "id": 1576, "nodeType": "ParameterList", "parameters": [], - "src": "1281:0:2" + "src": "1281:0:3" }, - "scope": 1197, - "src": "1253:54:2", + "scope": 1771, + "src": "1253:54:3", "stateMutability": "payable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 1025, + "id": 1599, "nodeType": "Block", - "src": "1346:96:2", + "src": "1346:96:3", "statements": [ { "expression": { "argumentTypes": null, - "id": 1016, + "id": 1590, "isConstant": false, "isLValue": false, "isPure": false, @@ -1013,34 +1013,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1010, + "id": 1584, "name": "balanceOf", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 994, - "src": "1356:9:2", + "referencedDeclaration": 1568, + "src": "1356:9:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 1013, + "id": 1587, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1011, + "id": 1585, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "1366:3:2", + "referencedDeclaration": 3494, + "src": "1366:3:3", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1012, + "id": 1586, "isConstant": false, "isLValue": false, "isPure": false, @@ -1048,7 +1048,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1366:10:2", + "src": "1366:10:3", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" @@ -1059,7 +1059,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1356:21:2", + "src": "1356:21:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1071,18 +1071,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1014, + "id": 1588, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "1381:3:2", + "referencedDeclaration": 3494, + "src": "1381:3:3", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1015, + "id": 1589, "isConstant": false, "isLValue": false, "isPure": false, @@ -1090,21 +1090,21 @@ "memberName": "value", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1381:9:2", + "src": "1381:9:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1356:34:2", + "src": "1356:34:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1017, + "id": 1591, "nodeType": "ExpressionStatement", - "src": "1356:34:2" + "src": "1356:34:3" }, { "eventCall": { @@ -1114,18 +1114,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1019, + "id": 1593, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "1413:3:2", + "referencedDeclaration": 3494, + "src": "1413:3:3", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1020, + "id": 1594, "isConstant": false, "isLValue": false, "isPure": false, @@ -1133,7 +1133,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1413:10:2", + "src": "1413:10:3", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" @@ -1143,18 +1143,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1021, + "id": 1595, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "1425:3:2", + "referencedDeclaration": 3494, + "src": "1425:3:3", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1022, + "id": 1596, "isConstant": false, "isLValue": false, "isPure": false, @@ -1162,7 +1162,7 @@ "memberName": "value", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1425:9:2", + "src": "1425:9:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1180,18 +1180,18 @@ "typeString": "uint256" } ], - "id": 1018, + "id": 1592, "name": "Deposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 984, - "src": "1405:7:2", + "referencedDeclaration": 1558, + "src": "1405:7:3", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 1023, + "id": 1597, "isConstant": false, "isLValue": false, "isPure": false, @@ -1199,48 +1199,48 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1405:30:2", + "src": "1405:30:3", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1024, + "id": 1598, "nodeType": "EmitStatement", - "src": "1400:35:2" + "src": "1400:35:3" } ] }, "documentation": null, - "id": 1026, + "id": 1600, "implemented": true, "kind": "function", "modifiers": [], "name": "deposit", "nodeType": "FunctionDefinition", "parameters": { - "id": 1008, + "id": 1582, "nodeType": "ParameterList", "parameters": [], - "src": "1328:2:2" + "src": "1328:2:3" }, "returnParameters": { - "id": 1009, + "id": 1583, "nodeType": "ParameterList", "parameters": [], - "src": "1346:0:2" + "src": "1346:0:3" }, - "scope": 1197, - "src": "1312:130:2", + "scope": 1771, + "src": "1312:130:3", "stateMutability": "payable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1061, + "id": 1635, "nodeType": "Block", - "src": "1482:168:2", + "src": "1482:168:3", "statements": [ { "expression": { @@ -1252,7 +1252,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1037, + "id": 1611, "isConstant": false, "isLValue": false, "isPure": false, @@ -1261,34 +1261,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1032, + "id": 1606, "name": "balanceOf", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 994, - "src": "1500:9:2", + "referencedDeclaration": 1568, + "src": "1500:9:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 1035, + "id": 1609, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1033, + "id": 1607, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "1510:3:2", + "referencedDeclaration": 3494, + "src": "1510:3:3", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1034, + "id": 1608, "isConstant": false, "isLValue": false, "isPure": false, @@ -1296,7 +1296,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1510:10:2", + "src": "1510:10:3", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" @@ -1307,7 +1307,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1500:21:2", + "src": "1500:21:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1317,18 +1317,18 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 1036, + "id": 1610, "name": "wad", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1028, - "src": "1525:3:2", + "referencedDeclaration": 1602, + "src": "1525:3:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1500:28:2", + "src": "1500:28:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1342,21 +1342,21 @@ "typeString": "bool" } ], - "id": 1031, + "id": 1605, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 2236, - 2237 + 3497, + 3498 ], - "referencedDeclaration": 2236, - "src": "1492:7:2", + "referencedDeclaration": 3497, + "src": "1492:7:3", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1038, + "id": 1612, "isConstant": false, "isLValue": false, "isPure": false, @@ -1364,20 +1364,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1492:37:2", + "src": "1492:37:3", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1039, + "id": 1613, "nodeType": "ExpressionStatement", - "src": "1492:37:2" + "src": "1492:37:3" }, { "expression": { "argumentTypes": null, - "id": 1045, + "id": 1619, "isConstant": false, "isLValue": false, "isPure": false, @@ -1386,34 +1386,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1040, + "id": 1614, "name": "balanceOf", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 994, - "src": "1539:9:2", + "referencedDeclaration": 1568, + "src": "1539:9:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 1043, + "id": 1617, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1041, + "id": 1615, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "1549:3:2", + "referencedDeclaration": 3494, + "src": "1549:3:3", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1042, + "id": 1616, "isConstant": false, "isLValue": false, "isPure": false, @@ -1421,7 +1421,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1549:10:2", + "src": "1549:10:3", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" @@ -1432,7 +1432,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1539:21:2", + "src": "1539:21:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1442,26 +1442,26 @@ "operator": "-=", "rightHandSide": { "argumentTypes": null, - "id": 1044, + "id": 1618, "name": "wad", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1028, - "src": "1564:3:2", + "referencedDeclaration": 1602, + "src": "1564:3:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1539:28:2", + "src": "1539:28:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1046, + "id": 1620, "nodeType": "ExpressionStatement", - "src": "1539:28:2" + "src": "1539:28:3" }, { "expression": { @@ -1469,12 +1469,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1052, + "id": 1626, "name": "wad", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1028, - "src": "1597:3:2", + "referencedDeclaration": 1602, + "src": "1597:3:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1492,18 +1492,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1047, + "id": 1621, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "1577:3:2", + "referencedDeclaration": 3494, + "src": "1577:3:3", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1050, + "id": 1624, "isConstant": false, "isLValue": false, "isPure": false, @@ -1511,13 +1511,13 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1577:10:2", + "src": "1577:10:3", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, - "id": 1051, + "id": 1625, "isConstant": false, "isLValue": false, "isPure": false, @@ -1525,13 +1525,13 @@ "memberName": "transfer", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1577:19:2", + "src": "1577:19:3", "typeDescriptions": { "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 1053, + "id": 1627, "isConstant": false, "isLValue": false, "isPure": false, @@ -1539,15 +1539,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1577:24:2", + "src": "1577:24:3", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1054, + "id": 1628, "nodeType": "ExpressionStatement", - "src": "1577:24:2" + "src": "1577:24:3" }, { "eventCall": { @@ -1557,18 +1557,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1056, + "id": 1630, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "1627:3:2", + "referencedDeclaration": 3494, + "src": "1627:3:3", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1057, + "id": 1631, "isConstant": false, "isLValue": false, "isPure": false, @@ -1576,7 +1576,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1627:10:2", + "src": "1627:10:3", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" @@ -1584,12 +1584,12 @@ }, { "argumentTypes": null, - "id": 1058, + "id": 1632, "name": "wad", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1028, - "src": "1639:3:2", + "referencedDeclaration": 1602, + "src": "1639:3:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1607,18 +1607,18 @@ "typeString": "uint256" } ], - "id": 1055, + "id": 1629, "name": "Withdrawal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 990, - "src": "1616:10:2", + "referencedDeclaration": 1564, + "src": "1616:10:3", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 1059, + "id": 1633, "isConstant": false, "isLValue": false, "isPure": false, @@ -1626,36 +1626,36 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1616:27:2", + "src": "1616:27:3", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1060, + "id": 1634, "nodeType": "EmitStatement", - "src": "1611:32:2" + "src": "1611:32:3" } ] }, "documentation": null, - "id": 1062, + "id": 1636, "implemented": true, "kind": "function", "modifiers": [], "name": "withdraw", "nodeType": "FunctionDefinition", "parameters": { - "id": 1029, + "id": 1603, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1028, + "id": 1602, "name": "wad", "nodeType": "VariableDeclaration", - "scope": 1062, - "src": "1465:8:2", + "scope": 1636, + "src": "1465:8:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1663,10 +1663,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1027, + "id": 1601, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1465:4:2", + "src": "1465:4:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1676,25 +1676,25 @@ "visibility": "internal" } ], - "src": "1464:10:2" + "src": "1464:10:3" }, "returnParameters": { - "id": 1030, + "id": 1604, "nodeType": "ParameterList", "parameters": [], - "src": "1482:0:2" + "src": "1482:0:3" }, - "scope": 1197, - "src": "1447:203:2", + "scope": 1771, + "src": "1447:203:3", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1072, + "id": 1646, "nodeType": "Block", - "src": "1706:45:2", + "src": "1706:45:3", "statements": [ { "expression": { @@ -1704,14 +1704,14 @@ "arguments": [ { "argumentTypes": null, - "id": 1068, + "id": 1642, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2281, - "src": "1731:4:2", + "referencedDeclaration": 3558, + "src": "1731:4:3", "typeDescriptions": { - "typeIdentifier": "t_contract$_WRBTC_$1197", + "typeIdentifier": "t_contract$_WRBTC_$1771", "typeString": "contract WRBTC" } } @@ -1719,24 +1719,24 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_WRBTC_$1197", + "typeIdentifier": "t_contract$_WRBTC_$1771", "typeString": "contract WRBTC" } ], - "id": 1067, + "id": 1641, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1723:7:2", + "src": "1723:7:3", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, - "id": 1069, + "id": 1643, "isConstant": false, "isLValue": false, "isPure": false, @@ -1744,13 +1744,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1723:13:2", + "src": "1723:13:3", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, - "id": 1070, + "id": 1644, "isConstant": false, "isLValue": false, "isPure": false, @@ -1758,43 +1758,43 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1723:21:2", + "src": "1723:21:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1066, - "id": 1071, + "functionReturnParameters": 1640, + "id": 1645, "nodeType": "Return", - "src": "1716:28:2" + "src": "1716:28:3" } ] }, "documentation": null, - "id": 1073, + "id": 1647, "implemented": true, "kind": "function", "modifiers": [], "name": "totalSupply", "nodeType": "FunctionDefinition", "parameters": { - "id": 1063, + "id": 1637, "nodeType": "ParameterList", "parameters": [], - "src": "1676:2:2" + "src": "1676:2:3" }, "returnParameters": { - "id": 1066, + "id": 1640, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1065, + "id": 1639, "name": "", "nodeType": "VariableDeclaration", - "scope": 1073, - "src": "1700:4:2", + "scope": 1647, + "src": "1700:4:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1802,10 +1802,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1064, + "id": 1638, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1700:4:2", + "src": "1700:4:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1815,24 +1815,24 @@ "visibility": "internal" } ], - "src": "1699:6:2" + "src": "1699:6:3" }, - "scope": 1197, - "src": "1656:95:2", + "scope": 1771, + "src": "1656:95:3", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1100, + "id": 1674, "nodeType": "Block", - "src": "1819:115:2", + "src": "1819:115:3", "statements": [ { "expression": { "argumentTypes": null, - "id": 1089, + "id": 1663, "isConstant": false, "isLValue": false, "isPure": false, @@ -1843,34 +1843,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1082, + "id": 1656, "name": "allowance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1000, - "src": "1829:9:2", + "referencedDeclaration": 1574, + "src": "1829:9:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", "typeString": "mapping(address => mapping(address => uint256))" } }, - "id": 1086, + "id": 1660, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1083, + "id": 1657, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "1839:3:2", + "referencedDeclaration": 3494, + "src": "1839:3:3", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1084, + "id": 1658, "isConstant": false, "isLValue": false, "isPure": false, @@ -1878,7 +1878,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1839:10:2", + "src": "1839:10:3", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" @@ -1889,21 +1889,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1829:21:2", + "src": "1829:21:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 1087, + "id": 1661, "indexExpression": { "argumentTypes": null, - "id": 1085, + "id": 1659, "name": "guy", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1075, - "src": "1851:3:2", + "referencedDeclaration": 1649, + "src": "1851:3:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1914,7 +1914,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1829:26:2", + "src": "1829:26:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1924,26 +1924,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 1088, + "id": 1662, "name": "wad", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1077, - "src": "1858:3:2", + "referencedDeclaration": 1651, + "src": "1858:3:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1829:32:2", + "src": "1829:32:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1090, + "id": 1664, "nodeType": "ExpressionStatement", - "src": "1829:32:2" + "src": "1829:32:3" }, { "eventCall": { @@ -1953,18 +1953,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1092, + "id": 1666, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "1885:3:2", + "referencedDeclaration": 3494, + "src": "1885:3:3", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1093, + "id": 1667, "isConstant": false, "isLValue": false, "isPure": false, @@ -1972,7 +1972,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1885:10:2", + "src": "1885:10:3", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" @@ -1980,12 +1980,12 @@ }, { "argumentTypes": null, - "id": 1094, + "id": 1668, "name": "guy", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1075, - "src": "1897:3:2", + "referencedDeclaration": 1649, + "src": "1897:3:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1993,12 +1993,12 @@ }, { "argumentTypes": null, - "id": 1095, + "id": 1669, "name": "wad", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1077, - "src": "1902:3:2", + "referencedDeclaration": 1651, + "src": "1902:3:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2020,18 +2020,18 @@ "typeString": "uint256" } ], - "id": 1091, + "id": 1665, "name": "Approval", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 970, - "src": "1876:8:2", + "referencedDeclaration": 1544, + "src": "1876:8:3", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 1096, + "id": 1670, "isConstant": false, "isLValue": false, "isPure": false, @@ -2039,28 +2039,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1876:30:2", + "src": "1876:30:3", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1097, + "id": 1671, "nodeType": "EmitStatement", - "src": "1871:35:2" + "src": "1871:35:3" }, { "expression": { "argumentTypes": null, "hexValue": "74727565", - "id": 1098, + "id": 1672, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "1923:4:2", + "src": "1923:4:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2068,31 +2068,31 @@ }, "value": "true" }, - "functionReturnParameters": 1081, - "id": 1099, + "functionReturnParameters": 1655, + "id": 1673, "nodeType": "Return", - "src": "1916:11:2" + "src": "1916:11:3" } ] }, "documentation": null, - "id": 1101, + "id": 1675, "implemented": true, "kind": "function", "modifiers": [], "name": "approve", "nodeType": "FunctionDefinition", "parameters": { - "id": 1078, + "id": 1652, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1075, + "id": 1649, "name": "guy", "nodeType": "VariableDeclaration", - "scope": 1101, - "src": "1774:11:2", + "scope": 1675, + "src": "1774:11:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2100,10 +2100,10 @@ "typeString": "address" }, "typeName": { - "id": 1074, + "id": 1648, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1774:7:2", + "src": "1774:7:3", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2115,11 +2115,11 @@ }, { "constant": false, - "id": 1077, + "id": 1651, "name": "wad", "nodeType": "VariableDeclaration", - "scope": 1101, - "src": "1787:8:2", + "scope": 1675, + "src": "1787:8:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2127,10 +2127,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1076, + "id": 1650, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1787:4:2", + "src": "1787:4:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2140,19 +2140,19 @@ "visibility": "internal" } ], - "src": "1773:23:2" + "src": "1773:23:3" }, "returnParameters": { - "id": 1081, + "id": 1655, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1080, + "id": 1654, "name": "", "nodeType": "VariableDeclaration", - "scope": 1101, - "src": "1813:4:2", + "scope": 1675, + "src": "1813:4:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2160,10 +2160,10 @@ "typeString": "bool" }, "typeName": { - "id": 1079, + "id": 1653, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1813:4:2", + "src": "1813:4:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2173,19 +2173,19 @@ "visibility": "internal" } ], - "src": "1812:6:2" + "src": "1812:6:3" }, - "scope": 1197, - "src": "1757:177:2", + "scope": 1771, + "src": "1757:177:3", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1117, + "id": 1691, "nodeType": "Block", - "src": "2003:58:2", + "src": "2003:58:3", "statements": [ { "expression": { @@ -2195,18 +2195,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1111, + "id": 1685, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "2033:3:2", + "referencedDeclaration": 3494, + "src": "2033:3:3", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1112, + "id": 1686, "isConstant": false, "isLValue": false, "isPure": false, @@ -2214,7 +2214,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2033:10:2", + "src": "2033:10:3", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" @@ -2222,12 +2222,12 @@ }, { "argumentTypes": null, - "id": 1113, + "id": 1687, "name": "dst", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1103, - "src": "2045:3:2", + "referencedDeclaration": 1677, + "src": "2045:3:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2235,12 +2235,12 @@ }, { "argumentTypes": null, - "id": 1114, + "id": 1688, "name": "wad", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "2050:3:2", + "referencedDeclaration": 1679, + "src": "2050:3:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2262,18 +2262,18 @@ "typeString": "uint256" } ], - "id": 1110, + "id": 1684, "name": "transferFrom", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1196, - "src": "2020:12:2", + "referencedDeclaration": 1770, + "src": "2020:12:3", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) returns (bool)" } }, - "id": 1115, + "id": 1689, "isConstant": false, "isLValue": false, "isPure": false, @@ -2281,37 +2281,37 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2020:34:2", + "src": "2020:34:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 1109, - "id": 1116, + "functionReturnParameters": 1683, + "id": 1690, "nodeType": "Return", - "src": "2013:41:2" + "src": "2013:41:3" } ] }, "documentation": null, - "id": 1118, + "id": 1692, "implemented": true, "kind": "function", "modifiers": [], "name": "transfer", "nodeType": "FunctionDefinition", "parameters": { - "id": 1106, + "id": 1680, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1103, + "id": 1677, "name": "dst", "nodeType": "VariableDeclaration", - "scope": 1118, - "src": "1958:11:2", + "scope": 1692, + "src": "1958:11:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2319,10 +2319,10 @@ "typeString": "address" }, "typeName": { - "id": 1102, + "id": 1676, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1958:7:2", + "src": "1958:7:3", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2334,11 +2334,11 @@ }, { "constant": false, - "id": 1105, + "id": 1679, "name": "wad", "nodeType": "VariableDeclaration", - "scope": 1118, - "src": "1971:8:2", + "scope": 1692, + "src": "1971:8:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2346,10 +2346,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1104, + "id": 1678, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1971:4:2", + "src": "1971:4:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2359,19 +2359,19 @@ "visibility": "internal" } ], - "src": "1957:23:2" + "src": "1957:23:3" }, "returnParameters": { - "id": 1109, + "id": 1683, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1108, + "id": 1682, "name": "", "nodeType": "VariableDeclaration", - "scope": 1118, - "src": "1997:4:2", + "scope": 1692, + "src": "1997:4:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2379,10 +2379,10 @@ "typeString": "bool" }, "typeName": { - "id": 1107, + "id": 1681, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1997:4:2", + "src": "1997:4:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2392,19 +2392,19 @@ "visibility": "internal" } ], - "src": "1996:6:2" + "src": "1996:6:3" }, - "scope": 1197, - "src": "1940:121:2", + "scope": 1771, + "src": "1940:121:3", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1195, + "id": 1769, "nodeType": "Block", - "src": "2167:360:2", + "src": "2167:360:3", "statements": [ { "expression": { @@ -2416,7 +2416,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1134, + "id": 1708, "isConstant": false, "isLValue": false, "isPure": false, @@ -2425,26 +2425,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1130, + "id": 1704, "name": "balanceOf", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 994, - "src": "2185:9:2", + "referencedDeclaration": 1568, + "src": "2185:9:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 1132, + "id": 1706, "indexExpression": { "argumentTypes": null, - "id": 1131, + "id": 1705, "name": "src", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1120, - "src": "2195:3:2", + "referencedDeclaration": 1694, + "src": "2195:3:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2455,7 +2455,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2185:14:2", + "src": "2185:14:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2465,18 +2465,18 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 1133, + "id": 1707, "name": "wad", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1124, - "src": "2203:3:2", + "referencedDeclaration": 1698, + "src": "2203:3:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2185:21:2", + "src": "2185:21:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2490,21 +2490,21 @@ "typeString": "bool" } ], - "id": 1129, + "id": 1703, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 2236, - 2237 + 3497, + 3498 ], - "referencedDeclaration": 2236, - "src": "2177:7:2", + "referencedDeclaration": 3497, + "src": "2177:7:3", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1135, + "id": 1709, "isConstant": false, "isLValue": false, "isPure": false, @@ -2512,15 +2512,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2177:30:2", + "src": "2177:30:3", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1136, + "id": 1710, "nodeType": "ExpressionStatement", - "src": "2177:30:2" + "src": "2177:30:3" }, { "condition": { @@ -2529,7 +2529,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1152, + "id": 1726, "isConstant": false, "isLValue": false, "isPure": false, @@ -2540,19 +2540,19 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1140, + "id": 1714, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1137, + "id": 1711, "name": "src", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1120, - "src": "2222:3:2", + "referencedDeclaration": 1694, + "src": "2222:3:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2564,18 +2564,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1138, + "id": 1712, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "2229:3:2", + "referencedDeclaration": 3494, + "src": "2229:3:3", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1139, + "id": 1713, "isConstant": false, "isLValue": false, "isPure": false, @@ -2583,13 +2583,13 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2229:10:2", + "src": "2229:10:3", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, - "src": "2222:17:2", + "src": "2222:17:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2603,7 +2603,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1151, + "id": 1725, "isConstant": false, "isLValue": false, "isPure": false, @@ -2614,26 +2614,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1141, + "id": 1715, "name": "allowance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1000, - "src": "2243:9:2", + "referencedDeclaration": 1574, + "src": "2243:9:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", "typeString": "mapping(address => mapping(address => uint256))" } }, - "id": 1143, + "id": 1717, "indexExpression": { "argumentTypes": null, - "id": 1142, + "id": 1716, "name": "src", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1120, - "src": "2253:3:2", + "referencedDeclaration": 1694, + "src": "2253:3:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2644,29 +2644,29 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2243:14:2", + "src": "2243:14:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 1146, + "id": 1720, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1144, + "id": 1718, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "2258:3:2", + "referencedDeclaration": 3494, + "src": "2258:3:3", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1145, + "id": 1719, "isConstant": false, "isLValue": false, "isPure": false, @@ -2674,7 +2674,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2258:10:2", + "src": "2258:10:3", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" @@ -2685,7 +2685,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2243:26:2", + "src": "2243:26:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2698,7 +2698,7 @@ "arguments": [ { "argumentTypes": null, - "id": 1149, + "id": 1723, "isConstant": false, "isLValue": false, "isPure": true, @@ -2706,18 +2706,18 @@ "nodeType": "UnaryOperation", "operator": "-", "prefix": true, - "src": "2278:2:2", + "src": "2278:2:3", "subExpression": { "argumentTypes": null, "hexValue": "31", - "id": 1148, + "id": 1722, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2279:1:2", + "src": "2279:1:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -2738,20 +2738,20 @@ "typeString": "int_const -1" } ], - "id": 1147, + "id": 1721, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2273:4:2", + "src": "2273:4:3", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" }, "typeName": "uint" }, - "id": 1150, + "id": 1724, "isConstant": false, "isLValue": false, "isPure": true, @@ -2759,32 +2759,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2273:8:2", + "src": "2273:8:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2243:38:2", + "src": "2243:38:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "2222:59:2", + "src": "2222:59:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 1174, + "id": 1748, "nodeType": "IfStatement", - "src": "2218:179:2", + "src": "2218:179:3", "trueBody": { - "id": 1173, + "id": 1747, "nodeType": "Block", - "src": "2283:114:2", + "src": "2283:114:3", "statements": [ { "expression": { @@ -2796,7 +2796,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1161, + "id": 1735, "isConstant": false, "isLValue": false, "isPure": false, @@ -2807,26 +2807,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1154, + "id": 1728, "name": "allowance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1000, - "src": "2305:9:2", + "referencedDeclaration": 1574, + "src": "2305:9:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", "typeString": "mapping(address => mapping(address => uint256))" } }, - "id": 1156, + "id": 1730, "indexExpression": { "argumentTypes": null, - "id": 1155, + "id": 1729, "name": "src", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1120, - "src": "2315:3:2", + "referencedDeclaration": 1694, + "src": "2315:3:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2837,29 +2837,29 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2305:14:2", + "src": "2305:14:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 1159, + "id": 1733, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1157, + "id": 1731, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "2320:3:2", + "referencedDeclaration": 3494, + "src": "2320:3:3", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1158, + "id": 1732, "isConstant": false, "isLValue": false, "isPure": false, @@ -2867,7 +2867,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2320:10:2", + "src": "2320:10:3", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" @@ -2878,7 +2878,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2305:26:2", + "src": "2305:26:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2888,18 +2888,18 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 1160, + "id": 1734, "name": "wad", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1124, - "src": "2335:3:2", + "referencedDeclaration": 1698, + "src": "2335:3:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2305:33:2", + "src": "2305:33:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2913,21 +2913,21 @@ "typeString": "bool" } ], - "id": 1153, + "id": 1727, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 2236, - 2237 + 3497, + 3498 ], - "referencedDeclaration": 2236, - "src": "2297:7:2", + "referencedDeclaration": 3497, + "src": "2297:7:3", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1162, + "id": 1736, "isConstant": false, "isLValue": false, "isPure": false, @@ -2935,20 +2935,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2297:42:2", + "src": "2297:42:3", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1163, + "id": 1737, "nodeType": "ExpressionStatement", - "src": "2297:42:2" + "src": "2297:42:3" }, { "expression": { "argumentTypes": null, - "id": 1171, + "id": 1745, "isConstant": false, "isLValue": false, "isPure": false, @@ -2959,26 +2959,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1164, + "id": 1738, "name": "allowance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1000, - "src": "2353:9:2", + "referencedDeclaration": 1574, + "src": "2353:9:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", "typeString": "mapping(address => mapping(address => uint256))" } }, - "id": 1168, + "id": 1742, "indexExpression": { "argumentTypes": null, - "id": 1165, + "id": 1739, "name": "src", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1120, - "src": "2363:3:2", + "referencedDeclaration": 1694, + "src": "2363:3:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2989,29 +2989,29 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2353:14:2", + "src": "2353:14:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 1169, + "id": 1743, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1166, + "id": 1740, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "2368:3:2", + "referencedDeclaration": 3494, + "src": "2368:3:3", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1167, + "id": 1741, "isConstant": false, "isLValue": false, "isPure": false, @@ -3019,7 +3019,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2368:10:2", + "src": "2368:10:3", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" @@ -3030,7 +3030,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2353:26:2", + "src": "2353:26:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3040,26 +3040,26 @@ "operator": "-=", "rightHandSide": { "argumentTypes": null, - "id": 1170, + "id": 1744, "name": "wad", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1124, - "src": "2383:3:2", + "referencedDeclaration": 1698, + "src": "2383:3:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2353:33:2", + "src": "2353:33:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1172, + "id": 1746, "nodeType": "ExpressionStatement", - "src": "2353:33:2" + "src": "2353:33:3" } ] } @@ -3067,7 +3067,7 @@ { "expression": { "argumentTypes": null, - "id": 1179, + "id": 1753, "isConstant": false, "isLValue": false, "isPure": false, @@ -3076,26 +3076,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1175, + "id": 1749, "name": "balanceOf", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 994, - "src": "2407:9:2", + "referencedDeclaration": 1568, + "src": "2407:9:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 1177, + "id": 1751, "indexExpression": { "argumentTypes": null, - "id": 1176, + "id": 1750, "name": "src", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1120, - "src": "2417:3:2", + "referencedDeclaration": 1694, + "src": "2417:3:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3106,7 +3106,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2407:14:2", + "src": "2407:14:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3116,31 +3116,31 @@ "operator": "-=", "rightHandSide": { "argumentTypes": null, - "id": 1178, + "id": 1752, "name": "wad", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1124, - "src": "2425:3:2", + "referencedDeclaration": 1698, + "src": "2425:3:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2407:21:2", + "src": "2407:21:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1180, + "id": 1754, "nodeType": "ExpressionStatement", - "src": "2407:21:2" + "src": "2407:21:3" }, { "expression": { "argumentTypes": null, - "id": 1185, + "id": 1759, "isConstant": false, "isLValue": false, "isPure": false, @@ -3149,26 +3149,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1181, + "id": 1755, "name": "balanceOf", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 994, - "src": "2438:9:2", + "referencedDeclaration": 1568, + "src": "2438:9:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 1183, + "id": 1757, "indexExpression": { "argumentTypes": null, - "id": 1182, + "id": 1756, "name": "dst", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1122, - "src": "2448:3:2", + "referencedDeclaration": 1696, + "src": "2448:3:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3179,7 +3179,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2438:14:2", + "src": "2438:14:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3189,26 +3189,26 @@ "operator": "+=", "rightHandSide": { "argumentTypes": null, - "id": 1184, + "id": 1758, "name": "wad", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1124, - "src": "2456:3:2", + "referencedDeclaration": 1698, + "src": "2456:3:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2438:21:2", + "src": "2438:21:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1186, + "id": 1760, "nodeType": "ExpressionStatement", - "src": "2438:21:2" + "src": "2438:21:3" }, { "eventCall": { @@ -3216,12 +3216,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1188, + "id": 1762, "name": "src", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1120, - "src": "2484:3:2", + "referencedDeclaration": 1694, + "src": "2484:3:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3229,12 +3229,12 @@ }, { "argumentTypes": null, - "id": 1189, + "id": 1763, "name": "dst", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1122, - "src": "2489:3:2", + "referencedDeclaration": 1696, + "src": "2489:3:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3242,12 +3242,12 @@ }, { "argumentTypes": null, - "id": 1190, + "id": 1764, "name": "wad", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1124, - "src": "2494:3:2", + "referencedDeclaration": 1698, + "src": "2494:3:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3269,18 +3269,18 @@ "typeString": "uint256" } ], - "id": 1187, + "id": 1761, "name": "Transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 978, - "src": "2475:8:2", + "referencedDeclaration": 1552, + "src": "2475:8:3", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 1191, + "id": 1765, "isConstant": false, "isLValue": false, "isPure": false, @@ -3288,28 +3288,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2475:23:2", + "src": "2475:23:3", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1192, + "id": 1766, "nodeType": "EmitStatement", - "src": "2470:28:2" + "src": "2470:28:3" }, { "expression": { "argumentTypes": null, "hexValue": "74727565", - "id": 1193, + "id": 1767, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2516:4:2", + "src": "2516:4:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -3317,31 +3317,31 @@ }, "value": "true" }, - "functionReturnParameters": 1128, - "id": 1194, + "functionReturnParameters": 1702, + "id": 1768, "nodeType": "Return", - "src": "2509:11:2" + "src": "2509:11:3" } ] }, "documentation": null, - "id": 1196, + "id": 1770, "implemented": true, "kind": "function", "modifiers": [], "name": "transferFrom", "nodeType": "FunctionDefinition", "parameters": { - "id": 1125, + "id": 1699, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1120, + "id": 1694, "name": "src", "nodeType": "VariableDeclaration", - "scope": 1196, - "src": "2089:11:2", + "scope": 1770, + "src": "2089:11:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3349,10 +3349,10 @@ "typeString": "address" }, "typeName": { - "id": 1119, + "id": 1693, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2089:7:2", + "src": "2089:7:3", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3364,11 +3364,11 @@ }, { "constant": false, - "id": 1122, + "id": 1696, "name": "dst", "nodeType": "VariableDeclaration", - "scope": 1196, - "src": "2102:11:2", + "scope": 1770, + "src": "2102:11:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3376,10 +3376,10 @@ "typeString": "address" }, "typeName": { - "id": 1121, + "id": 1695, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2102:7:2", + "src": "2102:7:3", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3391,11 +3391,11 @@ }, { "constant": false, - "id": 1124, + "id": 1698, "name": "wad", "nodeType": "VariableDeclaration", - "scope": 1196, - "src": "2115:8:2", + "scope": 1770, + "src": "2115:8:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3403,10 +3403,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1123, + "id": 1697, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2115:4:2", + "src": "2115:4:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3416,19 +3416,19 @@ "visibility": "internal" } ], - "src": "2088:36:2" + "src": "2088:36:3" }, "returnParameters": { - "id": 1128, + "id": 1702, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1127, + "id": 1701, "name": "", "nodeType": "VariableDeclaration", - "scope": 1196, - "src": "2157:4:2", + "scope": 1770, + "src": "2157:4:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3436,10 +3436,10 @@ "typeString": "bool" }, "typeName": { - "id": 1126, + "id": 1700, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "2157:4:2", + "src": "2157:4:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3449,3176 +3449,3451 @@ "visibility": "internal" } ], - "src": "2156:6:2" + "src": "2156:6:3" }, - "scope": 1197, - "src": "2067:460:2", + "scope": 1771, + "src": "2067:460:3", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" } ], - "scope": 1198, - "src": "721:1808:2" + "scope": 1772, + "src": "721:1808:3" } ], - "src": "686:37000:2" + "src": "686:37000:3" }, "legacyAST": { - "absolutePath": "/Users/hsiang/Desktop/new RBTCWrapperProxy/contracts/WRBTC.sol", - "exportedSymbols": { - "WRBTC": [ - 1197 - ] + "attributes": { + "absolutePath": "/private/var/www/html/Sovryn/oracle-based-amm/rbtcwrapperproxy/contracts/WRBTC.sol", + "exportedSymbols": { + "WRBTC": [ + 1771 + ] + } }, - "id": 1198, - "nodeType": "SourceUnit", - "nodes": [ + "children": [ { - "id": 953, - "literals": [ - "solidity", - ">=", - "0.5", - ".16", - "<", - "0.6", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "686:32:2" + "attributes": { + "literals": [ + "solidity", + ">=", + "0.5", + ".16", + "<", + "0.6", + ".0" + ] + }, + "id": 1527, + "name": "PragmaDirective", + "src": "686:32:3" }, { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 1197, - "linearizedBaseContracts": [ - 1197 - ], - "name": "WRBTC", - "nodeType": "ContractDefinition", - "nodes": [ + "attributes": { + "baseContracts": [ + null + ], + "contractDependencies": [ + null + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "linearizedBaseContracts": [ + 1771 + ], + "name": "WRBTC", + "scope": 1772 + }, + "children": [ { - "constant": false, - "id": 956, - "name": "name", - "nodeType": "VariableDeclaration", - "scope": 1197, - "src": "742:38:2", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string" - }, - "typeName": { - "id": 954, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "742:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } + "attributes": { + "constant": false, + "name": "name", + "scope": 1771, + "stateVariable": true, + "storageLocation": "default", + "type": "string", + "visibility": "public" }, - "value": { - "argumentTypes": null, - "hexValue": "5772617070656420425443", - "id": 955, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "767:13:2", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_2ef08214ff447791a5e9afb7318f8e3059fd5f496df6b60a73eead50d2471ef1", - "typeString": "literal_string \"Wrapped BTC\"" + "children": [ + { + "attributes": { + "name": "string", + "type": "string" + }, + "id": 1528, + "name": "ElementaryTypeName", + "src": "742:6:3" }, - "value": "Wrapped BTC" - }, - "visibility": "public" + { + "attributes": { + "argumentTypes": null, + "hexvalue": "5772617070656420425443", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"Wrapped BTC\"", + "value": "Wrapped BTC" + }, + "id": 1529, + "name": "Literal", + "src": "767:13:3" + } + ], + "id": 1530, + "name": "VariableDeclaration", + "src": "742:38:3" }, { - "constant": false, - "id": 959, - "name": "symbol", - "nodeType": "VariableDeclaration", - "scope": 1197, - "src": "786:32:2", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string" + "attributes": { + "constant": false, + "name": "symbol", + "scope": 1771, + "stateVariable": true, + "storageLocation": "default", + "type": "string", + "visibility": "public" }, - "typeName": { - "id": 957, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "786:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" + "children": [ + { + "attributes": { + "name": "string", + "type": "string" + }, + "id": 1531, + "name": "ElementaryTypeName", + "src": "786:6:3" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "5752425443", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"WRBTC\"", + "value": "WRBTC" + }, + "id": 1532, + "name": "Literal", + "src": "811:7:3" } + ], + "id": 1533, + "name": "VariableDeclaration", + "src": "786:32:3" + }, + { + "attributes": { + "constant": false, + "name": "decimals", + "scope": 1771, + "stateVariable": true, + "storageLocation": "default", + "type": "uint8", + "visibility": "public" }, - "value": { - "argumentTypes": null, - "hexValue": "5752425443", - "id": 958, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "811:7:2", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_6b397d8935abccafa78f3e5148e735827501c342a87ecd5d9c3dfa8da20d8cb4", - "typeString": "literal_string \"WRBTC\"" + "children": [ + { + "attributes": { + "name": "uint8", + "type": "uint8" + }, + "id": 1534, + "name": "ElementaryTypeName", + "src": "824:5:3" }, - "value": "WRBTC" - }, - "visibility": "public" + { + "attributes": { + "argumentTypes": null, + "hexvalue": "3138", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "number", + "type": "int_const 18", + "value": "18" + }, + "id": 1535, + "name": "Literal", + "src": "849:2:3" + } + ], + "id": 1536, + "name": "VariableDeclaration", + "src": "824:27:3" }, { - "constant": false, - "id": 962, - "name": "decimals", - "nodeType": "VariableDeclaration", - "scope": 1197, - "src": "824:27:2", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "attributes": { + "anonymous": false, + "documentation": null, + "name": "Approval" }, - "typeName": { - "id": 960, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "824:5:2", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "indexed": true, + "name": "src", + "scope": 1544, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1537, + "name": "ElementaryTypeName", + "src": "874:7:3" + } + ], + "id": 1538, + "name": "VariableDeclaration", + "src": "874:19:3" + }, + { + "attributes": { + "constant": false, + "indexed": true, + "name": "guy", + "scope": 1544, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1539, + "name": "ElementaryTypeName", + "src": "895:7:3" + } + ], + "id": 1540, + "name": "VariableDeclaration", + "src": "895:19:3" + }, + { + "attributes": { + "constant": false, + "indexed": false, + "name": "wad", + "scope": 1544, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint", + "type": "uint256" + }, + "id": 1541, + "name": "ElementaryTypeName", + "src": "916:4:3" + } + ], + "id": 1542, + "name": "VariableDeclaration", + "src": "916:8:3" + } + ], + "id": 1543, + "name": "ParameterList", + "src": "873:52:3" } + ], + "id": 1544, + "name": "EventDefinition", + "src": "858:68:3" + }, + { + "attributes": { + "anonymous": false, + "documentation": null, + "name": "Transfer" }, - "value": { - "argumentTypes": null, - "hexValue": "3138", - "id": 961, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "849:2:2", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_18_by_1", - "typeString": "int_const 18" - }, - "value": "18" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "indexed": true, + "name": "src", + "scope": 1552, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1545, + "name": "ElementaryTypeName", + "src": "947:7:3" + } + ], + "id": 1546, + "name": "VariableDeclaration", + "src": "947:19:3" + }, + { + "attributes": { + "constant": false, + "indexed": true, + "name": "dst", + "scope": 1552, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1547, + "name": "ElementaryTypeName", + "src": "968:7:3" + } + ], + "id": 1548, + "name": "VariableDeclaration", + "src": "968:19:3" + }, + { + "attributes": { + "constant": false, + "indexed": false, + "name": "wad", + "scope": 1552, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint", + "type": "uint256" + }, + "id": 1549, + "name": "ElementaryTypeName", + "src": "989:4:3" + } + ], + "id": 1550, + "name": "VariableDeclaration", + "src": "989:8:3" + } + ], + "id": 1551, + "name": "ParameterList", + "src": "946:52:3" + } + ], + "id": 1552, + "name": "EventDefinition", + "src": "931:68:3" + }, + { + "attributes": { + "anonymous": false, + "documentation": null, + "name": "Deposit" }, - "visibility": "public" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "indexed": true, + "name": "dst", + "scope": 1558, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1553, + "name": "ElementaryTypeName", + "src": "1019:7:3" + } + ], + "id": 1554, + "name": "VariableDeclaration", + "src": "1019:19:3" + }, + { + "attributes": { + "constant": false, + "indexed": false, + "name": "wad", + "scope": 1558, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint", + "type": "uint256" + }, + "id": 1555, + "name": "ElementaryTypeName", + "src": "1040:4:3" + } + ], + "id": 1556, + "name": "VariableDeclaration", + "src": "1040:8:3" + } + ], + "id": 1557, + "name": "ParameterList", + "src": "1018:31:3" + } + ], + "id": 1558, + "name": "EventDefinition", + "src": "1004:46:3" }, { - "anonymous": false, - "documentation": null, - "id": 970, - "name": "Approval", - "nodeType": "EventDefinition", - "parameters": { - "id": 969, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 964, - "indexed": true, - "name": "src", - "nodeType": "VariableDeclaration", - "scope": 970, - "src": "874:19:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "attributes": { + "anonymous": false, + "documentation": null, + "name": "Withdrawal" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "indexed": true, + "name": "src", + "scope": 1564, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1559, + "name": "ElementaryTypeName", + "src": "1073:7:3" + } + ], + "id": 1560, + "name": "VariableDeclaration", + "src": "1073:19:3" }, - "typeName": { - "id": 963, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "874:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + { + "attributes": { + "constant": false, + "indexed": false, + "name": "wad", + "scope": 1564, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint", + "type": "uint256" + }, + "id": 1561, + "name": "ElementaryTypeName", + "src": "1094:4:3" + } + ], + "id": 1562, + "name": "VariableDeclaration", + "src": "1094:8:3" + } + ], + "id": 1563, + "name": "ParameterList", + "src": "1072:31:3" + } + ], + "id": 1564, + "name": "EventDefinition", + "src": "1055:49:3" + }, + { + "attributes": { + "constant": false, + "name": "balanceOf", + "scope": 1771, + "stateVariable": true, + "storageLocation": "default", + "type": "mapping(address => uint256)", + "value": null, + "visibility": "public" + }, + "children": [ + { + "attributes": { + "type": "mapping(address => uint256)" + }, + "children": [ + { + "attributes": { + "name": "address", + "type": "address" + }, + "id": 1565, + "name": "ElementaryTypeName", + "src": "1119:7:3" }, - "value": null, - "visibility": "internal" + { + "attributes": { + "name": "uint", + "type": "uint256" + }, + "id": 1566, + "name": "ElementaryTypeName", + "src": "1130:4:3" + } + ], + "id": 1567, + "name": "Mapping", + "src": "1110:25:3" + } + ], + "id": 1568, + "name": "VariableDeclaration", + "src": "1110:65:3" + }, + { + "attributes": { + "constant": false, + "name": "allowance", + "scope": 1771, + "stateVariable": true, + "storageLocation": "default", + "type": "mapping(address => mapping(address => uint256))", + "value": null, + "visibility": "public" + }, + "children": [ + { + "attributes": { + "type": "mapping(address => mapping(address => uint256))" }, - { - "constant": false, - "id": 966, - "indexed": true, - "name": "guy", - "nodeType": "VariableDeclaration", - "scope": 970, - "src": "895:19:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "children": [ + { + "attributes": { + "name": "address", + "type": "address" + }, + "id": 1569, + "name": "ElementaryTypeName", + "src": "1190:7:3" }, - "typeName": { - "id": 965, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "895:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 968, - "indexed": false, - "name": "wad", - "nodeType": "VariableDeclaration", - "scope": 970, - "src": "916:8:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 967, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "916:4:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "873:52:2" - }, - "src": "858:68:2" + { + "attributes": { + "type": "mapping(address => uint256)" + }, + "children": [ + { + "attributes": { + "name": "address", + "type": "address" + }, + "id": 1570, + "name": "ElementaryTypeName", + "src": "1210:7:3" + }, + { + "attributes": { + "name": "uint", + "type": "uint256" + }, + "id": 1571, + "name": "ElementaryTypeName", + "src": "1221:4:3" + } + ], + "id": 1572, + "name": "Mapping", + "src": "1201:25:3" + } + ], + "id": 1573, + "name": "Mapping", + "src": "1181:46:3" + } + ], + "id": 1574, + "name": "VariableDeclaration", + "src": "1181:65:3" }, { - "anonymous": false, - "documentation": null, - "id": 978, - "name": "Transfer", - "nodeType": "EventDefinition", - "parameters": { - "id": 977, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 972, - "indexed": true, - "name": "src", - "nodeType": "VariableDeclaration", - "scope": 978, - "src": "947:19:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 971, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "947:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 974, - "indexed": true, - "name": "dst", - "nodeType": "VariableDeclaration", - "scope": 978, - "src": "968:19:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 973, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "968:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 976, - "indexed": false, - "name": "wad", - "nodeType": "VariableDeclaration", - "scope": 978, - "src": "989:8:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 975, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "989:4:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "fallback", + "modifiers": [ + null ], - "src": "946:52:2" + "name": "", + "scope": 1771, + "stateMutability": "payable", + "superFunction": null, + "visibility": "external" }, - "src": "931:68:2" - }, - { - "anonymous": false, - "documentation": null, - "id": 984, - "name": "Deposit", - "nodeType": "EventDefinition", - "parameters": { - "id": 983, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 980, - "indexed": true, - "name": "dst", - "nodeType": "VariableDeclaration", - "scope": 984, - "src": "1019:19:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 979, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1019:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" + "children": [ + { + "attributes": { + "parameters": [ + null + ] }, - { - "constant": false, - "id": 982, - "indexed": false, - "name": "wad", - "nodeType": "VariableDeclaration", - "scope": 984, - "src": "1040:8:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 981, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1040:4:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1018:31:2" - }, - "src": "1004:46:2" - }, - { - "anonymous": false, - "documentation": null, - "id": 990, - "name": "Withdrawal", - "nodeType": "EventDefinition", - "parameters": { - "id": 989, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 986, - "indexed": true, - "name": "src", - "nodeType": "VariableDeclaration", - "scope": 990, - "src": "1073:19:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 985, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1073:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" + "children": [], + "id": 1575, + "name": "ParameterList", + "src": "1261:2:3" + }, + { + "attributes": { + "parameters": [ + null + ] }, - { - "constant": false, - "id": 988, - "indexed": false, - "name": "wad", - "nodeType": "VariableDeclaration", - "scope": 990, - "src": "1094:8:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 987, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1094:4:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1072:31:2" - }, - "src": "1055:49:2" + "children": [], + "id": 1576, + "name": "ParameterList", + "src": "1281:0:3" + }, + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "arguments": [ + null + ], + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + null + ], + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1600, + "type": "function ()", + "value": "deposit" + }, + "id": 1577, + "name": "Identifier", + "src": "1291:7:3" + } + ], + "id": 1578, + "name": "FunctionCall", + "src": "1291:9:3" + } + ], + "id": 1579, + "name": "ExpressionStatement", + "src": "1291:9:3" + } + ], + "id": 1580, + "name": "Block", + "src": "1281:26:3" + } + ], + "id": 1581, + "name": "FunctionDefinition", + "src": "1253:54:3" }, { - "constant": false, - "id": 994, - "name": "balanceOf", - "nodeType": "VariableDeclaration", - "scope": 1197, - "src": "1110:65:2", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "deposit", + "scope": 1771, + "stateMutability": "payable", + "superFunction": null, + "visibility": "public" }, - "typeName": { - "id": 993, - "keyType": { - "id": 991, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1119:7:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 1582, + "name": "ParameterList", + "src": "1328:2:3" }, - "nodeType": "Mapping", - "src": "1110:25:2", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 1583, + "name": "ParameterList", + "src": "1346:0:3" }, - "valueType": { - "id": 992, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1130:4:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "+=", + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1568, + "type": "mapping(address => uint256)", + "value": "balanceOf" + }, + "id": 1584, + "name": "Identifier", + "src": "1356:9:3" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3494, + "type": "msg", + "value": "msg" + }, + "id": 1585, + "name": "Identifier", + "src": "1366:3:3" + } + ], + "id": 1586, + "name": "MemberAccess", + "src": "1366:10:3" + } + ], + "id": 1587, + "name": "IndexAccess", + "src": "1356:21:3" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "value", + "referencedDeclaration": null, + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3494, + "type": "msg", + "value": "msg" + }, + "id": 1588, + "name": "Identifier", + "src": "1381:3:3" + } + ], + "id": 1589, + "name": "MemberAccess", + "src": "1381:9:3" + } + ], + "id": 1590, + "name": "Assignment", + "src": "1356:34:3" + } + ], + "id": 1591, + "name": "ExpressionStatement", + "src": "1356:34:3" + }, + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1558, + "type": "function (address,uint256)", + "value": "Deposit" + }, + "id": 1592, + "name": "Identifier", + "src": "1405:7:3" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3494, + "type": "msg", + "value": "msg" + }, + "id": 1593, + "name": "Identifier", + "src": "1413:3:3" + } + ], + "id": 1594, + "name": "MemberAccess", + "src": "1413:10:3" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "value", + "referencedDeclaration": null, + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3494, + "type": "msg", + "value": "msg" + }, + "id": 1595, + "name": "Identifier", + "src": "1425:3:3" + } + ], + "id": 1596, + "name": "MemberAccess", + "src": "1425:9:3" + } + ], + "id": 1597, + "name": "FunctionCall", + "src": "1405:30:3" + } + ], + "id": 1598, + "name": "EmitStatement", + "src": "1400:35:3" + } + ], + "id": 1599, + "name": "Block", + "src": "1346:96:3" } - }, - "value": null, - "visibility": "public" + ], + "id": 1600, + "name": "FunctionDefinition", + "src": "1312:130:3" }, { - "constant": false, - "id": 1000, - "name": "allowance", - "nodeType": "VariableDeclaration", - "scope": 1197, - "src": "1181:65:2", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "withdraw", + "scope": 1771, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" }, - "typeName": { - "id": 999, - "keyType": { - "id": 995, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1190:7:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "1181:46:2", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - }, - "valueType": { - "id": 998, - "keyType": { - "id": 996, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1210:7:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "wad", + "scope": 1636, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint", + "type": "uint256" + }, + "id": 1601, + "name": "ElementaryTypeName", + "src": "1465:4:3" + } + ], + "id": 1602, + "name": "VariableDeclaration", + "src": "1465:8:3" } + ], + "id": 1603, + "name": "ParameterList", + "src": "1464:10:3" + }, + { + "attributes": { + "parameters": [ + null + ] }, - "nodeType": "Mapping", - "src": "1201:25:2", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueType": { - "id": 997, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1221:4:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - } - }, - "value": null, - "visibility": "public" - }, - { - "body": { - "id": 1006, - "nodeType": "Block", - "src": "1281:26:2", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1003, - "name": "deposit", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1026, - "src": "1291:7:2", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" + "children": [], + "id": 1604, + "name": "ParameterList", + "src": "1482:0:3" + }, + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "overloadedDeclarations": [ + 3497, + 3498 + ], + "referencedDeclaration": 3497, + "type": "function (bool) pure", + "value": "require" + }, + "id": 1605, + "name": "Identifier", + "src": "1492:7:3" + }, + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": ">=", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1568, + "type": "mapping(address => uint256)", + "value": "balanceOf" + }, + "id": 1606, + "name": "Identifier", + "src": "1500:9:3" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3494, + "type": "msg", + "value": "msg" + }, + "id": 1607, + "name": "Identifier", + "src": "1510:3:3" + } + ], + "id": 1608, + "name": "MemberAccess", + "src": "1510:10:3" + } + ], + "id": 1609, + "name": "IndexAccess", + "src": "1500:21:3" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1602, + "type": "uint256", + "value": "wad" + }, + "id": 1610, + "name": "Identifier", + "src": "1525:3:3" + } + ], + "id": 1611, + "name": "BinaryOperation", + "src": "1500:28:3" + } + ], + "id": 1612, + "name": "FunctionCall", + "src": "1492:37:3" } - }, - "id": 1004, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1291:9:2", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } + ], + "id": 1613, + "name": "ExpressionStatement", + "src": "1492:37:3" }, - "id": 1005, - "nodeType": "ExpressionStatement", - "src": "1291:9:2" - } - ] - }, - "documentation": null, - "id": 1007, - "implemented": true, - "kind": "fallback", - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1001, - "nodeType": "ParameterList", - "parameters": [], - "src": "1261:2:2" - }, - "returnParameters": { - "id": 1002, - "nodeType": "ParameterList", - "parameters": [], - "src": "1281:0:2" - }, - "scope": 1197, - "src": "1253:54:2", - "stateMutability": "payable", - "superFunction": null, - "visibility": "external" - }, - { - "body": { - "id": 1025, - "nodeType": "Block", - "src": "1346:96:2", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1016, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1010, - "name": "balanceOf", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 994, - "src": "1356:9:2", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 1013, - "indexExpression": { - "argumentTypes": null, - "expression": { + { + "children": [ + { + "attributes": { "argumentTypes": null, - "id": 1011, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "1366:3:2", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "-=", + "type": "uint256" }, - "id": 1012, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1366:10:2", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1356:21:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1014, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "1381:3:2", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1015, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1381:9:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1568, + "type": "mapping(address => uint256)", + "value": "balanceOf" + }, + "id": 1614, + "name": "Identifier", + "src": "1539:9:3" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3494, + "type": "msg", + "value": "msg" + }, + "id": 1615, + "name": "Identifier", + "src": "1549:3:3" + } + ], + "id": 1616, + "name": "MemberAccess", + "src": "1549:10:3" + } + ], + "id": 1617, + "name": "IndexAccess", + "src": "1539:21:3" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1602, + "type": "uint256", + "value": "wad" + }, + "id": 1618, + "name": "Identifier", + "src": "1564:3:3" + } + ], + "id": 1619, + "name": "Assignment", + "src": "1539:28:3" } - }, - "src": "1356:34:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + ], + "id": 1620, + "name": "ExpressionStatement", + "src": "1539:28:3" }, - "id": 1017, - "nodeType": "ExpressionStatement", - "src": "1356:34:2" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ + { + "children": [ { - "argumentTypes": null, - "expression": { + "attributes": { "argumentTypes": null, - "id": 1019, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "1413:3:2", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false }, - "id": 1020, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1413:10:2", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "transfer", + "referencedDeclaration": null, + "type": "function (uint256)" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3494, + "type": "msg", + "value": "msg" + }, + "id": 1621, + "name": "Identifier", + "src": "1577:3:3" + } + ], + "id": 1624, + "name": "MemberAccess", + "src": "1577:10:3" + } + ], + "id": 1625, + "name": "MemberAccess", + "src": "1577:19:3" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1602, + "type": "uint256", + "value": "wad" + }, + "id": 1626, + "name": "Identifier", + "src": "1597:3:3" + } + ], + "id": 1627, + "name": "FunctionCall", + "src": "1577:24:3" + } + ], + "id": 1628, + "name": "ExpressionStatement", + "src": "1577:24:3" + }, + { + "children": [ { - "argumentTypes": null, - "expression": { + "attributes": { "argumentTypes": null, - "id": 1021, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "1425:3:2", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false }, - "id": 1022, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1425:9:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1564, + "type": "function (address,uint256)", + "value": "Withdrawal" + }, + "id": 1629, + "name": "Identifier", + "src": "1616:10:3" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3494, + "type": "msg", + "value": "msg" + }, + "id": 1630, + "name": "Identifier", + "src": "1627:3:3" + } + ], + "id": 1631, + "name": "MemberAccess", + "src": "1627:10:3" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1602, + "type": "uint256", + "value": "wad" + }, + "id": 1632, + "name": "Identifier", + "src": "1639:3:3" + } + ], + "id": 1633, + "name": "FunctionCall", + "src": "1616:27:3" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" + "id": 1634, + "name": "EmitStatement", + "src": "1611:32:3" + } + ], + "id": 1635, + "name": "Block", + "src": "1482:168:3" + } + ], + "id": 1636, + "name": "FunctionDefinition", + "src": "1447:203:3" + }, + { + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "totalSupply", + "scope": 1771, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 1637, + "name": "ParameterList", + "src": "1676:2:3" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 1647, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint", + "type": "uint256" }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1018, - "name": "Deposit", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 984, - "src": "1405:7:2", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" + "id": 1638, + "name": "ElementaryTypeName", + "src": "1700:4:3" } + ], + "id": 1639, + "name": "VariableDeclaration", + "src": "1700:4:3" + } + ], + "id": 1640, + "name": "ParameterList", + "src": "1699:6:3" + }, + { + "children": [ + { + "attributes": { + "functionReturnParameters": 1640 }, - "id": 1023, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1405:30:2", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1024, - "nodeType": "EmitStatement", - "src": "1400:35:2" - } - ] - }, - "documentation": null, - "id": 1026, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "deposit", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1008, - "nodeType": "ParameterList", - "parameters": [], - "src": "1328:2:2" - }, - "returnParameters": { - "id": 1009, - "nodeType": "ParameterList", - "parameters": [], - "src": "1346:0:2" - }, - "scope": 1197, - "src": "1312:130:2", - "stateMutability": "payable", - "superFunction": null, - "visibility": "public" + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "balance", + "referencedDeclaration": null, + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "address payable", + "type_conversion": true + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_WRBTC_$1771", + "typeString": "contract WRBTC" + } + ], + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "type": "type(address)", + "value": "address" + }, + "id": 1641, + "name": "ElementaryTypeNameExpression", + "src": "1723:7:3" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3558, + "type": "contract WRBTC", + "value": "this" + }, + "id": 1642, + "name": "Identifier", + "src": "1731:4:3" + } + ], + "id": 1643, + "name": "FunctionCall", + "src": "1723:13:3" + } + ], + "id": 1644, + "name": "MemberAccess", + "src": "1723:21:3" + } + ], + "id": 1645, + "name": "Return", + "src": "1716:28:3" + } + ], + "id": 1646, + "name": "Block", + "src": "1706:45:3" + } + ], + "id": 1647, + "name": "FunctionDefinition", + "src": "1656:95:3" }, { - "body": { - "id": 1061, - "nodeType": "Block", - "src": "1482:168:2", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "approve", + "scope": 1771, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "guy", + "scope": 1675, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" }, - "id": 1037, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { + "id": 1648, + "name": "ElementaryTypeName", + "src": "1774:7:3" + } + ], + "id": 1649, + "name": "VariableDeclaration", + "src": "1774:11:3" + }, + { + "attributes": { + "constant": false, + "name": "wad", + "scope": 1675, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint", + "type": "uint256" + }, + "id": 1650, + "name": "ElementaryTypeName", + "src": "1787:4:3" + } + ], + "id": 1651, + "name": "VariableDeclaration", + "src": "1787:8:3" + } + ], + "id": 1652, + "name": "ParameterList", + "src": "1773:23:3" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 1675, + "stateVariable": false, + "storageLocation": "default", + "type": "bool", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bool", + "type": "bool" + }, + "id": 1653, + "name": "ElementaryTypeName", + "src": "1813:4:3" + } + ], + "id": 1654, + "name": "VariableDeclaration", + "src": "1813:4:3" + } + ], + "id": 1655, + "name": "ParameterList", + "src": "1812:6:3" + }, + { + "children": [ + { + "children": [ + { + "attributes": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1032, - "name": "balanceOf", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 994, - "src": "1500:9:2", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 1035, - "indexExpression": { - "argumentTypes": null, - "expression": { + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "=", + "type": "uint256" + }, + "children": [ + { + "attributes": { "argumentTypes": null, - "id": 1033, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "1510:3:2", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "type": "uint256" }, - "id": 1034, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1510:10:2", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "type": "mapping(address => uint256)" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1574, + "type": "mapping(address => mapping(address => uint256))", + "value": "allowance" + }, + "id": 1656, + "name": "Identifier", + "src": "1829:9:3" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3494, + "type": "msg", + "value": "msg" + }, + "id": 1657, + "name": "Identifier", + "src": "1839:3:3" + } + ], + "id": 1658, + "name": "MemberAccess", + "src": "1839:10:3" + } + ], + "id": 1660, + "name": "IndexAccess", + "src": "1829:21:3" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1649, + "type": "address", + "value": "guy" + }, + "id": 1659, + "name": "Identifier", + "src": "1851:3:3" + } + ], + "id": 1661, + "name": "IndexAccess", + "src": "1829:26:3" }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1651, + "type": "uint256", + "value": "wad" + }, + "id": 1662, + "name": "Identifier", + "src": "1858:3:3" + } + ], + "id": 1663, + "name": "Assignment", + "src": "1829:32:3" + } + ], + "id": 1664, + "name": "ExpressionStatement", + "src": "1829:32:3" + }, + { + "children": [ + { + "attributes": { + "argumentTypes": null, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, + "isStructConstructorCall": false, "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1500:21:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "argumentTypes": null, - "id": 1036, - "name": "wad", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1028, - "src": "1525:3:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1544, + "type": "function (address,address,uint256)", + "value": "Approval" + }, + "id": 1665, + "name": "Identifier", + "src": "1876:8:3" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3494, + "type": "msg", + "value": "msg" + }, + "id": 1666, + "name": "Identifier", + "src": "1885:3:3" + } + ], + "id": 1667, + "name": "MemberAccess", + "src": "1885:10:3" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1649, + "type": "address", + "value": "guy" + }, + "id": 1668, + "name": "Identifier", + "src": "1897:3:3" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1651, + "type": "uint256", + "value": "wad" + }, + "id": 1669, + "name": "Identifier", + "src": "1902:3:3" } - }, - "src": "1500:28:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } + ], + "id": 1670, + "name": "FunctionCall", + "src": "1876:30:3" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1031, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 2236, - 2237 - ], - "referencedDeclaration": 2236, - "src": "1492:7:2", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } + "id": 1671, + "name": "EmitStatement", + "src": "1871:35:3" + }, + { + "attributes": { + "functionReturnParameters": 1655 }, - "id": 1038, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1492:37:2", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1039, - "nodeType": "ExpressionStatement", - "src": "1492:37:2" - }, - { - "expression": { - "argumentTypes": null, - "id": 1045, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1040, - "name": "balanceOf", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 994, - "src": "1539:9:2", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 1043, - "indexExpression": { - "argumentTypes": null, - "expression": { + "children": [ + { + "attributes": { "argumentTypes": null, - "id": 1041, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "1549:3:2", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } + "hexvalue": "74727565", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "bool", + "type": "bool", + "value": "true" }, - "id": 1042, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1549:10:2", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1539:21:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "id": 1672, + "name": "Literal", + "src": "1923:4:3" } + ], + "id": 1673, + "name": "Return", + "src": "1916:11:3" + } + ], + "id": 1674, + "name": "Block", + "src": "1819:115:3" + } + ], + "id": 1675, + "name": "FunctionDefinition", + "src": "1757:177:3" + }, + { + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "transfer", + "scope": 1771, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "dst", + "scope": 1692, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "argumentTypes": null, - "id": 1044, - "name": "wad", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1028, - "src": "1564:3:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1676, + "name": "ElementaryTypeName", + "src": "1958:7:3" } - }, - "src": "1539:28:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + ], + "id": 1677, + "name": "VariableDeclaration", + "src": "1958:11:3" }, - "id": 1046, - "nodeType": "ExpressionStatement", - "src": "1539:28:2" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ + { + "attributes": { + "constant": false, + "name": "wad", + "scope": 1692, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ { - "argumentTypes": null, - "id": 1052, - "name": "wad", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1028, - "src": "1597:3:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + "attributes": { + "name": "uint", + "type": "uint256" + }, + "id": 1678, + "name": "ElementaryTypeName", + "src": "1971:4:3" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1047, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "1577:3:2", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } + "id": 1679, + "name": "VariableDeclaration", + "src": "1971:8:3" + } + ], + "id": 1680, + "name": "ParameterList", + "src": "1957:23:3" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 1692, + "stateVariable": false, + "storageLocation": "default", + "type": "bool", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "bool", + "type": "bool" }, - "id": 1050, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1577:10:2", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "id": 1051, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transfer", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1577:19:2", - "typeDescriptions": { - "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$", - "typeString": "function (uint256)" + "id": 1681, + "name": "ElementaryTypeName", + "src": "1997:4:3" } + ], + "id": 1682, + "name": "VariableDeclaration", + "src": "1997:4:3" + } + ], + "id": 1683, + "name": "ParameterList", + "src": "1996:6:3" + }, + { + "children": [ + { + "attributes": { + "functionReturnParameters": 1683 }, - "id": 1053, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1577:24:2", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1054, - "nodeType": "ExpressionStatement", - "src": "1577:24:2" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ + "children": [ { - "argumentTypes": null, - "expression": { + "attributes": { "argumentTypes": null, - "id": 1056, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "1627:3:2", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "bool", + "type_conversion": false + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1770, + "type": "function (address,address,uint256) returns (bool)", + "value": "transferFrom" + }, + "id": 1684, + "name": "Identifier", + "src": "2020:12:3" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3494, + "type": "msg", + "value": "msg" + }, + "id": 1685, + "name": "Identifier", + "src": "2033:3:3" + } + ], + "id": 1686, + "name": "MemberAccess", + "src": "2033:10:3" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1677, + "type": "address", + "value": "dst" + }, + "id": 1687, + "name": "Identifier", + "src": "2045:3:3" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1679, + "type": "uint256", + "value": "wad" + }, + "id": 1688, + "name": "Identifier", + "src": "2050:3:3" } + ], + "id": 1689, + "name": "FunctionCall", + "src": "2020:34:3" + } + ], + "id": 1690, + "name": "Return", + "src": "2013:41:3" + } + ], + "id": 1691, + "name": "Block", + "src": "2003:58:3" + } + ], + "id": 1692, + "name": "FunctionDefinition", + "src": "1940:121:3" + }, + { + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "transferFrom", + "scope": 1771, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "src", + "scope": 1770, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" }, - "id": 1057, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1627:10:2", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, + "id": 1693, + "name": "ElementaryTypeName", + "src": "2089:7:3" + } + ], + "id": 1694, + "name": "VariableDeclaration", + "src": "2089:11:3" + }, + { + "attributes": { + "constant": false, + "name": "dst", + "scope": 1770, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ { - "argumentTypes": null, - "id": 1058, - "name": "wad", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1028, - "src": "1639:3:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 1695, + "name": "ElementaryTypeName", + "src": "2102:7:3" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" + "id": 1696, + "name": "VariableDeclaration", + "src": "2102:11:3" + }, + { + "attributes": { + "constant": false, + "name": "wad", + "scope": 1770, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint", + "type": "uint256" }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1055, - "name": "Withdrawal", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 990, - "src": "1616:10:2", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" + "id": 1697, + "name": "ElementaryTypeName", + "src": "2115:4:3" } + ], + "id": 1698, + "name": "VariableDeclaration", + "src": "2115:8:3" + } + ], + "id": 1699, + "name": "ParameterList", + "src": "2088:36:3" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 1770, + "stateVariable": false, + "storageLocation": "default", + "type": "bool", + "value": null, + "visibility": "internal" }, - "id": 1059, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1616:27:2", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1060, - "nodeType": "EmitStatement", - "src": "1611:32:2" - } - ] - }, - "documentation": null, - "id": 1062, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "withdraw", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1029, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1028, - "name": "wad", - "nodeType": "VariableDeclaration", - "scope": 1062, - "src": "1465:8:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1027, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1465:4:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1464:10:2" - }, - "returnParameters": { - "id": 1030, - "nodeType": "ParameterList", - "parameters": [], - "src": "1482:0:2" - }, - "scope": 1197, - "src": "1447:203:2", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1072, - "nodeType": "Block", - "src": "1706:45:2", - "statements": [ - { - "expression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "arguments": [ - { + "children": [ + { + "attributes": { + "name": "bool", + "type": "bool" + }, + "id": 1700, + "name": "ElementaryTypeName", + "src": "2157:4:3" + } + ], + "id": 1701, + "name": "VariableDeclaration", + "src": "2157:4:3" + } + ], + "id": 1702, + "name": "ParameterList", + "src": "2156:6:3" + }, + { + "children": [ + { + "children": [ + { + "attributes": { "argumentTypes": null, - "id": 1068, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2281, - "src": "1731:4:2", - "typeDescriptions": { - "typeIdentifier": "t_contract$_WRBTC_$1197", - "typeString": "contract WRBTC" - } - } - ], - "expression": { - "argumentTypes": [ + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false + }, + "children": [ { - "typeIdentifier": "t_contract$_WRBTC_$1197", - "typeString": "contract WRBTC" + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "overloadedDeclarations": [ + 3497, + 3498 + ], + "referencedDeclaration": 3497, + "type": "function (bool) pure", + "value": "require" + }, + "id": 1703, + "name": "Identifier", + "src": "2177:7:3" + }, + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": ">=", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1568, + "type": "mapping(address => uint256)", + "value": "balanceOf" + }, + "id": 1704, + "name": "Identifier", + "src": "2185:9:3" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1694, + "type": "address", + "value": "src" + }, + "id": 1705, + "name": "Identifier", + "src": "2195:3:3" + } + ], + "id": 1706, + "name": "IndexAccess", + "src": "2185:14:3" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1698, + "type": "uint256", + "value": "wad" + }, + "id": 1707, + "name": "Identifier", + "src": "2203:3:3" + } + ], + "id": 1708, + "name": "BinaryOperation", + "src": "2185:21:3" } ], - "id": 1067, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1723:7:2", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": "address" - }, - "id": 1069, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1723:13:2", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" + "id": 1709, + "name": "FunctionCall", + "src": "2177:30:3" } - }, - "id": 1070, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "balance", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1723:21:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 1066, - "id": 1071, - "nodeType": "Return", - "src": "1716:28:2" - } - ] - }, - "documentation": null, - "id": 1073, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "totalSupply", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1063, - "nodeType": "ParameterList", - "parameters": [], - "src": "1676:2:2" - }, - "returnParameters": { - "id": 1066, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1065, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1073, - "src": "1700:4:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1064, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1700:4:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + ], + "id": 1710, + "name": "ExpressionStatement", + "src": "2177:30:3" }, - "value": null, - "visibility": "internal" - } - ], - "src": "1699:6:2" - }, - "scope": 1197, - "src": "1656:95:2", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1100, - "nodeType": "Block", - "src": "1819:115:2", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1089, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1082, - "name": "allowance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1000, - "src": "1829:9:2", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 1086, - "indexExpression": { + { + "attributes": { + "falseBody": null + }, + "children": [ + { + "attributes": { "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1083, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "1839:3:2", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" }, - "id": 1084, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1839:10:2", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } + "operator": "&&", + "type": "bool" }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1829:21:2", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 1087, - "indexExpression": { - "argumentTypes": null, - "id": 1085, - "name": "guy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1075, - "src": "1851:3:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + "children": [ + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "!=", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1694, + "type": "address", + "value": "src" + }, + "id": 1711, + "name": "Identifier", + "src": "2222:3:3" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3494, + "type": "msg", + "value": "msg" + }, + "id": 1712, + "name": "Identifier", + "src": "2229:3:3" + } + ], + "id": 1713, + "name": "MemberAccess", + "src": "2229:10:3" + } + ], + "id": 1714, + "name": "BinaryOperation", + "src": "2222:17:3" + }, + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "!=", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "type": "mapping(address => uint256)" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1574, + "type": "mapping(address => mapping(address => uint256))", + "value": "allowance" + }, + "id": 1715, + "name": "Identifier", + "src": "2243:9:3" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1694, + "type": "address", + "value": "src" + }, + "id": 1716, + "name": "Identifier", + "src": "2253:3:3" + } + ], + "id": 1717, + "name": "IndexAccess", + "src": "2243:14:3" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3494, + "type": "msg", + "value": "msg" + }, + "id": 1718, + "name": "Identifier", + "src": "2258:3:3" + } + ], + "id": 1719, + "name": "MemberAccess", + "src": "2258:10:3" + } + ], + "id": 1720, + "name": "IndexAccess", + "src": "2243:26:3" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": true, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "uint256", + "type_conversion": true + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_minus_1_by_1", + "typeString": "int_const -1" + } + ], + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "type": "type(uint256)", + "value": "uint" + }, + "id": 1721, + "name": "ElementaryTypeNameExpression", + "src": "2273:4:3" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "operator": "-", + "prefix": true, + "type": "int_const -1" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "hexvalue": "31", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "number", + "type": "int_const 1", + "value": "1" + }, + "id": 1722, + "name": "Literal", + "src": "2279:1:3" + } + ], + "id": 1723, + "name": "UnaryOperation", + "src": "2278:2:3" + } + ], + "id": 1724, + "name": "FunctionCall", + "src": "2273:8:3" + } + ], + "id": 1725, + "name": "BinaryOperation", + "src": "2243:38:3" + } + ], + "id": 1726, + "name": "BinaryOperation", + "src": "2222:59:3" }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1829:26:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 1088, - "name": "wad", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1077, - "src": "1858:3:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + { + "children": [ + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false + }, + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "overloadedDeclarations": [ + 3497, + 3498 + ], + "referencedDeclaration": 3497, + "type": "function (bool) pure", + "value": "require" + }, + "id": 1727, + "name": "Identifier", + "src": "2297:7:3" + }, + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": ">=", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "type": "mapping(address => uint256)" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1574, + "type": "mapping(address => mapping(address => uint256))", + "value": "allowance" + }, + "id": 1728, + "name": "Identifier", + "src": "2305:9:3" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1694, + "type": "address", + "value": "src" + }, + "id": 1729, + "name": "Identifier", + "src": "2315:3:3" + } + ], + "id": 1730, + "name": "IndexAccess", + "src": "2305:14:3" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3494, + "type": "msg", + "value": "msg" + }, + "id": 1731, + "name": "Identifier", + "src": "2320:3:3" + } + ], + "id": 1732, + "name": "MemberAccess", + "src": "2320:10:3" + } + ], + "id": 1733, + "name": "IndexAccess", + "src": "2305:26:3" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1698, + "type": "uint256", + "value": "wad" + }, + "id": 1734, + "name": "Identifier", + "src": "2335:3:3" + } + ], + "id": 1735, + "name": "BinaryOperation", + "src": "2305:33:3" + } + ], + "id": 1736, + "name": "FunctionCall", + "src": "2297:42:3" + } + ], + "id": 1737, + "name": "ExpressionStatement", + "src": "2297:42:3" + }, + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "-=", + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "type": "mapping(address => uint256)" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1574, + "type": "mapping(address => mapping(address => uint256))", + "value": "allowance" + }, + "id": 1738, + "name": "Identifier", + "src": "2353:9:3" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1694, + "type": "address", + "value": "src" + }, + "id": 1739, + "name": "Identifier", + "src": "2363:3:3" + } + ], + "id": 1742, + "name": "IndexAccess", + "src": "2353:14:3" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 3494, + "type": "msg", + "value": "msg" + }, + "id": 1740, + "name": "Identifier", + "src": "2368:3:3" + } + ], + "id": 1741, + "name": "MemberAccess", + "src": "2368:10:3" + } + ], + "id": 1743, + "name": "IndexAccess", + "src": "2353:26:3" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1698, + "type": "uint256", + "value": "wad" + }, + "id": 1744, + "name": "Identifier", + "src": "2383:3:3" + } + ], + "id": 1745, + "name": "Assignment", + "src": "2353:33:3" + } + ], + "id": 1746, + "name": "ExpressionStatement", + "src": "2353:33:3" + } + ], + "id": 1747, + "name": "Block", + "src": "2283:114:3" } - }, - "src": "1829:32:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + ], + "id": 1748, + "name": "IfStatement", + "src": "2218:179:3" }, - "id": 1090, - "nodeType": "ExpressionStatement", - "src": "1829:32:2" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ + { + "children": [ { - "argumentTypes": null, - "expression": { + "attributes": { "argumentTypes": null, - "id": 1092, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "1885:3:2", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "-=", + "type": "uint256" }, - "id": 1093, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1885:10:2", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - { - "argumentTypes": null, - "id": 1094, - "name": "guy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1075, - "src": "1897:3:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 1095, - "name": "wad", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1077, - "src": "1902:3:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1568, + "type": "mapping(address => uint256)", + "value": "balanceOf" + }, + "id": 1749, + "name": "Identifier", + "src": "2407:9:3" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1694, + "type": "address", + "value": "src" + }, + "id": 1750, + "name": "Identifier", + "src": "2417:3:3" + } + ], + "id": 1751, + "name": "IndexAccess", + "src": "2407:14:3" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1698, + "type": "uint256", + "value": "wad" + }, + "id": 1752, + "name": "Identifier", + "src": "2425:3:3" + } + ], + "id": 1753, + "name": "Assignment", + "src": "2407:21:3" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" + "id": 1754, + "name": "ExpressionStatement", + "src": "2407:21:3" + }, + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "+=", + "type": "uint256" }, - { - "typeIdentifier": "t_address", - "typeString": "address" + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1568, + "type": "mapping(address => uint256)", + "value": "balanceOf" + }, + "id": 1755, + "name": "Identifier", + "src": "2438:9:3" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1696, + "type": "address", + "value": "dst" + }, + "id": 1756, + "name": "Identifier", + "src": "2448:3:3" + } + ], + "id": 1757, + "name": "IndexAccess", + "src": "2438:14:3" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1698, + "type": "uint256", + "value": "wad" + }, + "id": 1758, + "name": "Identifier", + "src": "2456:3:3" + } + ], + "id": 1759, + "name": "Assignment", + "src": "2438:21:3" + } + ], + "id": 1760, + "name": "ExpressionStatement", + "src": "2438:21:3" + }, + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1091, - "name": "Approval", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 970, - "src": "1876:8:2", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1552, + "type": "function (address,address,uint256)", + "value": "Transfer" + }, + "id": 1761, + "name": "Identifier", + "src": "2475:8:3" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1694, + "type": "address", + "value": "src" + }, + "id": 1762, + "name": "Identifier", + "src": "2484:3:3" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1696, + "type": "address", + "value": "dst" + }, + "id": 1763, + "name": "Identifier", + "src": "2489:3:3" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1698, + "type": "uint256", + "value": "wad" + }, + "id": 1764, + "name": "Identifier", + "src": "2494:3:3" + } + ], + "id": 1765, + "name": "FunctionCall", + "src": "2475:23:3" } - }, - "id": 1096, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1876:30:2", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } + ], + "id": 1766, + "name": "EmitStatement", + "src": "2470:28:3" }, - "id": 1097, - "nodeType": "EmitStatement", - "src": "1871:35:2" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 1098, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1923:4:2", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + { + "attributes": { + "functionReturnParameters": 1702 }, - "value": "true" - }, - "functionReturnParameters": 1081, - "id": 1099, - "nodeType": "Return", - "src": "1916:11:2" - } - ] - }, - "documentation": null, - "id": 1101, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "approve", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1078, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1075, - "name": "guy", - "nodeType": "VariableDeclaration", - "scope": 1101, - "src": "1774:11:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1074, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1774:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1077, - "name": "wad", - "nodeType": "VariableDeclaration", - "scope": 1101, - "src": "1787:8:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1076, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1787:4:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1773:23:2" - }, - "returnParameters": { - "id": 1081, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1080, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1101, - "src": "1813:4:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1079, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1813:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1812:6:2" - }, - "scope": 1197, - "src": "1757:177:2", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1117, - "nodeType": "Block", - "src": "2003:58:2", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ + "children": [ { - "argumentTypes": null, - "expression": { + "attributes": { "argumentTypes": null, - "id": 1111, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "2033:3:2", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } + "hexvalue": "74727565", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "bool", + "type": "bool", + "value": "true" }, - "id": 1112, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2033:10:2", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - { - "argumentTypes": null, - "id": 1113, - "name": "dst", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1103, - "src": "2045:3:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 1114, - "name": "wad", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "2050:3:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + "id": 1767, + "name": "Literal", + "src": "2516:4:3" } ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1110, - "name": "transferFrom", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1196, - "src": "2020:12:2", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,address,uint256) returns (bool)" - } - }, - "id": 1115, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2020:34:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 1109, - "id": 1116, - "nodeType": "Return", - "src": "2013:41:2" - } - ] - }, - "documentation": null, - "id": 1118, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "transfer", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1106, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1103, - "name": "dst", - "nodeType": "VariableDeclaration", - "scope": 1118, - "src": "1958:11:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1102, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1958:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1105, - "name": "wad", - "nodeType": "VariableDeclaration", - "scope": 1118, - "src": "1971:8:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1104, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1971:4:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1957:23:2" - }, - "returnParameters": { - "id": 1109, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1108, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1118, - "src": "1997:4:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1107, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1997:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1996:6:2" - }, - "scope": 1197, - "src": "1940:121:2", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1195, - "nodeType": "Block", - "src": "2167:360:2", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1134, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1130, - "name": "balanceOf", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 994, - "src": "2185:9:2", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 1132, - "indexExpression": { - "argumentTypes": null, - "id": 1131, - "name": "src", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1120, - "src": "2195:3:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2185:14:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "argumentTypes": null, - "id": 1133, - "name": "wad", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1124, - "src": "2203:3:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2185:21:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1129, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 2236, - 2237 - ], - "referencedDeclaration": 2236, - "src": "2177:7:2", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1135, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2177:30:2", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1136, - "nodeType": "ExpressionStatement", - "src": "2177:30:2" - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1152, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 1140, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 1137, - "name": "src", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1120, - "src": "2222:3:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1138, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "2229:3:2", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1139, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2229:10:2", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "src": "2222:17:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1151, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1141, - "name": "allowance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1000, - "src": "2243:9:2", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 1143, - "indexExpression": { - "argumentTypes": null, - "id": 1142, - "name": "src", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1120, - "src": "2253:3:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2243:14:2", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 1146, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1144, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "2258:3:2", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1145, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2258:10:2", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2243:26:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1149, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "-", - "prefix": true, - "src": "2278:2:2", - "subExpression": { - "argumentTypes": null, - "hexValue": "31", - "id": 1148, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2279:1:2", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "typeDescriptions": { - "typeIdentifier": "t_rational_minus_1_by_1", - "typeString": "int_const -1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_minus_1_by_1", - "typeString": "int_const -1" - } - ], - "id": 1147, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2273:4:2", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint256_$", - "typeString": "type(uint256)" - }, - "typeName": "uint" - }, - "id": 1150, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2273:8:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2243:38:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "2222:59:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 1174, - "nodeType": "IfStatement", - "src": "2218:179:2", - "trueBody": { - "id": 1173, - "nodeType": "Block", - "src": "2283:114:2", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1161, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1154, - "name": "allowance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1000, - "src": "2305:9:2", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 1156, - "indexExpression": { - "argumentTypes": null, - "id": 1155, - "name": "src", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1120, - "src": "2315:3:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2305:14:2", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 1159, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1157, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "2320:3:2", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1158, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2320:10:2", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2305:26:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "argumentTypes": null, - "id": 1160, - "name": "wad", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1124, - "src": "2335:3:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2305:33:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1153, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 2236, - 2237 - ], - "referencedDeclaration": 2236, - "src": "2297:7:2", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1162, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2297:42:2", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1163, - "nodeType": "ExpressionStatement", - "src": "2297:42:2" - }, - { - "expression": { - "argumentTypes": null, - "id": 1171, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1164, - "name": "allowance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1000, - "src": "2353:9:2", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 1168, - "indexExpression": { - "argumentTypes": null, - "id": 1165, - "name": "src", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1120, - "src": "2363:3:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2353:14:2", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 1169, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1166, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2233, - "src": "2368:3:2", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1167, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2368:10:2", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2353:26:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "argumentTypes": null, - "id": 1170, - "name": "wad", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1124, - "src": "2383:3:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2353:33:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1172, - "nodeType": "ExpressionStatement", - "src": "2353:33:2" - } - ] - } - }, - { - "expression": { - "argumentTypes": null, - "id": 1179, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1175, - "name": "balanceOf", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 994, - "src": "2407:9:2", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 1177, - "indexExpression": { - "argumentTypes": null, - "id": 1176, - "name": "src", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1120, - "src": "2417:3:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2407:14:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "argumentTypes": null, - "id": 1178, - "name": "wad", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1124, - "src": "2425:3:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2407:21:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1180, - "nodeType": "ExpressionStatement", - "src": "2407:21:2" - }, - { - "expression": { - "argumentTypes": null, - "id": 1185, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1181, - "name": "balanceOf", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 994, - "src": "2438:9:2", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 1183, - "indexExpression": { - "argumentTypes": null, - "id": 1182, - "name": "dst", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1122, - "src": "2448:3:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2438:14:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "argumentTypes": null, - "id": 1184, - "name": "wad", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1124, - "src": "2456:3:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2438:21:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1186, - "nodeType": "ExpressionStatement", - "src": "2438:21:2" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1188, - "name": "src", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1120, - "src": "2484:3:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 1189, - "name": "dst", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1122, - "src": "2489:3:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 1190, - "name": "wad", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1124, - "src": "2494:3:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1187, - "name": "Transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 978, - "src": "2475:8:2", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 1191, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2475:23:2", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1192, - "nodeType": "EmitStatement", - "src": "2470:28:2" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 1193, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2516:4:2", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 1128, - "id": 1194, - "nodeType": "Return", - "src": "2509:11:2" - } - ] - }, - "documentation": null, - "id": 1196, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "transferFrom", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1125, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1120, - "name": "src", - "nodeType": "VariableDeclaration", - "scope": 1196, - "src": "2089:11:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1119, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2089:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1122, - "name": "dst", - "nodeType": "VariableDeclaration", - "scope": 1196, - "src": "2102:11:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1121, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2102:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1124, - "name": "wad", - "nodeType": "VariableDeclaration", - "scope": 1196, - "src": "2115:8:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1123, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2115:4:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2088:36:2" - }, - "returnParameters": { - "id": 1128, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1127, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1196, - "src": "2157:4:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1126, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2157:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2156:6:2" - }, - "scope": 1197, - "src": "2067:460:2", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" + "id": 1768, + "name": "Return", + "src": "2509:11:3" + } + ], + "id": 1769, + "name": "Block", + "src": "2167:360:3" + } + ], + "id": 1770, + "name": "FunctionDefinition", + "src": "2067:460:3" } ], - "scope": 1198, - "src": "721:1808:2" + "id": 1771, + "name": "ContractDefinition", + "src": "721:1808:3" } ], - "src": "686:37000:2" + "id": 1772, + "name": "SourceUnit", + "src": "686:37000:3" }, "compiler": { "name": "solc", "version": "0.5.16+commit.9c3226ce.Emscripten.clang" }, "networks": {}, - "schemaVersion": "3.3.2", - "updatedAt": "2021-03-26T10:10:09.406Z", + "schemaVersion": "3.4.1", + "updatedAt": "2022-02-15T06:13:50.447Z", "devdoc": { "methods": {} }, diff --git a/rbtcwrapperproxy/contracts/RBTCWrapperProxy.sol b/rbtcwrapperproxy/contracts/RBTCWrapperProxy.sol index 83ce4bb..28e2ac4 100644 --- a/rbtcwrapperproxy/contracts/RBTCWrapperProxy.sol +++ b/rbtcwrapperproxy/contracts/RBTCWrapperProxy.sol @@ -8,16 +8,19 @@ import "./interfaces/ISmartToken.sol"; import "./interfaces/IERC20Token.sol"; import "./interfaces/IWrbtcERC20.sol"; import "./interfaces/ISovrynSwapNetwork.sol"; -import "./interfaces/ISovrynSwapFormula.sol"; import "./interfaces/IContractRegistry.sol"; import "./ContractRegistryClient.sol"; import "./mockups/LiquidityMining.sol"; import "./interfaces/ILoanToken.sol"; +import "./openzeppelin/SafeERC20.sol"; +import "./interfaces/IERC20.sol"; + contract RBTCWrapperProxy is ContractRegistryClient { using Address for address; using SafeMath for uint256; + using SafeERC20 for IERC20; address public wrbtcTokenAddress; address public sovrynSwapNetworkAddress; @@ -70,6 +73,7 @@ contract RBTCWrapperProxy is ContractRegistryClient { * @param _provider liquidity provider * @param _reserveTokens added reserve tokens * @param _reserveAmounts added reserve token amounts + * @param _poolTokenAmount burned pool token amount */ event LiquidityRemovedFromV1( address indexed _provider, @@ -117,6 +121,18 @@ contract RBTCWrapperProxy is ContractRegistryClient { uint256 assetAmount ); + /** + * @dev triggered when the owner of the contract withdraw the stuck token. + * @param token the address of the token, 0 address means rbtc. + * @param recipient the recipient of the withdrawal. + * @param totalWithdrawn total withdrawn token / rbtc. + */ + event Withdraw( + address indexed token, + address indexed recipient, + uint256 totalWithdrawn + ); + /** * @dev To check if ddress is contract address */ @@ -199,13 +215,15 @@ contract RBTCWrapperProxy is ContractRegistryClient { /** * @dev + * This function support to provide liquidity for both wrbtc & non-wrbtc pool. * The process: - * 1.Accepts RBTC - * 2.Sends RBTC to WRBTC contract in order to wrap RBTC to WRBTC - * 3.Accepts reserve token and approve LiquidityPoolConverter to transfer - * 4.Calls 'addLiquidity' on LiquidityPoolConverter contract - * 5.Transfers pool tokens to user - * + * 1. If wrbtc pairs (in reserveTokens) provided, RBTC is required to be sent, the value of msg.value must be identical with the reserveAmounts. + * 2. If RBTC sent to non wrbtc pairs, it will revert. + * 3. For wrbtc pairs, the RBTC sent will be converted to WRBTC. + * 4. For non-wrbtc token users need to approve the token first. + * 5.Transfers pool tokens to user. + * 6. Refund the excess back to caller (msg.sender). + * * @param _liquidityPoolConverterAddress address of LiquidityPoolConverter contract * @param _reserveTokens address of each reserve token. The first element should be the address of WRBTC * @param _reserveAmounts amount of each reserve token. The first element should be the amount of RBTC @@ -216,7 +234,7 @@ contract RBTCWrapperProxy is ContractRegistryClient { function addLiquidityToV1( address _liquidityPoolConverterAddress, IERC20Token[] memory _reserveTokens, - uint256[] memory _reserveAmounts, + uint256[] memory _reserveAmounts, uint256 _minReturn ) public @@ -224,32 +242,24 @@ contract RBTCWrapperProxy is ContractRegistryClient { checkAddress(_liquidityPoolConverterAddress) returns(uint256) { - require(address(_reserveTokens[0]) == wrbtcTokenAddress, "The first reserve token must be WRBTC"); - require(_reserveAmounts[0] == msg.value, "The provided amount of RBTC should be identical to msg.value"); + if(msg.value > 0) require(address(_reserveTokens[0]) == wrbtcTokenAddress || address(_reserveTokens[1]) == wrbtcTokenAddress, "RBTC is not allowed for non-wrbtc pairs"); - bool success; - uint256 amount; ILiquidityPoolV1Converter _liquidityPoolConverter = ILiquidityPoolV1Converter(_liquidityPoolConverterAddress); ISmartToken _poolToken = ISmartToken(address(_liquidityPoolConverter.token())); - uint32 reserveRatio_ = _liquidityPoolConverter.reserveRatio(); - uint256 totalSupplyBefore = _poolToken.totalSupply(); - uint256[] memory rsvBalances = new uint256[](_reserveTokens.length); - - IWrbtcERC20(wrbtcTokenAddress).deposit.value(_reserveAmounts[0])(); - success = IWrbtcERC20(wrbtcTokenAddress).approve(_liquidityPoolConverterAddress, _reserveAmounts[0]); - require(success, "Failed to approve converter to transfer WRBTC"); + uint256[] memory initialProxyBalances = new uint256[](_reserveTokens.length); - for (uint256 i = 1; i < _reserveTokens.length; i++) { - success = IERC20Token(_reserveTokens[i]).transferFrom(msg.sender, address(this), _reserveAmounts[i]); - require(success, "Failed to transfer reserve token from user"); - success = IERC20Token(_reserveTokens[i]).approve(_liquidityPoolConverterAddress, _reserveAmounts[i]); - require(success, "Failed to approve converter to transfer reserve token"); - - (rsvBalances[i], , , , ) = _liquidityPoolConverter.reserves(address(_reserveTokens[i])); + for (uint256 i = 0; i < _reserveTokens.length; i++) { + initialProxyBalances[i] = IERC20Token(_reserveTokens[i]).balanceOf(address(this)); + if(address(_reserveTokens[i]) == wrbtcTokenAddress) { + require(_reserveAmounts[i] == msg.value, "The provided amount of RBTC should be identical to msg.value"); + IWrbtcERC20(wrbtcTokenAddress).deposit.value(_reserveAmounts[i])(); + require(IWrbtcERC20(wrbtcTokenAddress).approve(_liquidityPoolConverterAddress, _reserveAmounts[i]), "Failed to approve converter to transfer WRBTC"); + } else { + require(IERC20Token(_reserveTokens[i]).transferFrom(msg.sender, address(this), _reserveAmounts[i]), "Failed to transfer reserve token from user"); + require(IERC20Token(_reserveTokens[i]).approve(_liquidityPoolConverterAddress, _reserveAmounts[i]), "Failed to approve converter to transfer reserve token"); + } } - (rsvBalances[0], , , , ) = _liquidityPoolConverter.reserves(wrbtcTokenAddress); - uint256 poolTokenAmountBefore = _poolToken.balanceOf(address(this)); _liquidityPoolConverter.addLiquidity(_reserveTokens, _reserveAmounts, _minReturn); uint256 poolTokenAmount = _poolToken.balanceOf(address(this)).sub(poolTokenAmountBefore); @@ -258,20 +268,7 @@ contract RBTCWrapperProxy is ContractRegistryClient { _poolToken.approve(address(liquidityMiningContract), poolTokenAmount); liquidityMiningContract.deposit(address(_poolToken), poolTokenAmount, msg.sender); - for (uint256 i = 1; i < _reserveTokens.length; i++) { - amount = _reserveAmounts[i].sub(ISovrynSwapFormula(addressOf(SOVRYNSWAP_FORMULA)).fundCost(totalSupplyBefore, rsvBalances[i], reserveRatio_, poolTokenAmount)); - if (amount > 0) { - success = _reserveTokens[i].transfer(msg.sender, amount); - require(success, "Failed to transfer extra reserve token back to user"); - } - } - - amount = _reserveAmounts[0].sub(ISovrynSwapFormula(addressOf(SOVRYNSWAP_FORMULA)).fundCost(totalSupplyBefore, rsvBalances[0], reserveRatio_, poolTokenAmount)); - if (amount > 0) { - IWrbtcERC20(wrbtcTokenAddress).withdraw(amount); - (success,) = msg.sender.call.value(amount)(""); - require(success, "Failed to send extra RBTC back to user"); - } + _refund(_liquidityPoolConverterAddress, _reserveTokens, initialProxyBalances); emit LiquidityAddedToV1(msg.sender, _reserveTokens, _reserveAmounts, poolTokenAmount); @@ -355,7 +352,6 @@ contract RBTCWrapperProxy is ContractRegistryClient { checkAddress(_liquidityPoolConverterAddress) { require(_amount > 0, "The amount should larger than zero"); - require(address(_reserveTokens[0]) == wrbtcTokenAddress, "The first reserve token must be WRBTC"); uint256[] memory reserveAmounts = new uint256[](_reserveTokens.length); ILiquidityPoolV1Converter _liquidityPoolConverter = ILiquidityPoolV1Converter(_liquidityPoolConverterAddress); @@ -374,24 +370,22 @@ contract RBTCWrapperProxy is ContractRegistryClient { uint256 reserveAmount; bool successOfTransfer; - for (uint256 i = 1; i < lengthOfToken; i++) { - - reserveAmount = _reserveTokens[i].balanceOf(address(this)).sub(reserveAmountBefore[i]); - require(reserveAmount >= _reserveMinReturnAmounts[i], "min return too high"); - reserveAmounts[i] = reserveAmount; - - - successOfTransfer = IERC20Token(_reserveTokens[i]).transfer(msg.sender, reserveAmount); - require(successOfTransfer, "Failed to transfer reserve token to user"); + for (uint256 i = 0; i < lengthOfToken; i++) { + if(address(_reserveTokens[i]) == wrbtcTokenAddress) { + uint256 wrbtcAmount = _reserveTokens[i].balanceOf(address(this)).sub(reserveAmountBefore[i]); + reserveAmounts[i] = wrbtcAmount; + IWrbtcERC20(wrbtcTokenAddress).withdraw(wrbtcAmount); + (bool successOfSendRBTC,) = msg.sender.call.value(wrbtcAmount)(""); + require(successOfSendRBTC, "Failed to send RBTC to user"); + } else { + reserveAmount = _reserveTokens[i].balanceOf(address(this)).sub(reserveAmountBefore[i]); + reserveAmounts[i] = reserveAmount; + + successOfTransfer = IERC20Token(_reserveTokens[i]).transfer(msg.sender, reserveAmount); + require(successOfTransfer, "Failed to transfer reserve token to user"); + } } - uint256 wrbtcAmount = _reserveTokens[0].balanceOf(address(this)).sub(reserveAmountBefore[0]); - require(wrbtcAmount >= _reserveMinReturnAmounts[0], "min return too high"); - reserveAmounts[0] = wrbtcAmount; - IWrbtcERC20(wrbtcTokenAddress).withdraw(wrbtcAmount); - (bool successOfSendRBTC,) = msg.sender.call.value(wrbtcAmount)(""); - require(successOfSendRBTC, "Failed to send RBTC to user"); - emit LiquidityRemovedFromV1(msg.sender, _reserveTokens, reserveAmounts, _amount); } @@ -456,45 +450,57 @@ contract RBTCWrapperProxy is ContractRegistryClient { } /** - * @notice provides funds to a lending pool and deposits the pool tokens into the liquidity mining contract. - * @param loanTokenAddress the address of the loan token (aka lending pool) - * @param depositAmount he amount of underlying tokens to deposit + * @dev + * Function to do the refund there is any excess when providing the liquidity. + * if wrbtc excess then will refund as rbtc. + * if non-wrbtc, then will be refunded in form of the token itself. + * + * @notice + * This function is one of the solution to fix the stack too deep issue. + * + * @param _liquidityPoolConverterAddress converter address. + * @param _reserveTokens reserve tokens of the pool. + * @param _initialProxyBalances initial token balance of this proxy. */ - function addToLendingPool(address loanTokenAddress, uint256 depositAmount) public{ - LoanToken loanToken = LoanToken(loanTokenAddress); - IERC20Token underlyingAsset = IERC20Token(loanToken.loanTokenAddress()); - - //retrieve the underlying asset from the user - require(underlyingAsset.transferFrom(msg.sender, address(this), depositAmount), "Failed to transfer tokens to the wrapper proxy"); - - //add the tokens to the lending pool - underlyingAsset.approve(loanTokenAddress, depositAmount); - uint256 minted = loanToken.mint(address(this), depositAmount); - - //deposit the pool tokens in the liquidity mining contract on the sender's behalf - loanToken.approve(address(liquidityMiningContract), minted); - liquidityMiningContract.deposit(loanTokenAddress, minted, msg.sender); - - emit LoanTokensMinted(msg.sender, minted, depositAmount); + function _refund( + address _liquidityPoolConverterAddress, + IERC20Token[] memory _reserveTokens, + uint256[] memory _initialProxyBalances + ) private { + for (uint256 i = 0; i < _reserveTokens.length; i++) { + uint256 latestTokenBalance = _reserveTokens[i].balanceOf(address(this)); + uint256 amount = latestTokenBalance.sub(_initialProxyBalances[i]); + if (amount > 0) { + require(_reserveTokens[i].approve(_liquidityPoolConverterAddress, 0), "Failed to reset approval"); + if(address(_reserveTokens[i]) == wrbtcTokenAddress ) { + IWrbtcERC20(wrbtcTokenAddress).withdraw(amount); + (bool success,) = msg.sender.call.value(amount)(""); + require(success, "Failed to send extra RBTC back to user"); + } else { + require(_reserveTokens[i].transfer(msg.sender, amount), "Failed to transfer extra reserve token back to user"); + } + } + } } /** - * @notice removes funds from the liquidity mining contract, burns them on the lending pool and - * provides the underlying asset to the user - * @param loanTokenAddress the address of the loan token (aka lending pool) - * @param burnAmount the amount of pool tokens to withdraw from the lending pool and burn + * @dev Owner withdraw stuck token / rbtc in this contract. + * + * @param token The token address that will be withdrawn. Pass 0 address for withdrawing rbtc. + * @param to The recipient of withdrawal. + * @param amount amount to the withdraw token / rbtc */ - function removeFromLendingPool(address loanTokenAddress, uint256 burnAmount) public{ - LoanToken loanToken = LoanToken(loanTokenAddress); - - //withdraw always transfers the pool tokens to the caller and the reward tokens to the passed address - liquidityMiningContract.withdraw(loanTokenAddress, burnAmount, msg.sender); - - //burn pool token and directly send underlying tokens to the receiver - loanToken.approve(address(liquidityMiningContract), burnAmount); - uint256 redeemed = loanToken.burn(msg.sender, burnAmount); + function withdraw(address token, address to, uint256 amount) external ownerOnly { + require(amount > 0, "non-zero withdraw amount expected"); + require(to != address(0), "receiver address invalid"); + + if (token == address(0)) { + (bool success, ) = to.call.value(amount)(""); + require(success, "transfer failed"); + } else { + IERC20(token).safeTransfer(to, amount); + } - emit LoanTokensBurnt(msg.sender, burnAmount, redeemed); + emit Withdraw(token, to, amount); } - } \ No newline at end of file diff --git a/rbtcwrapperproxy/contracts/interfaces/ISovrynSwapNetwork.sol b/rbtcwrapperproxy/contracts/interfaces/ISovrynSwapNetwork.sol index 7488535..84f8f2a 100644 --- a/rbtcwrapperproxy/contracts/interfaces/ISovrynSwapNetwork.sol +++ b/rbtcwrapperproxy/contracts/interfaces/ISovrynSwapNetwork.sol @@ -18,7 +18,7 @@ interface ISovrynSwapNetwork { function registerEtherToken(IEtherToken _token, bool _register) external; - function conversionPath(IERC20Token _sourceToken, IERC20Token _targetToken) external view returns (address[] memory); + function conversionPath(IERC20Token _sourceToken, IERC20Token _targetToken) external view returns (IERC20Token[] memory); function rateByPath(IERC20Token[] calldata _path, uint256 _amount) external view returns (uint256); diff --git a/rbtcwrapperproxy/contracts/mockups/WRBTCMockup.sol b/rbtcwrapperproxy/contracts/mockups/WRBTCMockup.sol new file mode 100644 index 0000000..c3e56cb --- /dev/null +++ b/rbtcwrapperproxy/contracts/mockups/WRBTCMockup.sol @@ -0,0 +1,9 @@ +pragma solidity >=0.5.16 <0.6.0; + +import "../WRBTC.sol"; + +contract WRBTCMockup is WRBTC { + function sendRBTC(address payable recipient, uint256 amount) external { + recipient.transfer(amount); + } +} diff --git a/rbtcwrapperproxy/contracts/openzeppelin/SafeERC20.sol b/rbtcwrapperproxy/contracts/openzeppelin/SafeERC20.sol new file mode 100644 index 0000000..215d11f --- /dev/null +++ b/rbtcwrapperproxy/contracts/openzeppelin/SafeERC20.sol @@ -0,0 +1,95 @@ +pragma solidity >=0.5.0 <0.6.0; + +import "./SafeMath.sol"; +import "./Address.sol"; +import "../interfaces/IERC20.sol"; + +/** + * @title SafeERC20 + * @dev Wrappers around ERC20 operations that throw on failure (when the token + * contract returns false). Tokens that return no value (and instead revert or + * throw on failure) are also supported, non-reverting calls are assumed to be + * successful. + * To use this library you can add a `using SafeERC20 for ERC20;` statement to your contract, + * which allows you to call the safe operations as `token.safeTransfer(...)`, etc. + */ +library SafeERC20 { + using SafeMath for uint256; + using Address for address; + + function safeTransfer( + IERC20 token, + address to, + uint256 value + ) internal { + callOptionalReturn(token, abi.encodeWithSelector(token.transfer.selector, to, value)); + } + + function safeTransferFrom( + IERC20 token, + address from, + address to, + uint256 value + ) internal { + callOptionalReturn(token, abi.encodeWithSelector(token.transferFrom.selector, from, to, value)); + } + + function safeApprove( + IERC20 token, + address spender, + uint256 value + ) internal { + // safeApprove should only be called when setting an initial allowance, + // or when resetting it to zero. To increase and decrease it, use + // 'safeIncreaseAllowance' and 'safeDecreaseAllowance' + // solhint-disable-next-line max-line-length + require((value == 0) || (token.allowance(address(this), spender) == 0), "SafeERC20: approve from non-zero to non-zero allowance"); + callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, value)); + } + + function safeIncreaseAllowance( + IERC20 token, + address spender, + uint256 value + ) internal { + uint256 newAllowance = token.allowance(address(this), spender).add(value); + callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, newAllowance)); + } + + function safeDecreaseAllowance( + IERC20 token, + address spender, + uint256 value + ) internal { + uint256 newAllowance = token.allowance(address(this), spender).sub(value); + callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, newAllowance)); + } + + /** + * @dev Imitates a Solidity high-level call (i.e. a regular function call to a contract), relaxing the requirement + * on the return value: the return value is optional (but if data is returned, it must not be false). + * @param token The token targeted by the call. + * @param data The call data (encoded using abi.encode or one of its variants). + */ + function callOptionalReturn(IERC20 token, bytes memory data) private { + // We need to perform a low level call here, to bypass Solidity's return data size checking mechanism, since + // we're implementing it ourselves. + + // A Solidity high level call has three parts: + // 1. The target address is checked to verify it contains contract code + // 2. The call itself is made, and success asserted + // 3. The return value is decoded, which in turn checks the size of the returned data. + // solhint-disable-next-line max-line-length + require(address(token).isContract(), "SafeERC20: call to non-contract"); + + // solhint-disable-next-line avoid-low-level-calls + (bool success, bytes memory returndata) = address(token).call(data); + require(success, "SafeERC20: low-level call failed"); + + if (returndata.length > 0) { + // Return data is optional + // solhint-disable-next-line max-line-length + require(abi.decode(returndata, (bool)), "SafeERC20: ERC20 operation did not succeed"); + } + } +} diff --git a/rbtcwrapperproxy/migrations/2_deploy_RBTCWrapperProxy.js b/rbtcwrapperproxy/migrations/2_deploy_RBTCWrapperProxy.js index 340c0c7..787a7e8 100644 --- a/rbtcwrapperproxy/migrations/2_deploy_RBTCWrapperProxy.js +++ b/rbtcwrapperproxy/migrations/2_deploy_RBTCWrapperProxy.js @@ -12,22 +12,31 @@ const getSOVConfig = () => { }; module.exports = function (deployer, network) { - if(network == "development"){ - console.log(getConfig()["SUSD"].addr) - return deployer.deploy(LoanToken, getConfig()["SUSD"].addr).then(function() { - return deployer.deploy(LiquidityMining, getSOVConfig()["SOV"].addr).then(function() { - return deployer.deploy(RBTCWrapperProxy, getConfig()["RBTC"].addr, getConfig()["sovrynSwapNetwork"].addr, getConfig()["contractRegistry"].addr, LiquidityMining.address); + if (network == "development") { + console.log(getConfig()["SUSD"].addr); + + return deployer.deploy(LoanToken, getConfig()["SUSD"].addr).then(function () { + return deployer.deploy(LiquidityMining, getSOVConfig()["SOV"].addr).then(function () { + return deployer.deploy( + RBTCWrapperProxy, + getConfig()["RBTC"].addr, + getConfig()["sovrynSwapNetwork"].addr, + getConfig()["contractRegistry"].addr, + LiquidityMining.address + ); }); }); - } - - else{ - liquidityMiningAddress = '0xe28aEbA913c34EC8F10DF0D9C92D2Aa27545870e'; - wrbtcAddress = '0x69FE5cEC81D5eF92600c1A0dB1F11986AB3758Ab'; - swapNetworkAddress = '0x61172B53423E205a399640e5283e51FE60EC2256'; - contractRegistry = '0x0E7CcF6A67e614B507Aa524572F72C7e5Dec23CB'; + } else if (network == "testnet") { + wrbtcAddress = "0x69FE5cEC81D5eF92600c1A0dB1F11986AB3758Ab"; + swapNetworkAddress = "0x61172B53423E205a399640e5283e51FE60EC2256"; + contractRegistry = "0x0E7CcF6A67e614B507Aa524572F72C7e5Dec23CB"; + liquidityMiningAddress = "0xe28aEbA913c34EC8F10DF0D9C92D2Aa27545870e"; return deployer.deploy(RBTCWrapperProxy, wrbtcAddress, swapNetworkAddress, contractRegistry, liquidityMiningAddress); - - } - + } else if (network == "mainnet") { + wrbtcAddress = "0x542fda317318ebf1d3deaf76e0b632741a7e677d"; + swapNetworkAddress = "0x98aCE08D2b759a265ae326F010496bcD63C15afc"; + contractRegistry = "0x46EBC03EF2277308BdB106a73d11c65109C4B89B"; + liquidityMiningAddress = "0xf730af26e87D9F55E46A6C447ED2235C385E55e0"; + return deployer.deploy(RBTCWrapperProxy, wrbtcAddress, swapNetworkAddress, contractRegistry, liquidityMiningAddress); + } else console.log("Not deployed: unsupported network."); }; diff --git a/rbtcwrapperproxy/test/testRBTCWrapperProxy.js b/rbtcwrapperproxy/test/testRBTCWrapperProxy.js index 631d148..5d879b1 100644 --- a/rbtcwrapperproxy/test/testRBTCWrapperProxy.js +++ b/rbtcwrapperproxy/test/testRBTCWrapperProxy.js @@ -4,19 +4,27 @@ require("@openzeppelin/test-helpers/configure")({ abstraction: "truffle", }, }); + +const { decodeLogs } = require("../../solidity/test/helpers/lib.js"); +const WRBTC = artifacts.require("./WRBTC.sol"); + const fs = require("fs"); const assert = require("chai").assert; -const { expectRevert, expectEvent, BN } = require("@openzeppelin/test-helpers"); +const { expectRevert, expectEvent, BN, constants } = require("@openzeppelin/test-helpers"); +const { ZERO_ADDRESS } = require("@openzeppelin/test-helpers/src/constants"); +const { expect } = require("chai"); const RBTCWrapperProxy = artifacts.require("../RBTCWrapperProxy.sol"); const IERC20Token = artifacts.require("../interfaces/IERC20Token.sol"); const ISmartToken = artifacts.require("../interfaces/ISmartToken.sol"); const ISovrynSwapNetwork = artifacts.require("../interfaces/ISovrynSwapNetwork.sol"); const ILiquidityPoolV1Converter = artifacts.require("../interfaces/ILiquidityPoolV1Converter.sol"); -const ILiquidityPoolV2Converter = artifacts.require("../interfaces/ILiquidityPoolV2Converter.sol"); +// const ILiquidityPoolV2Converter = artifacts.require("../interfaces/ILiquidityPoolV2Converter.sol"); const LiquidityMining = artifacts.require("../mockups/LiquidityMining.sol"); const LoanToken = artifacts.require("../mockups/LoanToken.sol"); +const WRBTCMockup = artifacts.require("../mockups/WRBTCMockup.sol"); +const IERC20 = artifacts.require("../interfaces/IERC20.sol"); const getConfig = () => { return JSON.parse(fs.readFileSync("../solidity/utils/config_rsk.json", { encoding: "utf8" })); @@ -26,28 +34,34 @@ const getConfigFromSOV = () => { return JSON.parse(fs.readFileSync("../solidity/utils/addSOV.json", { encoding: "utf8" })); }; +const getConfigFromSUSDSOV = () => { + return JSON.parse(fs.readFileSync("../solidity/utils/addUSDSOV.json", { encoding: "utf8" })); +}; + const liquidityPoolV1ConverterAddress = getConfigFromSOV()["newLiquidityPoolV1Converter"].addr; -const liquidityPoolV2ConverterAddress = getConfig()["newLiquidityPoolV2Converter"].addr; +const liquidityPoolV1ConverterUSDSOV = getConfigFromSUSDSOV()["newLiquidityPoolV1Converter"].addr; +// const liquidityPoolV2ConverterAddress = getConfig()["newLiquidityPoolV2Converter"].addr; const sovrynSwapNetworkAddress = getConfig()["sovrynSwapNetwork"].addr; const wrbtcAddress = getConfig()["RBTC"].addr; const sovTokenAddress = getConfigFromSOV()["SOV"].addr; const usdTokenAddress = getConfig()["SUSD"].addr; contract("RBTCWrapperProxy", async (accounts) => { - let rbtcWrapperProxy, liquidityPoolV1Converter, liquidityPoolV2Converter, poolTokenV1Address, wrbtcPoolTokenV2Address, poolTokenV1, wrbtcPoolTokenV2, sovToken, usdToken, sovrynSwapNetwork; + let rbtcWrapperProxy, liquidityPoolV1Converter, liquidityPoolV2Converter, poolTokenV1Address, wrbtcPoolTokenV2Address, poolTokenV1, wrbtcPoolTokenV2, sovToken, usdToken, wrbtcToken, sovrynSwapNetwork; before(async () => { rbtcWrapperProxy = await RBTCWrapperProxy.deployed(); liquidityPoolV1Converter = await ILiquidityPoolV1Converter.at(liquidityPoolV1ConverterAddress); - liquidityPoolV2Converter = await ILiquidityPoolV2Converter.at(liquidityPoolV2ConverterAddress); + // liquidityPoolV2Converter = await ILiquidityPoolV2Converter.at(liquidityPoolV2ConverterAddress); poolTokenV1Address = await liquidityPoolV1Converter.token(); poolTokenV1 = await ISmartToken.at(poolTokenV1Address); - wrbtcPoolTokenV2Address = await liquidityPoolV2Converter.poolToken(wrbtcAddress); - wrbtcPoolTokenV2 = await ISmartToken.at(wrbtcPoolTokenV2Address); - usdPoolTokenV2Address = await liquidityPoolV2Converter.poolToken(usdTokenAddress); - usdPoolTokenV2 = await ISmartToken.at(usdPoolTokenV2Address); + // wrbtcPoolTokenV2Address = await liquidityPoolV2Converter.poolToken(wrbtcAddress); + // wrbtcPoolTokenV2 = await ISmartToken.at(wrbtcPoolTokenV2Address); + // usdPoolTokenV2Address = await liquidityPoolV2Converter.poolToken(usdTokenAddress); + // usdPoolTokenV2 = await ISmartToken.at(usdPoolTokenV2Address); sovToken = await IERC20Token.at(sovTokenAddress); usdToken = await IERC20Token.at(usdTokenAddress); + wrbtcToken = await WRBTC.at(wrbtcAddress); sovrynSwapNetwork = await ISovrynSwapNetwork.at(sovrynSwapNetworkAddress); liquidityMining = await LiquidityMining.deployed(); usdLoanToken = await LoanToken.deployed(); @@ -75,10 +89,9 @@ contract("RBTCWrapperProxy", async (accounts) => { }); var addedPoolTokenV1Amount = new BN(result.logs[0].args._poolTokenAmount); - var expectedBalance = new BN(sovAmountBefore.toString()).sub(sovAmount) assert.equal( - await sovToken.balanceOf(accounts[0]), + (await sovToken.balanceOf(accounts[0])).toString(), expectedBalance.toString(), "Wrong SOV balance" ); @@ -111,12 +124,12 @@ contract("RBTCWrapperProxy", async (accounts) => { }); addedPoolTokenV1Amount = addedPoolTokenV1Amount.add(new BN(result.logs[0].args._poolTokenAmount)); - expectedBalance = new BN(sovAmountAfter.toString()).sub(sovAmount); + expectedBalance = new BN(sovAmountAfter.toString()).sub(web3.utils.toBN(sovAmount)); assert.equal( - await sovToken.balanceOf(accounts[0]), + (await sovToken.balanceOf(accounts[0])).toString(), expectedBalance.toString(), - "Wrong SOV balance" + "Wrong SOV balance (2)" ); assert.equal( @@ -167,130 +180,130 @@ contract("RBTCWrapperProxy", async (accounts) => { ); }); - it("verifies that users could send RBTC and then add liquidity to get pool token 2", async () => { - var rbtcAmountBefore = await web3.eth.getBalance(accounts[0]); - var wrbtcPoolTokenV2AmountBefore = await wrbtcPoolTokenV2.balanceOf(accounts[0]); + // it("verifies that users could send RBTC and then add liquidity to get pool token 2", async () => { + // var rbtcAmountBefore = await web3.eth.getBalance(accounts[0]); + // var wrbtcPoolTokenV2AmountBefore = await wrbtcPoolTokenV2.balanceOf(accounts[0]); - var result = await rbtcWrapperProxy.addLiquidityToV2(liquidityPoolV2ConverterAddress, wrbtcAddress, web3.utils.toBN(1e16), 1, { - from: accounts[0], - to: RBTCWrapperProxy.address, - value: 1e16, - }); + // var result = await rbtcWrapperProxy.addLiquidityToV2(liquidityPoolV2ConverterAddress, wrbtcAddress, web3.utils.toBN(1e16), 1, { + // from: accounts[0], + // to: RBTCWrapperProxy.address, + // value: 1e16, + // }); - var gasCost = new BN(result.receipt.gasUsed).mul( new BN((await web3.eth.getGasPrice()).toString())); - var addedWrbtcPoolTokenV2Amount = new BN(result.logs[0].args._poolTokenAmount); - var expectedBalance = new BN(rbtcAmountBefore.toString()).sub(gasCost).sub(new BN((10**16).toString())); + // var gasCost = new BN(result.receipt.gasUsed).mul( new BN((await web3.eth.getGasPrice()).toString())); + // var addedWrbtcPoolTokenV2Amount = new BN(result.logs[0].args._poolTokenAmount); + // var expectedBalance = new BN(rbtcAmountBefore.toString()).sub(gasCost).sub(new BN((10**16).toString())); - assert.equal(await web3.eth.getBalance(accounts[0]), expectedBalance, "Wrong RBTC balance"); - - assert.equal( - (await liquidityMining.userLPBalance(accounts[0], wrbtcPoolTokenV2Address)).toString(), - addedWrbtcPoolTokenV2Amount.toString(), - "Wrong pool token balance on LM contract" - ); - await expectEvent(result.receipt, "LiquidityAdded", { - _provider: accounts[0], - _reserveAmount: web3.utils.toBN(1e16), - _poolTokenAmount: addedWrbtcPoolTokenV2Amount, - }); - }); - - it("verifies that users could add USD liquidity to the v2 pool", async () => { - var usdAmountBefore = await usdToken.balanceOf(accounts[0]); - - await usdToken.approve(RBTCWrapperProxy.address, web3.utils.toBN(1e16), { from: accounts[0] }); - - var result = await rbtcWrapperProxy.addLiquidityToV2(liquidityPoolV2ConverterAddress, usdTokenAddress, web3.utils.toBN(1e16), 1); - - var addedUsdPoolTokenV2Amount = new BN(result.logs[0].args._poolTokenAmount); - var expectedBalance = usdAmountBefore.sub(new BN((10**16).toString())); - - assert.equal((await usdToken.balanceOf(accounts[0])).toString(), expectedBalance.toString(), "Wrong USD balance"); - - assert.equal( - (await liquidityMining.userLPBalance(accounts[0], usdPoolTokenV2Address)).toString(), - addedUsdPoolTokenV2Amount.toString(), - "Wrong pool token balance" - ); - await expectEvent(result.receipt, "LiquidityAdded", { - _provider: accounts[0], - _reserveAmount: web3.utils.toBN(1e16), - _poolTokenAmount: addedUsdPoolTokenV2Amount, - }); - }); - - it("verifies that users could remove liquidity to burn pool token 2 and then get RBTC", async () => { - poolTokenBalance = await liquidityMining.userLPBalance(accounts[0], wrbtcPoolTokenV2Address); - assert(poolTokenBalance > 0, "incorrect test setup"); - - var sovAmountBefore = await sovToken.balanceOf(accounts[0]); - - var rbtcAmountBefore = await web3.eth.getBalance(accounts[0]); - var result = await rbtcWrapperProxy.removeLiquidityFromV2(liquidityPoolV2ConverterAddress, wrbtcAddress, poolTokenBalance, 1, { - from: accounts[0], - to: RBTCWrapperProxy.address, - }); - - var gasCost = new BN(result.receipt.gasUsed).mul( new BN((await web3.eth.getGasPrice()).toString())); - var addedRBTCAmount = web3.utils.BN(result.logs[0].args._reserveAmount); - var expectedBalance = new BN(rbtcAmountBefore).add(addedRBTCAmount).sub(gasCost); + // assert.equal(await web3.eth.getBalance(accounts[0]), expectedBalance, "Wrong RBTC balance"); + + // assert.equal( + // (await liquidityMining.userLPBalance(accounts[0], wrbtcPoolTokenV2Address)).toString(), + // addedWrbtcPoolTokenV2Amount.toString(), + // "Wrong pool token balance on LM contract" + // ); + // await expectEvent(result.receipt, "LiquidityAdded", { + // _provider: accounts[0], + // _reserveAmount: web3.utils.toBN(1e16), + // _poolTokenAmount: addedWrbtcPoolTokenV2Amount, + // }); + // }); + + // it("verifies that users could add USD liquidity to the v2 pool", async () => { + // var usdAmountBefore = await usdToken.balanceOf(accounts[0]); + + // await usdToken.approve(RBTCWrapperProxy.address, web3.utils.toBN(1e16), { from: accounts[0] }); + + // var result = await rbtcWrapperProxy.addLiquidityToV2(liquidityPoolV2ConverterAddress, usdTokenAddress, web3.utils.toBN(1e16), 1); + + // var addedUsdPoolTokenV2Amount = new BN(result.logs[0].args._poolTokenAmount); + // var expectedBalance = usdAmountBefore.sub(new BN((10**16).toString())); + + // assert.equal((await usdToken.balanceOf(accounts[0])).toString(), expectedBalance.toString(), "Wrong USD balance"); + + // assert.equal( + // (await liquidityMining.userLPBalance(accounts[0], usdPoolTokenV2Address)).toString(), + // addedUsdPoolTokenV2Amount.toString(), + // "Wrong pool token balance" + // ); + // await expectEvent(result.receipt, "LiquidityAdded", { + // _provider: accounts[0], + // _reserveAmount: web3.utils.toBN(1e16), + // _poolTokenAmount: addedUsdPoolTokenV2Amount, + // }); + // }); + + // it("verifies that users could remove liquidity to burn pool token 2 and then get RBTC", async () => { + // poolTokenBalance = await liquidityMining.userLPBalance(accounts[0], wrbtcPoolTokenV2Address); + // assert(poolTokenBalance > 0, "incorrect test setup"); + + // var sovAmountBefore = await sovToken.balanceOf(accounts[0]); + + // var rbtcAmountBefore = await web3.eth.getBalance(accounts[0]); + // var result = await rbtcWrapperProxy.removeLiquidityFromV2(liquidityPoolV2ConverterAddress, wrbtcAddress, poolTokenBalance, 1, { + // from: accounts[0], + // to: RBTCWrapperProxy.address, + // }); + + // var gasCost = new BN(result.receipt.gasUsed).mul( new BN((await web3.eth.getGasPrice()).toString())); + // var addedRBTCAmount = web3.utils.BN(result.logs[0].args._reserveAmount); + // var expectedBalance = new BN(rbtcAmountBefore).add(addedRBTCAmount).sub(gasCost); - assert.equal( - await web3.eth.getBalance(accounts[0]), - expectedBalance.toString(), - "Wrong RBTC balance" - ); - - //checking if the LM reward being paid out - expectedBalance = new BN(sovAmountBefore).add(poolTokenBalance); - assert.equal( - (await sovToken.balanceOf(accounts[0])).toString(), - expectedBalance.toString(), - "Wrong SOV balance" - ); + // assert.equal( + // await web3.eth.getBalance(accounts[0]), + // expectedBalance.toString(), + // "Wrong RBTC balance" + // ); + + // //checking if the LM reward being paid out + // expectedBalance = new BN(sovAmountBefore).add(poolTokenBalance); + // assert.equal( + // (await sovToken.balanceOf(accounts[0])).toString(), + // expectedBalance.toString(), + // "Wrong SOV balance" + // ); - await expectEvent(result.receipt, "LiquidityRemoved", { - _provider: accounts[0], - _reserveAmount: addedRBTCAmount, - _poolTokenAmount: poolTokenBalance, - }); - }); - - it("verifies that users could remove liquidity to burn pool token 2 and then get RBTC", async () => { - poolTokenBalance = await liquidityMining.userLPBalance(accounts[0], usdPoolTokenV2Address); - assert(poolTokenBalance > 0, "incorrect test setup"); - - var sovAmountBefore = await sovToken.balanceOf(accounts[0]); - - var usdAmountBefore = await usdToken.balanceOf(accounts[0]); - var result = await rbtcWrapperProxy.removeLiquidityFromV2(liquidityPoolV2ConverterAddress, usdTokenAddress, poolTokenBalance, 1, { - from: accounts[0], - to: RBTCWrapperProxy.address, - }); - - var addedUSDAmount = web3.utils.BN(result.logs[0].args._reserveAmount); - var expectedBalance = usdAmountBefore.add(addedUSDAmount); + // await expectEvent(result.receipt, "LiquidityRemoved", { + // _provider: accounts[0], + // _reserveAmount: addedRBTCAmount, + // _poolTokenAmount: poolTokenBalance, + // }); + // }); + + // it("verifies that users could remove liquidity to burn pool token 2 and then get RBTC", async () => { + // poolTokenBalance = await liquidityMining.userLPBalance(accounts[0], usdPoolTokenV2Address); + // assert(poolTokenBalance > 0, "incorrect test setup"); + + // var sovAmountBefore = await sovToken.balanceOf(accounts[0]); + + // var usdAmountBefore = await usdToken.balanceOf(accounts[0]); + // var result = await rbtcWrapperProxy.removeLiquidityFromV2(liquidityPoolV2ConverterAddress, usdTokenAddress, poolTokenBalance, 1, { + // from: accounts[0], + // to: RBTCWrapperProxy.address, + // }); + + // var addedUSDAmount = web3.utils.BN(result.logs[0].args._reserveAmount); + // var expectedBalance = usdAmountBefore.add(addedUSDAmount); - assert.equal( - await usdToken.balanceOf(accounts[0]), - expectedBalance.toString(), - "Wrong USD balance" - ); + // assert.equal( + // await usdToken.balanceOf(accounts[0]), + // expectedBalance.toString(), + // "Wrong USD balance" + // ); - //checking if the LM reward being paid out - expectedBalance = new BN(sovAmountBefore).add(poolTokenBalance); - assert.equal( - (await sovToken.balanceOf(accounts[0])).toString(), - expectedBalance.toString(), - "Wrong SOV balance" - ); + // //checking if the LM reward being paid out + // expectedBalance = new BN(sovAmountBefore).add(poolTokenBalance); + // assert.equal( + // (await sovToken.balanceOf(accounts[0])).toString(), + // expectedBalance.toString(), + // "Wrong SOV balance" + // ); - await expectEvent(result.receipt, "LiquidityRemoved", { - _provider: accounts[0], - _reserveAmount: addedUSDAmount, - _poolTokenAmount: poolTokenBalance, - }); - }); + // await expectEvent(result.receipt, "LiquidityRemoved", { + // _provider: accounts[0], + // _reserveAmount: addedUSDAmount, + // _poolTokenAmount: poolTokenBalance, + // }); + // }); it("verifies that users could send RBTC and then swap it to DoC", async () => { var rbtcAmountBefore = await web3.eth.getBalance(accounts[0]); @@ -301,7 +314,7 @@ contract("RBTCWrapperProxy", async (accounts) => { from: accounts[0], to: RBTCWrapperProxy.address, value: 1e16 - }); + }); var gasCost = new BN(result.receipt.gasUsed).mul(new BN((await web3.eth.getGasPrice()).toString())); var addedDoCTokenAmount = web3.utils.BN(result.logs[0].args._targetTokenAmount); @@ -362,26 +375,26 @@ contract("RBTCWrapperProxy", async (accounts) => { await expectRevert.unspecified(rbtcWrapperProxy.send(web3.utils.toBN(1e16))); }); - it("should revert when calling the addLIquidity() without sending RBTC", async () => { - await expectRevert.unspecified( - rbtcWrapperProxy.addLiquidityToV2(liquidityPoolV2ConverterAddress, wrbtcAddress, web3.utils.toBN(1e16), 1, { - from: accounts[0], - to: RBTCWrapperProxy.address, - }), - "No RBTC" - ); - }); - - it("should revert when amount param not identical to msg.value to call addLiquidityToV2()", async () => { - await expectRevert.unspecified( - rbtcWrapperProxy.addLiquidityToV2(liquidityPoolV2ConverterAddress, wrbtcAddress, web3.utils.toBN(1e16), 1, { - from: accounts[0], - to: RBTCWrapperProxy.address, - value: 1e8, - }), - "The provided amount not identical to msg.value" - ); - }); + // it("should revert when calling the addLIquidity() without sending RBTC", async () => { + // await expectRevert.unspecified( + // rbtcWrapperProxy.addLiquidityToV2(liquidityPoolV2ConverterAddress, wrbtcAddress, web3.utils.toBN(1e16), 1, { + // from: accounts[0], + // to: RBTCWrapperProxy.address, + // }), + // "No RBTC" + // ); + // }); + + // it("should revert when amount param not identical to msg.value to call addLiquidityToV2()", async () => { + // await expectRevert.unspecified( + // rbtcWrapperProxy.addLiquidityToV2(liquidityPoolV2ConverterAddress, wrbtcAddress, web3.utils.toBN(1e16), 1, { + // from: accounts[0], + // to: RBTCWrapperProxy.address, + // value: 1e8, + // }), + // "The provided amount not identical to msg.value" + // ); + // }); it("should revert when passing wrong path param to convertByPath()", async () => { var pathWRBTCToDoC = await sovrynSwapNetwork.conversionPath(wrbtcAddress, usdTokenAddress); @@ -400,98 +413,169 @@ contract("RBTCWrapperProxy", async (accounts) => { ); }); - it("should add to the lending pool and provide the pool tokens to the LM contract", async() => { - const amount = web3.utils.toBN(10e18); - const usdBefore = await usdToken.balanceOf(accounts[0]); - await usdToken.approve(rbtcWrapperProxy.address, amount); - await rbtcWrapperProxy.addToLendingPool(usdLoanToken.address, amount); - const usdAfter = await usdToken.balanceOf(accounts[0]); - assert.equal(amount.add(usdAfter).toString(), usdBefore.toString(), "incorrect account token balance"); - assert.equal(amount.toString(), (await usdToken.balanceOf(usdLoanToken.address)).toString(), "incorrect underlying balance on loan token"); - assert.equal(amount.toString(), (await usdLoanToken.balanceOf(liquidityMining.address)).toString(), "incorrect pool token balance on LM contract"); - }); + it("Should revert when providing wrbtc / wrbtc as the pairs", async() => { + const rbtcAmount = web3.utils.toBN(getConfigFromSOV()["converters"][0]["reserves"][0]["balance"] * 1e14); + const sovAmount = web3.utils.toBN(getConfigFromSOV()["converters"][0]["reserves"][1]["balance"] * 1e14); + await expectRevert.unspecified(rbtcWrapperProxy.addLiquidityToV1( + liquidityPoolV1ConverterAddress, + [wrbtcAddress, wrbtcAddress], + [rbtcAmount, rbtcAmount], + 1, + { + from: accounts[0], + to: RBTCWrapperProxy.address, + value: rbtcAmount + })); + }) - require("@openzeppelin/test-helpers/configure")({ - provider: web3.currentProvider, - singletons: { - abstraction: "truffle", - }, -}); -const fs = require("fs"); + it("Should revert when providing rbtc in non-wrbtc pairs", async() => { + const rbtcAmount = web3.utils.toBN(getConfigFromSOV()["converters"][0]["reserves"][0]["balance"] * 1e14); + const sovAmount = web3.utils.toBN(getConfigFromSOV()["converters"][0]["reserves"][1]["balance"] * 1e14); + await expectRevert(rbtcWrapperProxy.addLiquidityToV1( + liquidityPoolV1ConverterAddress, + [usdTokenAddress, sovTokenAddress], + [rbtcAmount, sovAmount], + 1, + { + from: accounts[0], + to: RBTCWrapperProxy.address, + value: rbtcAmount + }), "RBTC is not allowed for non-wrbtc pairs"); + }) + + it("Should revert when providing 0 amount (0 index)", async() => { + const sovAmount = web3.utils.toBN(getConfigFromSOV()["converters"][0]["reserves"][1]["balance"] * 1e14); + await sovToken.approve(RBTCWrapperProxy.address, web3.utils.toBN(0), { from: accounts[0] }); + await sovToken.approve(RBTCWrapperProxy.address, sovAmount, { from: accounts[0] }); + await expectRevert(rbtcWrapperProxy.addLiquidityToV1( + liquidityPoolV1ConverterUSDSOV, + [usdTokenAddress, sovTokenAddress], + [0, sovAmount], + 1, + { + from: accounts[0], + to: RBTCWrapperProxy.address, + }), "ERR_INVALID_AMOUNT"); + }) + + it("Should revert when providing 0 amount (1 index)", async() => { + const usdAmount = web3.utils.toBN(getConfigFromSOV()["converters"][0]["reserves"][0]["balance"] * 1e14); + await usdToken.approve(RBTCWrapperProxy.address, web3.utils.toBN(0), { from: accounts[0] }); + await usdToken.approve(RBTCWrapperProxy.address, usdAmount, { from: accounts[0] }); + await expectRevert(rbtcWrapperProxy.addLiquidityToV1( + liquidityPoolV1ConverterUSDSOV, + [usdTokenAddress, sovTokenAddress], + [usdAmount, 0], + 1, + { + from: accounts[0], + to: RBTCWrapperProxy.address, + }), "ERR_INVALID_AMOUNT"); + }) -const assert = require("chai").assert; -const { expectRevert, expectEvent, BN } = require("@openzeppelin/test-helpers"); + it("Should revert rbtc sent not the same as the value params (wrbtc 0 index)", async() => { + const rbtcAmount = web3.utils.toBN(getConfigFromSOV()["converters"][0]["reserves"][0]["balance"] * 1e14); + const sovAmount = web3.utils.toBN(getConfigFromSOV()["converters"][0]["reserves"][1]["balance"] * 1e14); + await expectRevert(rbtcWrapperProxy.addLiquidityToV1( + liquidityPoolV1ConverterAddress, + [wrbtcAddress, sovTokenAddress], + [rbtcAmount, sovAmount], + 1, + { + from: accounts[0], + to: RBTCWrapperProxy.address, + value: 1 + }), "The provided amount of RBTC should be identical to msg.value"); + }) + + it("Should revert rbtc sent not the same as the value params (wrbtc 1 index)", async() => { + const rbtcAmount = web3.utils.toBN(getConfigFromSOV()["converters"][0]["reserves"][0]["balance"] * 1e14); + const sovAmount = web3.utils.toBN(getConfigFromSOV()["converters"][0]["reserves"][1]["balance"] * 1e14); + + await wrbtcToken.approve(RBTCWrapperProxy.address, web3.utils.toBN(0), { from: accounts[0] }); + await sovToken.approve(RBTCWrapperProxy.address, web3.utils.toBN(0), { from: accounts[0] }); + await sovToken.approve(RBTCWrapperProxy.address, sovAmount, { from: accounts[0] }); + await expectRevert(rbtcWrapperProxy.addLiquidityToV1( + liquidityPoolV1ConverterAddress, + [sovTokenAddress, wrbtcAddress], + [sovAmount, rbtcAmount], + 1, + { + from: accounts[0], + to: RBTCWrapperProxy.address, + value: 1 + }), "The provided amount of RBTC should be identical to msg.value"); + }) -const RBTCWrapperProxy = artifacts.require("../RBTCWrapperProxy.sol"); -const IERC20Token = artifacts.require("../interfaces/IERC20Token.sol"); -const ISmartToken = artifacts.require("../interfaces/ISmartToken.sol"); -const ISovrynSwapNetwork = artifacts.require("../interfaces/ISovrynSwapNetwork.sol"); -const ILiquidityPoolV1Converter = artifacts.require("../interfaces/ILiquidityPoolV1Converter.sol"); -const ILiquidityPoolV2Converter = artifacts.require("../interfaces/ILiquidityPoolV2Converter.sol"); -const LiquidityMining = artifacts.require("../mockups/LiquidityMining.sol"); -const LoanToken = artifacts.require("../mockups/LoanToken.sol"); + it("Should revert if sending 0 as amount when removing liquidity", async() => { + await expectRevert(rbtcWrapperProxy.removeLiquidityFromV1(liquidityPoolV1ConverterAddress, 0, [wrbtcAddress, sovTokenAddress], [1, 1]), "The amount should larger than zero"); + }) -const getConfig = () => { - return JSON.parse(fs.readFileSync("../solidity/utils/config_rsk.json", { encoding: "utf8" })); -}; + it("Should failed if passing the wrong token pair to the converter", async() => { + var usdAmount = web3.utils.toBN(getConfigFromSOV()["converters"][0]["reserves"][0]["balance"] * 1e14); + var sovAmount = web3.utils.toBN(getConfigFromSOV()["converters"][0]["reserves"][1]["balance"] * 1e14); -const getConfigFromSOV = () => { - return JSON.parse(fs.readFileSync("../solidity/utils/addSOV.json", { encoding: "utf8" })); -}; + await sovToken.approve(RBTCWrapperProxy.address, web3.utils.toBN(0), { from: accounts[0] }); + await sovToken.approve(RBTCWrapperProxy.address, sovAmount, { from: accounts[0] }); -const liquidityPoolV1ConverterAddress = getConfigFromSOV()["newLiquidityPoolV1Converter"].addr; -const liquidityPoolV2ConverterAddress = getConfig()["newLiquidityPoolV2Converter"].addr; -const sovrynSwapNetworkAddress = getConfig()["sovrynSwapNetwork"].addr; -const wrbtcAddress = getConfig()["RBTC"].addr; -const sovTokenAddress = getConfigFromSOV()["SOV"].addr; -const usdTokenAddress = getConfig()["SUSD"].addr; + await usdToken.approve(RBTCWrapperProxy.address, web3.utils.toBN(0), { from: accounts[0] }); + await usdToken.approve(RBTCWrapperProxy.address, usdAmount, { from: accounts[0] }) -contract("RBTCWrapperProxy", async (accounts) => { - let rbtcWrapperProxy, liquidityPoolV1Converter, liquidityPoolV2Converter, poolTokenV1Address, wrbtcPoolTokenV2Address, poolTokenV1, wrbtcPoolTokenV2, sovToken, usdToken, sovrynSwapNetwork; + await expectRevert(rbtcWrapperProxy.addLiquidityToV1( + liquidityPoolV1ConverterAddress, + [usdTokenAddress,sovTokenAddress], + [usdAmount, sovAmount], + 1, + { + from: accounts[0], + to: RBTCWrapperProxy.address, + value: 0 + }), "ERR_INVALID_RESERVE"); + }) - before(async () => { - rbtcWrapperProxy = await RBTCWrapperProxy.deployed(); - liquidityPoolV1Converter = await ILiquidityPoolV1Converter.at(liquidityPoolV1ConverterAddress); - liquidityPoolV2Converter = await ILiquidityPoolV2Converter.at(liquidityPoolV2ConverterAddress); + it("verifies that users could send a non-rbtc based pair (USD - SOV) and then add liquidity to get pool token v1 (SOV refunded)", async () => { + var sovAmountBefore = await sovToken.balanceOf(accounts[0]); + var usdAmountBefore = await usdToken.balanceOf(accounts[0]); + + liquidityPoolV1Converter = await ILiquidityPoolV1Converter.at(liquidityPoolV1ConverterUSDSOV); poolTokenV1Address = await liquidityPoolV1Converter.token(); poolTokenV1 = await ISmartToken.at(poolTokenV1Address); - wrbtcPoolTokenV2Address = await liquidityPoolV2Converter.poolToken(wrbtcAddress); - wrbtcPoolTokenV2 = await ISmartToken.at(wrbtcPoolTokenV2Address); - usdPoolTokenV2Address = await liquidityPoolV2Converter.poolToken(usdTokenAddress); - usdPoolTokenV2 = await ISmartToken.at(usdPoolTokenV2Address); - sovToken = await IERC20Token.at(sovTokenAddress); - usdToken = await IERC20Token.at(usdTokenAddress); - sovrynSwapNetwork = await ISovrynSwapNetwork.at(sovrynSwapNetworkAddress); - liquidityMining = await LiquidityMining.deployed(); - usdLoanToken = await LoanToken.deployed(); - await sovToken.transfer(liquidityMining.address, web3.utils.toWei("100","Ether")); - }); - - it("verifies that users could send RBTC and SOV, and then add liquidity to get pool token 1", async () => { - var sovAmountBefore = await sovToken.balanceOf(accounts[0]); var poolTokenV1AmountBefore = await poolTokenV1.balanceOf(accounts[0]); - var rbtcAmount = web3.utils.toBN(getConfigFromSOV()["converters"][0]["reserves"][0]["balance"] * 1e14); + var usdAmount = web3.utils.toBN(getConfigFromSOV()["converters"][0]["reserves"][0]["balance"] * 1e14); var sovAmount = web3.utils.toBN(getConfigFromSOV()["converters"][0]["reserves"][1]["balance"] * 1e14); - await sovToken.approve(RBTCWrapperProxy.address, web3.utils.toBN(sovAmount * 4), { from: accounts[0] }); + const pathWRBTCToDoC = await sovrynSwapNetwork.conversionPath(wrbtcAddress, usdTokenAddress); + + await sovToken.approve(RBTCWrapperProxy.address, web3.utils.toBN(0), { from: accounts[0] }); + await sovToken.approve(RBTCWrapperProxy.address, web3.utils.toBN(sovAmount * 4), { from: accounts[0] }); + + await usdToken.approve(RBTCWrapperProxy.address, web3.utils.toBN(0), { from: accounts[0] }); + await usdToken.approve(RBTCWrapperProxy.address, web3.utils.toBN(usdAmount * 4), { from: accounts[0] }); var result = await rbtcWrapperProxy.addLiquidityToV1( - liquidityPoolV1ConverterAddress, - [wrbtcAddress,sovTokenAddress], - [rbtcAmount, sovAmount], + liquidityPoolV1ConverterUSDSOV, + [usdTokenAddress,sovTokenAddress], + [usdAmount, sovAmount], 1, { from: accounts[0], to: RBTCWrapperProxy.address, - value: rbtcAmount }); - + + var usdAmountAfter = await usdToken.balanceOf(accounts[0]); + + expect(usdAmountAfter.toString()).to.equal( (usdAmountBefore.sub(usdAmount)).toString() ); + + let decode = decodeLogs(result.receipt.rawLogs, IERC20, "Transfer"); + let refundTx = decode[decode.length - 1].args; + let refundedSOV = refundTx.to === accounts[0] ? refundTx.value : 0; + var addedPoolTokenV1Amount = new BN(result.logs[0].args._poolTokenAmount); + var expectedBalance = new BN(sovAmountBefore.toString()).sub(sovAmount).add(new BN(refundedSOV)); - var expectedBalance = new BN(sovAmountBefore.toString()).sub(sovAmount) assert.equal( - await sovToken.balanceOf(accounts[0]), + (await sovToken.balanceOf(accounts[0])).toString(), expectedBalance.toString(), "Wrong SOV balance" ); @@ -499,358 +583,403 @@ contract("RBTCWrapperProxy", async (accounts) => { assert.equal( (await liquidityMining.userLPBalance(accounts[0], poolTokenV1Address)).toString(), addedPoolTokenV1Amount.toString(), - "Wrong pool token balance on LM contract" + "Wrong pool token balance on LM contract (1)" ); await expectEvent(result.receipt, "LiquidityAddedToV1", { _provider: accounts[0], - _reserveTokens: [wrbtcAddress, sovTokenAddress], - _reserveAmounts: [rbtcAmount, sovAmount], + _reserveTokens: [usdTokenAddress, sovTokenAddress], + _reserveAmounts: [usdAmount, sovAmount], _poolTokenAmount: addedPoolTokenV1Amount, }); var sovAmountAfter = await sovToken.balanceOf(accounts[0]); + usdAmountBefore = await usdToken.balanceOf(accounts[0]); // Send 2x SOV, User should get 1x SOV back var result = await rbtcWrapperProxy.addLiquidityToV1( - liquidityPoolV1ConverterAddress, - [wrbtcAddress,sovTokenAddress], - [rbtcAmount, web3.utils.toBN(sovAmount * 2)], - 1, + liquidityPoolV1ConverterUSDSOV, + [usdTokenAddress,sovTokenAddress], + [usdAmount, web3.utils.toBN(sovAmount * 2)], + 2, { from: accounts[0], to: RBTCWrapperProxy.address, - value: rbtcAmount }); - + + usdAmountAfter = await usdToken.balanceOf(accounts[0]); + expect(usdAmountAfter.toString()).to.equal( (usdAmountBefore.sub(usdAmount)).toString() ); + addedPoolTokenV1Amount = addedPoolTokenV1Amount.add(new BN(result.logs[0].args._poolTokenAmount)); - expectedBalance = new BN(sovAmountAfter.toString()).sub(sovAmount); + expectedBalance = new BN(sovAmountAfter.toString()).sub(web3.utils.toBN(sovAmount)).add(new BN(refundedSOV)); assert.equal( - await sovToken.balanceOf(accounts[0]), + (await sovToken.balanceOf(accounts[0])).toString(), expectedBalance.toString(), - "Wrong SOV balance" + "Wrong SOV balance (2)" ); assert.equal( (await liquidityMining.userLPBalance(accounts[0], poolTokenV1Address)).toString(), addedPoolTokenV1Amount.toString(), - "Wrong pool token balance on LM contract" + "Wrong pool token balance on LM contract (2)" ); await expectEvent(result.receipt, "LiquidityAddedToV1", { _provider: accounts[0], - _reserveTokens: [wrbtcAddress, sovTokenAddress], - _reserveAmounts: [rbtcAmount, web3.utils.toBN(sovAmount * 2)] + _reserveTokens: [usdTokenAddress, sovTokenAddress], + _reserveAmounts: [usdAmount, web3.utils.toBN(sovAmount * 2)] }); }); - it("verifies that users could remove liquidity to burn pool token 1 and then get RBTC and SOV", async () => { - poolTokenBalance = await liquidityMining.userLPBalance(accounts[0], poolTokenV1Address); - assert(poolTokenBalance > 0, "incorrect test setup"); - rbtcAmountBefore = await web3.eth.getBalance(accounts[0]); - sovAmountBefore = await sovToken.balanceOf(accounts[0]); + it("verifies that users could send USDT and SOV, and then add liquidity to get pool token 1 (USD Refunded)", async () => { + var sovAmountBefore = await sovToken.balanceOf(accounts[0]); + var usdAmountBefore = await usdToken.balanceOf(accounts[0]); - var result = await rbtcWrapperProxy.removeLiquidityFromV1(liquidityPoolV1ConverterAddress, poolTokenBalance, [wrbtcAddress, sovTokenAddress], [1, 1]); + liquidityPoolV1Converter = await ILiquidityPoolV1Converter.at(liquidityPoolV1ConverterUSDSOV); + poolTokenV1Address = await liquidityPoolV1Converter.token(); + poolTokenV1 = await ISmartToken.at(poolTokenV1Address); + var poolTokenV1AmountBefore = await poolTokenV1.balanceOf(accounts[0]); + var totalLPTokenInLMBefore = await liquidityMining.userLPBalance(accounts[0], poolTokenV1Address); - var gasCost = new BN(result.receipt.gasUsed).mul( new BN((await web3.eth.getGasPrice()).toString())); - var addedRBTCAmount = result.logs[0].args._reserveAmounts[0]; - var addedSOVAmount = result.logs[0].args._reserveAmounts[1]; + var usdAmount = web3.utils.toBN(getConfigFromSOV()["converters"][0]["reserves"][0]["balance"] * 1e14); + var sovAmount = web3.utils.toBN(getConfigFromSOV()["converters"][0]["reserves"][1]["balance"] * 1e14); - await expectEvent(result.receipt, "LiquidityRemovedFromV1", { - _provider: accounts[0], - _reserveTokens: [wrbtcAddress, sovTokenAddress], - _reserveAmounts: [addedRBTCAmount, addedSOVAmount] + const pathWRBTCToDoC = await sovrynSwapNetwork.conversionPath(wrbtcAddress, usdTokenAddress); + + await sovToken.approve(RBTCWrapperProxy.address, web3.utils.toBN(0), { from: accounts[0] }); + await sovToken.approve(RBTCWrapperProxy.address, web3.utils.toBN(sovAmount * 4), { from: accounts[0] }); + + await usdToken.approve(RBTCWrapperProxy.address, web3.utils.toBN(0), { from: accounts[0] }); + await usdToken.approve(RBTCWrapperProxy.address, web3.utils.toBN(usdAmount * 4), { from: accounts[0] }); + + var result = await rbtcWrapperProxy.addLiquidityToV1( + liquidityPoolV1ConverterUSDSOV, + [usdTokenAddress,sovTokenAddress], + [usdAmount, sovAmount], + 1, + { + from: accounts[0], + to: RBTCWrapperProxy.address, }); - expectedBalance = new BN(rbtcAmountBefore).add(new BN(addedRBTCAmount)).sub(gasCost); - assert.equal( - await web3.eth.getBalance(accounts[0]), - expectedBalance.toString(), - "Wrong RBTC balance" - ); + var usdAmountAfter = await usdToken.balanceOf(accounts[0]); - //adding the pool token balance because of the reward being paid out - expectedBalance = new BN(sovAmountBefore).add(addedSOVAmount).add(poolTokenBalance); + expect(usdAmountAfter.toString()).to.equal( (usdAmountBefore.sub(usdAmount)).toString() ); + + let decode = decodeLogs(result.receipt.rawLogs, IERC20, "Transfer"); + let refundTx = decode[decode.length - 1].args; + let refundedSOV = refundTx.to === accounts[0] ? decode[decode.length - 1].args.value : 0; + + var addedPoolTokenV1Amount = new BN(result.logs[0].args._poolTokenAmount); + var expectedBalance = new BN(sovAmountBefore.toString()).sub(sovAmount).add(new BN(refundedSOV)) assert.equal( (await sovToken.balanceOf(accounts[0])).toString(), expectedBalance.toString(), "Wrong SOV balance" ); - }); + + assert.equal( + (await liquidityMining.userLPBalance(accounts[0], poolTokenV1Address)).toString(), + addedPoolTokenV1Amount.add(totalLPTokenInLMBefore).toString(), + "Wrong pool token balance on LM contract (1)" + ); - it("verifies that users could send RBTC and then add liquidity to get pool token 2", async () => { - var rbtcAmountBefore = await web3.eth.getBalance(accounts[0]); - var wrbtcPoolTokenV2AmountBefore = await wrbtcPoolTokenV2.balanceOf(accounts[0]); + await expectEvent(result.receipt, "LiquidityAddedToV1", { + _provider: accounts[0], + _reserveTokens: [usdTokenAddress, sovTokenAddress], + _reserveAmounts: [usdAmount, sovAmount], + _poolTokenAmount: addedPoolTokenV1Amount, + }); + + var sovAmountAfter = await sovToken.balanceOf(accounts[0]); + totalLPTokenInLMBefore = await liquidityMining.userLPBalance(accounts[0], poolTokenV1Address); - var result = await rbtcWrapperProxy.addLiquidityToV2(liquidityPoolV2ConverterAddress, wrbtcAddress, web3.utils.toBN(1e16), 1, { + usdAmountBefore = await usdToken.balanceOf(accounts[0]); + // Send 2x USD, User should get 1x USD back + var result = await rbtcWrapperProxy.addLiquidityToV1( + liquidityPoolV1ConverterUSDSOV, + [usdTokenAddress,sovTokenAddress], + [web3.utils.toBN(usdAmount * 2), web3.utils.toBN(sovAmount)], + 2, + { from: accounts[0], to: RBTCWrapperProxy.address, - value: 1e16, }); - var gasCost = new BN(result.receipt.gasUsed).mul( new BN((await web3.eth.getGasPrice()).toString())); - var addedWrbtcPoolTokenV2Amount = new BN(result.logs[0].args._poolTokenAmount); - var expectedBalance = new BN(rbtcAmountBefore.toString()).sub(gasCost).sub(new BN((10**16).toString())); - - assert.equal(await web3.eth.getBalance(accounts[0]), expectedBalance, "Wrong RBTC balance"); + let decode2 = decodeLogs(result.receipt.rawLogs, IERC20, "Transfer"); + let refundTx2 = decode2[decode2.length - 1].args; + let refundedUSD = decode2[2].args.value; + + // 8th event is the refund + let refundedSOV2 = decode2.length == 8 ? refundTx2.value : 0; + + usdAmountAfter = await usdToken.balanceOf(accounts[0]); + expect(usdAmountAfter.toString()).to.equal( (usdAmountBefore.sub(new BN(refundedUSD))).toString() ); + + addedPoolTokenV1Amount = new BN(result.logs[0].args._poolTokenAmount); + expectedBalance = new BN(sovAmountAfter.toString()).sub(web3.utils.toBN(sovAmount)).add(new BN(refundedSOV2)); assert.equal( - (await liquidityMining.userLPBalance(accounts[0], wrbtcPoolTokenV2Address)).toString(), - addedWrbtcPoolTokenV2Amount.toString(), - "Wrong pool token balance on LM contract" + (await sovToken.balanceOf(accounts[0])).toString(), + expectedBalance.toString(), + "Wrong SOV balance (2)" ); - await expectEvent(result.receipt, "LiquidityAdded", { + + assert.equal( + (await liquidityMining.userLPBalance(accounts[0], poolTokenV1Address)).toString(), + addedPoolTokenV1Amount.add(totalLPTokenInLMBefore).toString(), + "Wrong pool token balance on LM contract (2)" + ); + + await expectEvent(result.receipt, "LiquidityAddedToV1", { _provider: accounts[0], - _reserveAmount: web3.utils.toBN(1e16), - _poolTokenAmount: addedWrbtcPoolTokenV2Amount, + _reserveTokens: [usdTokenAddress, sovTokenAddress], + _reserveAmounts: [web3.utils.toBN(usdAmount * 2), sovAmount] }); }); - it("verifies that users could add USD liquidity to the v2 pool", async () => { - var usdAmountBefore = await usdToken.balanceOf(accounts[0]); - await usdToken.approve(RBTCWrapperProxy.address, web3.utils.toBN(1e16), { from: accounts[0] }); + it("verifies that users could remove liquidity to burn pool token 1 and then get SUSD and SOV", async () => { + liquidityPoolV1Converter = await ILiquidityPoolV1Converter.at(liquidityPoolV1ConverterUSDSOV); + poolTokenV1Address = await liquidityPoolV1Converter.token(); + poolTokenV1 = await ISmartToken.at(poolTokenV1Address); + var poolTokenV1AmountBefore = await poolTokenV1.balanceOf(accounts[0]); + + poolTokenBalance = await liquidityMining.userLPBalance(accounts[0], poolTokenV1Address); + assert(poolTokenBalance > 0, "incorrect test setup"); - var result = await rbtcWrapperProxy.addLiquidityToV2(liquidityPoolV2ConverterAddress, usdTokenAddress, web3.utils.toBN(1e16), 1); + usdAmountBefore = await usdToken.balanceOf(accounts[0]); + sovAmountBefore = await sovToken.balanceOf(accounts[0]); - var addedUsdPoolTokenV2Amount = new BN(result.logs[0].args._poolTokenAmount); - var expectedBalance = usdAmountBefore.sub(new BN((10**16).toString())); + var result = await rbtcWrapperProxy.removeLiquidityFromV1(liquidityPoolV1ConverterUSDSOV, poolTokenBalance, [usdTokenAddress, sovTokenAddress], [1, 1]); - assert.equal((await usdToken.balanceOf(accounts[0])).toString(), expectedBalance.toString(), "Wrong USD balance"); + var addedUSDAmount = result.logs[0].args._reserveAmounts[0]; + var addedSOVAmount = result.logs[0].args._reserveAmounts[1]; - assert.equal( - (await liquidityMining.userLPBalance(accounts[0], usdPoolTokenV2Address)).toString(), - addedUsdPoolTokenV2Amount.toString(), - "Wrong pool token balance" - ); - await expectEvent(result.receipt, "LiquidityAdded", { + await expectEvent(result.receipt, "LiquidityRemovedFromV1", { _provider: accounts[0], - _reserveAmount: web3.utils.toBN(1e16), - _poolTokenAmount: addedUsdPoolTokenV2Amount, + _reserveTokens: [usdTokenAddress, sovTokenAddress], + _reserveAmounts: [addedUSDAmount, addedSOVAmount] }); - }); - it("verifies that users could remove liquidity to burn pool token 2 and then get RBTC", async () => { - poolTokenBalance = await liquidityMining.userLPBalance(accounts[0], wrbtcPoolTokenV2Address); - assert(poolTokenBalance > 0, "incorrect test setup"); + expectedUSDBalance = new BN(usdAmountBefore).add(new BN(addedUSDAmount)); + latestUSDBalance = await usdToken.balanceOf(accounts[0]); + expectedSOVBalance = new BN(sovAmountBefore).add(new BN(addedSOVAmount)).add(poolTokenBalance); + latestSOVBalance = await sovToken.balanceOf(accounts[0]); + expect(latestSOVBalance.toString()).to.equal(expectedSOVBalance.toString()) + }); + + it("verifies user can swap / trade to the non-rbtc pairs", async () => { var sovAmountBefore = await sovToken.balanceOf(accounts[0]); + var usdAmountBefore = await usdToken.balanceOf(accounts[0]); - var rbtcAmountBefore = await web3.eth.getBalance(accounts[0]); - var result = await rbtcWrapperProxy.removeLiquidityFromV2(liquidityPoolV2ConverterAddress, wrbtcAddress, poolTokenBalance, 1, { + liquidityPoolV1Converter = await ILiquidityPoolV1Converter.at(liquidityPoolV1ConverterUSDSOV); + poolTokenV1Address = await liquidityPoolV1Converter.token(); + poolTokenV1 = await ISmartToken.at(poolTokenV1Address); + var poolTokenV1AmountBefore = await poolTokenV1.balanceOf(accounts[0]); + + var usdAmount = web3.utils.toBN(getConfigFromSOV()["converters"][0]["reserves"][0]["balance"] * 1e14); + var sovAmount = web3.utils.toBN(getConfigFromSOV()["converters"][0]["reserves"][1]["balance"] * 1e14); + + const pathWRBTCToDoC = await sovrynSwapNetwork.conversionPath(wrbtcAddress, usdTokenAddress); + + await sovToken.approve(RBTCWrapperProxy.address, web3.utils.toBN(0), { from: accounts[0] }); + await sovToken.approve(RBTCWrapperProxy.address, web3.utils.toBN(sovAmount * 4), { from: accounts[0] }); + + await usdToken.approve(RBTCWrapperProxy.address, web3.utils.toBN(0), { from: accounts[0] }); + await usdToken.approve(RBTCWrapperProxy.address, web3.utils.toBN(usdAmount * 4), { from: accounts[0] }); + + var result = await rbtcWrapperProxy.addLiquidityToV1( + liquidityPoolV1ConverterUSDSOV, + [usdTokenAddress,sovTokenAddress], + [usdAmount, sovAmount], + 1, + { from: accounts[0], to: RBTCWrapperProxy.address, }); - var gasCost = new BN(result.receipt.gasUsed).mul( new BN((await web3.eth.getGasPrice()).toString())); - var addedRBTCAmount = web3.utils.BN(result.logs[0].args._reserveAmount); - var expectedBalance = new BN(rbtcAmountBefore).add(addedRBTCAmount).sub(gasCost); - - assert.equal( - await web3.eth.getBalance(accounts[0]), - expectedBalance.toString(), - "Wrong RBTC balance" - ); + var usdAmountAfter = await usdToken.balanceOf(accounts[0]); + + expect(usdAmountAfter.toString()).to.equal( (usdAmountBefore.sub(usdAmount)).toString() ); - //checking if the LM reward being paid out - expectedBalance = new BN(sovAmountBefore).add(poolTokenBalance); + let decode = decodeLogs(result.receipt.rawLogs, IERC20, "Transfer"); + let refundTx = decode[decode.length - 1].args; + let refundedSOV = refundTx.to === accounts[0] ? refundTx.value : 0; + + var addedPoolTokenV1Amount = new BN(result.logs[0].args._poolTokenAmount); + var expectedBalance = new BN(sovAmountBefore.toString()).sub(sovAmount).add(new BN(refundedSOV)) assert.equal( (await sovToken.balanceOf(accounts[0])).toString(), expectedBalance.toString(), "Wrong SOV balance" ); - await expectEvent(result.receipt, "LiquidityRemoved", { + assert.equal( + (await liquidityMining.userLPBalance(accounts[0], poolTokenV1Address)).toString(), + addedPoolTokenV1Amount.toString(), + "Wrong pool token balance on LM contract (1)" + ); + + await expectEvent(result.receipt, "LiquidityAddedToV1", { _provider: accounts[0], - _reserveAmount: addedRBTCAmount, - _poolTokenAmount: poolTokenBalance, + _reserveTokens: [usdTokenAddress, sovTokenAddress], + _reserveAmounts: [usdAmount, sovAmount], + _poolTokenAmount: addedPoolTokenV1Amount, }); - }); - it("verifies that users could remove liquidity to burn pool token 2 and then get RBTC", async () => { - poolTokenBalance = await liquidityMining.userLPBalance(accounts[0], usdPoolTokenV2Address); - assert(poolTokenBalance > 0, "incorrect test setup"); - - var sovAmountBefore = await sovToken.balanceOf(accounts[0]); + var sovAmountAfter = await sovToken.balanceOf(accounts[0]); - var usdAmountBefore = await usdToken.balanceOf(accounts[0]); - var result = await rbtcWrapperProxy.removeLiquidityFromV2(liquidityPoolV2ConverterAddress, usdTokenAddress, poolTokenBalance, 1, { + usdAmountBefore = await usdToken.balanceOf(accounts[0]); + // Send 2x SOV, User should get 1x SOV back + var result = await rbtcWrapperProxy.addLiquidityToV1( + liquidityPoolV1ConverterUSDSOV, + [usdTokenAddress,sovTokenAddress], + [usdAmount, web3.utils.toBN(sovAmount * 2)], + 2, + { from: accounts[0], to: RBTCWrapperProxy.address, }); - var addedUSDAmount = web3.utils.BN(result.logs[0].args._reserveAmount); - var expectedBalance = usdAmountBefore.add(addedUSDAmount); - + usdAmountAfter = await usdToken.balanceOf(accounts[0]); + expect(usdAmountAfter.toString()).to.equal( (usdAmountBefore.sub(usdAmount)).toString() ); + + addedPoolTokenV1Amount = addedPoolTokenV1Amount.add(new BN(result.logs[0].args._poolTokenAmount)); + expectedBalance = new BN(sovAmountAfter.toString()).sub(web3.utils.toBN(sovAmount)).add(new BN(refundedSOV)); + assert.equal( - await usdToken.balanceOf(accounts[0]), + (await sovToken.balanceOf(accounts[0])).toString(), expectedBalance.toString(), - "Wrong USD balance" + "Wrong SOV balance (2)" ); - //checking if the LM reward being paid out - expectedBalance = new BN(sovAmountBefore).add(poolTokenBalance); assert.equal( - (await sovToken.balanceOf(accounts[0])).toString(), - expectedBalance.toString(), - "Wrong SOV balance" + (await liquidityMining.userLPBalance(accounts[0], poolTokenV1Address)).toString(), + addedPoolTokenV1Amount.toString(), + "Wrong pool token balance on LM contract (2)" ); - - await expectEvent(result.receipt, "LiquidityRemoved", { + + await expectEvent(result.receipt, "LiquidityAddedToV1", { _provider: accounts[0], - _reserveAmount: addedUSDAmount, - _poolTokenAmount: poolTokenBalance, + _reserveTokens: [usdTokenAddress, sovTokenAddress], + _reserveAmounts: [usdAmount, web3.utils.toBN(sovAmount * 2)] }); - }); - it("verifies that users could send RBTC and then swap it to DoC", async () => { - var rbtcAmountBefore = await web3.eth.getBalance(accounts[0]); - var usdTokenAmountBefore = await usdToken.balanceOf(accounts[0]); + // SWAP / TRADE + var pathSUSDToSOV = await sovrynSwapNetwork.conversionPath(usdTokenAddress, sovTokenAddress); - var pathWRBTCToDoC = await sovrynSwapNetwork.conversionPath(wrbtcAddress, usdTokenAddress); - var result = await rbtcWrapperProxy.convertByPath(pathWRBTCToDoC, web3.utils.toBN(1e16), 1, { - from: accounts[0], - to: RBTCWrapperProxy.address, - value: 1e16 - }); + await usdToken.approve(sovrynSwapNetwork.address, web3.utils.toBN(0), { from: accounts[0] }); + await usdToken.approve(sovrynSwapNetwork.address, web3.utils.toBN(1e14), { from: accounts[0] }); - var gasCost = new BN(result.receipt.gasUsed).mul(new BN((await web3.eth.getGasPrice()).toString())); - var addedDoCTokenAmount = web3.utils.BN(result.logs[0].args._targetTokenAmount); - var expectedBalance = new BN(rbtcAmountBefore).sub(gasCost).sub(new BN((10**16).toString())); - assert.equal(await web3.eth.getBalance(accounts[0]), expectedBalance.toString(), "Wrong RBTC balance"); - expectedBalance = new BN(usdTokenAmountBefore).add(addedDoCTokenAmount); - assert.equal( - await usdToken.balanceOf(accounts[0]), - expectedBalance.toString(), - "Wrong DoC token balance" + const previousSOVBalance = await sovToken.balanceOf(accounts[0]); + const previousUSDBalance = await usdToken.balanceOf(accounts[0]); + const amountSwap = web3.utils.toBN(1e14); + + var result = await sovrynSwapNetwork.convertByPath( + pathSUSDToSOV, // path + amountSwap, // amount + 1, // minReturn + accounts[0], // recipient + ZERO_ADDRESS, // affiliate Account + 0, // affiliate fee ); - await expectEvent(result.receipt, "TokenConverted", { - _beneficiary: accounts[0], - _sourceTokenAmount: web3.utils.toBN(1e16), - _targetTokenAmount: addedDoCTokenAmount, - _path: pathWRBTCToDoC, - }); + + decode = decodeLogs(result.receipt.rawLogs, ISovrynSwapNetwork, "Conversion"); + conversionData = decode[0].args; + totalConverted = conversionData._toAmount; + + expect(conversionData._fromToken).to.equal(usdTokenAddress); + expect(conversionData._toToken).to.equal(sovTokenAddress); + expect(conversionData._fromAmount).to.equal(amountSwap.toString()); + expect(conversionData._trader).to.equal(accounts[0]); + + const latestSOVBalance = await sovToken.balanceOf(accounts[0]); + const latestUSDBalance = await usdToken.balanceOf(accounts[0]); + expect(latestSOVBalance.toString()).to.equal(previousSOVBalance.add(new BN(totalConverted)).toString()); + expect(latestUSDBalance.toString()).to.equal(previousUSDBalance.sub(amountSwap).toString()); }); - it("verifies that users could send DoC and then swap it to RBTC", async () => { - var rbtcAmountBefore = await web3.eth.getBalance(accounts[0]); - var usdTokenAmountBefore = await usdToken.balanceOf(accounts[0]); + it("Withdraw token / rbtc should fail for non-authorized sender", async () => { + await expectRevert(rbtcWrapperProxy.withdraw(sovTokenAddress, accounts[5], 0, {from: accounts[1]}), "ERR_ACCESS_DENIED") + await expectRevert(rbtcWrapperProxy.withdraw(ZERO_ADDRESS, accounts[5], 0, {from: accounts[1]}), "ERR_ACCESS_DENIED") + }) - await usdToken.approve(RBTCWrapperProxy.address, web3.utils.toBN(1e20), { from: accounts[0] }); + it("Withdraw token / rbtc should fail if withdrawing 0 amount", async () => { + await expectRevert(rbtcWrapperProxy.withdraw(sovTokenAddress, accounts[5], 0), "non-zero withdraw amount expected") + await expectRevert(rbtcWrapperProxy.withdraw(ZERO_ADDRESS, accounts[5], 0), "non-zero withdraw amount expected") + }) - var pathDoCToWRBTC = await sovrynSwapNetwork.conversionPath(usdTokenAddress, wrbtcAddress); - var rbtcAmountBefore = await web3.eth.getBalance(accounts[0]); - - var result = await rbtcWrapperProxy.convertByPath(pathDoCToWRBTC, web3.utils.toBN(1e20), 1, { - from: accounts[0], - to: RBTCWrapperProxy.address, - }); + it("Withdraw token / rbtc should fail if withdrawing to 0 address", async () => { + await expectRevert(rbtcWrapperProxy.withdraw(sovTokenAddress, ZERO_ADDRESS, 1), "receiver address invalid") + await expectRevert(rbtcWrapperProxy.withdraw(ZERO_ADDRESS, ZERO_ADDRESS, 1), "receiver address invalid") + }) - var gasCost = new BN(result.receipt.gasUsed).mul( new BN((await web3.eth.getGasPrice()).toString()));; - var addedRBTCAmount = new BN(result.logs[0].args._targetTokenAmount); - var expectedBalance = new BN(rbtcAmountBefore).add(addedRBTCAmount).sub(gasCost); - assert.equal( - await web3.eth.getBalance(accounts[0]), - expectedBalance.toString(), - "Wrong RBTC balance" - ); + it("Withdraw token / rbtc should fail for insufficient balance", async () => { + const receiver = accounts[5]; + await expectRevert(rbtcWrapperProxy.withdraw(sovTokenAddress, receiver, 1), "SafeERC20: low-level call failed") + await expectRevert(rbtcWrapperProxy.withdraw(ZERO_ADDRESS, receiver, 1), "transfer failed") + }) - expectedBalance = new BN(usdTokenAmountBefore).sub(web3.utils.toBN(1e20)); - assert.equal( - web3.utils.BN(await usdToken.balanceOf(accounts[0])).toString(), - expectedBalance.toString(), - "Wrong DoC token balance" - ); - await expectEvent(result.receipt, "TokenConverted", { - _beneficiary: accounts[0], - _sourceTokenAmount: web3.utils.toBN(1e20), - _targetTokenAmount: addedRBTCAmount, - _path: pathDoCToWRBTC, - }); - }); - - it("should revert when sending rBTC to this smart contract from user directly", async () => { - await expectRevert.unspecified(rbtcWrapperProxy.send(web3.utils.toBN(1e16))); - }); + it("Withdraw token successfully", async () => { + const receiver = accounts[5]; + const stuckAmount = 10; + await sovToken.transfer(rbtcWrapperProxy.address, stuckAmount); - it("should revert when calling the addLIquidity() without sending RBTC", async () => { - await expectRevert.unspecified( - rbtcWrapperProxy.addLiquidityToV2(liquidityPoolV2ConverterAddress, wrbtcAddress, web3.utils.toBN(1e16), 1, { - from: accounts[0], - to: RBTCWrapperProxy.address, - }), - "No RBTC" - ); - }); + const previousSOVBalanceReceiver = await sovToken.balanceOf(receiver); + const previousSOVBalanceWrapper = await sovToken.balanceOf(rbtcWrapperProxy.address); - it("should revert when amount param not identical to msg.value to call addLiquidityToV2()", async () => { - await expectRevert.unspecified( - rbtcWrapperProxy.addLiquidityToV2(liquidityPoolV2ConverterAddress, wrbtcAddress, web3.utils.toBN(1e16), 1, { - from: accounts[0], - to: RBTCWrapperProxy.address, - value: 1e8, - }), - "The provided amount not identical to msg.value" - ); - }); + expect(previousSOVBalanceWrapper.toString()).to.equal(new BN(stuckAmount).toString()); - it("should revert when passing wrong path param to convertByPath()", async () => { - var pathWRBTCToDoC = await sovrynSwapNetwork.conversionPath(wrbtcAddress, usdTokenAddress); - var pathDoCToWRBTC = await sovrynSwapNetwork.conversionPath(usdTokenAddress, wrbtcAddress); - await expectRevert.unspecified( - rbtcWrapperProxy.convertByPath(pathDoCToWRBTC, web3.utils.toBN(1e16), 1, { - from: accounts[0], - to: RBTCWrapperProxy.address, - value: 1e16, - }), - "Wrong path param" - ); - await expectRevert.unspecified( - rbtcWrapperProxy.convertByPath(pathWRBTCToDoC, web3.utils.toBN(1e20), 1, { from: accounts[0], to: RBTCWrapperProxy.address }), - "Wrong path param" - ); - }); + const result = await rbtcWrapperProxy.withdraw(sovTokenAddress, receiver, stuckAmount); - it("should add to the lending pool and provide the pool tokens to the LM contract", async() => { - const amount = web3.utils.toBN(10e18); - const usdBefore = await usdToken.balanceOf(accounts[0]); - await usdToken.approve(rbtcWrapperProxy.address, amount); - const result = await rbtcWrapperProxy.addToLendingPool(usdLoanToken.address, amount); - const usdAfter = await usdToken.balanceOf(accounts[0]); - assert.equal(amount.add(usdAfter).toString(), usdBefore.toString(), "incorrect account token balance"); - assert.equal(amount.toString(), (await usdToken.balanceOf(usdLoanToken.address)).toString(), "incorrect underlying balance on loan token"); - assert.equal(amount.toString(), (await usdLoanToken.balanceOf(liquidityMining.address)).toString(), "incorrect pool token balance on LM contract"); - - expectEvent(result.receipt, "LoanTokensMinted", { - user: accounts[0], - poolTokenAmount: amount, - assetAmount: amount + await expectEvent(result.receipt, "Withdraw", { + token: sovTokenAddress, + recipient: receiver, + totalWithdrawn: new BN(stuckAmount) }); - }); - it("should withdraw from the lending pool and withdraw the rewrads from the LM contract", async() => { - const amount = await liquidityMining.userLPBalance(accounts[0], usdLoanToken.address); - assert(amount > 0, "incorrect test setup. account needs to have a balance on the LM contract"); - - const usdBefore = await usdToken.balanceOf(accounts[0]); - const sovBefore = await sovToken.balanceOf(accounts[0]); - const result = await rbtcWrapperProxy.removeFromLendingPool(usdLoanToken.address, amount); - - assert.equal(amount.add(usdBefore).toString(), (await usdToken.balanceOf(accounts[0])).toString(), "incorrect account token balance"); - assert.equal(amount.add(sovBefore).toString(), (await sovToken.balanceOf(accounts[0])).toString(), "incorrect account token balance"); - - expectEvent(result.receipt, "LoanTokensBurnt", { - user: accounts[0], - poolTokenAmount: amount, - assetAmount: amount - }); - }); + const latestSOVBalanceReceiver = await sovToken.balanceOf(receiver); + const latestSOVBalanceWrapper = await sovToken.balanceOf(rbtcWrapperProxy.address); + expect(latestSOVBalanceReceiver.toString()).to.equal(previousSOVBalanceReceiver.add(new BN(stuckAmount)).toString()); + expect(latestSOVBalanceWrapper.toString()).to.equal(previousSOVBalanceWrapper.sub(new BN(stuckAmount)).toString()); + }) -}); + it("Withdraw rbtc successfully", async () => { + const receiver = accounts[5]; + const stuckAmount = web3.utils.toWei(new BN(1), "ether"); + const wrbtcMockup = await WRBTCMockup.new(); + rbtcWrapperProxy = await RBTCWrapperProxy.new( + wrbtcMockup.address, + sovrynSwapNetworkAddress, + sovrynSwapNetworkAddress, + sovrynSwapNetworkAddress + ) + await web3.eth.sendTransaction({ from: accounts[0], to: wrbtcMockup.address, value: stuckAmount }); + await wrbtcMockup.sendRBTC(rbtcWrapperProxy.address, stuckAmount); + const previousRBTCBalanceReceiver = new BN(await web3.eth.getBalance(receiver)); + const previousRBTCBalanceWrapper = new BN(await web3.eth.getBalance(rbtcWrapperProxy.address)); -}); + expect(previousRBTCBalanceWrapper.toString()).to.equal(new BN(stuckAmount).toString()); + + const result = await rbtcWrapperProxy.withdraw(ZERO_ADDRESS, receiver, stuckAmount); + + await expectEvent(result.receipt, "Withdraw", { + token: ZERO_ADDRESS, + recipient: receiver, + totalWithdrawn: new BN(stuckAmount) + }); + + const latestRBTCBalanceReceiver = new BN(await web3.eth.getBalance(receiver)); + const latestRBTCBalanceWrapper = new BN(await web3.eth.getBalance(rbtcWrapperProxy.address)); + + expect(latestRBTCBalanceReceiver.toString()).to.equal(previousRBTCBalanceReceiver.add(new BN(stuckAmount)).toString()); + expect(latestRBTCBalanceWrapper.toString()).to.equal(previousRBTCBalanceWrapper.sub(new BN(stuckAmount)).toString()); + }) +}); \ No newline at end of file diff --git a/rbtcwrapperproxy/truffle-config.js b/rbtcwrapperproxy/truffle-config.js index 430c67e..079920c 100644 --- a/rbtcwrapperproxy/truffle-config.js +++ b/rbtcwrapperproxy/truffle-config.js @@ -18,12 +18,12 @@ * */ -const HDWalletProvider = require('@truffle/hdwallet-provider'); +const HDWalletProvider = require("@truffle/hdwallet-provider"); // const infuraKey = "fj4jll3k....."; -const fs = require('fs'); +const fs = require("fs"); // const mnemonic = ""; -const privateKey = fs.readFileSync('./private-key').toString(); +const privateKey = fs.readFileSync("./private-key").toString(); //Update gas price Testnet /* Run this first, to use the result in truffle-config: @@ -34,97 +34,99 @@ const privateKey = fs.readFileSync('./private-key').toString(); const gasPriceTestnetRaw = fs.readFileSync(".minimum-gas-price-testnet.json").toString().trim(); const minimumGasPriceTestnet = parseInt(JSON.parse(gasPriceTestnetRaw).result.minimumGasPrice, 16); -if (typeof minimumGasPriceTestnet !== 'number' || isNaN(minimumGasPriceTestnet)) { - throw new Error('unable to retrieve network gas price from .gas-price-testnet.json'); +if (typeof minimumGasPriceTestnet !== "number" || isNaN(minimumGasPriceTestnet)) { + throw new Error("unable to retrieve network gas price from .gas-price-testnet.json"); } console.log("Minimum gas price Testnet: " + minimumGasPriceTestnet); - module.exports = { - /** - * Networks define how you connect to your ethereum client and let you set the - * defaults web3 uses to send transactions. If you don't specify one truffle - * will spin up a development blockchain for you on port 9545 when you - * run `develop` or `test`. You can ask a truffle command to use a specific - * network from the command line, e.g - * - * $ truffle test --network - */ + /** + * Networks define how you connect to your ethereum client and let you set the + * defaults web3 uses to send transactions. If you don't specify one truffle + * will spin up a development blockchain for you on port 9545 when you + * run `develop` or `test`. You can ask a truffle command to use a specific + * network from the command line, e.g + * + * $ truffle test --network + */ - networks: { - // Useful for testing. The `development` name is special - truffle uses it by default - // if it's defined here and no other network is specified at the command line. - // You should run a client (like ganache-cli, geth or parity) in a separate terminal - // tab if you use this network and you must also set the `host`, `port` and `network_id` - // options below to some value. - // - testnet: { - provider: () => new HDWalletProvider(privateKey, "wss://testnet.sovryn.app/ws"), - network_id: 31, - gasPrice: 95000010, - skipDryRun: true, - networkCheckTimeout: 1e9, - timeoutBlocks: 500000 - }, - mainnet: { - provider: () => new HDWalletProvider(privateKey, "wss://mainnet.sovryn.app/ws"), - network_id: 30, - gasPrice: 65000010, - networkCheckTimeout: 1e9, - timeoutBlocks: 500000 - }, - development: { - host: "127.0.0.1", // Localhost (default: none) - port: 8545, // Standard Ethereum port (default: none) - network_id: "*", // Any network (default: none) - }, + networks: { + // Useful for testing. The `development` name is special - truffle uses it by default + // if it's defined here and no other network is specified at the command line. + // You should run a client (like ganache-cli, geth or parity) in a separate terminal + // tab if you use this network and you must also set the `host`, `port` and `network_id` + // options below to some value. + // + testnet: { + //provider: () => new HDWalletProvider(privateKey, "wss://testnet.sovryn.app/websocket"), + provider: () => new HDWalletProvider(privateKey, "https://testnet.sovryn.app/rpc"), + network_id: 31, + gasPrice: 95000010, + skipDryRun: true, + networkCheckTimeout: 1e9, + timeoutBlocks: 500000, + }, + mainnet: { + //provider: () => new HDWalletProvider(privateKey, "wss://mainnet.sovryn.app/ws"), + //provider: () => new HDWalletProvider(privateKey, "wss://mainnet.sovryn.app/websocket"), + provider: () => new HDWalletProvider(privateKey, "https://testnet.sovryn.app/rpc"), + network_id: 30, + gasPrice: 65000010, + networkCheckTimeout: 1e9, + timeoutBlocks: 500000, + }, + development: { + host: "127.0.0.1", // Localhost (default: none) + port: 8545, // Standard Ethereum port (default: none) + network_id: "*", // Any network (default: none) + }, - // Another network with more advanced options... - // advanced: { - // port: 8777, // Custom port - // network_id: 1342, // Custom network - // gas: 8500000, // Gas sent with each transaction (default: ~6700000) - // gasPrice: 20000000000, // 20 gwei (in wei) (default: 100 gwei) - // from:
, // Account to send txs from (default: accounts[0]) - // websockets: true // Enable EventEmitter interface for web3 (default: false) - // }, + // Another network with more advanced options... + // advanced: { + // port: 8777, // Custom port + // network_id: 1342, // Custom network + // gas: 8500000, // Gas sent with each transaction (default: ~6700000) + // gasPrice: 20000000000, // 20 gwei (in wei) (default: 100 gwei) + // from:
, // Account to send txs from (default: accounts[0]) + // websockets: true // Enable EventEmitter interface for web3 (default: false) + // }, - // Useful for deploying to a public network. - // NB: It's important to wrap the provider as a function. - // ropsten: { - // provider: () => new HDWalletProvider(mnemonic, `https://ropsten.infura.io/v3/YOUR-PROJECT-ID`), - // network_id: 3, // Ropsten's id - // gas: 5500000, // Ropsten has a lower block limit than mainnet - // confirmations: 2, // # of confs to wait between deployments. (default: 0) - // timeoutBlocks: 200, // # of blocks before a deployment times out (minimum/default: 50) - // skipDryRun: true // Skip dry run before migrations? (default: false for public nets ) - // }, + // Useful for deploying to a public network. + // NB: It's important to wrap the provider as a function. + // ropsten: { + // provider: () => new HDWalletProvider(mnemonic, `https://ropsten.infura.io/v3/YOUR-PROJECT-ID`), + // network_id: 3, // Ropsten's id + // gas: 5500000, // Ropsten has a lower block limit than mainnet + // confirmations: 2, // # of confs to wait between deployments. (default: 0) + // timeoutBlocks: 200, // # of blocks before a deployment times out (minimum/default: 50) + // skipDryRun: true // Skip dry run before migrations? (default: false for public nets ) + // }, - // Useful for private networks - // private: { - // provider: () => new HDWalletProvider(mnemonic, `https://network.io`), - // network_id: 2111, // This network is yours, in the cloud. - // production: true // Treats this network as if it was a public net. (default: false) - // } - }, + // Useful for private networks + // private: { + // provider: () => new HDWalletProvider(mnemonic, `https://network.io`), + // network_id: 2111, // This network is yours, in the cloud. + // production: true // Treats this network as if it was a public net. (default: false) + // } + }, - // Set default mocha options here, use special reporters etc. - mocha: { - // timeout: 100000 - }, + // Set default mocha options here, use special reporters etc. + mocha: { + // timeout: 100000 + }, - // Configure your compilers - compilers: { - solc: { - // version: "0.5.1", // Fetch exact version from solc-bin (default: truffle's version) - // docker: true, // Use "0.5.1" you've installed locally with docker (default: false) - // settings: { // See the solidity docs for advice about optimization and evmVersion - // optimizer: { - // enabled: false, - // runs: 200 - // }, - // evmVersion: "byzantium" - // } - } - } -} + // Configure your compilers + compilers: { + solc: { + // version: "0.5.1", // Fetch exact version from solc-bin (default: truffle's version) + // docker: true, // Use "0.5.1" you've installed locally with docker (default: false) + // settings: { // See the solidity docs for advice about optimization and evmVersion + // optimizer: { + // enabled: false, + // runs: 200 + // }, + // evmVersion: "byzantium" + // } + }, + }, +}; diff --git a/solidity/build/BProOracle.abi b/solidity/build/BProOracle.abi index 3c51697..ef75353 100644 --- a/solidity/build/BProOracle.abi +++ b/solidity/build/BProOracle.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_mocStateAddress","type":"address"}],"name":"setMoCStateAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"latestAnswer","outputs":[{"name":"","type":"int256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"latestTimestamp","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"mocStateAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_mocStateAddress","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"mocStateAddress","type":"address"},{"indexed":false,"name":"changerAddress","type":"address"}],"name":"SetMoCStateAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}] \ No newline at end of file +[{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"mocStateAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_mocStateAddress","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"mocStateAddress","type":"address"},{"indexed":false,"name":"changerAddress","type":"address"}],"name":"SetMoCStateAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":true,"inputs":[],"name":"latestAnswer","outputs":[{"name":"","type":"int256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"latestTimestamp","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_mocStateAddress","type":"address"}],"name":"setMoCStateAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/BProOracle.bin b/solidity/build/BProOracle.bin index 3b62101..4b2905a 100644 --- a/solidity/build/BProOracle.bin +++ b/solidity/build/BProOracle.bin @@ -1 +1 @@ -608060405234801561001057600080fd5b50604051602080610720833981016040525160008054600160a060020a031916331790556100468164010000000061004c810204565b506101d2565b61005d640100000000610157810204565b600160a060020a03811615156100fa57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f5f6d6f63537461746541646472657373207368616c6c206e6f74206265207a6560448201527f726f206164647265737300000000000000000000000000000000000000000000606482015290519081900360840190fd5b60028054600160a060020a031916600160a060020a03838116919091179182905560408051338152905192909116917faabf985d3e03e92a41537d04d0e369c7afc56183856290aa2c1a230768842ef4916020908290030190a250565b600054600160a060020a031633146101d057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b61053f806101e16000396000f30060806040526004361061008d5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166327bcc684811461009257806350d25bcd146100b557806379ba5097146100dc5780638205bf6a146100f15780638da5cb5b14610106578063ab5e3e5b14610137578063d4ee1d901461014c578063f2fde38b14610161575b600080fd5b34801561009e57600080fd5b506100b3600160a060020a0360043516610182565b005b3480156100c157600080fd5b506100ca61027a565b60408051918252519081900360200190f35b3480156100e857600080fd5b506100b361030e565b3480156100fd57600080fd5b506100ca6103e1565b34801561011257600080fd5b5061011b6103e5565b60408051600160a060020a039092168252519081900360200190f35b34801561014357600080fd5b5061011b6103f4565b34801561015857600080fd5b5061011b610403565b34801561016d57600080fd5b506100b3600160a060020a0360043516610412565b61018a6104af565b600160a060020a0381161515610210576040805160e560020a62461bcd02815260206004820152602a60248201527f5f6d6f63537461746541646472657373207368616c6c206e6f74206265207a6560448201527f726f206164647265737300000000000000000000000000000000000000000000606482015290519081900360840190fd5b6002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03838116919091179182905560408051338152905192909116917faabf985d3e03e92a41537d04d0e369c7afc56183856290aa2c1a230768842ef4916020908290030190a250565b600254604080517f747a56630000000000000000000000000000000000000000000000000000000081529051600092600160a060020a031691829163747a56639160048082019260209290919082900301818887803b1580156102dc57600080fd5b505af11580156102f0573d6000803e3d6000fd5b505050506040513d602081101561030657600080fd5b505191505090565b600154600160a060020a03163314610370576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b4290565b600054600160a060020a031681565b600254600160a060020a031681565b600154600160a060020a031681565b61041a6104af565b600054600160a060020a0382811691161415610480576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a03163314610511576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b5600a165627a7a72305820df6d3c723f2e4998bcce882196c49ae7fd0ae86001212ed36ea5e8b0dad97e9b0029 \ No newline at end of file +608060405234801561001057600080fd5b50604051602080610720833981016040525160008054600160a060020a031916331790556100468164010000000061004c810204565b506101d2565b61005d640100000000610157810204565b600160a060020a03811615156100fa57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f5f6d6f63537461746541646472657373207368616c6c206e6f74206265207a6560448201527f726f206164647265737300000000000000000000000000000000000000000000606482015290519081900360840190fd5b60028054600160a060020a031916600160a060020a03838116919091179182905560408051338152905192909116917faabf985d3e03e92a41537d04d0e369c7afc56183856290aa2c1a230768842ef4916020908290030190a250565b600054600160a060020a031633146101d057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b61053f806101e16000396000f30060806040526004361061008d5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166327bcc684811461009257806350d25bcd146100b557806379ba5097146100dc5780638205bf6a146100f15780638da5cb5b14610106578063ab5e3e5b14610137578063d4ee1d901461014c578063f2fde38b14610161575b600080fd5b34801561009e57600080fd5b506100b3600160a060020a0360043516610182565b005b3480156100c157600080fd5b506100ca61027a565b60408051918252519081900360200190f35b3480156100e857600080fd5b506100b361030e565b3480156100fd57600080fd5b506100ca6103e1565b34801561011257600080fd5b5061011b6103e5565b60408051600160a060020a039092168252519081900360200190f35b34801561014357600080fd5b5061011b6103f4565b34801561015857600080fd5b5061011b610403565b34801561016d57600080fd5b506100b3600160a060020a0360043516610412565b61018a6104af565b600160a060020a0381161515610210576040805160e560020a62461bcd02815260206004820152602a60248201527f5f6d6f63537461746541646472657373207368616c6c206e6f74206265207a6560448201527f726f206164647265737300000000000000000000000000000000000000000000606482015290519081900360840190fd5b6002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03838116919091179182905560408051338152905192909116917faabf985d3e03e92a41537d04d0e369c7afc56183856290aa2c1a230768842ef4916020908290030190a250565b600254604080517f747a56630000000000000000000000000000000000000000000000000000000081529051600092600160a060020a031691829163747a56639160048082019260209290919082900301818887803b1580156102dc57600080fd5b505af11580156102f0573d6000803e3d6000fd5b505050506040513d602081101561030657600080fd5b505191505090565b600154600160a060020a03163314610370576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b4290565b600054600160a060020a031681565b600254600160a060020a031681565b600154600160a060020a031681565b61041a6104af565b600054600160a060020a0382811691161415610480576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a03163314610511576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b5600a165627a7a72305820b0012db89bd7fa30f70ed60f6fd2f40da4d1218a39af8ef2a0fd5085ff1d5e650029 \ No newline at end of file diff --git a/solidity/build/ChainlinkBTCToUSDOracle.abi b/solidity/build/ChainlinkBTCToUSDOracle.abi new file mode 100644 index 0000000..e7bda00 --- /dev/null +++ b/solidity/build/ChainlinkBTCToUSDOracle.abi @@ -0,0 +1 @@ +[{"constant":true,"inputs":[],"name":"latestAnswer","outputs":[{"name":"","type":"int256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"latestTimestamp","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/solidity/build/ChainlinkBTCToUSDOracle.bin b/solidity/build/ChainlinkBTCToUSDOracle.bin new file mode 100644 index 0000000..2982b1a --- /dev/null +++ b/solidity/build/ChainlinkBTCToUSDOracle.bin @@ -0,0 +1 @@ +608060405234801561001057600080fd5b5060b98061001f6000396000f30060806040526004361060485763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166350d25bcd8114604d5780638205bf6a146071575b600080fd5b348015605857600080fd5b50605f6083565b60408051918252519081900360200190f35b348015607c57600080fd5b50605f6089565b61271090565b42905600a165627a7a72305820cbbba4040ad39261f4e5560893b66b266f7deb972be4730d9b2666af494c10680029 \ No newline at end of file diff --git a/solidity/build/ChainlinkETHToETHOracle.bin b/solidity/build/ChainlinkETHToETHOracle.bin index 2ad7fd0..c03ea13 100644 --- a/solidity/build/ChainlinkETHToETHOracle.bin +++ b/solidity/build/ChainlinkETHToETHOracle.bin @@ -1 +1 @@ -608060405234801561001057600080fd5b5060b88061001f6000396000f30060806040526004361060485763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166350d25bcd8114604d5780638205bf6a146071575b600080fd5b348015605857600080fd5b50605f6083565b60408051918252519081900360200190f35b348015607c57600080fd5b50605f6088565b600190565b42905600a165627a7a72305820c7b5171cbf173f3678a966d9067e45042e7d2140bac85f0a4fe41c1cf91d2adf0029 \ No newline at end of file +608060405234801561001057600080fd5b5060b88061001f6000396000f30060806040526004361060485763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166350d25bcd8114604d5780638205bf6a146071575b600080fd5b348015605857600080fd5b50605f6083565b60408051918252519081900360200190f35b348015607c57600080fd5b50605f6088565b600190565b42905600a165627a7a72305820eacffe668e0c84c4fbca1a375407623df53b315314ecf031e81c2da5c3652b610029 \ No newline at end of file diff --git a/solidity/build/ChainlinkUSDToBTCOracle.abi b/solidity/build/ChainlinkUSDToBTCOracle.abi new file mode 100644 index 0000000..e7bda00 --- /dev/null +++ b/solidity/build/ChainlinkUSDToBTCOracle.abi @@ -0,0 +1 @@ +[{"constant":true,"inputs":[],"name":"latestAnswer","outputs":[{"name":"","type":"int256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"latestTimestamp","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/solidity/build/ChainlinkUSDToBTCOracle.bin b/solidity/build/ChainlinkUSDToBTCOracle.bin new file mode 100644 index 0000000..638c688 --- /dev/null +++ b/solidity/build/ChainlinkUSDToBTCOracle.bin @@ -0,0 +1 @@ +608060405234801561001057600080fd5b5060b98061001f6000396000f30060806040526004361060485763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166350d25bcd8114604d5780638205bf6a146071575b600080fd5b348015605857600080fd5b50605f6083565b60408051918252519081900360200190f35b348015607c57600080fd5b50605f6089565b61271090565b42905600a165627a7a7230582094b082f9a0577dd4467e0fa9e7f64f2e5e6f58f403f9782dc11923008c4da36c0029 \ No newline at end of file diff --git a/solidity/build/ContractRegistry.abi b/solidity/build/ContractRegistry.abi index 55d442c..1515bf6 100644 --- a/solidity/build/ContractRegistry.abi +++ b/solidity/build/ContractRegistry.abi @@ -1 +1 @@ -[{"constant":true,"inputs":[{"name":"_contractName","type":"bytes32"}],"name":"getAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_contractName","type":"bytes32"}],"name":"unregisterAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"contractNames","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_contractName","type":"bytes32"},{"name":"_contractAddress","type":"address"}],"name":"registerAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"itemCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_contractName","type":"bytes32"}],"name":"addressOf","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_contractName","type":"bytes32"},{"indexed":false,"name":"_contractAddress","type":"address"}],"name":"AddressUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}] \ No newline at end of file +[{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"contractNames","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_contractName","type":"bytes32"},{"indexed":false,"name":"_contractAddress","type":"address"}],"name":"AddressUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":true,"inputs":[],"name":"itemCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_contractName","type":"bytes32"}],"name":"addressOf","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_contractName","type":"bytes32"},{"name":"_contractAddress","type":"address"}],"name":"registerAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_contractName","type":"bytes32"}],"name":"unregisterAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_contractName","type":"bytes32"}],"name":"getAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/solidity/build/ContractRegistry.bin b/solidity/build/ContractRegistry.bin index ad6e559..5d2249d 100644 --- a/solidity/build/ContractRegistry.bin +++ b/solidity/build/ContractRegistry.bin @@ -1 +1 @@ -608060405260008054600160a060020a03191633179055610aba806100256000396000f3006080604052600436106100a35763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166321f8a72181146100a85780632bbd9530146100dc5780633ca6bb92146100f6578063662de379146101835780636bfb0d01146101a757806379ba5097146101ce5780638da5cb5b146101e3578063bb34534c146101f8578063d4ee1d9014610210578063f2fde38b14610225575b600080fd5b3480156100b457600080fd5b506100c0600435610246565b60408051600160a060020a039092168252519081900360200190f35b3480156100e857600080fd5b506100f4600435610257565b005b34801561010257600080fd5b5061010e60043561047c565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610148578181015183820152602001610130565b50505050905090810190601f1680156101755780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561018f57600080fd5b506100f4600435600160a060020a0360243516610523565b3480156101b357600080fd5b506101bc610637565b60408051918252519081900360200190f35b3480156101da57600080fd5b506100f461063e565b3480156101ef57600080fd5b506100c0610711565b34801561020457600080fd5b506100c0600435610720565b34801561021c57600080fd5b506100c061073b565b34801561023157600080fd5b506100f4600160a060020a036004351661074a565b600061025182610720565b92915050565b606060008060006102666107e7565b600085815260026020526040902054600160a060020a031615156102d4576040805160e560020a62461bcd02815260206004820152601060248201527f4552525f494e56414c49445f4e414d4500000000000000000000000000000000604482015290519081900360640190fd5b6000858152600260205260409020805473ffffffffffffffffffffffffffffffffffffffff19169055600354600110156104195760038054600019810190811061031a57fe5b600091825260209182902001805460408051601f60026000196101006001871615020190941693909304928301859004850281018501909152818152928301828280156103a85780601f1061037d576101008083540402835291602001916103a8565b820191906000526020600020905b81548152906001019060200180831161038b57829003601f168201915b50505060008881526002602052604090206001015460038054949850909650879390925086915081106103d757fe5b9060005260206000200190805190602001906103f4929190610966565b506103fe8461084b565b60008181526002602052604090206001810185905590925090505b600380549061042c9060001983016109e4565b50600085815260026020908152604080832060010183905580519283525187927ffc08d1253c81bcd5444fc7056ef1f5a5df4c9220b6fd70d7449267f1f0f2991892908290030190a25050505050565b600380548290811061048a57fe5b600091825260209182902001805460408051601f600260001961010060018716150201909416939093049283018590048502810185019091528181529350909183018282801561051b5780601f106104f05761010080835404028352916020019161051b565b820191906000526020600020905b8154815290600101906020018083116104fe57829003601f168201915b505050505081565b60008061052e6107e7565b8261053881610852565b600085815260026020526040902054600160a060020a039081169350841683141561056257610630565b600160a060020a03831615156105c257600361057d866108b5565b8154600181018084556000938452602093849020835191946105a59491909301920190610966565b506000868152600260205260409020600019820160019091015591505b600085815260026020908152604091829020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0388169081179091558251908152915187927ffc08d1253c81bcd5444fc7056ef1f5a5df4c9220b6fd70d7449267f1f0f2991892908290030190a25b5050505050565b6003545b90565b600154600160a060020a031633146106a0576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600054600160a060020a031681565b600090815260026020526040902054600160a060020a031690565b600154600160a060020a031681565b6107526107e7565b600054600160a060020a03828116911614156107b8576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a03163314610849576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b6020015190565b600160a060020a03811615156108b2576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b604080516020808252818301909252606091829160009180820161040080388339019050509150600090505b602081101561095f578381602081106108f657fe5b1a7f010000000000000000000000000000000000000000000000000000000000000002828281518110151561092757fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506001016108e1565b5092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106109a757805160ff19168380011785556109d4565b828001600101855582156109d4579182015b828111156109d45782518255916020019190600101906109b9565b506109e0929150610a0d565b5090565b815481835581811115610a0857600083815260209020610a08918101908301610a27565b505050565b61063b91905b808211156109e05760008155600101610a13565b61063b91905b808211156109e0576000610a418282610a4a565b50600101610a2d565b50805460018160011615610100020316600290046000825580601f10610a7057506108b2565b601f0160209004906000526020600020908101906108b29190610a0d5600a165627a7a7230582025d460cc82b8332b6053e7e31333d2072cd91cc9c1f60c180aea9eec0b98af070029 \ No newline at end of file +608060405260008054600160a060020a03191633179055610aba806100256000396000f3006080604052600436106100a35763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166321f8a72181146100a85780632bbd9530146100dc5780633ca6bb92146100f6578063662de379146101835780636bfb0d01146101a757806379ba5097146101ce5780638da5cb5b146101e3578063bb34534c146101f8578063d4ee1d9014610210578063f2fde38b14610225575b600080fd5b3480156100b457600080fd5b506100c0600435610246565b60408051600160a060020a039092168252519081900360200190f35b3480156100e857600080fd5b506100f4600435610257565b005b34801561010257600080fd5b5061010e60043561047c565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610148578181015183820152602001610130565b50505050905090810190601f1680156101755780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561018f57600080fd5b506100f4600435600160a060020a0360243516610523565b3480156101b357600080fd5b506101bc610637565b60408051918252519081900360200190f35b3480156101da57600080fd5b506100f461063e565b3480156101ef57600080fd5b506100c0610711565b34801561020457600080fd5b506100c0600435610720565b34801561021c57600080fd5b506100c061073b565b34801561023157600080fd5b506100f4600160a060020a036004351661074a565b600061025182610720565b92915050565b606060008060006102666107e7565b600085815260026020526040902054600160a060020a031615156102d4576040805160e560020a62461bcd02815260206004820152601060248201527f4552525f494e56414c49445f4e414d4500000000000000000000000000000000604482015290519081900360640190fd5b6000858152600260205260409020805473ffffffffffffffffffffffffffffffffffffffff19169055600354600110156104195760038054600019810190811061031a57fe5b600091825260209182902001805460408051601f60026000196101006001871615020190941693909304928301859004850281018501909152818152928301828280156103a85780601f1061037d576101008083540402835291602001916103a8565b820191906000526020600020905b81548152906001019060200180831161038b57829003601f168201915b50505060008881526002602052604090206001015460038054949850909650879390925086915081106103d757fe5b9060005260206000200190805190602001906103f4929190610966565b506103fe8461084b565b60008181526002602052604090206001810185905590925090505b600380549061042c9060001983016109e4565b50600085815260026020908152604080832060010183905580519283525187927ffc08d1253c81bcd5444fc7056ef1f5a5df4c9220b6fd70d7449267f1f0f2991892908290030190a25050505050565b600380548290811061048a57fe5b600091825260209182902001805460408051601f600260001961010060018716150201909416939093049283018590048502810185019091528181529350909183018282801561051b5780601f106104f05761010080835404028352916020019161051b565b820191906000526020600020905b8154815290600101906020018083116104fe57829003601f168201915b505050505081565b60008061052e6107e7565b8261053881610852565b600085815260026020526040902054600160a060020a039081169350841683141561056257610630565b600160a060020a03831615156105c257600361057d866108b5565b8154600181018084556000938452602093849020835191946105a59491909301920190610966565b506000868152600260205260409020600019820160019091015591505b600085815260026020908152604091829020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0388169081179091558251908152915187927ffc08d1253c81bcd5444fc7056ef1f5a5df4c9220b6fd70d7449267f1f0f2991892908290030190a25b5050505050565b6003545b90565b600154600160a060020a031633146106a0576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600054600160a060020a031681565b600090815260026020526040902054600160a060020a031690565b600154600160a060020a031681565b6107526107e7565b600054600160a060020a03828116911614156107b8576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a03163314610849576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b6020015190565b600160a060020a03811615156108b2576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b604080516020808252818301909252606091829160009180820161040080388339019050509150600090505b602081101561095f578381602081106108f657fe5b1a7f010000000000000000000000000000000000000000000000000000000000000002828281518110151561092757fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506001016108e1565b5092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106109a757805160ff19168380011785556109d4565b828001600101855582156109d4579182015b828111156109d45782518255916020019190600101906109b9565b506109e0929150610a0d565b5090565b815481835581811115610a0857600083815260209020610a08918101908301610a27565b505050565b61063b91905b808211156109e05760008155600101610a13565b61063b91905b808211156109e0576000610a418282610a4a565b50600101610a2d565b50805460018160011615610100020316600290046000825580601f10610a7057506108b2565b601f0160209004906000526020600020908101906108b29190610a0d5600a165627a7a72305820f31cbd5d9c2ef78502f72770cb567f5ef4183d43e4f0600e1a02c47ff8655ea80029 \ No newline at end of file diff --git a/solidity/build/ContractRegistryClient.abi b/solidity/build/ContractRegistryClient.abi index 551fc60..f66da0d 100644 --- a/solidity/build/ContractRegistryClient.abi +++ b/solidity/build/ContractRegistryClient.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}] \ No newline at end of file +[{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/ConversionPathFinder.abi b/solidity/build/ConversionPathFinder.abi index 49e33e6..902fe7f 100644 --- a/solidity/build/ConversionPathFinder.abi +++ b/solidity/build/ConversionPathFinder.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_anchorToken","type":"address"}],"name":"setAnchorToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"}],"name":"findPath","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"anchorToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}] \ No newline at end of file +[{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"anchorToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":false,"inputs":[{"name":"_anchorToken","type":"address"}],"name":"setAnchorToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"}],"name":"findPath","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/solidity/build/ConversionPathFinder.bin b/solidity/build/ConversionPathFinder.bin index 700e52e..d992186 100644 --- a/solidity/build/ConversionPathFinder.bin +++ b/solidity/build/ConversionPathFinder.bin @@ -1 +1 @@ -608060405234801561001057600080fd5b50604051602080611242833981016040525160008054600160a060020a03191633179055808061004881640100000000610079810204565b5060028054600160a060020a03909216600160a060020a0319928316811790915560038054909216179055506100f3565b600160a060020a03811615156100f057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b611140806101026000396000f3006080604052600436106100ab5763ffffffff60e060020a600035041663024c7ec781146100b05780632f167f05146100cc5780632fe8a6ad146100ed57806349d10b641461011657806361cd756e1461012b57806379ba50971461015c5780637b103999146101715780638da5cb5b14610186578063a1c421cd1461019b578063b4a176d314610212578063d4ee1d9014610227578063e1c4c9661461023c578063f2fde38b14610251575b600080fd5b3480156100bc57600080fd5b506100ca6004351515610272565b005b3480156100d857600080fd5b506100ca600160a060020a03600435166102ba565b3480156100f957600080fd5b506101026102f1565b604080519115158252519081900360200190f35b34801561012257600080fd5b506100ca610312565b34801561013757600080fd5b50610140610591565b60408051600160a060020a039092168252519081900360200190f35b34801561016857600080fd5b506100ca6105a0565b34801561017d57600080fd5b50610140610673565b34801561019257600080fd5b50610140610682565b3480156101a757600080fd5b506101c2600160a060020a0360043581169060243516610691565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156101fe5781810151838201526020016101e6565b505050509050019250505060405180910390f35b34801561021e57600080fd5b506100ca6106ef565b34801561023357600080fd5b50610140610728565b34801561024857600080fd5b50610140610737565b34801561025d57600080fd5b506100ca600160a060020a0360043516610746565b61027a6107e3565b60038054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b6102c26107e3565b6004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60035474010000000000000000000000000000000000000000900460ff1681565b60008054600160a060020a0316331480610347575060035474010000000000000000000000000000000000000000900460ff16155b151561039d576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b6103c67f436f6e7472616374526567697374727900000000000000000000000000000000610847565b600254909150600160a060020a038083169116148015906103ef5750600160a060020a03811615155b1515610445576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b604080517fbb34534c0000000000000000000000000000000000000000000000000000000081527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b1580156104c957600080fd5b505af11580156104dd573d6000803e3d6000fd5b505050506040513d60208110156104f357600080fd5b5051600160a060020a03161415610554576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a0380841673ffffffffffffffffffffffffffffffffffffffff19928316179092559091169216919091179055565b600354600160a060020a031681565b600154600160a060020a03163314610602576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600254600160a060020a031681565b600054600160a060020a031681565b606060006060806106c17f536f7672796e53776170436f6e76657274657252656769737472790000000000610847565b92506106cd86846108df565b91506106d985846108df565b90506106e58282610cd4565b9695505050505050565b6106f76107e3565b6003546002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03909216919091179055565b600154600160a060020a031681565b600454600160a060020a031681565b61074e6107e3565b600054600160a060020a03828116911614156107b4576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a03163314610845576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b600254604080517fbb34534c000000000000000000000000000000000000000000000000000000008152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b1580156108ad57600080fd5b505af11580156108c1573d6000803e3d6000fd5b505050506040513d60208110156108d757600080fd5b505192915050565b60608060008060008060006060600460009054906101000a9004600160a060020a0316600160a060020a03168a600160a060020a0316141561092b576109248a610f52565b9750610cc7565b88600160a060020a031663d8cced2a8b6040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b15801561098657600080fd5b505af115801561099a573d6000803e3d6000fd5b505050506040513d60208110156109b057600080fd5b5051156109c7576109c08a610f52565b9650610ab0565b88600160a060020a031663118390648b6040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b158015610a2257600080fd5b505af1158015610a36573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015610a5f57600080fd5b810190808051640100000000811115610a7757600080fd5b82016020810184811115610a8a57600080fd5b8151856020820283011164010000000082111715610aa757600080fd5b50909a50505050505b600095505b8651861015610cb5578686815181101515610acc57fe5b90602001906020020151600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015610b1357600080fd5b505af1158015610b27573d6000803e3d6000fd5b505050506040513d6020811015610b3d57600080fd5b5051604080517f71f52bf30000000000000000000000000000000000000000000000000000000081529051919650600160a060020a038716916371f52bf3916004808201926020929091908290030181600087803b158015610b9e57600080fd5b505af1158015610bb2573d6000803e3d6000fd5b505050506040513d6020811015610bc857600080fd5b505161ffff169350600092505b83831015610caa5784600160a060020a03166319b64015846040518263ffffffff1660e060020a02815260040180828152602001915050602060405180830381600087803b158015610c2657600080fd5b505af1158015610c3a573d6000803e3d6000fd5b505050506040513d6020811015610c5057600080fd5b50519150600160a060020a03808316908b1614610c9f57610c71828a6108df565b9050600081511115610c9f576109248a8888815181101515610c8f57fe5b9060200190602002015183610fa5565b600190920191610bd5565b600190950194610ab5565b60408051600081526020810190915297505b5050505050505092915050565b606060008060606000806000806000808b51118015610cf4575060008a51115b15610f32578a519750895196505b600088118015610d125750600087115b8015610d6357508960018803815181101515610d2a57fe5b90602001906020020151600160a060020a03168b60018a03815181101515610d4e57fe5b90602001906020020151600160a060020a0316145b15610d7957600019978801979690960195610d02565b868801600101604051908082528060200260200182016040528015610da8578160200160208202803883390190505b509550600094505b878511610dff578a85815181101515610dc557fe5b906020019060200201518686815181101515610ddd57fe5b600160a060020a03909216602092830290910190910152600190940193610db0565b8693505b6000841115610e5b578960018503815181101515610e1d57fe5b906020019060200201518685885103815181101515610e3857fe5b600160a060020a0390921660209283029091019091015260001990930192610e03565b60009250600091505b8551821015610f215750600281015b60028206865103811015610ed5578581815181101515610e8f57fe5b90602001906020020151600160a060020a03168683815181101515610eb057fe5b90602001906020020151600160a060020a03161415610ecd578091505b600201610e73565b8582815181101515610ee357fe5b602090810290910101518651600185019488918110610efe57fe5b600160a060020a0390921660209283029091019091015260019190910190610e64565b610f2b8684611088565b9850610f44565b60408051600081526020810190915298505b505050505050505092915050565b6040805160018082528183019092526060918291906020808301908038833901905050905082816000815181101515610f8757fe5b600160a060020a039092166020928302909101909101529050919050565b60608060008351600201604051908082528060200260200182016040528015610fd8578160200160208202803883390190505b50915085826000815181101515610feb57fe5b600160a060020a03909216602092830290910190910152815185908390600190811061101357fe5b600160a060020a039092166020928302909101909101525060005b835181101561107f57838181518110151561104557fe5b90602001906020020151828260020181518110151561106057fe5b600160a060020a0390921660209283029091019091015260010161102e565b50949350505050565b6060806000836040519080825280602002602001820160405280156110b7578160200160208202803883390190505b509150600090505b8381101561110c5784818151811015156110d557fe5b9060200190602002015182828151811015156110ed57fe5b600160a060020a039092166020928302909101909101526001016110bf565b5093925050505600a165627a7a723058207c7131fe45293eb5b32968eb13ed75188c11ff1f1b045571d0656cd7c6a01d9c0029 \ No newline at end of file +608060405234801561001057600080fd5b50604051602080611242833981016040525160008054600160a060020a03191633179055808061004881640100000000610079810204565b5060028054600160a060020a03909216600160a060020a0319928316811790915560038054909216179055506100f3565b600160a060020a03811615156100f057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b611140806101026000396000f3006080604052600436106100ab5763ffffffff60e060020a600035041663024c7ec781146100b05780632f167f05146100cc5780632fe8a6ad146100ed57806349d10b641461011657806361cd756e1461012b57806379ba50971461015c5780637b103999146101715780638da5cb5b14610186578063a1c421cd1461019b578063b4a176d314610212578063d4ee1d9014610227578063e1c4c9661461023c578063f2fde38b14610251575b600080fd5b3480156100bc57600080fd5b506100ca6004351515610272565b005b3480156100d857600080fd5b506100ca600160a060020a03600435166102ba565b3480156100f957600080fd5b506101026102f1565b604080519115158252519081900360200190f35b34801561012257600080fd5b506100ca610312565b34801561013757600080fd5b50610140610591565b60408051600160a060020a039092168252519081900360200190f35b34801561016857600080fd5b506100ca6105a0565b34801561017d57600080fd5b50610140610673565b34801561019257600080fd5b50610140610682565b3480156101a757600080fd5b506101c2600160a060020a0360043581169060243516610691565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156101fe5781810151838201526020016101e6565b505050509050019250505060405180910390f35b34801561021e57600080fd5b506100ca6106ef565b34801561023357600080fd5b50610140610728565b34801561024857600080fd5b50610140610737565b34801561025d57600080fd5b506100ca600160a060020a0360043516610746565b61027a6107e3565b60038054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b6102c26107e3565b6004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60035474010000000000000000000000000000000000000000900460ff1681565b60008054600160a060020a0316331480610347575060035474010000000000000000000000000000000000000000900460ff16155b151561039d576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b6103c67f436f6e7472616374526567697374727900000000000000000000000000000000610847565b600254909150600160a060020a038083169116148015906103ef5750600160a060020a03811615155b1515610445576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b604080517fbb34534c0000000000000000000000000000000000000000000000000000000081527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b1580156104c957600080fd5b505af11580156104dd573d6000803e3d6000fd5b505050506040513d60208110156104f357600080fd5b5051600160a060020a03161415610554576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a0380841673ffffffffffffffffffffffffffffffffffffffff19928316179092559091169216919091179055565b600354600160a060020a031681565b600154600160a060020a03163314610602576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600254600160a060020a031681565b600054600160a060020a031681565b606060006060806106c17f536f7672796e53776170436f6e76657274657252656769737472790000000000610847565b92506106cd86846108df565b91506106d985846108df565b90506106e58282610cd4565b9695505050505050565b6106f76107e3565b6003546002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03909216919091179055565b600154600160a060020a031681565b600454600160a060020a031681565b61074e6107e3565b600054600160a060020a03828116911614156107b4576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a03163314610845576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b600254604080517fbb34534c000000000000000000000000000000000000000000000000000000008152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b1580156108ad57600080fd5b505af11580156108c1573d6000803e3d6000fd5b505050506040513d60208110156108d757600080fd5b505192915050565b60608060008060008060006060600460009054906101000a9004600160a060020a0316600160a060020a03168a600160a060020a0316141561092b576109248a610f52565b9750610cc7565b88600160a060020a031663d8cced2a8b6040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b15801561098657600080fd5b505af115801561099a573d6000803e3d6000fd5b505050506040513d60208110156109b057600080fd5b5051156109c7576109c08a610f52565b9650610ab0565b88600160a060020a031663118390648b6040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b158015610a2257600080fd5b505af1158015610a36573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015610a5f57600080fd5b810190808051640100000000811115610a7757600080fd5b82016020810184811115610a8a57600080fd5b8151856020820283011164010000000082111715610aa757600080fd5b50909a50505050505b600095505b8651861015610cb5578686815181101515610acc57fe5b90602001906020020151600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015610b1357600080fd5b505af1158015610b27573d6000803e3d6000fd5b505050506040513d6020811015610b3d57600080fd5b5051604080517f71f52bf30000000000000000000000000000000000000000000000000000000081529051919650600160a060020a038716916371f52bf3916004808201926020929091908290030181600087803b158015610b9e57600080fd5b505af1158015610bb2573d6000803e3d6000fd5b505050506040513d6020811015610bc857600080fd5b505161ffff169350600092505b83831015610caa5784600160a060020a03166319b64015846040518263ffffffff1660e060020a02815260040180828152602001915050602060405180830381600087803b158015610c2657600080fd5b505af1158015610c3a573d6000803e3d6000fd5b505050506040513d6020811015610c5057600080fd5b50519150600160a060020a03808316908b1614610c9f57610c71828a6108df565b9050600081511115610c9f576109248a8888815181101515610c8f57fe5b9060200190602002015183610fa5565b600190920191610bd5565b600190950194610ab5565b60408051600081526020810190915297505b5050505050505092915050565b606060008060606000806000806000808b51118015610cf4575060008a51115b15610f32578a519750895196505b600088118015610d125750600087115b8015610d6357508960018803815181101515610d2a57fe5b90602001906020020151600160a060020a03168b60018a03815181101515610d4e57fe5b90602001906020020151600160a060020a0316145b15610d7957600019978801979690960195610d02565b868801600101604051908082528060200260200182016040528015610da8578160200160208202803883390190505b509550600094505b878511610dff578a85815181101515610dc557fe5b906020019060200201518686815181101515610ddd57fe5b600160a060020a03909216602092830290910190910152600190940193610db0565b8693505b6000841115610e5b578960018503815181101515610e1d57fe5b906020019060200201518685885103815181101515610e3857fe5b600160a060020a0390921660209283029091019091015260001990930192610e03565b60009250600091505b8551821015610f215750600281015b60028206865103811015610ed5578581815181101515610e8f57fe5b90602001906020020151600160a060020a03168683815181101515610eb057fe5b90602001906020020151600160a060020a03161415610ecd578091505b600201610e73565b8582815181101515610ee357fe5b602090810290910101518651600185019488918110610efe57fe5b600160a060020a0390921660209283029091019091015260019190910190610e64565b610f2b8684611088565b9850610f44565b60408051600081526020810190915298505b505050505050505092915050565b6040805160018082528183019092526060918291906020808301908038833901905050905082816000815181101515610f8757fe5b600160a060020a039092166020928302909101909101529050919050565b60608060008351600201604051908082528060200260200182016040528015610fd8578160200160208202803883390190505b50915085826000815181101515610feb57fe5b600160a060020a03909216602092830290910190910152815185908390600190811061101357fe5b600160a060020a039092166020928302909101909101525060005b835181101561107f57838181518110151561104557fe5b90602001906020020151828260020181518110151561106057fe5b600160a060020a0390921660209283029091019091015260010161102e565b50949350505050565b6060806000836040519080825280602002602001820160405280156110b7578160200160208202803883390190505b509150600090505b8381101561110c5784818151811015156110d557fe5b9060200190602002015182828151811015156110ed57fe5b600160a060020a039092166020928302909101909101526001016110bf565b5093925050505600a165627a7a72305820062ee9021fb0b4b84e38bd9665bbb1b71c1be7a9bba5940940d6c806e7d5faad0029 \ No newline at end of file diff --git a/solidity/build/ConverterBase.abi b/solidity/build/ConverterBase.abi index 1aae646..a606676 100644 --- a/solidity/build/ConverterBase.abi +++ b/solidity/build/ConverterBase.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"reserveRatio","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"connectors","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint32"},{"name":"","type":"bool"},{"name":"","type":"bool"},{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"hasETHReserve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"connectorTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveWeight","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"getReturn","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"isActive","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawFromAnchor","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"converterType","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_whitelist","type":"address"}],"name":"setConversionWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"version","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"conversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"withdrawETH","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_weight","type":"uint32"}],"name":"addReserve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"connectorTokenCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxConversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reserveTokenCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"targetAmountAndFee","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"conversionsEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"conversionWhitelist","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"reserveTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isV28OrHigher","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"anchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"upgrade","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"reserves","outputs":[{"name":"balance","type":"uint256"},{"name":"weight","type":"uint32"},{"name":"deprecated1","type":"bool"},{"name":"deprecated2","type":"bool"},{"name":"isSet","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_connectorToken","type":"address"}],"name":"getConnectorBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_trader","type":"address"},{"name":"_beneficiary","type":"address"}],"name":"convert","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_conversionFee","type":"uint32"}],"name":"setConversionFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_anchor","type":"address"},{"name":"_registry","type":"address"},{"name":"_maxConversionFee","type":"uint32"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_type","type":"uint16"},{"indexed":true,"name":"_anchor","type":"address"},{"indexed":true,"name":"_activated","type":"bool"}],"name":"Activation","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_fromToken","type":"address"},{"indexed":true,"name":"_toToken","type":"address"},{"indexed":true,"name":"_trader","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_return","type":"uint256"},{"indexed":false,"name":"_conversionFee","type":"int256"}],"name":"Conversion","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_token1","type":"address"},{"indexed":true,"name":"_token2","type":"address"},{"indexed":false,"name":"_rateN","type":"uint256"},{"indexed":false,"name":"_rateD","type":"uint256"}],"name":"TokenRateUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_prevFee","type":"uint32"},{"indexed":false,"name":"_newFee","type":"uint32"}],"name":"ConversionFeeUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}] \ No newline at end of file +[{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"protocolFeeTokensHeld","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reserveRatio","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"converterType","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"version","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"conversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxConversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"targetAmountAndFee","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"conversionsEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"conversionWhitelist","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"reserveTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"anchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"reserves","outputs":[{"name":"balance","type":"uint256"},{"name":"weight","type":"uint32"},{"name":"deprecated1","type":"bool"},{"name":"deprecated2","type":"bool"},{"name":"isSet","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_anchor","type":"address"},{"name":"_registry","type":"address"},{"name":"_maxConversionFee","type":"uint32"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_type","type":"uint16"},{"indexed":true,"name":"_anchor","type":"address"},{"indexed":true,"name":"_activated","type":"bool"}],"name":"Activation","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_fromToken","type":"address"},{"indexed":true,"name":"_toToken","type":"address"},{"indexed":true,"name":"_trader","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_return","type":"uint256"},{"indexed":false,"name":"_conversionFee","type":"int256"},{"indexed":false,"name":"_protocolFee","type":"int256"}],"name":"Conversion","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_token1","type":"address"},{"indexed":true,"name":"_token2","type":"address"},{"indexed":false,"name":"_rateN","type":"uint256"},{"indexed":false,"name":"_rateD","type":"uint256"}],"name":"TokenRateUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_prevFee","type":"uint32"},{"indexed":false,"name":"_newFee","type":"uint32"}],"name":"ConversionFeeUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"sender","type":"address"},{"indexed":true,"name":"receiver","type":"address"},{"indexed":false,"name":"token","type":"address"},{"indexed":false,"name":"protocolFeeAmount","type":"uint256"},{"indexed":false,"name":"wRBTCConverted","type":"uint256"}],"name":"WithdrawFees","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"withdrawETH","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"isV28OrHigher","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_whitelist","type":"address"}],"name":"setConversionWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"isActive","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"acceptAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawFromAnchor","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_conversionFee","type":"uint32"}],"name":"setConversionFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"upgrade","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"reserveTokenCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_weight","type":"uint32"}],"name":"addReserve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveWeight","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"hasETHReserve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_trader","type":"address"},{"name":"_beneficiary","type":"address"}],"name":"convert","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"acceptTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"connectors","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint32"},{"name":"","type":"bool"},{"name":"","type":"bool"},{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"connectorTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"connectorTokenCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_connectorToken","type":"address"}],"name":"getConnectorBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_token","type":"address"}],"name":"getProtocolFeeTokensHeld","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"getReturn","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"receiver","type":"address"}],"name":"withdrawFees","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/ConverterFactory.abi b/solidity/build/ConverterFactory.abi index fcb31ba..f41ae80 100644 --- a/solidity/build/ConverterFactory.abi +++ b/solidity/build/ConverterFactory.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_factory","type":"address"}],"name":"registerTypedConverterFactory","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_type","type":"uint16"},{"name":"_anchor","type":"address"},{"name":"_registry","type":"address"},{"name":"_maxConversionFee","type":"uint32"}],"name":"createConverter","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_converterType","type":"uint16"},{"name":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_decimals","type":"uint8"}],"name":"createAnchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint16"}],"name":"converterFactories","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint16"}],"name":"anchorFactories","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_factory","type":"address"}],"name":"registerTypedConverterCustomFactory","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint16"}],"name":"customFactories","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_factory","type":"address"}],"name":"registerTypedConverterAnchorFactory","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_type","type":"uint16"},{"indexed":true,"name":"_converter","type":"address"},{"indexed":true,"name":"_owner","type":"address"}],"name":"NewConverter","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}] \ No newline at end of file +[{"constant":true,"inputs":[{"name":"","type":"uint16"}],"name":"converterFactories","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint16"}],"name":"anchorFactories","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint16"}],"name":"customFactories","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_type","type":"uint16"},{"indexed":true,"name":"_converter","type":"address"},{"indexed":true,"name":"_owner","type":"address"}],"name":"NewConverter","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":false,"inputs":[{"name":"_factory","type":"address"}],"name":"registerTypedConverterFactory","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_factory","type":"address"}],"name":"registerTypedConverterAnchorFactory","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_factory","type":"address"}],"name":"registerTypedConverterCustomFactory","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_converterType","type":"uint16"},{"name":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_decimals","type":"uint8"}],"name":"createAnchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_type","type":"uint16"},{"name":"_anchor","type":"address"},{"name":"_registry","type":"address"},{"name":"_maxConversionFee","type":"uint32"}],"name":"createConverter","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/ConverterFactory.bin b/solidity/build/ConverterFactory.bin index 281f1e8..ca54a74 100644 --- a/solidity/build/ConverterFactory.bin +++ b/solidity/build/ConverterFactory.bin @@ -1 +1 @@ -608060405260008054600160a060020a03191633179055611e4e806100256000396000f3006080604052600436106100a05763ffffffff60e060020a60003504166312b4c6c181146100a557806315f64b6a146100c85780632e9ab7b31461011b578063327779a7146101c05780633a8fc520146101dc57806379ba5097146101f85780638cac5e291461020d5780638da5cb5b1461022e578063c977aed214610243578063d4ee1d901461025f578063e54b93ef14610274578063f2fde38b14610295575b600080fd5b3480156100b157600080fd5b506100c6600160a060020a03600435166102b6565b005b3480156100d457600080fd5b506100ff61ffff60043516600160a060020a036024358116906044351663ffffffff6064351661036f565b60408051600160a060020a039092168252519081900360200190f35b34801561012757600080fd5b5060408051602060046024803582810135601f81018590048502860185019096528585526100ff95833561ffff1695369560449491939091019190819084018382808284375050604080516020601f89358b018035918201839004830284018301909452808352979a9998810197919650918201945092508291508401838280828437509497505050923560ff16935061055892505050565b3480156101cc57600080fd5b506100ff61ffff600435166108cc565b3480156101e857600080fd5b506100ff61ffff600435166108e7565b34801561020457600080fd5b506100c6610902565b34801561021957600080fd5b506100c6600160a060020a03600435166109ec565b34801561023a57600080fd5b506100ff610a37565b34801561024f57600080fd5b506100ff61ffff60043516610a46565b34801561026b57600080fd5b506100ff610a61565b34801561028057600080fd5b506100c6600160a060020a0360043516610a70565b3480156102a157600080fd5b506100c6600160a060020a0360043516610abb565b6102be610b6f565b806002600083600160a060020a0316633e8ff43f6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561030157600080fd5b505af1158015610315573d6000803e3d6000fd5b505050506040513d602081101561032b57600080fd5b505161ffff1681526020810191909152604001600020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905550565b61ffff841660009081526002602090815260408083205481517f11413958000000000000000000000000000000000000000000000000000000008152600160a060020a038881166004830152878116602483015263ffffffff8716604483015292518594939092169263114139589260648084019382900301818787803b1580156103f957600080fd5b505af115801561040d573d6000803e3d6000fd5b505050506040513d602081101561042357600080fd5b5051604080517f79ba50970000000000000000000000000000000000000000000000000000000081529051919250600160a060020a038316916379ba50979160048082019260009290919082900301818387803b15801561048357600080fd5b505af1158015610497573d6000803e3d6000fd5b5050604080517ff2fde38b0000000000000000000000000000000000000000000000000000000081523360048201529051600160a060020a038516935063f2fde38b9250602480830192600092919082900301818387803b1580156104fb57600080fd5b505af115801561050f573d6000803e3d6000fd5b5050604051339250600160a060020a038416915061ffff8916907fbb340bcea68d239ac719bc5cf8c9a1716df04ad3babb8d1e562aa44d19fea3a390600090a495945050505050565b61ffff84166000908152600360205260408120548190600160a060020a031680151561068657858585610589610bea565b60ff82166040820152606080825284519082015283518190602080830191608084019188019080838360005b838110156105cd5781810151838201526020016105b5565b50505050905090810190601f1680156105fa5780820380516001836020036101000a031916815260200191505b50838103825285518152855160209182019187019080838360005b8381101561062d578181015183820152602001610615565b50505050905090810190601f16801561065a5780820380516001836020036101000a031916815260200191505b5095505050505050604051809103906000f08015801561067e573d6000803e3d6000fd5b509150610849565b80600160a060020a031663a9fd4a2a8787876040518463ffffffff1660e060020a0281526004018080602001806020018460ff1660ff168152602001838103835286818151815260200191508051906020019080838360005b838110156106f75781810151838201526020016106df565b50505050905090810190601f1680156107245780820380516001836020036101000a031916815260200191505b50838103825285518152855160209182019187019080838360005b8381101561075757818101518382015260200161073f565b50505050905090810190601f1680156107845780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1580156107a657600080fd5b505af11580156107ba573d6000803e3d6000fd5b505050506040513d60208110156107d057600080fd5b5051604080517f79ba50970000000000000000000000000000000000000000000000000000000081529051919350600160a060020a038416916379ba50979160048082019260009290919082900301818387803b15801561083057600080fd5b505af1158015610844573d6000803e3d6000fd5b505050505b604080517ff2fde38b0000000000000000000000000000000000000000000000000000000081523360048201529051600160a060020a0384169163f2fde38b91602480830192600092919082900301818387803b1580156108a957600080fd5b505af11580156108bd573d6000803e3d6000fd5b50939998505050505050505050565b600260205260009081526040902054600160a060020a031681565b600360205260009081526040902054600160a060020a031681565b600154600160a060020a0316331461097b57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b6109f4610b6f565b806004600083600160a060020a0316633e8ff43f6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561030157600080fd5b600054600160a060020a031681565b600460205260009081526040902054600160a060020a031681565b600154600160a060020a031681565b610a78610b6f565b806003600083600160a060020a0316633e8ff43f6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561030157600080fd5b610ac3610b6f565b600054600160a060020a0382811691161415610b4057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a03163314610be857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b60405161122880610bfb83390190560060806040526008805460ff191660011790553480156200001e57600080fd5b506040516200122838038062001228833981016040908152815160208301519183015160008054600160a060020a0319163317815591840180519094939093019290918491849184918110620000d557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4552525f494e56414c49445f4e414d4500000000000000000000000000000000604482015290519081900360640190fd5b82516000106200014657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4552525f494e56414c49445f53594d424f4c0000000000000000000000000000604482015290519081900360640190fd5b83516200015b906002906020870190620001a8565b50825162000171906003906020860190620001a8565b506004805460ff191660ff9390931692909217909155600581905533600090815260066020526040902055506200024d9350505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001eb57805160ff19168380011785556200021b565b828001600101855582156200021b579182015b828111156200021b578251825591602001919060010190620001fe565b50620002299291506200022d565b5090565b6200024a91905b8082111562000229576000815560010162000234565b90565b610fcb806200025d6000396000f3006080604052600436106101065763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461010b578063095ea7b3146101955780631608f18f146101cd57806318160ddd146101e957806323b872dd14610210578063313ce5671461023a57806354fd4d50146102655780635e35359e1461029157806370a08231146102bb57806379ba5097146102dc578063867904b4146102f15780638da5cb5b1461031557806395d89b4114610346578063a24835d11461035b578063a9059cbb1461037f578063bef97c87146103a3578063d4ee1d90146103b8578063dd62ed3e146103cd578063f2fde38b146103f4575b600080fd5b34801561011757600080fd5b50610120610415565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015a578181015183820152602001610142565b50505050905090810190601f1680156101875780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101a157600080fd5b506101b9600160a060020a03600435166024356104a0565b604080519115158252519081900360200190f35b3480156101d957600080fd5b506101e76004351515610598565b005b3480156101f557600080fd5b506101fe6105b2565b60408051918252519081900360200190f35b34801561021c57600080fd5b506101b9600160a060020a03600435811690602435166044356105b8565b34801561024657600080fd5b5061024f6105df565b6040805160ff9092168252519081900360200190f35b34801561027157600080fd5b5061027a6105e8565b6040805161ffff9092168252519081900360200190f35b34801561029d57600080fd5b506101e7600160a060020a03600435811690602435166044356105ed565b3480156102c757600080fd5b506101fe600160a060020a0360043516610626565b3480156102e857600080fd5b506101e7610638565b3480156102fd57600080fd5b506101e7600160a060020a036004351660243561070b565b34801561032157600080fd5b5061032a6107ed565b60408051600160a060020a039092168252519081900360200190f35b34801561035257600080fd5b506101206107fc565b34801561036757600080fd5b506101e7600160a060020a0360043516602435610857565b34801561038b57600080fd5b506101b9600160a060020a036004351660243561091d565b3480156103af57600080fd5b506101b9610942565b3480156103c457600080fd5b5061032a61094b565b3480156103d957600080fd5b506101fe600160a060020a036004358116906024351661095a565b34801561040057600080fd5b506101e7600160a060020a0360043516610977565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156104985780601f1061046d57610100808354040283529160200191610498565b820191906000526020600020905b81548152906001019060200180831161047b57829003601f168201915b505050505081565b6000826104ac81610a14565b8215806104da5750336000908152600760209081526040808320600160a060020a0388168452909152902054155b1515610530576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b336000818152600760209081526040808320600160a060020a03891680855290835292819020879055805187815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b6105a0610a77565b6008805460ff19169115919091179055565b60055481565b60006105c2610adb565b6105cd848484610b37565b15156105d557fe5b5060019392505050565b60045460ff1681565b600481565b6105f5610a77565b826105ff81610a14565b8261060981610a14565b8361061381610c48565b61061e868686610ca9565b505050505050565b60066020526000908152604090205481565b600154600160a060020a0316331461069a576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b610713610a77565b8161071d81610a14565b8261072781610c48565b60055461073a908463ffffffff610d6316565b600555600160a060020a038416600090815260066020526040902054610766908463ffffffff610d6316565b600160a060020a03851660009081526006602090815260409182902092909255805185815290517f9386c90217c323f58030f9dadcbc938f807a940f4ff41cd4cead9562f5da7dc3929181900390910190a1604080518481529051600160a060020a03861691600091600080516020610f808339815191529181900360200190a350505050565b600054600160a060020a031681565b6003805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104985780601f1061046d57610100808354040283529160200191610498565b61085f610a77565b600160a060020a038216600090815260066020526040902054610888908263ffffffff610dc716565b600160a060020a0383166000908152600660205260409020556005546108b4908263ffffffff610dc716565b600555604080518281529051600091600160a060020a03851691600080516020610f808339815191529181900360200190a36040805182815290517f9a1b418bc061a5d80270261562e6986a35d995f8051145f277be16103abd34539181900360200190a15050565b6000610927610adb565b6109318383610e27565b151561093957fe5b50600192915050565b60085460ff1681565b600154600160a060020a031681565b600760209081526000928352604080842090915290825290205481565b61097f610a77565b600054600160a060020a03828116911614156109e5576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600160a060020a0381161515610a74576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b600054600160a060020a03163314610ad9576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b60085460ff161515610ad9576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5452414e53464552535f44495341424c454400000000000000000000604482015290519081900360640190fd5b600083610b4381610a14565b83610b4d81610a14565b600160a060020a0386166000908152600760209081526040808320338452909152902054610b81908563ffffffff610dc716565b600160a060020a038716600081815260076020908152604080832033845282528083209490945591815260069091522054610bc2908563ffffffff610dc716565b600160a060020a038088166000908152600660205260408082209390935590871681522054610bf7908563ffffffff610d6316565b600160a060020a0380871660008181526006602090815260409182902094909455805188815290519193928a1692600080516020610f8083398151915292918290030190a350600195945050505050565b600160a060020a038116301415610a74576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090931692909217909152610d5e908490610ed2565b505050565b600082820183811015610dc0576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b9392505050565b600081831015610e21576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b600082610e3381610a14565b33600090815260066020526040902054610e53908463ffffffff610dc716565b3360009081526006602052604080822092909255600160a060020a03861681522054610e85908463ffffffff610d6316565b600160a060020a038516600081815260066020908152604091829020939093558051868152905191923392600080516020610f808339815191529281900390910190a35060019392505050565b610eda610f60565b602060405190810160405280600181525090506020818351602085016000875af1801515610f0757600080fd5b5080511515610d5e576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b60206040519081016040528060019060208202803883395091929150505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820deacababea352373a412cdf1cc7a9cce57f1406f5d9d4e2e52f9ad7258ae10260029a165627a7a72305820c41e2b445eb34686be59ae5355a629768569081e79f5afef0ad3ad544163bdbb0029 \ No newline at end of file +608060405260008054600160a060020a03191633179055611e4e806100256000396000f3006080604052600436106100a05763ffffffff60e060020a60003504166312b4c6c181146100a557806315f64b6a146100c85780632e9ab7b31461011b578063327779a7146101c05780633a8fc520146101dc57806379ba5097146101f85780638cac5e291461020d5780638da5cb5b1461022e578063c977aed214610243578063d4ee1d901461025f578063e54b93ef14610274578063f2fde38b14610295575b600080fd5b3480156100b157600080fd5b506100c6600160a060020a03600435166102b6565b005b3480156100d457600080fd5b506100ff61ffff60043516600160a060020a036024358116906044351663ffffffff6064351661036f565b60408051600160a060020a039092168252519081900360200190f35b34801561012757600080fd5b5060408051602060046024803582810135601f81018590048502860185019096528585526100ff95833561ffff1695369560449491939091019190819084018382808284375050604080516020601f89358b018035918201839004830284018301909452808352979a9998810197919650918201945092508291508401838280828437509497505050923560ff16935061055892505050565b3480156101cc57600080fd5b506100ff61ffff600435166108cc565b3480156101e857600080fd5b506100ff61ffff600435166108e7565b34801561020457600080fd5b506100c6610902565b34801561021957600080fd5b506100c6600160a060020a03600435166109ec565b34801561023a57600080fd5b506100ff610a37565b34801561024f57600080fd5b506100ff61ffff60043516610a46565b34801561026b57600080fd5b506100ff610a61565b34801561028057600080fd5b506100c6600160a060020a0360043516610a70565b3480156102a157600080fd5b506100c6600160a060020a0360043516610abb565b6102be610b6f565b806002600083600160a060020a0316633e8ff43f6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561030157600080fd5b505af1158015610315573d6000803e3d6000fd5b505050506040513d602081101561032b57600080fd5b505161ffff1681526020810191909152604001600020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905550565b61ffff841660009081526002602090815260408083205481517f11413958000000000000000000000000000000000000000000000000000000008152600160a060020a038881166004830152878116602483015263ffffffff8716604483015292518594939092169263114139589260648084019382900301818787803b1580156103f957600080fd5b505af115801561040d573d6000803e3d6000fd5b505050506040513d602081101561042357600080fd5b5051604080517f79ba50970000000000000000000000000000000000000000000000000000000081529051919250600160a060020a038316916379ba50979160048082019260009290919082900301818387803b15801561048357600080fd5b505af1158015610497573d6000803e3d6000fd5b5050604080517ff2fde38b0000000000000000000000000000000000000000000000000000000081523360048201529051600160a060020a038516935063f2fde38b9250602480830192600092919082900301818387803b1580156104fb57600080fd5b505af115801561050f573d6000803e3d6000fd5b5050604051339250600160a060020a038416915061ffff8916907fbb340bcea68d239ac719bc5cf8c9a1716df04ad3babb8d1e562aa44d19fea3a390600090a495945050505050565b61ffff84166000908152600360205260408120548190600160a060020a031680151561068657858585610589610bea565b60ff82166040820152606080825284519082015283518190602080830191608084019188019080838360005b838110156105cd5781810151838201526020016105b5565b50505050905090810190601f1680156105fa5780820380516001836020036101000a031916815260200191505b50838103825285518152855160209182019187019080838360005b8381101561062d578181015183820152602001610615565b50505050905090810190601f16801561065a5780820380516001836020036101000a031916815260200191505b5095505050505050604051809103906000f08015801561067e573d6000803e3d6000fd5b509150610849565b80600160a060020a031663a9fd4a2a8787876040518463ffffffff1660e060020a0281526004018080602001806020018460ff1660ff168152602001838103835286818151815260200191508051906020019080838360005b838110156106f75781810151838201526020016106df565b50505050905090810190601f1680156107245780820380516001836020036101000a031916815260200191505b50838103825285518152855160209182019187019080838360005b8381101561075757818101518382015260200161073f565b50505050905090810190601f1680156107845780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1580156107a657600080fd5b505af11580156107ba573d6000803e3d6000fd5b505050506040513d60208110156107d057600080fd5b5051604080517f79ba50970000000000000000000000000000000000000000000000000000000081529051919350600160a060020a038416916379ba50979160048082019260009290919082900301818387803b15801561083057600080fd5b505af1158015610844573d6000803e3d6000fd5b505050505b604080517ff2fde38b0000000000000000000000000000000000000000000000000000000081523360048201529051600160a060020a0384169163f2fde38b91602480830192600092919082900301818387803b1580156108a957600080fd5b505af11580156108bd573d6000803e3d6000fd5b50939998505050505050505050565b600260205260009081526040902054600160a060020a031681565b600360205260009081526040902054600160a060020a031681565b600154600160a060020a0316331461097b57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b6109f4610b6f565b806004600083600160a060020a0316633e8ff43f6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561030157600080fd5b600054600160a060020a031681565b600460205260009081526040902054600160a060020a031681565b600154600160a060020a031681565b610a78610b6f565b806003600083600160a060020a0316633e8ff43f6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561030157600080fd5b610ac3610b6f565b600054600160a060020a0382811691161415610b4057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a03163314610be857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b60405161122880610bfb83390190560060806040526008805460ff191660011790553480156200001e57600080fd5b506040516200122838038062001228833981016040908152815160208301519183015160008054600160a060020a0319163317815591840180519094939093019290918491849184918110620000d557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4552525f494e56414c49445f4e414d4500000000000000000000000000000000604482015290519081900360640190fd5b82516000106200014657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4552525f494e56414c49445f53594d424f4c0000000000000000000000000000604482015290519081900360640190fd5b83516200015b906002906020870190620001a8565b50825162000171906003906020860190620001a8565b506004805460ff191660ff9390931692909217909155600581905533600090815260066020526040902055506200024d9350505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001eb57805160ff19168380011785556200021b565b828001600101855582156200021b579182015b828111156200021b578251825591602001919060010190620001fe565b50620002299291506200022d565b5090565b6200024a91905b8082111562000229576000815560010162000234565b90565b610fcb806200025d6000396000f3006080604052600436106101065763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461010b578063095ea7b3146101955780631608f18f146101cd57806318160ddd146101e957806323b872dd14610210578063313ce5671461023a57806354fd4d50146102655780635e35359e1461029157806370a08231146102bb57806379ba5097146102dc578063867904b4146102f15780638da5cb5b1461031557806395d89b4114610346578063a24835d11461035b578063a9059cbb1461037f578063bef97c87146103a3578063d4ee1d90146103b8578063dd62ed3e146103cd578063f2fde38b146103f4575b600080fd5b34801561011757600080fd5b50610120610415565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015a578181015183820152602001610142565b50505050905090810190601f1680156101875780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101a157600080fd5b506101b9600160a060020a03600435166024356104a0565b604080519115158252519081900360200190f35b3480156101d957600080fd5b506101e76004351515610598565b005b3480156101f557600080fd5b506101fe6105b2565b60408051918252519081900360200190f35b34801561021c57600080fd5b506101b9600160a060020a03600435811690602435166044356105b8565b34801561024657600080fd5b5061024f6105df565b6040805160ff9092168252519081900360200190f35b34801561027157600080fd5b5061027a6105e8565b6040805161ffff9092168252519081900360200190f35b34801561029d57600080fd5b506101e7600160a060020a03600435811690602435166044356105ed565b3480156102c757600080fd5b506101fe600160a060020a0360043516610626565b3480156102e857600080fd5b506101e7610638565b3480156102fd57600080fd5b506101e7600160a060020a036004351660243561070b565b34801561032157600080fd5b5061032a6107ed565b60408051600160a060020a039092168252519081900360200190f35b34801561035257600080fd5b506101206107fc565b34801561036757600080fd5b506101e7600160a060020a0360043516602435610857565b34801561038b57600080fd5b506101b9600160a060020a036004351660243561091d565b3480156103af57600080fd5b506101b9610942565b3480156103c457600080fd5b5061032a61094b565b3480156103d957600080fd5b506101fe600160a060020a036004358116906024351661095a565b34801561040057600080fd5b506101e7600160a060020a0360043516610977565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156104985780601f1061046d57610100808354040283529160200191610498565b820191906000526020600020905b81548152906001019060200180831161047b57829003601f168201915b505050505081565b6000826104ac81610a14565b8215806104da5750336000908152600760209081526040808320600160a060020a0388168452909152902054155b1515610530576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b336000818152600760209081526040808320600160a060020a03891680855290835292819020879055805187815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b6105a0610a77565b6008805460ff19169115919091179055565b60055481565b60006105c2610adb565b6105cd848484610b37565b15156105d557fe5b5060019392505050565b60045460ff1681565b600481565b6105f5610a77565b826105ff81610a14565b8261060981610a14565b8361061381610c48565b61061e868686610ca9565b505050505050565b60066020526000908152604090205481565b600154600160a060020a0316331461069a576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b610713610a77565b8161071d81610a14565b8261072781610c48565b60055461073a908463ffffffff610d6316565b600555600160a060020a038416600090815260066020526040902054610766908463ffffffff610d6316565b600160a060020a03851660009081526006602090815260409182902092909255805185815290517f9386c90217c323f58030f9dadcbc938f807a940f4ff41cd4cead9562f5da7dc3929181900390910190a1604080518481529051600160a060020a03861691600091600080516020610f808339815191529181900360200190a350505050565b600054600160a060020a031681565b6003805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104985780601f1061046d57610100808354040283529160200191610498565b61085f610a77565b600160a060020a038216600090815260066020526040902054610888908263ffffffff610dc716565b600160a060020a0383166000908152600660205260409020556005546108b4908263ffffffff610dc716565b600555604080518281529051600091600160a060020a03851691600080516020610f808339815191529181900360200190a36040805182815290517f9a1b418bc061a5d80270261562e6986a35d995f8051145f277be16103abd34539181900360200190a15050565b6000610927610adb565b6109318383610e27565b151561093957fe5b50600192915050565b60085460ff1681565b600154600160a060020a031681565b600760209081526000928352604080842090915290825290205481565b61097f610a77565b600054600160a060020a03828116911614156109e5576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600160a060020a0381161515610a74576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b600054600160a060020a03163314610ad9576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b60085460ff161515610ad9576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5452414e53464552535f44495341424c454400000000000000000000604482015290519081900360640190fd5b600083610b4381610a14565b83610b4d81610a14565b600160a060020a0386166000908152600760209081526040808320338452909152902054610b81908563ffffffff610dc716565b600160a060020a038716600081815260076020908152604080832033845282528083209490945591815260069091522054610bc2908563ffffffff610dc716565b600160a060020a038088166000908152600660205260408082209390935590871681522054610bf7908563ffffffff610d6316565b600160a060020a0380871660008181526006602090815260409182902094909455805188815290519193928a1692600080516020610f8083398151915292918290030190a350600195945050505050565b600160a060020a038116301415610a74576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090931692909217909152610d5e908490610ed2565b505050565b600082820183811015610dc0576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b9392505050565b600081831015610e21576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b600082610e3381610a14565b33600090815260066020526040902054610e53908463ffffffff610dc716565b3360009081526006602052604080822092909255600160a060020a03861681522054610e85908463ffffffff610d6316565b600160a060020a038516600081815260066020908152604091829020939093558051868152905191923392600080516020610f808339815191529281900390910190a35060019392505050565b610eda610f60565b602060405190810160405280600181525090506020818351602085016000875af1801515610f0757600080fd5b5080511515610d5e576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b60206040519081016040528060019060208202803883395091929150505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820ab924832ddea261f0e3fbf4d24ac3b4778f7be5a9bbf5bfa6e40bc49f56017d30029a165627a7a723058209a67bcdff3fd33f6bdcb750165eef2f97b0b256530c71a1d1baf3f85f852ee000029 \ No newline at end of file diff --git a/solidity/build/ConverterRegistry.abi b/solidity/build/ConverterRegistry.abi index 8a74f01..a7d57b4 100644 --- a/solidity/build/ConverterRegistry.abi +++ b/solidity/build/ConverterRegistry.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getSmartTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"}],"name":"getConvertibleTokenAnchors","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_type","type":"uint16"},{"name":"_reserveTokens","type":"address[]"},{"name":"_reserveWeights","type":"uint32[]"}],"name":"getLiquidityPoolByConfig","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_smartTokens","type":"address[]"}],"name":"getConvertersBySmartTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_type","type":"uint16"},{"name":"_reserveTokens","type":"address[]"},{"name":"_reserveWeights","type":"uint32[]"},{"name":"_converter","type":"address"}],"name":"setupConverter","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isConvertibleToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isSmartToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"}],"name":"getConvertibleTokenAnchorCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getAnchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_type","type":"uint16"},{"name":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_decimals","type":"uint8"},{"name":"_maxConversionFee","type":"uint32"},{"name":"_reserveTokens","type":"address[]"},{"name":"_reserveWeights","type":"uint32[]"}],"name":"newConverter","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getConvertibleTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_index","type":"uint256"}],"name":"getConvertibleTokenAnchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_anchors","type":"address[]"}],"name":"getConvertersByAnchors","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getConvertibleTokenCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_converter","type":"address"}],"name":"addConverter","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_value","type":"address"}],"name":"isConvertibleTokenSmartToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getLiquidityPoolCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getLiquidityPools","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getConvertibleToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_converter","type":"address"}],"name":"isSimilarLiquidityPoolRegistered","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_converter","type":"address"}],"name":"isConverterValid","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_converter","type":"address"}],"name":"removeConverter","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getSmartToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"}],"name":"getConvertibleTokenSmartTokenCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getLiquidityPool","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_value","type":"address"}],"name":"isConvertibleTokenAnchor","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveTokens","type":"address[]"},{"name":"_reserveWeights","type":"uint32[]"}],"name":"getLiquidityPoolByReserveConfig","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getAnchorCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_index","type":"uint256"}],"name":"getConvertibleTokenSmartToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isAnchor","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getSmartTokenCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isLiquidityPool","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getAnchors","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"}],"name":"getConvertibleTokenSmartTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_anchor","type":"address"}],"name":"ConverterAnchorAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_anchor","type":"address"}],"name":"ConverterAnchorRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_liquidityPool","type":"address"}],"name":"LiquidityPoolAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_liquidityPool","type":"address"}],"name":"LiquidityPoolRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_convertibleToken","type":"address"},{"indexed":true,"name":"_smartToken","type":"address"}],"name":"ConvertibleTokenAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_convertibleToken","type":"address"},{"indexed":true,"name":"_smartToken","type":"address"}],"name":"ConvertibleTokenRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_smartToken","type":"address"}],"name":"SmartTokenAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_smartToken","type":"address"}],"name":"SmartTokenRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}] \ No newline at end of file +[{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_anchor","type":"address"}],"name":"ConverterAnchorAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_anchor","type":"address"}],"name":"ConverterAnchorRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_liquidityPool","type":"address"}],"name":"LiquidityPoolAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_liquidityPool","type":"address"}],"name":"LiquidityPoolRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_convertibleToken","type":"address"},{"indexed":true,"name":"_smartToken","type":"address"}],"name":"ConvertibleTokenAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_convertibleToken","type":"address"},{"indexed":true,"name":"_smartToken","type":"address"}],"name":"ConvertibleTokenRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_smartToken","type":"address"}],"name":"SmartTokenAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_smartToken","type":"address"}],"name":"SmartTokenRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":false,"inputs":[{"name":"_type","type":"uint16"},{"name":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_decimals","type":"uint8"},{"name":"_maxConversionFee","type":"uint32"},{"name":"_reserveTokens","type":"address[]"},{"name":"_reserveWeights","type":"uint32[]"}],"name":"newConverter","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_type","type":"uint16"},{"name":"_reserveTokens","type":"address[]"},{"name":"_reserveWeights","type":"uint32[]"},{"name":"_converter","type":"address"}],"name":"setupConverter","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_converter","type":"address"}],"name":"addConverter","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_converter","type":"address"}],"name":"removeConverter","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getAnchorCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getAnchors","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getAnchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isAnchor","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getLiquidityPoolCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getLiquidityPools","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getLiquidityPool","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isLiquidityPool","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getConvertibleTokenCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getConvertibleTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getConvertibleToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isConvertibleToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"}],"name":"getConvertibleTokenAnchorCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"}],"name":"getConvertibleTokenAnchors","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_index","type":"uint256"}],"name":"getConvertibleTokenAnchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_value","type":"address"}],"name":"isConvertibleTokenAnchor","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_anchors","type":"address[]"}],"name":"getConvertersByAnchors","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_converter","type":"address"}],"name":"isConverterValid","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_converter","type":"address"}],"name":"isSimilarLiquidityPoolRegistered","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_type","type":"uint16"},{"name":"_reserveTokens","type":"address[]"},{"name":"_reserveWeights","type":"uint32[]"}],"name":"getLiquidityPoolByConfig","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getSmartTokenCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getSmartTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getSmartToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isSmartToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"}],"name":"getConvertibleTokenSmartTokenCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"}],"name":"getConvertibleTokenSmartTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_index","type":"uint256"}],"name":"getConvertibleTokenSmartToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_value","type":"address"}],"name":"isConvertibleTokenSmartToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_smartTokens","type":"address[]"}],"name":"getConvertersBySmartTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveTokens","type":"address[]"},{"name":"_reserveWeights","type":"uint32[]"}],"name":"getLiquidityPoolByReserveConfig","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/solidity/build/ConverterRegistry.bin b/solidity/build/ConverterRegistry.bin index cbf2d82..f970d27 100644 --- a/solidity/build/ConverterRegistry.bin +++ b/solidity/build/ConverterRegistry.bin @@ -1 +1 @@ -60806040523480156200001157600080fd5b5060405160208062003573833981016040525160008054600160a060020a0319163317905580806200004c816401000000006200007e810204565b5060028054600160a060020a03909216600160a060020a031992831681179091556003805490921617905550620000f9565b600160a060020a0381161515620000f657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b61346a80620001096000396000f3006080604052600436106102005763ffffffff60e060020a600035041663024c7ec7811461020557806304ceaf411461022157806311839064146102865780631d3fccd5146102a75780631f8e26201461035a578063295d2a21146103af5780632fe8a6ad146104515780633ab8857c1461047a5780634123ef601461049b57806349c5f32b146104bc57806349d10b64146104ef5780634c7df18f146105045780635a0a66181461051c5780635f1b50fe14610646578063603f51e41461065b578063610c0b051461067f57806361cd756e146106d457806369be4784146106e95780636ce1c4dc146106fe578063725b87861461071f57806379ba5097146107465780637a5f0ffd1461075b5780637b103999146107705780637f45c4c314610785578063865cf1941461079a5780638da5cb5b146107b25780638f1d0e1a146107c7578063954254f5146107e85780639e76a00714610809578063a109d2141461082a578063a43d5e9414610842578063a74498aa14610863578063b4a176d31461087b578063b4c4197a14610890578063c22b82f0146108b7578063d3182bed14610945578063d4ee1d901461095a578063d6c4b5b21461096f578063d8cced2a14610993578063e571049b146109b4578063e85455d7146109c9578063effb3c6e146109ea578063f2fde38b146109ff578063f4fb86c014610a20575b600080fd5b34801561021157600080fd5b5061021f6004351515610a41565b005b34801561022d57600080fd5b50610236610a89565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561027257818101518382015260200161025a565b505050509050019250505060405180910390f35b34801561029257600080fd5b50610236600160a060020a0360043516610a98565b3480156102b357600080fd5b5060408051602060046024803582810135848102808701860190975280865261033e96843561ffff1696369660449591949091019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a998901989297509082019550935083925085019084908082843750949750610b9c9650505050505050565b60408051600160a060020a039092168252519081900360200190f35b34801561036657600080fd5b506040805160206004803580820135838102808601850190965280855261023695369593946024949385019291829185019084908082843750949750610c8f9650505050505050565b3480156103bb57600080fd5b5060408051602060046024803582810135848102808701860190975280865261033e96843561ffff1696369660449591949091019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a99890198929750908201955093508392508501908490808284375094975050509235600160a060020a03169350610ca092505050565b34801561045d57600080fd5b50610466611161565b604080519115158252519081900360200190f35b34801561048657600080fd5b50610466600160a060020a0360043516611182565b3480156104a757600080fd5b50610466600160a060020a0360043516611227565b3480156104c857600080fd5b506104dd600160a060020a0360043516611232565b60408051918252519081900360200190f35b3480156104fb57600080fd5b5061021f6112a5565b34801561051057600080fd5b5061033e600435611512565b34801561052857600080fd5b5060408051602060046024803582810135601f810185900485028601850190965285855261033e95833561ffff1695369560449491939091019190819084018382808284375050604080516020601f89358b018035918201839004830284018301909452808352979a9998810197919650918201945092508291508401838280828437505060408051818801358901803560208181028481018201909552818452989b60ff8b35169b63ffffffff8b8d0135169b919a90995060609091019750929550908201935091829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a9989019892975090820195509350839250850190849080828437509497506115739650505050505050565b34801561065257600080fd5b506102366118fb565b34801561066757600080fd5b5061033e600160a060020a03600435166024356119e1565b34801561068b57600080fd5b506040805160206004803580820135838102808601850190965280855261023695369593946024949385019291829185019084908082843750949750611a8f9650505050505050565b3480156106e057600080fd5b5061033e611b85565b3480156106f557600080fd5b506104dd611b94565b34801561070a57600080fd5b5061021f600160a060020a0360043516611c1b565b34801561072b57600080fd5b50610466600160a060020a0360043581169060243516611c8e565b34801561075257600080fd5b5061021f611ca1565b34801561076757600080fd5b506104dd611d62565b34801561077c57600080fd5b5061033e611db8565b34801561079157600080fd5b50610236611dc7565b3480156107a657600080fd5b5061033e600435611e1d565b3480156107be57600080fd5b5061033e611e7e565b3480156107d357600080fd5b50610466600160a060020a0360043516611e8d565b3480156107f457600080fd5b50610466600160a060020a03600435166120d9565b34801561081557600080fd5b5061021f600160a060020a03600435166121e8565b34801561083657600080fd5b5061033e600435612254565b34801561084e57600080fd5b506104dd600160a060020a036004351661225f565b34801561086f57600080fd5b5061033e60043561226a565b34801561088757600080fd5b5061021f6122cb565b34801561089c57600080fd5b50610466600160a060020a0360043581169060243516612304565b3480156108c357600080fd5b506040805160206004803580820135838102808601850190965280855261033e95369593946024949385019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a99890198929750908201955093508392508501908490808284375094975061238b9650505050505050565b34801561095157600080fd5b506104dd612399565b34801561096657600080fd5b5061033e6123ef565b34801561097b57600080fd5b5061033e600160a060020a03600435166024356123fe565b34801561099f57600080fd5b50610466600160a060020a036004351661240a565b3480156109c057600080fd5b506104dd61247d565b3480156109d557600080fd5b50610466600160a060020a0360043516612487565b3480156109f657600080fd5b506102366124fa565b348015610a0b57600080fd5b5061021f600160a060020a0360043516612550565b348015610a2c57600080fd5b50610236600160a060020a03600435166125ed565b610a496125f8565b60038054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b6060610a936124fa565b905090565b6060610ab160008051602061341f83398151915261264a565b600160a060020a031663f4fb86c0836040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b158015610b0b57600080fd5b505af1158015610b1f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015610b4857600080fd5b810190808051640100000000811115610b6057600080fd5b82016020810184811115610b7357600080fd5b8151856020820283011164010000000082111715610b9057600080fd5b50909695505050505050565b60006060600080600085518751148015610bb7575060018751115b15610c7f57610bc5876126b0565b9350600092505b8351831015610c7f578383815181101515610be357fe5b90602001906020020151915081600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015610c2d57600080fd5b505af1158015610c41573d6000803e3d6000fd5b505050506040513d6020811015610c5757600080fd5b50519050610c6781898989612948565b15610c7457819450610c84565b600190920191610bcc565b600094505b505050509392505050565b6060610c9a82611a8f565b92915050565b600160a060020a038181166000908152600460205260408120549091829182918291163314610d3f576040805160e560020a62461bcd02815260206004820152603060248201527f6f6e6c7920746865206465706c6f796572206d61792066696e6973682074686560448201527f20636f6e76657274657220736574757000000000000000000000000000000000606482015290519081900360840190fd5b865186519093508314610d9c576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245534552564553000000000000000000000000604482015290519081900360640190fd5b6000610da9898989610b9c565b600160a060020a031614610e07576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f414c52454144595f4558495354530000000000000000000000000000604482015290519081900360640190fd5b84600160a060020a031663d3fb73b46040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015610e4557600080fd5b505af1158015610e59573d6000803e3d6000fd5b505050506040513d6020811015610e6f57600080fd5b5051604080517f79ba50970000000000000000000000000000000000000000000000000000000081529051919350600160a060020a038416916379ba50979160048082019260009290919082900301818387803b158015610ecf57600080fd5b505af1158015610ee3573d6000803e3d6000fd5b5050505084600160a060020a03166379ba50976040518163ffffffff1660e060020a028152600401600060405180830381600087803b158015610f2557600080fd5b505af1158015610f39573d6000803e3d6000fd5b50505050600090505b8281101561100b5784600160a060020a0316636a49d2c48883815181101515610f6757fe5b906020019060200201518884815181101515610f7f57fe5b906020019060200201516040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a031681526020018263ffffffff1663ffffffff16815260200192505050600060405180830381600087803b158015610fe757600080fd5b505af1158015610ffb573d6000803e3d6000fd5b505060019092019150610f429050565b81600160a060020a031663f2fde38b866040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b15801561106657600080fd5b505af115801561107a573d6000803e3d6000fd5b5050505084600160a060020a031663cdc91c696040518163ffffffff1660e060020a028152600401600060405180830381600087803b1580156110bc57600080fd5b505af11580156110d0573d6000803e3d6000fd5b5050604080517ff2fde38b0000000000000000000000000000000000000000000000000000000081523360048201529051600160a060020a038916935063f2fde38b9250602480830192600092919082900301818387803b15801561113457600080fd5b505af1158015611148573d6000803e3d6000fd5b5050505061115585612ac1565b50929695505050505050565b60035474010000000000000000000000000000000000000000900460ff1681565b600061119b60008051602061341f83398151915261264a565b600160a060020a0316633ab8857c836040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b1580156111f557600080fd5b505af1158015611209573d6000803e3d6000fd5b505050506040513d602081101561121f57600080fd5b505192915050565b6000610c9a8261240a565b600061124b60008051602061341f83398151915261264a565b600160a060020a031663a43d5e94836040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b1580156111f557600080fd5b60008054600160a060020a03163314806112da575060035474010000000000000000000000000000000000000000900460ff16155b151561131e576040805160e560020a62461bcd02815260206004820152601160248201526000805160206133ff833981519152604482015290519081900360640190fd5b6113477f436f6e747261637452656769737472790000000000000000000000000000000061264a565b600254909150600160a060020a038083169116148015906113705750600160a060020a03811615155b15156113c6576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b604080517fbb34534c0000000000000000000000000000000000000000000000000000000081527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b15801561144a57600080fd5b505af115801561145e573d6000803e3d6000fd5b505050506040513d602081101561147457600080fd5b5051600160a060020a031614156114d5576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a0380841673ffffffffffffffffffffffffffffffffffffffff19928316179092559091169216919091179055565b600061152b60008051602061341f83398151915261264a565b600160a060020a031663a109d214836040518263ffffffff1660e060020a02815260040180828152602001915050602060405180830381600087803b1580156111f557600080fd5b6000806000806000865193508551841415156115d9576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245534552564553000000000000000000000000604482015290519081900360640190fd5b60006115e68d8989610b9c565b600160a060020a031614611644576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f414c52454144595f4558495354530000000000000000000000000000604482015290519081900360640190fd5b61166d7f436f6e766572746572466163746f72790000000000000000000000000000000061264a565b925082600160a060020a0316632e9ab7b38d8d8d8d6040518563ffffffff1660e060020a028152600401808561ffff1661ffff16815260200180602001806020018460ff1660ff168152602001838103835286818151815260200191508051906020019080838360005b838110156116ef5781810151838201526020016116d7565b50505050905090810190601f16801561171c5780820380516001836020036101000a031916815260200191505b50838103825285518152855160209182019187019080838360005b8381101561174f578181015183820152602001611737565b50505050905090810190601f16801561177c5780820380516001836020036101000a031916815260200191505b509650505050505050602060405180830381600087803b15801561179f57600080fd5b505af11580156117b3573d6000803e3d6000fd5b505050506040513d60208110156117c957600080fd5b8101908080519060200190929190505050915082600160a060020a03166315f64b6a8d84600260009054906101000a9004600160a060020a03168c6040518563ffffffff1660e060020a028152600401808561ffff1661ffff16815260200184600160a060020a0316600160a060020a0316815260200183600160a060020a0316600160a060020a031681526020018263ffffffff1663ffffffff168152602001945050505050602060405180830381600087803b15801561188a57600080fd5b505af115801561189e573d6000803e3d6000fd5b505050506040513d60208110156118b457600080fd5b5051600160a060020a0381166000908152600460205260409020805473ffffffffffffffffffffffffffffffffffffffff1916331790559c9b505050505050505050505050565b606061191460008051602061341f83398151915261264a565b600160a060020a0316635f1b50fe6040518163ffffffff1660e060020a028152600401600060405180830381600087803b15801561195157600080fd5b505af1158015611965573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561198e57600080fd5b8101908080516401000000008111156119a657600080fd5b820160208101848111156119b957600080fd5b81518560208202830111640100000000821117156119d657600080fd5b509094505050505090565b60006119fa60008051602061341f83398151915261264a565b600160a060020a031663d6c4b5b284846040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b158015611a5c57600080fd5b505af1158015611a70573d6000803e3d6000fd5b505050506040513d6020811015611a8657600080fd5b50519392505050565b60608060008351604051908082528060200260200182016040528015611abf578160200160208202803883390190505b509150600090505b8351811015611b7e578381815181101515611ade57fe5b90602001906020020151600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611b2557600080fd5b505af1158015611b39573d6000803e3d6000fd5b505050506040513d6020811015611b4f57600080fd5b50518251839083908110611b5f57fe5b600160a060020a03909216602092830290910190910152600101611ac7565b5092915050565b600354600160a060020a031681565b6000611bad60008051602061341f83398151915261264a565b600160a060020a03166369be47846040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611bea57600080fd5b505af1158015611bfe573d6000803e3d6000fd5b505050506040513d6020811015611c1457600080fd5b5051905090565b611c236125f8565b611c2c816120d9565b1515611c82576040805160e560020a62461bcd02815260206004820152601560248201527f4552525f494e56414c49445f434f4e5645525445520000000000000000000000604482015290519081900360640190fd5b611c8b81612ac1565b50565b6000611c9a8383612304565b9392505050565b600154600160a060020a03163314611cf1576040805160e560020a62461bcd02815260206004820152601160248201526000805160206133ff833981519152604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b6000611d7b60008051602061341f83398151915261264a565b600160a060020a0316637a5f0ffd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611bea57600080fd5b600254600160a060020a031681565b6060611de060008051602061341f83398151915261264a565b600160a060020a0316637f45c4c36040518163ffffffff1660e060020a028152600401600060405180830381600087803b15801561195157600080fd5b6000611e3660008051602061341f83398151915261264a565b600160a060020a031663865cf194836040518263ffffffff1660e060020a02815260040180828152602001915050602060405180830381600087803b1580156111f557600080fd5b600054600160a060020a031681565b60008060608060008086600160a060020a03166371f52bf36040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611ed457600080fd5b505af1158015611ee8573d6000803e3d6000fd5b505050506040513d6020811015611efe57600080fd5b50516040805161ffff90921680835260208181028401019091529550858015611f31578160200160208202803883390190505b50935084604051908082528060200260200182016040528015611f5e578160200160208202803883390190505b509250600091505b848210156120445786600160a060020a03166319b64015836040518263ffffffff1660e060020a02815260040180828152602001915050602060405180830381600087803b158015611fb757600080fd5b505af1158015611fcb573d6000803e3d6000fd5b505050506040513d6020811015611fe157600080fd5b505184519091508190859084908110611ff657fe5b600160a060020a039092166020928302909101909101526120178782612ca2565b838381518110151561202557fe5b63ffffffff909216602092830290910190910152600190910190611f66565b6000600160a060020a03166120c388600160a060020a0316633e8ff43f6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561209057600080fd5b505af11580156120a4573d6000803e3d6000fd5b505050506040513d60208110156120ba57600080fd5b50518686610b9c565b600160a060020a03161415979650505050505050565b600081600160a060020a031682600160a060020a031663fc0c546a6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561212357600080fd5b505af1158015612137573d6000803e3d6000fd5b505050506040513d602081101561214d57600080fd5b5051604080517f8da5cb5b0000000000000000000000000000000000000000000000000000000081529051600160a060020a0390921691638da5cb5b916004808201926020929091908290030181600087803b1580156121ac57600080fd5b505af11580156121c0573d6000803e3d6000fd5b505050506040513d60208110156121d657600080fd5b5051600160a060020a03161492915050565b600054600160a060020a03163314806122075750612205816120d9565b155b151561224b576040805160e560020a62461bcd02815260206004820152601160248201526000805160206133ff833981519152604482015290519081900360640190fd5b611c8b81612d73565b6000610c9a82611512565b6000610c9a82611232565b600061228360008051602061341f83398151915261264a565b600160a060020a031663a74498aa836040518263ffffffff1660e060020a02815260040180828152602001915050602060405180830381600087803b1580156111f557600080fd5b6122d36125f8565b6003546002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03909216919091179055565b600061231d60008051602061341f83398151915261264a565b604080517f725b8786000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015285811660248301529151929091169163725b8786916044808201926020929091908290030181600087803b158015611a5c57600080fd5b6000611c9a60018484610b9c565b60006123b260008051602061341f83398151915261264a565b600160a060020a031663e571049b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611bea57600080fd5b600154600160a060020a031681565b6000611c9a83836119e1565b600061242360008051602061341f83398151915261264a565b600160a060020a0316634123ef60836040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b1580156111f557600080fd5b6000610a93612399565b60006124a060008051602061341f83398151915261264a565b600160a060020a031663e85455d7836040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b1580156111f557600080fd5b606061251360008051602061341f83398151915261264a565b600160a060020a03166304ceaf416040518163ffffffff1660e060020a028152600401600060405180830381600087803b15801561195157600080fd5b6125586125f8565b600054600160a060020a03828116911614156125be576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6060610c9a82610a98565b600054600160a060020a03163314612648576040805160e560020a62461bcd02815260206004820152601160248201526000805160206133ff833981519152604482015290519081900360640190fd5b565b600254604080517fbb34534c000000000000000000000000000000000000000000000000000000008152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b1580156111f557600080fd5b606060008060008060006126d160008051602061341f83398151915261264a565b945084600160a060020a031663a43d5e948860008151811015156126f157fe5b906020019060200201516040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b15801561274657600080fd5b505af115801561275a573d6000803e3d6000fd5b505050506040513d602081101561277057600080fd5b5051935060009250600191505b86518210156128405784600160a060020a031663a43d5e9488848151811015156127a357fe5b906020019060200201516040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b1580156127f857600080fd5b505af115801561280c573d6000803e3d6000fd5b505050506040513d602081101561282257600080fd5b5051905080841115612835578093508192505b60019091019061277d565b84600160a060020a031663f4fb86c0888581518110151561285d57fe5b906020019060200201516040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b1580156128b257600080fd5b505af11580156128c6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405260208110156128ef57600080fd5b81019080805164010000000081111561290757600080fd5b8201602081018481111561291a57600080fd5b815185602082028301116401000000008211171561293757600080fd5b50909b9a5050505050505050505050565b60008085600160a060020a0316633e8ff43f6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561298957600080fd5b505af115801561299d573d6000803e3d6000fd5b505050506040513d60208110156129b357600080fd5b505161ffff8681169116146129cb5760009150612ab8565b85600160a060020a03166371f52bf36040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015612a0957600080fd5b505af1158015612a1d573d6000803e3d6000fd5b505050506040513d6020811015612a3357600080fd5b5051845161ffff90911614612a4b5760009150612ab8565b5060005b8351811015612ab357612a79868583815181101515612a6a57fe5b90602001906020020151612ca2565b63ffffffff168382815181101515612a8d57fe5b6020908102909101015163ffffffff1614612aab5760009150612ab8565b600101612a4f565b600191505b50949350505050565b600080600080612ade60008051602061341f83398151915261264a565b935084600160a060020a031663fc0c546a6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015612b1e57600080fd5b505af1158015612b32573d6000803e3d6000fd5b505050506040513d6020811015612b4857600080fd5b5051604080517f71f52bf30000000000000000000000000000000000000000000000000000000081529051919450600160a060020a038716916371f52bf3916004808201926020929091908290030181600087803b158015612ba957600080fd5b505af1158015612bbd573d6000803e3d6000fd5b505050506040513d6020811015612bd357600080fd5b505161ffff169150612be58484612f4d565b6001821115612bfd57612bf8848461302c565b612c08565b612c088484856130d7565b5060005b81811015612c9b57612c938486600160a060020a03166319b64015846040518263ffffffff1660e060020a02815260040180828152602001915050602060405180830381600087803b158015612c6157600080fd5b505af1158015612c75573d6000803e3d6000fd5b505050506040513d6020811015612c8b57600080fd5b5051856130d7565b600101612c0c565b5050505050565b6000612cac6133e3565b604080517f636f6e6e6563746f72732861646472657373290000000000000000000000000081528151908190036013018120600160a060020a03861660248084019190915283518084039091018152604490920183526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090921691909117815281519192918491885afa801515612d6657600080fd5b5050602001519392505050565b600080600080612d9060008051602061341f83398151915261264a565b935084600160a060020a031663fc0c546a6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015612dd057600080fd5b505af1158015612de4573d6000803e3d6000fd5b505050506040513d6020811015612dfa57600080fd5b5051604080517f71f52bf30000000000000000000000000000000000000000000000000000000081529051919450600160a060020a038716916371f52bf3916004808201926020929091908290030181600087803b158015612e5b57600080fd5b505af1158015612e6f573d6000803e3d6000fd5b505050506040513d6020811015612e8557600080fd5b505161ffff169150612e978484613198565b6001821115612eaf57612eaa8484613277565b612eba565b612eba848485613322565b5060005b81811015612c9b57612f458486600160a060020a03166319b64015846040518263ffffffff1660e060020a02815260040180828152602001915050602060405180830381600087803b158015612f1357600080fd5b505af1158015612f27573d6000803e3d6000fd5b505050506040513d6020811015612f3d57600080fd5b505185613322565b600101612ebe565b81600160a060020a0316638de6c3eb826040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b158015612fa857600080fd5b505af1158015612fbc573d6000803e3d6000fd5b5050604051600160a060020a03841692507fc0a6d303d67b7ed9fa0abae1c48878df32acc0e7ca4334c7dad2bceeee5956fd9150600090a2604051600160a060020a038216907f88881feecdf61136ac4bdb1f681f2f3746a82910263d21ffea94750d2a78c0ab90600090a25050565b81600160a060020a031663ee6a934c826040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b15801561308757600080fd5b505af115801561309b573d6000803e3d6000fd5b5050604051600160a060020a03841692507fb893f883ef734b712208a877459424ee509832c57e0461fb1ac99ed4d42f2d899150600090a25050565b604080517f36900c11000000000000000000000000000000000000000000000000000000008152600160a060020a03848116600483015283811660248301529151918516916336900c119160448082019260009290919082900301818387803b15801561314357600080fd5b505af1158015613157573d6000803e3d6000fd5b5050604051600160a060020a038085169350851691507ff2e7cf6d6ed3f77039511409a43d4fa5108f09ab71d72b014380364c910233a590600090a3505050565b81600160a060020a031663ceb9838c826040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b1580156131f357600080fd5b505af1158015613207573d6000803e3d6000fd5b5050604051600160a060020a03841692507fbfdf1baaa7e4871111360083540f067050014f651c9e4610a2a4a4bdf8bfab5d9150600090a2604051600160a060020a038216907f2aff63790c7da80d1c50ede92d23bc841c384837735c92c184331f3d7b91e5bf90600090a25050565b81600160a060020a031663ae22107f826040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b1580156132d257600080fd5b505af11580156132e6573d6000803e3d6000fd5b5050604051600160a060020a03841692507f59c3fbcae88f30e9b0e35c132a7f68c53231dffa4722f197c7ecb0ee013eee609150600090a25050565b604080517ffba8f031000000000000000000000000000000000000000000000000000000008152600160a060020a038481166004830152838116602483015291519185169163fba8f0319160448082019260009290919082900301818387803b15801561338e57600080fd5b505af11580156133a2573d6000803e3d6000fd5b5050604051600160a060020a038085169350851691507f9430ad6ff45d6c3e126c7711bf0036bd9bc6b202fa19628abd88e59cf43ced4390600090a3505050565b6040805180820182529060029082908038833950919291505056004552525f4143434553535f44454e494544000000000000000000000000000000536f7672796e53776170436f6e76657274657252656769737472794461746100a165627a7a723058200e96fdde060a3021335abfc1848bb47e0545c598d8cb0f6426c8855552fb6d2b0029 \ No newline at end of file +60806040523480156200001157600080fd5b5060405160208062003573833981016040525160008054600160a060020a0319163317905580806200004c816401000000006200007e810204565b5060028054600160a060020a03909216600160a060020a031992831681179091556003805490921617905550620000f9565b600160a060020a0381161515620000f657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b61346a80620001096000396000f3006080604052600436106102005763ffffffff60e060020a600035041663024c7ec7811461020557806304ceaf411461022157806311839064146102865780631d3fccd5146102a75780631f8e26201461035a578063295d2a21146103af5780632fe8a6ad146104515780633ab8857c1461047a5780634123ef601461049b57806349c5f32b146104bc57806349d10b64146104ef5780634c7df18f146105045780635a0a66181461051c5780635f1b50fe14610646578063603f51e41461065b578063610c0b051461067f57806361cd756e146106d457806369be4784146106e95780636ce1c4dc146106fe578063725b87861461071f57806379ba5097146107465780637a5f0ffd1461075b5780637b103999146107705780637f45c4c314610785578063865cf1941461079a5780638da5cb5b146107b25780638f1d0e1a146107c7578063954254f5146107e85780639e76a00714610809578063a109d2141461082a578063a43d5e9414610842578063a74498aa14610863578063b4a176d31461087b578063b4c4197a14610890578063c22b82f0146108b7578063d3182bed14610945578063d4ee1d901461095a578063d6c4b5b21461096f578063d8cced2a14610993578063e571049b146109b4578063e85455d7146109c9578063effb3c6e146109ea578063f2fde38b146109ff578063f4fb86c014610a20575b600080fd5b34801561021157600080fd5b5061021f6004351515610a41565b005b34801561022d57600080fd5b50610236610a89565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561027257818101518382015260200161025a565b505050509050019250505060405180910390f35b34801561029257600080fd5b50610236600160a060020a0360043516610a98565b3480156102b357600080fd5b5060408051602060046024803582810135848102808701860190975280865261033e96843561ffff1696369660449591949091019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a998901989297509082019550935083925085019084908082843750949750610b9c9650505050505050565b60408051600160a060020a039092168252519081900360200190f35b34801561036657600080fd5b506040805160206004803580820135838102808601850190965280855261023695369593946024949385019291829185019084908082843750949750610c8f9650505050505050565b3480156103bb57600080fd5b5060408051602060046024803582810135848102808701860190975280865261033e96843561ffff1696369660449591949091019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a99890198929750908201955093508392508501908490808284375094975050509235600160a060020a03169350610ca092505050565b34801561045d57600080fd5b50610466611161565b604080519115158252519081900360200190f35b34801561048657600080fd5b50610466600160a060020a0360043516611182565b3480156104a757600080fd5b50610466600160a060020a0360043516611227565b3480156104c857600080fd5b506104dd600160a060020a0360043516611232565b60408051918252519081900360200190f35b3480156104fb57600080fd5b5061021f6112a5565b34801561051057600080fd5b5061033e600435611512565b34801561052857600080fd5b5060408051602060046024803582810135601f810185900485028601850190965285855261033e95833561ffff1695369560449491939091019190819084018382808284375050604080516020601f89358b018035918201839004830284018301909452808352979a9998810197919650918201945092508291508401838280828437505060408051818801358901803560208181028481018201909552818452989b60ff8b35169b63ffffffff8b8d0135169b919a90995060609091019750929550908201935091829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a9989019892975090820195509350839250850190849080828437509497506115739650505050505050565b34801561065257600080fd5b506102366118fb565b34801561066757600080fd5b5061033e600160a060020a03600435166024356119e1565b34801561068b57600080fd5b506040805160206004803580820135838102808601850190965280855261023695369593946024949385019291829185019084908082843750949750611a8f9650505050505050565b3480156106e057600080fd5b5061033e611b85565b3480156106f557600080fd5b506104dd611b94565b34801561070a57600080fd5b5061021f600160a060020a0360043516611c1b565b34801561072b57600080fd5b50610466600160a060020a0360043581169060243516611c8e565b34801561075257600080fd5b5061021f611ca1565b34801561076757600080fd5b506104dd611d62565b34801561077c57600080fd5b5061033e611db8565b34801561079157600080fd5b50610236611dc7565b3480156107a657600080fd5b5061033e600435611e1d565b3480156107be57600080fd5b5061033e611e7e565b3480156107d357600080fd5b50610466600160a060020a0360043516611e8d565b3480156107f457600080fd5b50610466600160a060020a03600435166120d9565b34801561081557600080fd5b5061021f600160a060020a03600435166121e8565b34801561083657600080fd5b5061033e600435612254565b34801561084e57600080fd5b506104dd600160a060020a036004351661225f565b34801561086f57600080fd5b5061033e60043561226a565b34801561088757600080fd5b5061021f6122cb565b34801561089c57600080fd5b50610466600160a060020a0360043581169060243516612304565b3480156108c357600080fd5b506040805160206004803580820135838102808601850190965280855261033e95369593946024949385019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a99890198929750908201955093508392508501908490808284375094975061238b9650505050505050565b34801561095157600080fd5b506104dd612399565b34801561096657600080fd5b5061033e6123ef565b34801561097b57600080fd5b5061033e600160a060020a03600435166024356123fe565b34801561099f57600080fd5b50610466600160a060020a036004351661240a565b3480156109c057600080fd5b506104dd61247d565b3480156109d557600080fd5b50610466600160a060020a0360043516612487565b3480156109f657600080fd5b506102366124fa565b348015610a0b57600080fd5b5061021f600160a060020a0360043516612550565b348015610a2c57600080fd5b50610236600160a060020a03600435166125ed565b610a496125f8565b60038054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b6060610a936124fa565b905090565b6060610ab160008051602061341f83398151915261264a565b600160a060020a031663f4fb86c0836040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b158015610b0b57600080fd5b505af1158015610b1f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015610b4857600080fd5b810190808051640100000000811115610b6057600080fd5b82016020810184811115610b7357600080fd5b8151856020820283011164010000000082111715610b9057600080fd5b50909695505050505050565b60006060600080600085518751148015610bb7575060018751115b15610c7f57610bc5876126b0565b9350600092505b8351831015610c7f578383815181101515610be357fe5b90602001906020020151915081600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015610c2d57600080fd5b505af1158015610c41573d6000803e3d6000fd5b505050506040513d6020811015610c5757600080fd5b50519050610c6781898989612948565b15610c7457819450610c84565b600190920191610bcc565b600094505b505050509392505050565b6060610c9a82611a8f565b92915050565b600160a060020a038181166000908152600460205260408120549091829182918291163314610d3f576040805160e560020a62461bcd02815260206004820152603060248201527f6f6e6c7920746865206465706c6f796572206d61792066696e6973682074686560448201527f20636f6e76657274657220736574757000000000000000000000000000000000606482015290519081900360840190fd5b865186519093508314610d9c576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245534552564553000000000000000000000000604482015290519081900360640190fd5b6000610da9898989610b9c565b600160a060020a031614610e07576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f414c52454144595f4558495354530000000000000000000000000000604482015290519081900360640190fd5b84600160a060020a031663d3fb73b46040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015610e4557600080fd5b505af1158015610e59573d6000803e3d6000fd5b505050506040513d6020811015610e6f57600080fd5b5051604080517f79ba50970000000000000000000000000000000000000000000000000000000081529051919350600160a060020a038416916379ba50979160048082019260009290919082900301818387803b158015610ecf57600080fd5b505af1158015610ee3573d6000803e3d6000fd5b5050505084600160a060020a03166379ba50976040518163ffffffff1660e060020a028152600401600060405180830381600087803b158015610f2557600080fd5b505af1158015610f39573d6000803e3d6000fd5b50505050600090505b8281101561100b5784600160a060020a0316636a49d2c48883815181101515610f6757fe5b906020019060200201518884815181101515610f7f57fe5b906020019060200201516040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a031681526020018263ffffffff1663ffffffff16815260200192505050600060405180830381600087803b158015610fe757600080fd5b505af1158015610ffb573d6000803e3d6000fd5b505060019092019150610f429050565b81600160a060020a031663f2fde38b866040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b15801561106657600080fd5b505af115801561107a573d6000803e3d6000fd5b5050505084600160a060020a031663cdc91c696040518163ffffffff1660e060020a028152600401600060405180830381600087803b1580156110bc57600080fd5b505af11580156110d0573d6000803e3d6000fd5b5050604080517ff2fde38b0000000000000000000000000000000000000000000000000000000081523360048201529051600160a060020a038916935063f2fde38b9250602480830192600092919082900301818387803b15801561113457600080fd5b505af1158015611148573d6000803e3d6000fd5b5050505061115585612ac1565b50929695505050505050565b60035474010000000000000000000000000000000000000000900460ff1681565b600061119b60008051602061341f83398151915261264a565b600160a060020a0316633ab8857c836040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b1580156111f557600080fd5b505af1158015611209573d6000803e3d6000fd5b505050506040513d602081101561121f57600080fd5b505192915050565b6000610c9a8261240a565b600061124b60008051602061341f83398151915261264a565b600160a060020a031663a43d5e94836040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b1580156111f557600080fd5b60008054600160a060020a03163314806112da575060035474010000000000000000000000000000000000000000900460ff16155b151561131e576040805160e560020a62461bcd02815260206004820152601160248201526000805160206133ff833981519152604482015290519081900360640190fd5b6113477f436f6e747261637452656769737472790000000000000000000000000000000061264a565b600254909150600160a060020a038083169116148015906113705750600160a060020a03811615155b15156113c6576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b604080517fbb34534c0000000000000000000000000000000000000000000000000000000081527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b15801561144a57600080fd5b505af115801561145e573d6000803e3d6000fd5b505050506040513d602081101561147457600080fd5b5051600160a060020a031614156114d5576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a0380841673ffffffffffffffffffffffffffffffffffffffff19928316179092559091169216919091179055565b600061152b60008051602061341f83398151915261264a565b600160a060020a031663a109d214836040518263ffffffff1660e060020a02815260040180828152602001915050602060405180830381600087803b1580156111f557600080fd5b6000806000806000865193508551841415156115d9576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245534552564553000000000000000000000000604482015290519081900360640190fd5b60006115e68d8989610b9c565b600160a060020a031614611644576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f414c52454144595f4558495354530000000000000000000000000000604482015290519081900360640190fd5b61166d7f436f6e766572746572466163746f72790000000000000000000000000000000061264a565b925082600160a060020a0316632e9ab7b38d8d8d8d6040518563ffffffff1660e060020a028152600401808561ffff1661ffff16815260200180602001806020018460ff1660ff168152602001838103835286818151815260200191508051906020019080838360005b838110156116ef5781810151838201526020016116d7565b50505050905090810190601f16801561171c5780820380516001836020036101000a031916815260200191505b50838103825285518152855160209182019187019080838360005b8381101561174f578181015183820152602001611737565b50505050905090810190601f16801561177c5780820380516001836020036101000a031916815260200191505b509650505050505050602060405180830381600087803b15801561179f57600080fd5b505af11580156117b3573d6000803e3d6000fd5b505050506040513d60208110156117c957600080fd5b8101908080519060200190929190505050915082600160a060020a03166315f64b6a8d84600260009054906101000a9004600160a060020a03168c6040518563ffffffff1660e060020a028152600401808561ffff1661ffff16815260200184600160a060020a0316600160a060020a0316815260200183600160a060020a0316600160a060020a031681526020018263ffffffff1663ffffffff168152602001945050505050602060405180830381600087803b15801561188a57600080fd5b505af115801561189e573d6000803e3d6000fd5b505050506040513d60208110156118b457600080fd5b5051600160a060020a0381166000908152600460205260409020805473ffffffffffffffffffffffffffffffffffffffff1916331790559c9b505050505050505050505050565b606061191460008051602061341f83398151915261264a565b600160a060020a0316635f1b50fe6040518163ffffffff1660e060020a028152600401600060405180830381600087803b15801561195157600080fd5b505af1158015611965573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561198e57600080fd5b8101908080516401000000008111156119a657600080fd5b820160208101848111156119b957600080fd5b81518560208202830111640100000000821117156119d657600080fd5b509094505050505090565b60006119fa60008051602061341f83398151915261264a565b600160a060020a031663d6c4b5b284846040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b158015611a5c57600080fd5b505af1158015611a70573d6000803e3d6000fd5b505050506040513d6020811015611a8657600080fd5b50519392505050565b60608060008351604051908082528060200260200182016040528015611abf578160200160208202803883390190505b509150600090505b8351811015611b7e578381815181101515611ade57fe5b90602001906020020151600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611b2557600080fd5b505af1158015611b39573d6000803e3d6000fd5b505050506040513d6020811015611b4f57600080fd5b50518251839083908110611b5f57fe5b600160a060020a03909216602092830290910190910152600101611ac7565b5092915050565b600354600160a060020a031681565b6000611bad60008051602061341f83398151915261264a565b600160a060020a03166369be47846040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611bea57600080fd5b505af1158015611bfe573d6000803e3d6000fd5b505050506040513d6020811015611c1457600080fd5b5051905090565b611c236125f8565b611c2c816120d9565b1515611c82576040805160e560020a62461bcd02815260206004820152601560248201527f4552525f494e56414c49445f434f4e5645525445520000000000000000000000604482015290519081900360640190fd5b611c8b81612ac1565b50565b6000611c9a8383612304565b9392505050565b600154600160a060020a03163314611cf1576040805160e560020a62461bcd02815260206004820152601160248201526000805160206133ff833981519152604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b6000611d7b60008051602061341f83398151915261264a565b600160a060020a0316637a5f0ffd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611bea57600080fd5b600254600160a060020a031681565b6060611de060008051602061341f83398151915261264a565b600160a060020a0316637f45c4c36040518163ffffffff1660e060020a028152600401600060405180830381600087803b15801561195157600080fd5b6000611e3660008051602061341f83398151915261264a565b600160a060020a031663865cf194836040518263ffffffff1660e060020a02815260040180828152602001915050602060405180830381600087803b1580156111f557600080fd5b600054600160a060020a031681565b60008060608060008086600160a060020a03166371f52bf36040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611ed457600080fd5b505af1158015611ee8573d6000803e3d6000fd5b505050506040513d6020811015611efe57600080fd5b50516040805161ffff90921680835260208181028401019091529550858015611f31578160200160208202803883390190505b50935084604051908082528060200260200182016040528015611f5e578160200160208202803883390190505b509250600091505b848210156120445786600160a060020a03166319b64015836040518263ffffffff1660e060020a02815260040180828152602001915050602060405180830381600087803b158015611fb757600080fd5b505af1158015611fcb573d6000803e3d6000fd5b505050506040513d6020811015611fe157600080fd5b505184519091508190859084908110611ff657fe5b600160a060020a039092166020928302909101909101526120178782612ca2565b838381518110151561202557fe5b63ffffffff909216602092830290910190910152600190910190611f66565b6000600160a060020a03166120c388600160a060020a0316633e8ff43f6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561209057600080fd5b505af11580156120a4573d6000803e3d6000fd5b505050506040513d60208110156120ba57600080fd5b50518686610b9c565b600160a060020a03161415979650505050505050565b600081600160a060020a031682600160a060020a031663fc0c546a6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561212357600080fd5b505af1158015612137573d6000803e3d6000fd5b505050506040513d602081101561214d57600080fd5b5051604080517f8da5cb5b0000000000000000000000000000000000000000000000000000000081529051600160a060020a0390921691638da5cb5b916004808201926020929091908290030181600087803b1580156121ac57600080fd5b505af11580156121c0573d6000803e3d6000fd5b505050506040513d60208110156121d657600080fd5b5051600160a060020a03161492915050565b600054600160a060020a03163314806122075750612205816120d9565b155b151561224b576040805160e560020a62461bcd02815260206004820152601160248201526000805160206133ff833981519152604482015290519081900360640190fd5b611c8b81612d73565b6000610c9a82611512565b6000610c9a82611232565b600061228360008051602061341f83398151915261264a565b600160a060020a031663a74498aa836040518263ffffffff1660e060020a02815260040180828152602001915050602060405180830381600087803b1580156111f557600080fd5b6122d36125f8565b6003546002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03909216919091179055565b600061231d60008051602061341f83398151915261264a565b604080517f725b8786000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015285811660248301529151929091169163725b8786916044808201926020929091908290030181600087803b158015611a5c57600080fd5b6000611c9a60018484610b9c565b60006123b260008051602061341f83398151915261264a565b600160a060020a031663e571049b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611bea57600080fd5b600154600160a060020a031681565b6000611c9a83836119e1565b600061242360008051602061341f83398151915261264a565b600160a060020a0316634123ef60836040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b1580156111f557600080fd5b6000610a93612399565b60006124a060008051602061341f83398151915261264a565b600160a060020a031663e85455d7836040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b1580156111f557600080fd5b606061251360008051602061341f83398151915261264a565b600160a060020a03166304ceaf416040518163ffffffff1660e060020a028152600401600060405180830381600087803b15801561195157600080fd5b6125586125f8565b600054600160a060020a03828116911614156125be576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6060610c9a82610a98565b600054600160a060020a03163314612648576040805160e560020a62461bcd02815260206004820152601160248201526000805160206133ff833981519152604482015290519081900360640190fd5b565b600254604080517fbb34534c000000000000000000000000000000000000000000000000000000008152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b1580156111f557600080fd5b606060008060008060006126d160008051602061341f83398151915261264a565b945084600160a060020a031663a43d5e948860008151811015156126f157fe5b906020019060200201516040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b15801561274657600080fd5b505af115801561275a573d6000803e3d6000fd5b505050506040513d602081101561277057600080fd5b5051935060009250600191505b86518210156128405784600160a060020a031663a43d5e9488848151811015156127a357fe5b906020019060200201516040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b1580156127f857600080fd5b505af115801561280c573d6000803e3d6000fd5b505050506040513d602081101561282257600080fd5b5051905080841115612835578093508192505b60019091019061277d565b84600160a060020a031663f4fb86c0888581518110151561285d57fe5b906020019060200201516040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b1580156128b257600080fd5b505af11580156128c6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405260208110156128ef57600080fd5b81019080805164010000000081111561290757600080fd5b8201602081018481111561291a57600080fd5b815185602082028301116401000000008211171561293757600080fd5b50909b9a5050505050505050505050565b60008085600160a060020a0316633e8ff43f6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561298957600080fd5b505af115801561299d573d6000803e3d6000fd5b505050506040513d60208110156129b357600080fd5b505161ffff8681169116146129cb5760009150612ab8565b85600160a060020a03166371f52bf36040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015612a0957600080fd5b505af1158015612a1d573d6000803e3d6000fd5b505050506040513d6020811015612a3357600080fd5b5051845161ffff90911614612a4b5760009150612ab8565b5060005b8351811015612ab357612a79868583815181101515612a6a57fe5b90602001906020020151612ca2565b63ffffffff168382815181101515612a8d57fe5b6020908102909101015163ffffffff1614612aab5760009150612ab8565b600101612a4f565b600191505b50949350505050565b600080600080612ade60008051602061341f83398151915261264a565b935084600160a060020a031663fc0c546a6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015612b1e57600080fd5b505af1158015612b32573d6000803e3d6000fd5b505050506040513d6020811015612b4857600080fd5b5051604080517f71f52bf30000000000000000000000000000000000000000000000000000000081529051919450600160a060020a038716916371f52bf3916004808201926020929091908290030181600087803b158015612ba957600080fd5b505af1158015612bbd573d6000803e3d6000fd5b505050506040513d6020811015612bd357600080fd5b505161ffff169150612be58484612f4d565b6001821115612bfd57612bf8848461302c565b612c08565b612c088484856130d7565b5060005b81811015612c9b57612c938486600160a060020a03166319b64015846040518263ffffffff1660e060020a02815260040180828152602001915050602060405180830381600087803b158015612c6157600080fd5b505af1158015612c75573d6000803e3d6000fd5b505050506040513d6020811015612c8b57600080fd5b5051856130d7565b600101612c0c565b5050505050565b6000612cac6133e3565b604080517f636f6e6e6563746f72732861646472657373290000000000000000000000000081528151908190036013018120600160a060020a03861660248084019190915283518084039091018152604490920183526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090921691909117815281519192918491885afa801515612d6657600080fd5b5050602001519392505050565b600080600080612d9060008051602061341f83398151915261264a565b935084600160a060020a031663fc0c546a6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015612dd057600080fd5b505af1158015612de4573d6000803e3d6000fd5b505050506040513d6020811015612dfa57600080fd5b5051604080517f71f52bf30000000000000000000000000000000000000000000000000000000081529051919450600160a060020a038716916371f52bf3916004808201926020929091908290030181600087803b158015612e5b57600080fd5b505af1158015612e6f573d6000803e3d6000fd5b505050506040513d6020811015612e8557600080fd5b505161ffff169150612e978484613198565b6001821115612eaf57612eaa8484613277565b612eba565b612eba848485613322565b5060005b81811015612c9b57612f458486600160a060020a03166319b64015846040518263ffffffff1660e060020a02815260040180828152602001915050602060405180830381600087803b158015612f1357600080fd5b505af1158015612f27573d6000803e3d6000fd5b505050506040513d6020811015612f3d57600080fd5b505185613322565b600101612ebe565b81600160a060020a0316638de6c3eb826040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b158015612fa857600080fd5b505af1158015612fbc573d6000803e3d6000fd5b5050604051600160a060020a03841692507fc0a6d303d67b7ed9fa0abae1c48878df32acc0e7ca4334c7dad2bceeee5956fd9150600090a2604051600160a060020a038216907f88881feecdf61136ac4bdb1f681f2f3746a82910263d21ffea94750d2a78c0ab90600090a25050565b81600160a060020a031663ee6a934c826040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b15801561308757600080fd5b505af115801561309b573d6000803e3d6000fd5b5050604051600160a060020a03841692507fb893f883ef734b712208a877459424ee509832c57e0461fb1ac99ed4d42f2d899150600090a25050565b604080517f36900c11000000000000000000000000000000000000000000000000000000008152600160a060020a03848116600483015283811660248301529151918516916336900c119160448082019260009290919082900301818387803b15801561314357600080fd5b505af1158015613157573d6000803e3d6000fd5b5050604051600160a060020a038085169350851691507ff2e7cf6d6ed3f77039511409a43d4fa5108f09ab71d72b014380364c910233a590600090a3505050565b81600160a060020a031663ceb9838c826040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b1580156131f357600080fd5b505af1158015613207573d6000803e3d6000fd5b5050604051600160a060020a03841692507fbfdf1baaa7e4871111360083540f067050014f651c9e4610a2a4a4bdf8bfab5d9150600090a2604051600160a060020a038216907f2aff63790c7da80d1c50ede92d23bc841c384837735c92c184331f3d7b91e5bf90600090a25050565b81600160a060020a031663ae22107f826040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b1580156132d257600080fd5b505af11580156132e6573d6000803e3d6000fd5b5050604051600160a060020a03841692507f59c3fbcae88f30e9b0e35c132a7f68c53231dffa4722f197c7ecb0ee013eee609150600090a25050565b604080517ffba8f031000000000000000000000000000000000000000000000000000000008152600160a060020a038481166004830152838116602483015291519185169163fba8f0319160448082019260009290919082900301818387803b15801561338e57600080fd5b505af11580156133a2573d6000803e3d6000fd5b5050604051600160a060020a038085169350851691507f9430ad6ff45d6c3e126c7711bf0036bd9bc6b202fa19628abd88e59cf43ced4390600090a3505050565b6040805180820182529060029082908038833950919291505056004552525f4143434553535f44454e494544000000000000000000000000000000536f7672796e53776170436f6e76657274657252656769737472794461746100a165627a7a723058201f0fba8c22e14a4909cbe243e6c373bc774950f2c9273ff4bfac31b9b77824050029 \ No newline at end of file diff --git a/solidity/build/ConverterRegistryData.abi b/solidity/build/ConverterRegistryData.abi index 314e883..c082d87 100644 --- a/solidity/build/ConverterRegistryData.abi +++ b/solidity/build/ConverterRegistryData.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getSmartTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_smartToken","type":"address"}],"name":"addConvertibleToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isConvertibleToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isSmartToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getConvertibleTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getConvertibleTokenCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_value","type":"address"}],"name":"isConvertibleTokenSmartToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getLiquidityPoolCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getLiquidityPools","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getConvertibleToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_smartToken","type":"address"}],"name":"addSmartToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getSmartToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"}],"name":"getConvertibleTokenSmartTokenCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getLiquidityPool","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_liquidityPool","type":"address"}],"name":"removeLiquidityPool","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_smartToken","type":"address"}],"name":"removeSmartToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_index","type":"uint256"}],"name":"getConvertibleTokenSmartToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getSmartTokenCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isLiquidityPool","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_liquidityPool","type":"address"}],"name":"addLiquidityPool","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"}],"name":"getConvertibleTokenSmartTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_smartToken","type":"address"}],"name":"removeConvertibleToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}] \ No newline at end of file +[{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":false,"inputs":[{"name":"_smartToken","type":"address"}],"name":"addSmartToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_smartToken","type":"address"}],"name":"removeSmartToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_liquidityPool","type":"address"}],"name":"addLiquidityPool","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_liquidityPool","type":"address"}],"name":"removeLiquidityPool","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_smartToken","type":"address"}],"name":"addConvertibleToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_smartToken","type":"address"}],"name":"removeConvertibleToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getSmartTokenCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getSmartTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getSmartToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isSmartToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getLiquidityPoolCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getLiquidityPools","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getLiquidityPool","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isLiquidityPool","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getConvertibleTokenCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getConvertibleTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getConvertibleToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isConvertibleToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"}],"name":"getConvertibleTokenSmartTokenCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"}],"name":"getConvertibleTokenSmartTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_index","type":"uint256"}],"name":"getConvertibleTokenSmartToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_value","type":"address"}],"name":"isConvertibleTokenSmartToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/solidity/build/ConverterRegistryData.bin b/solidity/build/ConverterRegistryData.bin index d3db998..f6a943b 100644 --- a/solidity/build/ConverterRegistryData.bin +++ b/solidity/build/ConverterRegistryData.bin @@ -1 +1 @@ -608060405234801561001057600080fd5b506040516020806114c5833981016040525160008054600160a060020a03191633179055808061004881640100000000610079810204565b5060028054600160a060020a03909216600160a060020a0319928316811790915560038054909216179055506100f3565b600160a060020a03811615156100f057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b6113c3806101026000396000f3006080604052600436106101955763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663024c7ec7811461019a57806304ceaf41146101b65780632fe8a6ad1461021b57806336900c11146102445780633ab8857c1461026b5780634123ef601461028c57806349d10b64146102ad5780635f1b50fe146102c257806361cd756e146102d757806369be478414610308578063725b87861461032f57806379ba5097146103565780637a5f0ffd1461036b5780637b103999146103805780637f45c4c314610395578063865cf194146103aa5780638da5cb5b146103c25780638de6c3eb146103d7578063a109d214146103f8578063a43d5e9414610410578063a74498aa14610431578063ae22107f14610449578063b4a176d31461046a578063ceb9838c1461047f578063d4ee1d90146104a0578063d6c4b5b2146104b5578063e571049b146104d9578063e85455d7146104ee578063ee6a934c1461050f578063f2fde38b14610530578063f4fb86c014610551578063fba8f03114610572575b600080fd5b3480156101a657600080fd5b506101b46004351515610599565b005b3480156101c257600080fd5b506101cb6105e1565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156102075781810151838201526020016101ef565b505050509050019250505060405180910390f35b34801561022757600080fd5b50610230610647565b604080519115158252519081900360200190f35b34801561025057600080fd5b506101b4600160a060020a0360043581169060243516610668565b34801561027757600080fd5b50610230600160a060020a036004351661070a565b34801561029857600080fd5b50610230600160a060020a0360043516610729565b3480156102b957600080fd5b506101b4610747565b3480156102ce57600080fd5b506101cb6109a7565b3480156102e357600080fd5b506102ec610a0a565b60408051600160a060020a039092168252519081900360200190f35b34801561031457600080fd5b5061031d610a19565b60408051918252519081900360200190f35b34801561033b57600080fd5b50610230600160a060020a0360043581169060243516610a1f565b34801561036257600080fd5b506101b4610a51565b34801561037757600080fd5b5061031d610b05565b34801561038c57600080fd5b506102ec610b0b565b3480156103a157600080fd5b506101cb610b1a565b3480156103b657600080fd5b506102ec600435610b7d565b3480156103ce57600080fd5b506102ec610baa565b3480156103e357600080fd5b506101b4600160a060020a0360043516610bb9565b34801561040457600080fd5b506102ec600435610be0565b34801561041c57600080fd5b5061031d600160a060020a0360043516610bf2565b34801561043d57600080fd5b506102ec600435610c10565b34801561045557600080fd5b506101b4600160a060020a0360043516610c22565b34801561047657600080fd5b506101b4610c45565b34801561048b57600080fd5b506101b4600160a060020a0360043516610c71565b3480156104ac57600080fd5b506102ec610c94565b3480156104c157600080fd5b506102ec600160a060020a0360043516602435610ca3565b3480156104e557600080fd5b5061031d610ce6565b3480156104fa57600080fd5b50610230600160a060020a0360043516610cec565b34801561051b57600080fd5b506101b4600160a060020a0360043516610d0a565b34801561053c57600080fd5b506101b4600160a060020a0360043516610d2d565b34801561055d57600080fd5b506101cb600160a060020a0360043516610dbd565b34801561057e57600080fd5b506101b4600160a060020a0360043581169060243516610e36565b6105a1610f47565b60038054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b6060600460000180548060200260200160405190810160405280929190818152602001828054801561063c57602002820191906000526020600020905b8154600160a060020a0316815260019091019060200180831161061e575b505050505090505b90565b60035474010000000000000000000000000000000000000000900460ff1681565b600060008051602061135883398151915261068281610f99565b600160a060020a0384166000908152600960205260409020600181015490925015156106f757600880546001810182556000919091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee381018054600160a060020a031916600160a060020a03871617905582555b6107048260010184610ff2565b50505050565b600160a060020a03166000908152600960205260408120600101541190565b600160a060020a031660009081526005602052604090205460ff1690565b60008054600160a060020a031633148061077c575060035474010000000000000000000000000000000000000000900460ff16155b15156107c0576040805160e560020a62461bcd0281526020600482015260116024820152600080516020611378833981519152604482015290519081900360640190fd5b6107e97f436f6e74726163745265676973747279000000000000000000000000000000006110be565b600254909150600160a060020a038083169116148015906108125750600160a060020a03811615155b1515610868576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b604080517fbb34534c0000000000000000000000000000000000000000000000000000000081527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b1580156108ec57600080fd5b505af1158015610900573d6000803e3d6000fd5b505050506040513d602081101561091657600080fd5b5051600160a060020a03161415610977576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a03808416600160a060020a0319928316179092559091169216919091179055565b6060600860000180548060200260200160405190810160405280929190818152602001828054801561063c57602002820191906000526020600020908154600160a060020a0316815260019091019060200180831161061e575050505050905090565b600354600160a060020a031681565b60085490565b600160a060020a0391821660009081526009602090815260408083209390941682526002909201909152205460ff1690565b600154600160a060020a03163314610aa1576040805160e560020a62461bcd0281526020600482015260116024820152600080516020611378833981519152604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a36001805460008054600160a060020a0319908116600160a060020a03841617909155169055565b60065490565b600254600160a060020a031681565b6060600660000180548060200260200160405190810160405280929190818152602001828054801561063c57602002820191906000526020600020908154600160a060020a0316815260019091019060200180831161061e575050505050905090565b600880546000919083908110610b8f57fe5b600091825260209091200154600160a060020a031692915050565b600054600160a060020a031681565b600080516020611358833981519152610bd181610f99565b610bdc600483610ff2565b5050565b600480546000919083908110610b8f57fe5b600160a060020a031660009081526009602052604090206001015490565b600680546000919083908110610b8f57fe5b600080516020611358833981519152610c3a81610f99565b610bdc600683611156565b610c4d610f47565b60035460028054600160a060020a031916600160a060020a03909216919091179055565b600080516020611358833981519152610c8981610f99565b610bdc600483611156565b600154600160a060020a031681565b600160a060020a0382166000908152600960205260408120600101805483908110610cca57fe5b600091825260209091200154600160a060020a03169392505050565b60045490565b600160a060020a031660009081526007602052604090205460ff1690565b600080516020611358833981519152610d2281610f99565b610bdc600683610ff2565b610d35610f47565b600054600160a060020a0382811691161415610d9b576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b60018054600160a060020a031916600160a060020a0392909216919091179055565b600160a060020a038116600090815260096020908152604091829020600101805483518184028101840190945280845260609392830182828015610e2a57602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311610e0c575b50505050509050919050565b600080600080516020611358833981519152610e5181610f99565b600160a060020a03851660009081526009602052604090209250610e786001840185611156565b60018301541515610f4057600880546000198101908110610e9557fe5b60009182526020808320909101548554600160a060020a039091168084526009909252604090922082905560088054919450849290918110610ed357fe5b60009182526020909120018054600160a060020a031916600160a060020a03929092169190911790556008805490610f0f9060001983016112f6565b50600160a060020a0385166000908152600960205260408120818155906001820181610f3b828261131f565b505050505b5050505050565b600054600160a060020a03163314610f97576040805160e560020a62461bcd0281526020600482015260116024820152600080516020611378833981519152604482015290519081900360640190fd5b565b610fa2816110be565b600160a060020a03163314610fef576040805160e560020a62461bcd0281526020600482015260116024820152600080516020611378833981519152604482015290519081900360640190fd5b50565b600081610ffe81611296565b600160a060020a03831660009081526001850160205260409020805490925060ff1615611075576040805160e560020a62461bcd02815260206004820152601060248201527f4552525f494e56414c49445f4954454d00000000000000000000000000000000604482015290519081900360640190fd5b508254600180820185556000948552602090942081018054600160a060020a031916600160a060020a03949094169390931790925580830191909155805460ff19169091179055565b600254604080517fbb34534c000000000000000000000000000000000000000000000000000000008152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561112457600080fd5b505af1158015611138573d6000803e3d6000fd5b505050506040513d602081101561114e57600080fd5b505192915050565b6000808261116381611296565b600160a060020a03841660009081526001860160205260409020805490935060ff1615156111db576040805160e560020a62461bcd02815260206004820152601060248201527f4552525f494e56414c49445f4954454d00000000000000000000000000000000604482015290519081900360640190fd5b8454859060001981019081106111ed57fe5b6000918252602080832090910154600186810154600160a060020a039092168085528982019093526040909320909201829055865490935083918791811061123157fe5b60009182526020909120018054600160a060020a031916600160a060020a0392909216919091179055845461126a8660001983016112f6565b50505050600160a060020a03166000908152600191820160205260408120805460ff1916815590910155565b600160a060020a0381161515610fef576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b81548183558181111561131a5760008381526020902061131a918101908301611339565b505050565b5080546000825590600052602060002090810190610fef91905b61064491905b80821115611353576000815560010161133f565b50905600536f7672796e53776170436f6e766572746572526567697374727900000000004552525f4143434553535f44454e494544000000000000000000000000000000a165627a7a723058207149c9f84ef5e489dfb9a2b7fad401658b6583c2240a1e70e3a7d11391bdcc8c0029 \ No newline at end of file +608060405234801561001057600080fd5b506040516020806114c5833981016040525160008054600160a060020a03191633179055808061004881640100000000610079810204565b5060028054600160a060020a03909216600160a060020a0319928316811790915560038054909216179055506100f3565b600160a060020a03811615156100f057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b6113c3806101026000396000f3006080604052600436106101955763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663024c7ec7811461019a57806304ceaf41146101b65780632fe8a6ad1461021b57806336900c11146102445780633ab8857c1461026b5780634123ef601461028c57806349d10b64146102ad5780635f1b50fe146102c257806361cd756e146102d757806369be478414610308578063725b87861461032f57806379ba5097146103565780637a5f0ffd1461036b5780637b103999146103805780637f45c4c314610395578063865cf194146103aa5780638da5cb5b146103c25780638de6c3eb146103d7578063a109d214146103f8578063a43d5e9414610410578063a74498aa14610431578063ae22107f14610449578063b4a176d31461046a578063ceb9838c1461047f578063d4ee1d90146104a0578063d6c4b5b2146104b5578063e571049b146104d9578063e85455d7146104ee578063ee6a934c1461050f578063f2fde38b14610530578063f4fb86c014610551578063fba8f03114610572575b600080fd5b3480156101a657600080fd5b506101b46004351515610599565b005b3480156101c257600080fd5b506101cb6105e1565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156102075781810151838201526020016101ef565b505050509050019250505060405180910390f35b34801561022757600080fd5b50610230610647565b604080519115158252519081900360200190f35b34801561025057600080fd5b506101b4600160a060020a0360043581169060243516610668565b34801561027757600080fd5b50610230600160a060020a036004351661070a565b34801561029857600080fd5b50610230600160a060020a0360043516610729565b3480156102b957600080fd5b506101b4610747565b3480156102ce57600080fd5b506101cb6109a7565b3480156102e357600080fd5b506102ec610a0a565b60408051600160a060020a039092168252519081900360200190f35b34801561031457600080fd5b5061031d610a19565b60408051918252519081900360200190f35b34801561033b57600080fd5b50610230600160a060020a0360043581169060243516610a1f565b34801561036257600080fd5b506101b4610a51565b34801561037757600080fd5b5061031d610b05565b34801561038c57600080fd5b506102ec610b0b565b3480156103a157600080fd5b506101cb610b1a565b3480156103b657600080fd5b506102ec600435610b7d565b3480156103ce57600080fd5b506102ec610baa565b3480156103e357600080fd5b506101b4600160a060020a0360043516610bb9565b34801561040457600080fd5b506102ec600435610be0565b34801561041c57600080fd5b5061031d600160a060020a0360043516610bf2565b34801561043d57600080fd5b506102ec600435610c10565b34801561045557600080fd5b506101b4600160a060020a0360043516610c22565b34801561047657600080fd5b506101b4610c45565b34801561048b57600080fd5b506101b4600160a060020a0360043516610c71565b3480156104ac57600080fd5b506102ec610c94565b3480156104c157600080fd5b506102ec600160a060020a0360043516602435610ca3565b3480156104e557600080fd5b5061031d610ce6565b3480156104fa57600080fd5b50610230600160a060020a0360043516610cec565b34801561051b57600080fd5b506101b4600160a060020a0360043516610d0a565b34801561053c57600080fd5b506101b4600160a060020a0360043516610d2d565b34801561055d57600080fd5b506101cb600160a060020a0360043516610dbd565b34801561057e57600080fd5b506101b4600160a060020a0360043581169060243516610e36565b6105a1610f47565b60038054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b6060600460000180548060200260200160405190810160405280929190818152602001828054801561063c57602002820191906000526020600020905b8154600160a060020a0316815260019091019060200180831161061e575b505050505090505b90565b60035474010000000000000000000000000000000000000000900460ff1681565b600060008051602061135883398151915261068281610f99565b600160a060020a0384166000908152600960205260409020600181015490925015156106f757600880546001810182556000919091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee381018054600160a060020a031916600160a060020a03871617905582555b6107048260010184610ff2565b50505050565b600160a060020a03166000908152600960205260408120600101541190565b600160a060020a031660009081526005602052604090205460ff1690565b60008054600160a060020a031633148061077c575060035474010000000000000000000000000000000000000000900460ff16155b15156107c0576040805160e560020a62461bcd0281526020600482015260116024820152600080516020611378833981519152604482015290519081900360640190fd5b6107e97f436f6e74726163745265676973747279000000000000000000000000000000006110be565b600254909150600160a060020a038083169116148015906108125750600160a060020a03811615155b1515610868576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b604080517fbb34534c0000000000000000000000000000000000000000000000000000000081527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b1580156108ec57600080fd5b505af1158015610900573d6000803e3d6000fd5b505050506040513d602081101561091657600080fd5b5051600160a060020a03161415610977576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a03808416600160a060020a0319928316179092559091169216919091179055565b6060600860000180548060200260200160405190810160405280929190818152602001828054801561063c57602002820191906000526020600020908154600160a060020a0316815260019091019060200180831161061e575050505050905090565b600354600160a060020a031681565b60085490565b600160a060020a0391821660009081526009602090815260408083209390941682526002909201909152205460ff1690565b600154600160a060020a03163314610aa1576040805160e560020a62461bcd0281526020600482015260116024820152600080516020611378833981519152604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a36001805460008054600160a060020a0319908116600160a060020a03841617909155169055565b60065490565b600254600160a060020a031681565b6060600660000180548060200260200160405190810160405280929190818152602001828054801561063c57602002820191906000526020600020908154600160a060020a0316815260019091019060200180831161061e575050505050905090565b600880546000919083908110610b8f57fe5b600091825260209091200154600160a060020a031692915050565b600054600160a060020a031681565b600080516020611358833981519152610bd181610f99565b610bdc600483610ff2565b5050565b600480546000919083908110610b8f57fe5b600160a060020a031660009081526009602052604090206001015490565b600680546000919083908110610b8f57fe5b600080516020611358833981519152610c3a81610f99565b610bdc600683611156565b610c4d610f47565b60035460028054600160a060020a031916600160a060020a03909216919091179055565b600080516020611358833981519152610c8981610f99565b610bdc600483611156565b600154600160a060020a031681565b600160a060020a0382166000908152600960205260408120600101805483908110610cca57fe5b600091825260209091200154600160a060020a03169392505050565b60045490565b600160a060020a031660009081526007602052604090205460ff1690565b600080516020611358833981519152610d2281610f99565b610bdc600683610ff2565b610d35610f47565b600054600160a060020a0382811691161415610d9b576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b60018054600160a060020a031916600160a060020a0392909216919091179055565b600160a060020a038116600090815260096020908152604091829020600101805483518184028101840190945280845260609392830182828015610e2a57602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311610e0c575b50505050509050919050565b600080600080516020611358833981519152610e5181610f99565b600160a060020a03851660009081526009602052604090209250610e786001840185611156565b60018301541515610f4057600880546000198101908110610e9557fe5b60009182526020808320909101548554600160a060020a039091168084526009909252604090922082905560088054919450849290918110610ed357fe5b60009182526020909120018054600160a060020a031916600160a060020a03929092169190911790556008805490610f0f9060001983016112f6565b50600160a060020a0385166000908152600960205260408120818155906001820181610f3b828261131f565b505050505b5050505050565b600054600160a060020a03163314610f97576040805160e560020a62461bcd0281526020600482015260116024820152600080516020611378833981519152604482015290519081900360640190fd5b565b610fa2816110be565b600160a060020a03163314610fef576040805160e560020a62461bcd0281526020600482015260116024820152600080516020611378833981519152604482015290519081900360640190fd5b50565b600081610ffe81611296565b600160a060020a03831660009081526001850160205260409020805490925060ff1615611075576040805160e560020a62461bcd02815260206004820152601060248201527f4552525f494e56414c49445f4954454d00000000000000000000000000000000604482015290519081900360640190fd5b508254600180820185556000948552602090942081018054600160a060020a031916600160a060020a03949094169390931790925580830191909155805460ff19169091179055565b600254604080517fbb34534c000000000000000000000000000000000000000000000000000000008152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561112457600080fd5b505af1158015611138573d6000803e3d6000fd5b505050506040513d602081101561114e57600080fd5b505192915050565b6000808261116381611296565b600160a060020a03841660009081526001860160205260409020805490935060ff1615156111db576040805160e560020a62461bcd02815260206004820152601060248201527f4552525f494e56414c49445f4954454d00000000000000000000000000000000604482015290519081900360640190fd5b8454859060001981019081106111ed57fe5b6000918252602080832090910154600186810154600160a060020a039092168085528982019093526040909320909201829055865490935083918791811061123157fe5b60009182526020909120018054600160a060020a031916600160a060020a0392909216919091179055845461126a8660001983016112f6565b50505050600160a060020a03166000908152600191820160205260408120805460ff1916815590910155565b600160a060020a0381161515610fef576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b81548183558181111561131a5760008381526020902061131a918101908301611339565b505050565b5080546000825590600052602060002090810190610fef91905b61064491905b80821115611353576000815560010161133f565b50905600536f7672796e53776170436f6e766572746572526567697374727900000000004552525f4143434553535f44454e494544000000000000000000000000000000a165627a7a723058208c88d83c0b5ddffe9f870bf1b8572a1d3e5c61603b39569fb05033b3f2d5cd260029 \ No newline at end of file diff --git a/solidity/build/ConverterUpgrader.abi b/solidity/build/ConverterUpgrader.abi index a149226..e39ed69 100644 --- a/solidity/build/ConverterUpgrader.abi +++ b/solidity/build/ConverterUpgrader.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_version","type":"uint16"}],"name":"upgrade","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"etherToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_version","type":"bytes32"}],"name":"upgrade","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_converter","type":"address"},{"name":"_version","type":"bytes32"}],"name":"upgradeOld","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_registry","type":"address"},{"name":"_etherToken","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_converter","type":"address"},{"indexed":true,"name":"_owner","type":"address"}],"name":"ConverterOwned","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_oldConverter","type":"address"},{"indexed":true,"name":"_newConverter","type":"address"}],"name":"ConverterUpgrade","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}] \ No newline at end of file +[{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"etherToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_registry","type":"address"},{"name":"_etherToken","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_converter","type":"address"},{"indexed":true,"name":"_owner","type":"address"}],"name":"ConverterOwned","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_oldConverter","type":"address"},{"indexed":true,"name":"_newConverter","type":"address"}],"name":"ConverterUpgrade","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":false,"inputs":[{"name":"_version","type":"uint16"}],"name":"upgrade","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_version","type":"bytes32"}],"name":"upgrade","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_converter","type":"address"},{"name":"_version","type":"bytes32"}],"name":"upgradeOld","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/ConverterUpgrader.bin b/solidity/build/ConverterUpgrader.bin index 77bb349..ac9baee 100644 --- a/solidity/build/ConverterUpgrader.bin +++ b/solidity/build/ConverterUpgrader.bin @@ -1 +1 @@ -608060405234801561001057600080fd5b506040516040806120df83398101604052805160209091015160008054600160a060020a03191633179055818061004f81640100000000610092810204565b5060028054600160a060020a03928316600160a060020a03199182168117909255600380548216909217909155600480549390921692169190911790555061010c565b600160a060020a038116151561010957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b611fc48061011b6000396000f3006080604052600436106100b65763ffffffff60e060020a600035041663024c7ec781146100bb5780632fe8a6ad146100d757806349d10b641461010057806361cd756e1461011557806379ba5097146101465780637b1039991461015b5780638da5cb5b1461017057806390f58c9614610185578063b4a176d3146101a1578063b8066bcb146101b6578063bc444e13146101cb578063d4ee1d90146101e3578063f2cfed87146101f8578063f2fde38b1461021c575b600080fd5b3480156100c757600080fd5b506100d5600435151561023d565b005b3480156100e357600080fd5b506100ec610285565b604080519115158252519081900360200190f35b34801561010c57600080fd5b506100d56102a6565b34801561012157600080fd5b5061012a610525565b60408051600160a060020a039092168252519081900360200190f35b34801561015257600080fd5b506100d5610534565b34801561016757600080fd5b5061012a610607565b34801561017c57600080fd5b5061012a610616565b34801561019157600080fd5b506100d561ffff60043516610625565b3480156101ad57600080fd5b506100d5610636565b3480156101c257600080fd5b5061012a61066f565b3480156101d757600080fd5b506100d560043561067e565b3480156101ef57600080fd5b5061012a610688565b34801561020457600080fd5b506100d5600160a060020a0360043516602435610697565b34801561022857600080fd5b506100d5600160a060020a0360043516610aa8565b610245610b45565b60038054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b60035474010000000000000000000000000000000000000000900460ff1681565b60008054600160a060020a03163314806102db575060035474010000000000000000000000000000000000000000900460ff16155b1515610331576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b61035a7f436f6e7472616374526567697374727900000000000000000000000000000000610ba9565b600254909150600160a060020a038083169116148015906103835750600160a060020a03811615155b15156103d9576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b604080517fbb34534c0000000000000000000000000000000000000000000000000000000081527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b15801561045d57600080fd5b505af1158015610471573d6000803e3d6000fd5b505050506040513d602081101561048757600080fd5b5051600160a060020a031614156104e8576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a0380841673ffffffffffffffffffffffffffffffffffffffff19928316179092559091169216919091179055565b600354600160a060020a031681565b600154600160a060020a03163314610596576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600254600160a060020a031681565b600054600160a060020a031681565b6106333361ffff8316610697565b50565b61063e610b45565b6003546002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03909216919091179055565b600454600160a060020a031681565b6106333382610697565b600154600160a060020a031681565b600080600080600086945084600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156106e057600080fd5b505af11580156106f4573d6000803e3d6000fd5b505050506040513d602081101561070a57600080fd5b5051935061071785610c41565b61072085610cd0565b925061072c8584611052565b61073685846113df565b61074085846114d2565b84600160a060020a031663fc0c546a6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561077e57600080fd5b505af1158015610792573d6000803e3d6000fd5b505050506040513d60208110156107a857600080fd5b505191506107b58561194f565b8015610827575084600160a060020a03166322f3e2d46040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156107fa57600080fd5b505af115801561080e573d6000803e3d6000fd5b505050506040513d602081101561082457600080fd5b50515b905084600160a060020a031682600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561087157600080fd5b505af1158015610885573d6000803e3d6000fd5b505050506040513d602081101561089b57600080fd5b5051600160a060020a031614156109765784600160a060020a03166321e6b53d846040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b15801561090757600080fd5b505af115801561091b573d6000803e3d6000fd5b5050505082600160a060020a031663cdc91c696040518163ffffffff1660e060020a028152600401600060405180830381600087803b15801561095d57600080fd5b505af1158015610971573d6000803e3d6000fd5b505050505b610981858483611a0b565b84600160a060020a031663f2fde38b856040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b1580156109dc57600080fd5b505af11580156109f0573d6000803e3d6000fd5b5050505082600160a060020a031663f2fde38b856040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b158015610a4f57600080fd5b505af1158015610a63573d6000803e3d6000fd5b5050604051600160a060020a038087169350881691507f522b846327aea07106ec4d64ae4b6d6dea47689884dab650fd3a1f2e1d6a270190600090a350505050505050565b610ab0610b45565b600054600160a060020a0382811691161415610b16576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a03163314610ba7576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b600254604080517fbb34534c000000000000000000000000000000000000000000000000000000008152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b158015610c0f57600080fd5b505af1158015610c23573d6000803e3d6000fd5b505050506040513d6020811015610c3957600080fd5b505192915050565b80600160a060020a03166379ba50976040518163ffffffff1660e060020a028152600401600060405180830381600087803b158015610c7f57600080fd5b505af1158015610c93573d6000803e3d6000fd5b5050604051309250600160a060020a03841691507ff764604894fa993d4370a9cb28b81c11deb1aafdb2909156173ae3833dad807590600090a350565b600080600080600080600087600160a060020a031663fc0c546a6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015610d1957600080fd5b505af1158015610d2d573d6000803e3d6000fd5b505050506040513d6020811015610d4357600080fd5b5051604080517f94c275ad0000000000000000000000000000000000000000000000000000000081529051919750600160a060020a038a16916394c275ad916004808201926020929091908290030181600087803b158015610da457600080fd5b505af1158015610db8573d6000803e3d6000fd5b505050506040513d6020811015610dce57600080fd5b5051604080517f71f52bf30000000000000000000000000000000000000000000000000000000081529051919650600160a060020a038a16916371f52bf3916004808201926020929091908290030181600087803b158015610e2f57600080fd5b505af1158015610e43573d6000803e3d6000fd5b505050506040513d6020811015610e5957600080fd5b5051935060009250610e6a8861194f565b15610ee05787600160a060020a0316633e8ff43f6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015610ead57600080fd5b505af1158015610ec1573d6000803e3d6000fd5b505050506040513d6020811015610ed757600080fd5b50519250610ef2565b60018461ffff161115610ef257600192505b610f1b7f436f6e766572746572466163746f727900000000000000000000000000000000610ba9565b600254604080517f15f64b6a00000000000000000000000000000000000000000000000000000000815261ffff87166004820152600160a060020a038a81166024830152928316604482015263ffffffff891660648201529051929450908416916315f64b6a916084808201926020929091908290030181600087803b158015610fa457600080fd5b505af1158015610fb8573d6000803e3d6000fd5b505050506040513d6020811015610fce57600080fd5b5051604080517f79ba50970000000000000000000000000000000000000000000000000000000081529051919250600160a060020a038316916379ba50979160048082019260009290919082900301818387803b15801561102e57600080fd5b505af1158015611042573d6000803e3d6000fd5b50929a9950505050505050505050565b60008060008085600160a060020a03166371f52bf36040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561109657600080fd5b505af11580156110aa573d6000803e3d6000fd5b505050506040513d60208110156110c057600080fd5b50519350600092505b8361ffff168361ffff1610156113d75785600160a060020a03166319b64015846040518263ffffffff1660e060020a028152600401808261ffff168152602001915050602060405180830381600087803b15801561112657600080fd5b505af115801561113a573d6000803e3d6000fd5b505050506040513d602081101561115057600080fd5b5051604080517f0e53aae9000000000000000000000000000000000000000000000000000000008152600160a060020a038084166004830152915192945090881691630e53aae99160248082019260a0929091908290030181600087803b1580156111ba57600080fd5b505af11580156111ce573d6000803e3d6000fd5b505050506040513d60a08110156111e457600080fd5b50602001519050600160a060020a03821673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14156112ad57604080517f6a49d2c400000000000000000000000000000000000000000000000000000000815273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee600482015263ffffffff831660248201529051600160a060020a03871691636a49d2c491604480830192600092919082900301818387803b15801561129057600080fd5b505af11580156112a4573d6000803e3d6000fd5b505050506113cc565b600454600160a060020a038381169116141561134357604080517f6a49d2c400000000000000000000000000000000000000000000000000000000815273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee600482015263ffffffff831660248201529051600160a060020a03871691636a49d2c491604480830192600092919082900301818387803b15801561129057600080fd5b604080517f6a49d2c4000000000000000000000000000000000000000000000000000000008152600160a060020a03848116600483015263ffffffff84166024830152915191871691636a49d2c49160448082019260009290919082900301818387803b1580156113b357600080fd5b505af11580156113c7573d6000803e3d6000fd5b505050505b6001909201916110c9565b505050505050565b600082600160a060020a031663579cd3ca6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561141f57600080fd5b505af1158015611433573d6000803e3d6000fd5b505050506040513d602081101561144957600080fd5b5051604080517fecbca55d00000000000000000000000000000000000000000000000000000000815263ffffffff831660048201529051919250600160a060020a0384169163ecbca55d9160248082019260009290919082900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b50505050505050565b600080600080600086600160a060020a03166371f52bf36040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561151857600080fd5b505af115801561152c573d6000803e3d6000fd5b505050506040513d602081101561154257600080fd5b50519350600092505b8361ffff168361ffff1610156114c95786600160a060020a03166319b64015846040518263ffffffff1660e060020a028152600401808261ffff168152602001915050602060405180830381600087803b1580156115a857600080fd5b505af11580156115bc573d6000803e3d6000fd5b505050506040513d60208110156115d257600080fd5b50519150600160a060020a03821673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14156116735786600160a060020a031663690d8320876040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b15801561165657600080fd5b505af115801561166a573d6000803e3d6000fd5b50505050611944565b600454600160a060020a03838116911614156118235760048054604080517f70a08231000000000000000000000000000000000000000000000000000000008152600160a060020a038b811694820194909452905192909116916370a08231916024808201926020929091908290030181600087803b1580156116f557600080fd5b505af1158015611709573d6000803e3d6000fd5b505050506040513d602081101561171f57600080fd5b505160048054604080517f5e35359e000000000000000000000000000000000000000000000000000000008152600160a060020a03928316938101939093523060248401526044830184905251929750891691635e35359e9160648082019260009290919082900301818387803b15801561179957600080fd5b505af11580156117ad573d6000803e3d6000fd5b505060048054604080517f205c2878000000000000000000000000000000000000000000000000000000008152600160a060020a038c811694820194909452602481018b9052905192909116935063205c2878925060448082019260009290919082900301818387803b15801561165657600080fd5b50604080517f70a08231000000000000000000000000000000000000000000000000000000008152600160a060020a038881166004830152915183928316916370a082319160248083019260209291908290030181600087803b15801561188957600080fd5b505af115801561189d573d6000803e3d6000fd5b505050506040513d60208110156118b357600080fd5b5051604080517f5e35359e000000000000000000000000000000000000000000000000000000008152600160a060020a038481166004830152898116602483015260448201849052915192975090891691635e35359e9160648082019260009290919082900301818387803b15801561192b57600080fd5b505af115801561193f573d6000803e3d6000fd5b505050505b60019092019161154b565b60008061195a611f79565b604080517f69735632384f72486967686572282900000000000000000000000000000000008152815190819003600f0181206004825260248201909252602080820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff00000000000000000000000000000000000000000000000000000000909416939093178352815191929091849188611388fa9250828015611a025750815115155b95945050505050565b6000806000806000806000806000611a228c61194f565b1515611a2d57611f6b565b8b600160a060020a0316633e8ff43f6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611a6b57600080fd5b505af1158015611a7f573d6000803e3d6000fd5b505050506040513d6020811015611a9557600080fd5b50519850600261ffff8a161415611f6b578b600160a060020a03166371f52bf36040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611ae457600080fd5b505af1158015611af8573d6000803e3d6000fd5b505050506040513d6020811015611b0e57600080fd5b50519750600096505b8761ffff168761ffff161015611cc4578b600160a060020a03166319b64015886040518263ffffffff1660e060020a028152600401808261ffff168152602001915050602060405180830381600087803b158015611b7457600080fd5b505af1158015611b88573d6000803e3d6000fd5b505050506040513d6020811015611b9e57600080fd5b5051604080517e5e319c000000000000000000000000000000000000000000000000000000008152600160a060020a0380841660048301529151929850908e1691625e319c916024808201926020929091908290030181600087803b158015611c0657600080fd5b505af1158015611c1a573d6000803e3d6000fd5b505050506040513d6020811015611c3057600080fd5b5051604080517fbf7da6ba000000000000000000000000000000000000000000000000000000008152600160a060020a038981166004830152602482018490529151929750908d169163bf7da6ba9160448082019260009290919082900301818387803b158015611ca057600080fd5b505af1158015611cb4573d6000803e3d6000fd5b505060019098019750611b179050565b891515611cd057611f6b565b8b600160a060020a0316630337e3fb6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611d0e57600080fd5b505af1158015611d22573d6000803e3d6000fd5b505050506040513d6020811015611d3857600080fd5b5051604080517f2630c12f0000000000000000000000000000000000000000000000000000000081529051919550600160a060020a038e1691632630c12f916004808201926020929091908290030181600087803b158015611d9957600080fd5b505af1158015611dad573d6000803e3d6000fd5b505050506040513d6020811015611dc357600080fd5b5051604080517fb9e1715b0000000000000000000000000000000000000000000000000000000081529051919450600160a060020a0385169163b9e1715b916004808201926020929091908290030181600087803b158015611e2457600080fd5b505af1158015611e38573d6000803e3d6000fd5b505050506040513d6020811015611e4e57600080fd5b5051604080517ff997fda70000000000000000000000000000000000000000000000000000000081529051919350600160a060020a0385169163f997fda7916004808201926020929091908290030181600087803b158015611eaf57600080fd5b505af1158015611ec3573d6000803e3d6000fd5b505050506040513d6020811015611ed957600080fd5b5051604080517f119b90cd000000000000000000000000000000000000000000000000000000008152600160a060020a038781166004830152858116602483015280841660448301529151929350908d169163119b90cd9160648082019260009290919082900301818387803b158015611f5257600080fd5b505af1158015611f66573d6000803e3d6000fd5b505050505b505050505050505050505050565b60206040519081016040528060019060208202803883395091929150505600a165627a7a72305820a7bd4f8f9a98667a99168115199b85ef3fba0d79ffd89b3bba03ce2aace215ac0029 \ No newline at end of file +608060405234801561001057600080fd5b506040516040806120df83398101604052805160209091015160008054600160a060020a03191633179055818061004f81640100000000610092810204565b5060028054600160a060020a03928316600160a060020a03199182168117909255600380548216909217909155600480549390921692169190911790555061010c565b600160a060020a038116151561010957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b611fc48061011b6000396000f3006080604052600436106100b65763ffffffff60e060020a600035041663024c7ec781146100bb5780632fe8a6ad146100d757806349d10b641461010057806361cd756e1461011557806379ba5097146101465780637b1039991461015b5780638da5cb5b1461017057806390f58c9614610185578063b4a176d3146101a1578063b8066bcb146101b6578063bc444e13146101cb578063d4ee1d90146101e3578063f2cfed87146101f8578063f2fde38b1461021c575b600080fd5b3480156100c757600080fd5b506100d5600435151561023d565b005b3480156100e357600080fd5b506100ec610285565b604080519115158252519081900360200190f35b34801561010c57600080fd5b506100d56102a6565b34801561012157600080fd5b5061012a610525565b60408051600160a060020a039092168252519081900360200190f35b34801561015257600080fd5b506100d5610534565b34801561016757600080fd5b5061012a610607565b34801561017c57600080fd5b5061012a610616565b34801561019157600080fd5b506100d561ffff60043516610625565b3480156101ad57600080fd5b506100d5610636565b3480156101c257600080fd5b5061012a61066f565b3480156101d757600080fd5b506100d560043561067e565b3480156101ef57600080fd5b5061012a610688565b34801561020457600080fd5b506100d5600160a060020a0360043516602435610697565b34801561022857600080fd5b506100d5600160a060020a0360043516610aa8565b610245610b45565b60038054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b60035474010000000000000000000000000000000000000000900460ff1681565b60008054600160a060020a03163314806102db575060035474010000000000000000000000000000000000000000900460ff16155b1515610331576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b61035a7f436f6e7472616374526567697374727900000000000000000000000000000000610ba9565b600254909150600160a060020a038083169116148015906103835750600160a060020a03811615155b15156103d9576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b604080517fbb34534c0000000000000000000000000000000000000000000000000000000081527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b15801561045d57600080fd5b505af1158015610471573d6000803e3d6000fd5b505050506040513d602081101561048757600080fd5b5051600160a060020a031614156104e8576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a0380841673ffffffffffffffffffffffffffffffffffffffff19928316179092559091169216919091179055565b600354600160a060020a031681565b600154600160a060020a03163314610596576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600254600160a060020a031681565b600054600160a060020a031681565b6106333361ffff8316610697565b50565b61063e610b45565b6003546002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03909216919091179055565b600454600160a060020a031681565b6106333382610697565b600154600160a060020a031681565b600080600080600086945084600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156106e057600080fd5b505af11580156106f4573d6000803e3d6000fd5b505050506040513d602081101561070a57600080fd5b5051935061071785610c41565b61072085610cd0565b925061072c8584611052565b61073685846113df565b61074085846114d2565b84600160a060020a031663fc0c546a6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561077e57600080fd5b505af1158015610792573d6000803e3d6000fd5b505050506040513d60208110156107a857600080fd5b505191506107b58561194f565b8015610827575084600160a060020a03166322f3e2d46040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156107fa57600080fd5b505af115801561080e573d6000803e3d6000fd5b505050506040513d602081101561082457600080fd5b50515b905084600160a060020a031682600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561087157600080fd5b505af1158015610885573d6000803e3d6000fd5b505050506040513d602081101561089b57600080fd5b5051600160a060020a031614156109765784600160a060020a03166321e6b53d846040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b15801561090757600080fd5b505af115801561091b573d6000803e3d6000fd5b5050505082600160a060020a031663cdc91c696040518163ffffffff1660e060020a028152600401600060405180830381600087803b15801561095d57600080fd5b505af1158015610971573d6000803e3d6000fd5b505050505b610981858483611a0b565b84600160a060020a031663f2fde38b856040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b1580156109dc57600080fd5b505af11580156109f0573d6000803e3d6000fd5b5050505082600160a060020a031663f2fde38b856040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b158015610a4f57600080fd5b505af1158015610a63573d6000803e3d6000fd5b5050604051600160a060020a038087169350881691507f522b846327aea07106ec4d64ae4b6d6dea47689884dab650fd3a1f2e1d6a270190600090a350505050505050565b610ab0610b45565b600054600160a060020a0382811691161415610b16576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a03163314610ba7576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b600254604080517fbb34534c000000000000000000000000000000000000000000000000000000008152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b158015610c0f57600080fd5b505af1158015610c23573d6000803e3d6000fd5b505050506040513d6020811015610c3957600080fd5b505192915050565b80600160a060020a03166379ba50976040518163ffffffff1660e060020a028152600401600060405180830381600087803b158015610c7f57600080fd5b505af1158015610c93573d6000803e3d6000fd5b5050604051309250600160a060020a03841691507ff764604894fa993d4370a9cb28b81c11deb1aafdb2909156173ae3833dad807590600090a350565b600080600080600080600087600160a060020a031663fc0c546a6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015610d1957600080fd5b505af1158015610d2d573d6000803e3d6000fd5b505050506040513d6020811015610d4357600080fd5b5051604080517f94c275ad0000000000000000000000000000000000000000000000000000000081529051919750600160a060020a038a16916394c275ad916004808201926020929091908290030181600087803b158015610da457600080fd5b505af1158015610db8573d6000803e3d6000fd5b505050506040513d6020811015610dce57600080fd5b5051604080517f71f52bf30000000000000000000000000000000000000000000000000000000081529051919650600160a060020a038a16916371f52bf3916004808201926020929091908290030181600087803b158015610e2f57600080fd5b505af1158015610e43573d6000803e3d6000fd5b505050506040513d6020811015610e5957600080fd5b5051935060009250610e6a8861194f565b15610ee05787600160a060020a0316633e8ff43f6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015610ead57600080fd5b505af1158015610ec1573d6000803e3d6000fd5b505050506040513d6020811015610ed757600080fd5b50519250610ef2565b60018461ffff161115610ef257600192505b610f1b7f436f6e766572746572466163746f727900000000000000000000000000000000610ba9565b600254604080517f15f64b6a00000000000000000000000000000000000000000000000000000000815261ffff87166004820152600160a060020a038a81166024830152928316604482015263ffffffff891660648201529051929450908416916315f64b6a916084808201926020929091908290030181600087803b158015610fa457600080fd5b505af1158015610fb8573d6000803e3d6000fd5b505050506040513d6020811015610fce57600080fd5b5051604080517f79ba50970000000000000000000000000000000000000000000000000000000081529051919250600160a060020a038316916379ba50979160048082019260009290919082900301818387803b15801561102e57600080fd5b505af1158015611042573d6000803e3d6000fd5b50929a9950505050505050505050565b60008060008085600160a060020a03166371f52bf36040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561109657600080fd5b505af11580156110aa573d6000803e3d6000fd5b505050506040513d60208110156110c057600080fd5b50519350600092505b8361ffff168361ffff1610156113d75785600160a060020a03166319b64015846040518263ffffffff1660e060020a028152600401808261ffff168152602001915050602060405180830381600087803b15801561112657600080fd5b505af115801561113a573d6000803e3d6000fd5b505050506040513d602081101561115057600080fd5b5051604080517f0e53aae9000000000000000000000000000000000000000000000000000000008152600160a060020a038084166004830152915192945090881691630e53aae99160248082019260a0929091908290030181600087803b1580156111ba57600080fd5b505af11580156111ce573d6000803e3d6000fd5b505050506040513d60a08110156111e457600080fd5b50602001519050600160a060020a03821673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14156112ad57604080517f6a49d2c400000000000000000000000000000000000000000000000000000000815273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee600482015263ffffffff831660248201529051600160a060020a03871691636a49d2c491604480830192600092919082900301818387803b15801561129057600080fd5b505af11580156112a4573d6000803e3d6000fd5b505050506113cc565b600454600160a060020a038381169116141561134357604080517f6a49d2c400000000000000000000000000000000000000000000000000000000815273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee600482015263ffffffff831660248201529051600160a060020a03871691636a49d2c491604480830192600092919082900301818387803b15801561129057600080fd5b604080517f6a49d2c4000000000000000000000000000000000000000000000000000000008152600160a060020a03848116600483015263ffffffff84166024830152915191871691636a49d2c49160448082019260009290919082900301818387803b1580156113b357600080fd5b505af11580156113c7573d6000803e3d6000fd5b505050505b6001909201916110c9565b505050505050565b600082600160a060020a031663579cd3ca6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561141f57600080fd5b505af1158015611433573d6000803e3d6000fd5b505050506040513d602081101561144957600080fd5b5051604080517fecbca55d00000000000000000000000000000000000000000000000000000000815263ffffffff831660048201529051919250600160a060020a0384169163ecbca55d9160248082019260009290919082900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b50505050505050565b600080600080600086600160a060020a03166371f52bf36040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561151857600080fd5b505af115801561152c573d6000803e3d6000fd5b505050506040513d602081101561154257600080fd5b50519350600092505b8361ffff168361ffff1610156114c95786600160a060020a03166319b64015846040518263ffffffff1660e060020a028152600401808261ffff168152602001915050602060405180830381600087803b1580156115a857600080fd5b505af11580156115bc573d6000803e3d6000fd5b505050506040513d60208110156115d257600080fd5b50519150600160a060020a03821673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14156116735786600160a060020a031663690d8320876040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b15801561165657600080fd5b505af115801561166a573d6000803e3d6000fd5b50505050611944565b600454600160a060020a03838116911614156118235760048054604080517f70a08231000000000000000000000000000000000000000000000000000000008152600160a060020a038b811694820194909452905192909116916370a08231916024808201926020929091908290030181600087803b1580156116f557600080fd5b505af1158015611709573d6000803e3d6000fd5b505050506040513d602081101561171f57600080fd5b505160048054604080517f5e35359e000000000000000000000000000000000000000000000000000000008152600160a060020a03928316938101939093523060248401526044830184905251929750891691635e35359e9160648082019260009290919082900301818387803b15801561179957600080fd5b505af11580156117ad573d6000803e3d6000fd5b505060048054604080517f205c2878000000000000000000000000000000000000000000000000000000008152600160a060020a038c811694820194909452602481018b9052905192909116935063205c2878925060448082019260009290919082900301818387803b15801561165657600080fd5b50604080517f70a08231000000000000000000000000000000000000000000000000000000008152600160a060020a038881166004830152915183928316916370a082319160248083019260209291908290030181600087803b15801561188957600080fd5b505af115801561189d573d6000803e3d6000fd5b505050506040513d60208110156118b357600080fd5b5051604080517f5e35359e000000000000000000000000000000000000000000000000000000008152600160a060020a038481166004830152898116602483015260448201849052915192975090891691635e35359e9160648082019260009290919082900301818387803b15801561192b57600080fd5b505af115801561193f573d6000803e3d6000fd5b505050505b60019092019161154b565b60008061195a611f79565b604080517f69735632384f72486967686572282900000000000000000000000000000000008152815190819003600f0181206004825260248201909252602080820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff00000000000000000000000000000000000000000000000000000000909416939093178352815191929091849188611388fa9250828015611a025750815115155b95945050505050565b6000806000806000806000806000611a228c61194f565b1515611a2d57611f6b565b8b600160a060020a0316633e8ff43f6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611a6b57600080fd5b505af1158015611a7f573d6000803e3d6000fd5b505050506040513d6020811015611a9557600080fd5b50519850600261ffff8a161415611f6b578b600160a060020a03166371f52bf36040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611ae457600080fd5b505af1158015611af8573d6000803e3d6000fd5b505050506040513d6020811015611b0e57600080fd5b50519750600096505b8761ffff168761ffff161015611cc4578b600160a060020a03166319b64015886040518263ffffffff1660e060020a028152600401808261ffff168152602001915050602060405180830381600087803b158015611b7457600080fd5b505af1158015611b88573d6000803e3d6000fd5b505050506040513d6020811015611b9e57600080fd5b5051604080517e5e319c000000000000000000000000000000000000000000000000000000008152600160a060020a0380841660048301529151929850908e1691625e319c916024808201926020929091908290030181600087803b158015611c0657600080fd5b505af1158015611c1a573d6000803e3d6000fd5b505050506040513d6020811015611c3057600080fd5b5051604080517fbf7da6ba000000000000000000000000000000000000000000000000000000008152600160a060020a038981166004830152602482018490529151929750908d169163bf7da6ba9160448082019260009290919082900301818387803b158015611ca057600080fd5b505af1158015611cb4573d6000803e3d6000fd5b505060019098019750611b179050565b891515611cd057611f6b565b8b600160a060020a0316630337e3fb6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611d0e57600080fd5b505af1158015611d22573d6000803e3d6000fd5b505050506040513d6020811015611d3857600080fd5b5051604080517f2630c12f0000000000000000000000000000000000000000000000000000000081529051919550600160a060020a038e1691632630c12f916004808201926020929091908290030181600087803b158015611d9957600080fd5b505af1158015611dad573d6000803e3d6000fd5b505050506040513d6020811015611dc357600080fd5b5051604080517fb9e1715b0000000000000000000000000000000000000000000000000000000081529051919450600160a060020a0385169163b9e1715b916004808201926020929091908290030181600087803b158015611e2457600080fd5b505af1158015611e38573d6000803e3d6000fd5b505050506040513d6020811015611e4e57600080fd5b5051604080517ff997fda70000000000000000000000000000000000000000000000000000000081529051919350600160a060020a0385169163f997fda7916004808201926020929091908290030181600087803b158015611eaf57600080fd5b505af1158015611ec3573d6000803e3d6000fd5b505050506040513d6020811015611ed957600080fd5b5051604080517f119b90cd000000000000000000000000000000000000000000000000000000008152600160a060020a038781166004830152858116602483015280841660448301529151929350908d169163119b90cd9160648082019260009290919082900301818387803b158015611f5257600080fd5b505af1158015611f66573d6000803e3d6000fd5b505050505b505050505050505050505050565b60206040519081016040528060019060208202803883395091929150505600a165627a7a72305820b02b2f2c403894766ce7bf19a8c463cbdb397a2ecaecc6eb344e03a35ca73e170029 \ No newline at end of file diff --git a/solidity/build/ERC20Token.abi b/solidity/build/ERC20Token.abi index 808b2eb..d6e0ca3 100644 --- a/solidity/build/ERC20Token.abi +++ b/solidity/build/ERC20Token.abi @@ -1 +1 @@ -[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_decimals","type":"uint8"},{"name":"_totalSupply","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_spender","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Approval","type":"event"}] \ No newline at end of file +[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_decimals","type":"uint8"},{"name":"_totalSupply","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_spender","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Approval","type":"event"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/ERC20Token.bin b/solidity/build/ERC20Token.bin index ffdd2ac..d21d14a 100644 --- a/solidity/build/ERC20Token.bin +++ b/solidity/build/ERC20Token.bin @@ -1 +1 @@ -608060405234801561001057600080fd5b506040516109d43803806109d4833981016040908152815160208301519183015160608401519184018051909493909301929091906000106100b357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4552525f494e56414c49445f4e414d4500000000000000000000000000000000604482015290519081900360640190fd5b825160001061012357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4552525f494e56414c49445f53594d424f4c0000000000000000000000000000604482015290519081900360640190fd5b835161013690600090602087019061017d565b50825161014a90600190602086019061017d565b506002805460ff191660ff9390931692909217909155600381905533600090815260046020526040902055506102189050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106101be57805160ff19168380011785556101eb565b828001600101855582156101eb579182015b828111156101eb5782518255916020019190600101906101d0565b506101f79291506101fb565b5090565b61021591905b808211156101f75760008155600101610201565b90565b6107ad806102276000396000f3006080604052600436106100985763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461009d578063095ea7b31461012757806318160ddd1461015f57806323b872dd14610186578063313ce567146101b057806370a08231146101db57806395d89b41146101fc578063a9059cbb14610211578063dd62ed3e14610235575b600080fd5b3480156100a957600080fd5b506100b261025c565b6040805160208082528351818301528351919283929083019185019080838360005b838110156100ec5781810151838201526020016100d4565b50505050905090810190601f1680156101195780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561013357600080fd5b5061014b600160a060020a03600435166024356102ea565b604080519115158252519081900360200190f35b34801561016b57600080fd5b506101746103e2565b60408051918252519081900360200190f35b34801561019257600080fd5b5061014b600160a060020a03600435811690602435166044356103e8565b3480156101bc57600080fd5b506101c561050b565b6040805160ff9092168252519081900360200190f35b3480156101e757600080fd5b50610174600160a060020a0360043516610514565b34801561020857600080fd5b506100b2610526565b34801561021d57600080fd5b5061014b600160a060020a0360043516602435610580565b34801561024157600080fd5b50610174600160a060020a036004358116906024351661063d565b6000805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156102e25780601f106102b7576101008083540402835291602001916102e2565b820191906000526020600020905b8154815290600101906020018083116102c557829003601f168201915b505050505081565b6000826102f68161065a565b8215806103245750336000908152600560209081526040808320600160a060020a0388168452909152902054155b151561037a576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b336000818152600560209081526040808320600160a060020a03891680855290835292819020879055805187815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b60035481565b6000836103f48161065a565b836103fe8161065a565b600160a060020a0386166000908152600560209081526040808320338452909152902054610432908563ffffffff6106bd16565b600160a060020a038716600081815260056020908152604080832033845282528083209490945591815260049091522054610473908563ffffffff6106bd16565b600160a060020a0380881660009081526004602052604080822093909355908716815220546104a8908563ffffffff61071d16565b600160a060020a0380871660008181526004602090815260409182902094909455805188815290519193928a16927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a350600195945050505050565b60025460ff1681565b60046020526000908152604090205481565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156102e25780601f106102b7576101008083540402835291602001916102e2565b60008261058c8161065a565b336000908152600460205260409020546105ac908463ffffffff6106bd16565b3360009081526004602052604080822092909255600160a060020a038616815220546105de908463ffffffff61071d16565b600160a060020a0385166000818152600460209081526040918290209390935580518681529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35060019392505050565b600560209081526000928352604080842090915290825290205481565b600160a060020a03811615156106ba576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b600081831015610717576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b60008282018381101561077a576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b93925050505600a165627a7a7230582067c077f12a372e8b610add60998ede072ea66914b8804cdac60202b4d0209b3a0029 \ No newline at end of file +608060405234801561001057600080fd5b506040516109d43803806109d4833981016040908152815160208301519183015160608401519184018051909493909301929091906000106100b357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4552525f494e56414c49445f4e414d4500000000000000000000000000000000604482015290519081900360640190fd5b825160001061012357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4552525f494e56414c49445f53594d424f4c0000000000000000000000000000604482015290519081900360640190fd5b835161013690600090602087019061017d565b50825161014a90600190602086019061017d565b506002805460ff191660ff9390931692909217909155600381905533600090815260046020526040902055506102189050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106101be57805160ff19168380011785556101eb565b828001600101855582156101eb579182015b828111156101eb5782518255916020019190600101906101d0565b506101f79291506101fb565b5090565b61021591905b808211156101f75760008155600101610201565b90565b6107ad806102276000396000f3006080604052600436106100985763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461009d578063095ea7b31461012757806318160ddd1461015f57806323b872dd14610186578063313ce567146101b057806370a08231146101db57806395d89b41146101fc578063a9059cbb14610211578063dd62ed3e14610235575b600080fd5b3480156100a957600080fd5b506100b261025c565b6040805160208082528351818301528351919283929083019185019080838360005b838110156100ec5781810151838201526020016100d4565b50505050905090810190601f1680156101195780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561013357600080fd5b5061014b600160a060020a03600435166024356102ea565b604080519115158252519081900360200190f35b34801561016b57600080fd5b506101746103e2565b60408051918252519081900360200190f35b34801561019257600080fd5b5061014b600160a060020a03600435811690602435166044356103e8565b3480156101bc57600080fd5b506101c561050b565b6040805160ff9092168252519081900360200190f35b3480156101e757600080fd5b50610174600160a060020a0360043516610514565b34801561020857600080fd5b506100b2610526565b34801561021d57600080fd5b5061014b600160a060020a0360043516602435610580565b34801561024157600080fd5b50610174600160a060020a036004358116906024351661063d565b6000805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156102e25780601f106102b7576101008083540402835291602001916102e2565b820191906000526020600020905b8154815290600101906020018083116102c557829003601f168201915b505050505081565b6000826102f68161065a565b8215806103245750336000908152600560209081526040808320600160a060020a0388168452909152902054155b151561037a576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b336000818152600560209081526040808320600160a060020a03891680855290835292819020879055805187815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b60035481565b6000836103f48161065a565b836103fe8161065a565b600160a060020a0386166000908152600560209081526040808320338452909152902054610432908563ffffffff6106bd16565b600160a060020a038716600081815260056020908152604080832033845282528083209490945591815260049091522054610473908563ffffffff6106bd16565b600160a060020a0380881660009081526004602052604080822093909355908716815220546104a8908563ffffffff61071d16565b600160a060020a0380871660008181526004602090815260409182902094909455805188815290519193928a16927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a350600195945050505050565b60025460ff1681565b60046020526000908152604090205481565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156102e25780601f106102b7576101008083540402835291602001916102e2565b60008261058c8161065a565b336000908152600460205260409020546105ac908463ffffffff6106bd16565b3360009081526004602052604080822092909255600160a060020a038616815220546105de908463ffffffff61071d16565b600160a060020a0385166000818152600460209081526040918290209390935580518681529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35060019392505050565b600560209081526000928352604080842090915290825290205481565b600160a060020a03811615156106ba576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b600081831015610717576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b60008282018381101561077a576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b93925050505600a165627a7a72305820e6703a135e141325d13f36832740a8e692ee416fe0065429dfe265fa1a98b97a0029 \ No newline at end of file diff --git a/solidity/build/EtherToken.abi b/solidity/build/EtherToken.abi index 541a55c..09d541b 100644 --- a/solidity/build/EtherToken.abi +++ b/solidity/build/EtherToken.abi @@ -1 +1 @@ -[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTo","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"depositTo","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[],"name":"deposit","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_name","type":"string"},{"name":"_symbol","type":"string"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_amount","type":"uint256"}],"name":"Issuance","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_amount","type":"uint256"}],"name":"Destruction","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_spender","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Approval","type":"event"}] \ No newline at end of file +[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_name","type":"string"},{"name":"_symbol","type":"string"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_amount","type":"uint256"}],"name":"Issuance","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_amount","type":"uint256"}],"name":"Destruction","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_spender","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Approval","type":"event"},{"constant":false,"inputs":[],"name":"deposit","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"depositTo","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTo","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/EtherToken.bin b/solidity/build/EtherToken.bin index 7bcbcaa..70536b6 100644 --- a/solidity/build/EtherToken.bin +++ b/solidity/build/EtherToken.bin @@ -1 +1 @@ -608060405234801561001057600080fd5b50604051610cc1380380610cc183398101604052805160208201519082018051909291909101908290829060129060009081106100ae57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4552525f494e56414c49445f4e414d4500000000000000000000000000000000604482015290519081900360640190fd5b825160001061011e57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4552525f494e56414c49445f53594d424f4c0000000000000000000000000000604482015290519081900360640190fd5b835161013190600090602087019061017a565b50825161014590600190602086019061017a565b506002805460ff191660ff93909316929092179091556003819055336000908152600460205260409020555061021592505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106101bb57805160ff19168380011785556101e8565b828001600101855582156101e8579182015b828111156101e85782518255916020019190600101906101cd565b506101f49291506101f8565b5090565b61021291905b808211156101f457600081556001016101fe565b90565b610a9d806102246000396000f3006080604052600436106100c45763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde0381146100ce578063095ea7b31461015857806318160ddd14610190578063205c2878146101b757806323b872dd146101db5780632e1a7d4d14610205578063313ce5671461021d57806370a082311461024857806395d89b4114610269578063a9059cbb1461027e578063b760faf9146102a2578063d0e30db0146100c4578063dd62ed3e146102b6575b6100cc6102dd565b005b3480156100da57600080fd5b506100e36102e8565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561011d578181015183820152602001610105565b50505050905090810190601f16801561014a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561016457600080fd5b5061017c600160a060020a0360043516602435610376565b604080519115158252519081900360200190f35b34801561019c57600080fd5b506101a561046e565b60408051918252519081900360200190f35b3480156101c357600080fd5b506100cc600160a060020a0360043516602435610474565b3480156101e757600080fd5b5061017c600160a060020a0360043581169060243516604435610558565b34801561021157600080fd5b506100cc600435610582565b34801561022957600080fd5b5061023261058f565b6040805160ff9092168252519081900360200190f35b34801561025457600080fd5b506101a5600160a060020a0360043516610598565b34801561027557600080fd5b506100e36105aa565b34801561028a57600080fd5b5061017c600160a060020a0360043516602435610604565b6100cc600160a060020a036004351661062c565b3480156102c257600080fd5b506101a5600160a060020a03600435811690602435166106f3565b6102e63361062c565b565b6000805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561036e5780601f106103435761010080835404028352916020019161036e565b820191906000526020600020905b81548152906001019060200180831161035157829003601f168201915b505050505081565b60008261038281610710565b8215806103b05750336000908152600560209081526040808320600160a060020a0388168452909152902054155b1515610406576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b336000818152600560209081526040808320600160a060020a03891680855290835292819020879055805187815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b60035481565b8161047e81610770565b3360009081526004602052604090205461049e908363ffffffff6107d116565b336000908152600460205260409020556003546104c1908363ffffffff6107d116565b600355604051600160a060020a0384169083156108fc029084906000818181858888f193505050501580156104fa573d6000803e3d6000fd5b5060408051838152905130913391600080516020610a528339815191529181900360200190a36040805183815290517f9a1b418bc061a5d80270261562e6986a35d995f8051145f277be16103abd34539181900360200190a1505050565b60008261056481610770565b61056f858585610831565b151561057757fe5b506001949350505050565b61058c3382610474565b50565b60025460ff1681565b60046020526000908152604090205481565b60018054604080516020600284861615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561036e5780601f106103435761010080835404028352916020019161036e565b60008261061081610770565b61061a8484610942565b151561062257fe5b5060019392505050565b8061063681610770565b600160a060020a03821660009081526004602052604090205461065f903463ffffffff6109ed16565b600160a060020a03831660009081526004602052604090205560035461068b903463ffffffff6109ed16565b6003556040805134815290517f9386c90217c323f58030f9dadcbc938f807a940f4ff41cd4cead9562f5da7dc39181900360200190a1604080513481529051600160a060020a038416913091600080516020610a528339815191529181900360200190a35050565b600560209081526000928352604080842090915290825290205481565b600160a060020a038116151561058c576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b600160a060020a03811630141561058c576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b60008183101561082b576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b60008361083d81610710565b8361084781610710565b600160a060020a038616600090815260056020908152604080832033845290915290205461087b908563ffffffff6107d116565b600160a060020a0387166000818152600560209081526040808320338452825280832094909455918152600490915220546108bc908563ffffffff6107d116565b600160a060020a0380881660009081526004602052604080822093909355908716815220546108f1908563ffffffff6109ed16565b600160a060020a0380871660008181526004602090815260409182902094909455805188815290519193928a1692600080516020610a5283398151915292918290030190a350600195945050505050565b60008261094e81610710565b3360009081526004602052604090205461096e908463ffffffff6107d116565b3360009081526004602052604080822092909255600160a060020a038616815220546109a0908463ffffffff6109ed16565b600160a060020a038516600081815260046020908152604091829020939093558051868152905191923392600080516020610a528339815191529281900390910190a35060019392505050565b600082820183811015610a4a576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b93925050505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820ec1add47a780305fada0ebb24dabf4bc51cda4b3faf1760542778b4cff1c6e510029 \ No newline at end of file +608060405234801561001057600080fd5b50604051610cc1380380610cc183398101604052805160208201519082018051909291909101908290829060129060009081106100ae57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4552525f494e56414c49445f4e414d4500000000000000000000000000000000604482015290519081900360640190fd5b825160001061011e57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4552525f494e56414c49445f53594d424f4c0000000000000000000000000000604482015290519081900360640190fd5b835161013190600090602087019061017a565b50825161014590600190602086019061017a565b506002805460ff191660ff93909316929092179091556003819055336000908152600460205260409020555061021592505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106101bb57805160ff19168380011785556101e8565b828001600101855582156101e8579182015b828111156101e85782518255916020019190600101906101cd565b506101f49291506101f8565b5090565b61021291905b808211156101f457600081556001016101fe565b90565b610a9d806102246000396000f3006080604052600436106100c45763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde0381146100ce578063095ea7b31461015857806318160ddd14610190578063205c2878146101b757806323b872dd146101db5780632e1a7d4d14610205578063313ce5671461021d57806370a082311461024857806395d89b4114610269578063a9059cbb1461027e578063b760faf9146102a2578063d0e30db0146100c4578063dd62ed3e146102b6575b6100cc6102dd565b005b3480156100da57600080fd5b506100e36102e8565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561011d578181015183820152602001610105565b50505050905090810190601f16801561014a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561016457600080fd5b5061017c600160a060020a0360043516602435610376565b604080519115158252519081900360200190f35b34801561019c57600080fd5b506101a561046e565b60408051918252519081900360200190f35b3480156101c357600080fd5b506100cc600160a060020a0360043516602435610474565b3480156101e757600080fd5b5061017c600160a060020a0360043581169060243516604435610558565b34801561021157600080fd5b506100cc600435610582565b34801561022957600080fd5b5061023261058f565b6040805160ff9092168252519081900360200190f35b34801561025457600080fd5b506101a5600160a060020a0360043516610598565b34801561027557600080fd5b506100e36105aa565b34801561028a57600080fd5b5061017c600160a060020a0360043516602435610604565b6100cc600160a060020a036004351661062c565b3480156102c257600080fd5b506101a5600160a060020a03600435811690602435166106f3565b6102e63361062c565b565b6000805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561036e5780601f106103435761010080835404028352916020019161036e565b820191906000526020600020905b81548152906001019060200180831161035157829003601f168201915b505050505081565b60008261038281610710565b8215806103b05750336000908152600560209081526040808320600160a060020a0388168452909152902054155b1515610406576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b336000818152600560209081526040808320600160a060020a03891680855290835292819020879055805187815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b60035481565b8161047e81610770565b3360009081526004602052604090205461049e908363ffffffff6107d116565b336000908152600460205260409020556003546104c1908363ffffffff6107d116565b600355604051600160a060020a0384169083156108fc029084906000818181858888f193505050501580156104fa573d6000803e3d6000fd5b5060408051838152905130913391600080516020610a528339815191529181900360200190a36040805183815290517f9a1b418bc061a5d80270261562e6986a35d995f8051145f277be16103abd34539181900360200190a1505050565b60008261056481610770565b61056f858585610831565b151561057757fe5b506001949350505050565b61058c3382610474565b50565b60025460ff1681565b60046020526000908152604090205481565b60018054604080516020600284861615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561036e5780601f106103435761010080835404028352916020019161036e565b60008261061081610770565b61061a8484610942565b151561062257fe5b5060019392505050565b8061063681610770565b600160a060020a03821660009081526004602052604090205461065f903463ffffffff6109ed16565b600160a060020a03831660009081526004602052604090205560035461068b903463ffffffff6109ed16565b6003556040805134815290517f9386c90217c323f58030f9dadcbc938f807a940f4ff41cd4cead9562f5da7dc39181900360200190a1604080513481529051600160a060020a038416913091600080516020610a528339815191529181900360200190a35050565b600560209081526000928352604080842090915290825290205481565b600160a060020a038116151561058c576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b600160a060020a03811630141561058c576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b60008183101561082b576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b60008361083d81610710565b8361084781610710565b600160a060020a038616600090815260056020908152604080832033845290915290205461087b908563ffffffff6107d116565b600160a060020a0387166000818152600560209081526040808320338452825280832094909455918152600490915220546108bc908563ffffffff6107d116565b600160a060020a0380881660009081526004602052604080822093909355908716815220546108f1908563ffffffff6109ed16565b600160a060020a0380871660008181526004602090815260409182902094909455805188815290519193928a1692600080516020610a5283398151915292918290030190a350600195945050505050565b60008261094e81610710565b3360009081526004602052604090205461096e908463ffffffff6107d116565b3360009081526004602052604080822092909255600160a060020a038616815220546109a0908463ffffffff6109ed16565b600160a060020a038516600081815260046020908152604091829020939093558051868152905191923392600080516020610a528339815191529281900390910190a35060019392505050565b600082820183811015610a4a576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b93925050505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820905d82a9a5b8e0e0fb83e1a51796d9e39bba8200c16da5150eeb97048efebf340029 \ No newline at end of file diff --git a/solidity/build/FeeSharingProxyMockup.abi b/solidity/build/FeeSharingProxyMockup.abi new file mode 100644 index 0000000..03589ae --- /dev/null +++ b/solidity/build/FeeSharingProxyMockup.abi @@ -0,0 +1 @@ +[{"anonymous":false,"inputs":[{"indexed":true,"name":"sender","type":"address"},{"indexed":true,"name":"token","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"TokensTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_amount","type":"uint96"}],"name":"transferTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_converter","type":"address"},{"name":"_receiver","type":"address"}],"name":"withdrawFees","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/FeeSharingProxyMockup.bin b/solidity/build/FeeSharingProxyMockup.bin new file mode 100644 index 0000000..a6dd899 --- /dev/null +++ b/solidity/build/FeeSharingProxyMockup.bin @@ -0,0 +1 @@ +608060405234801561001057600080fd5b50610207806100206000396000f30060806040526004361061004b5763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663abe979e18114610050578063f255527814610091575b600080fd5b34801561005c57600080fd5b5061008f73ffffffffffffffffffffffffffffffffffffffff600435166bffffffffffffffffffffffff602435166100c5565b005b34801561009d57600080fd5b5061008f73ffffffffffffffffffffffffffffffffffffffff60043581169060243516610124565b604080516bffffffffffffffffffffffff83168152905173ffffffffffffffffffffffffffffffffffffffff84169133917f1b89874203ff7f0bba87c969ada3f32fda22ed38a6706d35199d21280c7811b19181900360200190a35050565b8173ffffffffffffffffffffffffffffffffffffffff1663164e68de826040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b1580156101bf57600080fd5b505af11580156101d3573d6000803e3d6000fd5b5050505050505600a165627a7a723058205df6ec99f2d1f624e26b66083a3e3ae808ae37e491b7844ba4e6bc06709f18440029 \ No newline at end of file diff --git a/solidity/build/IContractRegistry.abi b/solidity/build/IContractRegistry.abi index 3277281..028c71e 100644 --- a/solidity/build/IContractRegistry.abi +++ b/solidity/build/IContractRegistry.abi @@ -1 +1 @@ -[{"constant":true,"inputs":[{"name":"_contractName","type":"bytes32"}],"name":"getAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_contractName","type":"bytes32"}],"name":"addressOf","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file +[{"constant":true,"inputs":[{"name":"_contractName","type":"bytes32"}],"name":"addressOf","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_contractName","type":"bytes32"}],"name":"getAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/solidity/build/IConverter.abi b/solidity/build/IConverter.abi index 46ea0fd..53b500a 100644 --- a/solidity/build/IConverter.abi +++ b/solidity/build/IConverter.abi @@ -1 +1 @@ -[{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"connectors","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint32"},{"name":"","type":"bool"},{"name":"","type":"bool"},{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"connectorTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"isActive","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"converterType","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_whitelist","type":"address"}],"name":"setConversionWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"conversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"withdrawETH","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_ratio","type":"uint32"}],"name":"addReserve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"connectorTokenCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxConversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"targetAmountAndFee","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"conversionWhitelist","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"anchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_connectorToken","type":"address"}],"name":"getConnectorBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_trader","type":"address"},{"name":"_beneficiary","type":"address"}],"name":"convert","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_conversionFee","type":"uint32"}],"name":"setConversionFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"payable":true,"stateMutability":"payable","type":"fallback"}] \ No newline at end of file +[{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"constant":true,"inputs":[],"name":"converterType","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"anchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isActive","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"targetAmountAndFee","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_trader","type":"address"},{"name":"_beneficiary","type":"address"}],"name":"convert","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"conversionWhitelist","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"conversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxConversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"acceptAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_conversionFee","type":"uint32"}],"name":"setConversionFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_whitelist","type":"address"}],"name":"setConversionWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"withdrawETH","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_ratio","type":"uint32"}],"name":"addReserve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"acceptTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"connectors","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint32"},{"name":"","type":"bool"},{"name":"","type":"bool"},{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_connectorToken","type":"address"}],"name":"getConnectorBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"connectorTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"connectorTokenCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/solidity/build/IConverterFactory.abi b/solidity/build/IConverterFactory.abi index b810b21..8435fc2 100644 --- a/solidity/build/IConverterFactory.abi +++ b/solidity/build/IConverterFactory.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_type","type":"uint16"},{"name":"_anchor","type":"address"},{"name":"_registry","type":"address"},{"name":"_maxConversionFee","type":"uint32"}],"name":"createConverter","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_type","type":"uint16"},{"name":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_decimals","type":"uint8"}],"name":"createAnchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_type","type":"uint16"}],"name":"customFactories","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file +[{"constant":false,"inputs":[{"name":"_type","type":"uint16"},{"name":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_decimals","type":"uint8"}],"name":"createAnchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_type","type":"uint16"},{"name":"_anchor","type":"address"},{"name":"_registry","type":"address"},{"name":"_maxConversionFee","type":"uint32"}],"name":"createConverter","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_type","type":"uint16"}],"name":"customFactories","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/solidity/build/IConverterMockup.abi b/solidity/build/IConverterMockup.abi new file mode 100644 index 0000000..6faa567 --- /dev/null +++ b/solidity/build/IConverterMockup.abi @@ -0,0 +1 @@ +[{"constant":false,"inputs":[{"name":"receiver","type":"address"}],"name":"withdrawFees","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/IConverterMockup.bin b/solidity/build/IConverterMockup.bin new file mode 100644 index 0000000..e69de29 diff --git a/solidity/build/IConverterRegistry.abi b/solidity/build/IConverterRegistry.abi index 2cd87a8..7a02141 100644 --- a/solidity/build/IConverterRegistry.abi +++ b/solidity/build/IConverterRegistry.abi @@ -1 +1 @@ -[{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"}],"name":"getConvertibleTokenAnchors","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isConvertibleToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"}],"name":"getConvertibleTokenAnchorCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getAnchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getConvertibleTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_index","type":"uint256"}],"name":"getConvertibleTokenAnchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getConvertibleTokenCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getLiquidityPoolCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getLiquidityPools","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getConvertibleToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getLiquidityPool","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_value","type":"address"}],"name":"isConvertibleTokenAnchor","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getAnchorCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isAnchor","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isLiquidityPool","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getAnchors","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file +[{"constant":true,"inputs":[],"name":"getAnchorCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getAnchors","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getAnchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isAnchor","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getLiquidityPoolCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getLiquidityPools","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getLiquidityPool","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isLiquidityPool","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getConvertibleTokenCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getConvertibleTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getConvertibleToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isConvertibleToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"}],"name":"getConvertibleTokenAnchorCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"}],"name":"getConvertibleTokenAnchors","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_index","type":"uint256"}],"name":"getConvertibleTokenAnchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_value","type":"address"}],"name":"isConvertibleTokenAnchor","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/solidity/build/IConverterRegistryData.abi b/solidity/build/IConverterRegistryData.abi index 6f2cf8c..cb8bbf5 100644 --- a/solidity/build/IConverterRegistryData.abi +++ b/solidity/build/IConverterRegistryData.abi @@ -1 +1 @@ -[{"constant":true,"inputs":[],"name":"getSmartTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_smartToken","type":"address"}],"name":"addConvertibleToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isConvertibleToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isSmartToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getConvertibleTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getConvertibleTokenCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_value","type":"address"}],"name":"isConvertibleTokenSmartToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getLiquidityPoolCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getLiquidityPools","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getConvertibleToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_smartToken","type":"address"}],"name":"addSmartToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getSmartToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"}],"name":"getConvertibleTokenSmartTokenCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getLiquidityPool","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_liquidityPool","type":"address"}],"name":"removeLiquidityPool","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_smartToken","type":"address"}],"name":"removeSmartToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_index","type":"uint256"}],"name":"getConvertibleTokenSmartToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getSmartTokenCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isLiquidityPool","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_liquidityPool","type":"address"}],"name":"addLiquidityPool","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"}],"name":"getConvertibleTokenSmartTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_smartToken","type":"address"}],"name":"removeConvertibleToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file +[{"constant":false,"inputs":[{"name":"_smartToken","type":"address"}],"name":"addSmartToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_smartToken","type":"address"}],"name":"removeSmartToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_liquidityPool","type":"address"}],"name":"addLiquidityPool","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_liquidityPool","type":"address"}],"name":"removeLiquidityPool","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_smartToken","type":"address"}],"name":"addConvertibleToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_smartToken","type":"address"}],"name":"removeConvertibleToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getSmartTokenCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getSmartTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getSmartToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isSmartToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getLiquidityPoolCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getLiquidityPools","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getLiquidityPool","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isLiquidityPool","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getConvertibleTokenCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getConvertibleTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"getConvertibleToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_value","type":"address"}],"name":"isConvertibleToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"}],"name":"getConvertibleTokenSmartTokenCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"}],"name":"getConvertibleTokenSmartTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_index","type":"uint256"}],"name":"getConvertibleTokenSmartToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_convertibleToken","type":"address"},{"name":"_value","type":"address"}],"name":"isConvertibleTokenSmartToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/solidity/build/IERC20Token.abi b/solidity/build/IERC20Token.abi index 7c7cf08..36995f4 100644 --- a/solidity/build/IERC20Token.abi +++ b/solidity/build/IERC20Token.abi @@ -1 +1 @@ -[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file +[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/IEtherToken.abi b/solidity/build/IEtherToken.abi index 8c1f4b9..a453b0d 100644 --- a/solidity/build/IEtherToken.abi +++ b/solidity/build/IEtherToken.abi @@ -1 +1 @@ -[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTo","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"depositTo","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[],"name":"deposit","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file +[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"deposit","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"depositTo","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTo","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/IFeeSharingProxy.abi b/solidity/build/IFeeSharingProxy.abi new file mode 100644 index 0000000..2f50de6 --- /dev/null +++ b/solidity/build/IFeeSharingProxy.abi @@ -0,0 +1 @@ +[{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_amount","type":"uint96"}],"name":"transferTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/IFeeSharingProxy.bin b/solidity/build/IFeeSharingProxy.bin new file mode 100644 index 0000000..e69de29 diff --git a/solidity/build/IInternalSovrynSwapNetwork.abi b/solidity/build/IInternalSovrynSwapNetwork.abi new file mode 100644 index 0000000..0c8fc4d --- /dev/null +++ b/solidity/build/IInternalSovrynSwapNetwork.abi @@ -0,0 +1 @@ +[{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"}],"name":"conversionPath","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"}],"name":"rateByPath","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"}],"name":"convert","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/IInternalSovrynSwapNetwork.bin b/solidity/build/IInternalSovrynSwapNetwork.bin new file mode 100644 index 0000000..e69de29 diff --git a/solidity/build/ILiquidityPoolV1Converter.abi b/solidity/build/ILiquidityPoolV1Converter.abi new file mode 100644 index 0000000..756aa08 --- /dev/null +++ b/solidity/build/ILiquidityPoolV1Converter.abi @@ -0,0 +1 @@ +[{"anonymous":false,"inputs":[{"indexed":true,"name":"_connectorToken","type":"address"},{"indexed":false,"name":"_tokenSupply","type":"uint256"},{"indexed":false,"name":"_connectorBalance","type":"uint256"},{"indexed":false,"name":"_connectorWeight","type":"uint32"}],"name":"PriceDataUpdate","type":"event"},{"constant":true,"inputs":[],"name":"converterType","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[],"name":"acceptAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"targetAmountAndFee","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_reserveTokens","type":"address[]"},{"name":"_reserveAmounts","type":"uint256[]"},{"name":"_minReturn","type":"uint256"}],"name":"addLiquidity","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"},{"name":"_reserveTokens","type":"address[]"},{"name":"_reserveMinReturnAmounts","type":"uint256[]"}],"name":"removeLiquidity","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"}],"name":"fund","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"}],"name":"liquidate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_x","type":"uint256"}],"name":"decimalLength","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[{"name":"_n","type":"uint256"},{"name":"_d","type":"uint256"}],"name":"roundDiv","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[{"name":"_values","type":"uint256[]"}],"name":"geometricMean","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reserveRatio","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"reserves","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint32"},{"name":"","type":"bool"},{"name":"","type":"bool"},{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"index","type":"uint256"}],"name":"reserveTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/solidity/build/ILiquidityPoolV1Converter.bin b/solidity/build/ILiquidityPoolV1Converter.bin new file mode 100644 index 0000000..e69de29 diff --git a/solidity/build/ILiquidityPoolV2Converter.abi b/solidity/build/ILiquidityPoolV2Converter.abi index 70ae1e9..9677f81 100644 --- a/solidity/build/ILiquidityPoolV2Converter.abi +++ b/solidity/build/ILiquidityPoolV2Converter.abi @@ -1 +1 @@ -[{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveStakedBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"primaryReserveToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_primaryReserveToken","type":"address"},{"name":"_primaryReserveOracle","type":"address"},{"name":"_secondaryReserveOracle","type":"address"}],"name":"activate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"priceOracle","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_reserveToken","type":"address"},{"name":"_balance","type":"uint256"}],"name":"setReserveStakedBalance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file +[{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveStakedBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_reserveToken","type":"address"},{"name":"_balance","type":"uint256"}],"name":"setReserveStakedBalance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"primaryReserveToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"priceOracle","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_primaryReserveToken","type":"address"},{"name":"_primaryReserveOracle","type":"address"},{"name":"_secondaryReserveOracle","type":"address"}],"name":"activate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/IOracle.abi b/solidity/build/IOracle.abi new file mode 100644 index 0000000..51497d4 --- /dev/null +++ b/solidity/build/IOracle.abi @@ -0,0 +1 @@ +[{"constant":false,"inputs":[{"name":"_k","type":"uint256"}],"name":"setK","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"price0","type":"uint256"},{"name":"price1","type":"uint256"}],"name":"write","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"read","outputs":[{"name":"ema0","type":"uint256"},{"name":"ema1","type":"uint256"},{"name":"blockNumber","type":"uint64"},{"name":"timestamp","type":"uint64"},{"name":"lastCumulativePrice0","type":"uint256"},{"name":"lastCumulativePrice1","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"latestAnswer","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/solidity/build/IOracle.bin b/solidity/build/IOracle.bin new file mode 100644 index 0000000..e69de29 diff --git a/solidity/build/IOwned.abi b/solidity/build/IOwned.abi index 8c5adc9..ba20e97 100644 --- a/solidity/build/IOwned.abi +++ b/solidity/build/IOwned.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file +[{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/IPoolTokensContainer.abi b/solidity/build/IPoolTokensContainer.abi index 1b1093c..2077888 100644 --- a/solidity/build/IPoolTokensContainer.abi +++ b/solidity/build/IPoolTokensContainer.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"poolTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"createToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_from","type":"address"},{"name":"_amount","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file +[{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"poolTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"createToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_from","type":"address"},{"name":"_amount","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/IPriceOracle.abi b/solidity/build/IPriceOracle.abi index 9e180e1..8af7dcb 100644 --- a/solidity/build/IPriceOracle.abi +++ b/solidity/build/IPriceOracle.abi @@ -1 +1 @@ -[{"constant":true,"inputs":[{"name":"_tokenA","type":"address"},{"name":"_tokenB","type":"address"}],"name":"latestRate","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_tokenA","type":"address"},{"name":"_tokenB","type":"address"}],"name":"latestRateAndUpdateTime","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokenAOracle","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"lastUpdateTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokenBOracle","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file +[{"constant":true,"inputs":[{"name":"_tokenA","type":"address"},{"name":"_tokenB","type":"address"}],"name":"latestRate","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"lastUpdateTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_tokenA","type":"address"},{"name":"_tokenB","type":"address"}],"name":"latestRateAndUpdateTime","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokenAOracle","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokenBOracle","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/solidity/build/ISmartToken.abi b/solidity/build/ISmartToken.abi index f707b74..86c77b2 100644 --- a/solidity/build/ISmartToken.abi +++ b/solidity/build/ISmartToken.abi @@ -1 +1 @@ -[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_disable","type":"bool"}],"name":"disableTransfers","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"issue","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_amount","type":"uint256"}],"name":"destroy","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file +[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_disable","type":"bool"}],"name":"disableTransfers","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"issue","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_amount","type":"uint256"}],"name":"destroy","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/ISovrynSwapFormula.abi b/solidity/build/ISovrynSwapFormula.abi index 116b6b3..df6e806 100644 --- a/solidity/build/ISovrynSwapFormula.abi +++ b/solidity/build/ISovrynSwapFormula.abi @@ -1 +1 @@ -[{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveRatio","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"fundSupplyAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"saleTargetAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveRatio","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"liquidateReserveAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceReserveBalance","type":"uint256"},{"name":"_sourceReserveWeight","type":"uint32"},{"name":"_targetReserveBalance","type":"uint256"},{"name":"_targetReserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"crossReserveTargetAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_primaryReserveStakedBalance","type":"uint256"},{"name":"_primaryReserveBalance","type":"uint256"},{"name":"_secondaryReserveBalance","type":"uint256"},{"name":"_reserveRateNumerator","type":"uint256"},{"name":"_reserveRateDenominator","type":"uint256"}],"name":"balancedWeights","outputs":[{"name":"","type":"uint32"},{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveRatio","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"fundCost","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"purchaseTargetAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file +[{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"purchaseTargetAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"saleTargetAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceReserveBalance","type":"uint256"},{"name":"_sourceReserveWeight","type":"uint32"},{"name":"_targetReserveBalance","type":"uint256"},{"name":"_targetReserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"crossReserveTargetAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveRatio","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"fundCost","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveRatio","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"fundSupplyAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveRatio","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"liquidateReserveAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_primaryReserveStakedBalance","type":"uint256"},{"name":"_primaryReserveBalance","type":"uint256"},{"name":"_secondaryReserveBalance","type":"uint256"},{"name":"_reserveRateNumerator","type":"uint256"},{"name":"_reserveRateDenominator","type":"uint256"}],"name":"balancedWeights","outputs":[{"name":"","type":"uint32"},{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/solidity/build/ISovrynSwapNetwork.abi b/solidity/build/ISovrynSwapNetwork.abi index e770258..0631a92 100644 --- a/solidity/build/ISovrynSwapNetwork.abi +++ b/solidity/build/ISovrynSwapNetwork.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_for","type":"address"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"claimAndConvertFor2","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"convert2","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_for","type":"address"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"convertFor2","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_for","type":"address"}],"name":"claimAndConvertFor","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"}],"name":"claimAndConvert","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_for","type":"address"}],"name":"convertFor","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"claimAndConvert2","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"}],"name":"convert","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"}] \ No newline at end of file +[{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"convert2","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"claimAndConvert2","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_for","type":"address"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"convertFor2","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_for","type":"address"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"claimAndConvertFor2","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"}],"name":"convert","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"}],"name":"claimAndConvert","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_for","type":"address"}],"name":"convertFor","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_for","type":"address"}],"name":"claimAndConvertFor","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/ISovrynSwapX.abi b/solidity/build/ISovrynSwapX.abi index e441ac6..a47af70 100644 --- a/solidity/build/ISovrynSwapX.abi +++ b/solidity/build/ISovrynSwapX.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_toBlockchain","type":"bytes32"},{"name":"_to","type":"bytes32"},{"name":"_amount","type":"uint256"},{"name":"_id","type":"uint256"}],"name":"xTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_xTransferId","type":"uint256"},{"name":"_for","type":"address"}],"name":"getXTransferAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file +[{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_toBlockchain","type":"bytes32"},{"name":"_to","type":"bytes32"},{"name":"_amount","type":"uint256"},{"name":"_id","type":"uint256"}],"name":"xTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_xTransferId","type":"uint256"},{"name":"_for","type":"address"}],"name":"getXTransferAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/solidity/build/ISwapSettings.abi b/solidity/build/ISwapSettings.abi new file mode 100644 index 0000000..b7c51ac --- /dev/null +++ b/solidity/build/ISwapSettings.abi @@ -0,0 +1 @@ +[{"constant":true,"inputs":[],"name":"protocolFee","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"wrbtcAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"sovTokenAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"feesController","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/solidity/build/ISwapSettings.bin b/solidity/build/ISwapSettings.bin new file mode 100644 index 0000000..e69de29 diff --git a/solidity/build/ITokenHolder.abi b/solidity/build/ITokenHolder.abi index fd08741..da2c6b5 100644 --- a/solidity/build/ITokenHolder.abi +++ b/solidity/build/ITokenHolder.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file +[{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/ITypedConverterFactory.abi b/solidity/build/ITypedConverterFactory.abi index 3fb5e77..4d53cfd 100644 --- a/solidity/build/ITypedConverterFactory.abi +++ b/solidity/build/ITypedConverterFactory.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_anchor","type":"address"},{"name":"_registry","type":"address"},{"name":"_maxConversionFee","type":"uint32"}],"name":"createConverter","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"converterType","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"pure","type":"function"}] \ No newline at end of file +[{"constant":true,"inputs":[],"name":"converterType","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_anchor","type":"address"},{"name":"_registry","type":"address"},{"name":"_maxConversionFee","type":"uint32"}],"name":"createConverter","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/LiquidTokenConverter.abi b/solidity/build/LiquidTokenConverter.abi index ba9a3a7..800643f 100644 --- a/solidity/build/LiquidTokenConverter.abi +++ b/solidity/build/LiquidTokenConverter.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"reserveRatio","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"connectors","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint32"},{"name":"","type":"bool"},{"name":"","type":"bool"},{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"hasETHReserve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"connectorTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveWeight","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"getReturn","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"isActive","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawFromAnchor","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"converterType","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_whitelist","type":"address"}],"name":"setConversionWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"version","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"conversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"withdrawETH","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_weight","type":"uint32"}],"name":"addReserve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"connectorTokenCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxConversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reserveTokenCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"targetAmountAndFee","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"conversionsEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"conversionWhitelist","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"reserveTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isV28OrHigher","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"anchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"upgrade","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"reserves","outputs":[{"name":"balance","type":"uint256"},{"name":"weight","type":"uint32"},{"name":"deprecated1","type":"bool"},{"name":"deprecated2","type":"bool"},{"name":"isSet","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_connectorToken","type":"address"}],"name":"getConnectorBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_trader","type":"address"},{"name":"_beneficiary","type":"address"}],"name":"convert","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_conversionFee","type":"uint32"}],"name":"setConversionFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_token","type":"address"},{"name":"_registry","type":"address"},{"name":"_maxConversionFee","type":"uint32"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_type","type":"uint16"},{"indexed":true,"name":"_anchor","type":"address"},{"indexed":true,"name":"_activated","type":"bool"}],"name":"Activation","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_fromToken","type":"address"},{"indexed":true,"name":"_toToken","type":"address"},{"indexed":true,"name":"_trader","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_return","type":"uint256"},{"indexed":false,"name":"_conversionFee","type":"int256"}],"name":"Conversion","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_token1","type":"address"},{"indexed":true,"name":"_token2","type":"address"},{"indexed":false,"name":"_rateN","type":"uint256"},{"indexed":false,"name":"_rateD","type":"uint256"}],"name":"TokenRateUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_prevFee","type":"uint32"},{"indexed":false,"name":"_newFee","type":"uint32"}],"name":"ConversionFeeUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}] \ No newline at end of file +[{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"protocolFeeTokensHeld","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reserveRatio","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"connectors","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint32"},{"name":"","type":"bool"},{"name":"","type":"bool"},{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"hasETHReserve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"receiver","type":"address"}],"name":"withdrawFees","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"connectorTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveWeight","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"getReturn","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"isActive","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_token","type":"address"}],"name":"getProtocolFeeTokensHeld","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawFromAnchor","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_whitelist","type":"address"}],"name":"setConversionWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"version","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"conversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"withdrawETH","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"connectorTokenCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxConversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reserveTokenCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"conversionsEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"conversionWhitelist","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"reserveTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isV28OrHigher","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"anchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"upgrade","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"reserves","outputs":[{"name":"balance","type":"uint256"},{"name":"weight","type":"uint32"},{"name":"deprecated1","type":"bool"},{"name":"deprecated2","type":"bool"},{"name":"isSet","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_connectorToken","type":"address"}],"name":"getConnectorBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_trader","type":"address"},{"name":"_beneficiary","type":"address"}],"name":"convert","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_conversionFee","type":"uint32"}],"name":"setConversionFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_token","type":"address"},{"name":"_registry","type":"address"},{"name":"_maxConversionFee","type":"uint32"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_type","type":"uint16"},{"indexed":true,"name":"_anchor","type":"address"},{"indexed":true,"name":"_activated","type":"bool"}],"name":"Activation","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_fromToken","type":"address"},{"indexed":true,"name":"_toToken","type":"address"},{"indexed":true,"name":"_trader","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_return","type":"uint256"},{"indexed":false,"name":"_conversionFee","type":"int256"},{"indexed":false,"name":"_protocolFee","type":"int256"}],"name":"Conversion","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_token1","type":"address"},{"indexed":true,"name":"_token2","type":"address"},{"indexed":false,"name":"_rateN","type":"uint256"},{"indexed":false,"name":"_rateD","type":"uint256"}],"name":"TokenRateUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_prevFee","type":"uint32"},{"indexed":false,"name":"_newFee","type":"uint32"}],"name":"ConversionFeeUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"sender","type":"address"},{"indexed":true,"name":"receiver","type":"address"},{"indexed":false,"name":"token","type":"address"},{"indexed":false,"name":"protocolFeeAmount","type":"uint256"},{"indexed":false,"name":"wRBTCConverted","type":"uint256"}],"name":"WithdrawFees","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":true,"inputs":[],"name":"converterType","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[],"name":"acceptAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_weight","type":"uint32"}],"name":"addReserve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"targetAmountAndFee","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/solidity/build/LiquidTokenConverter.bin b/solidity/build/LiquidTokenConverter.bin index 8ffa29c..5fa8931 100644 --- a/solidity/build/LiquidTokenConverter.bin +++ b/solidity/build/LiquidTokenConverter.bin @@ -1 +1 @@ -60806040526001600455600980546001606060020a03191690553480156200002657600080fd5b50604051606080620033e283398101604090815281516020830151919092015160008054600160a060020a03191633179055828282818062000071816401000000006200011b810204565b5060028054600160a060020a03909216600160a060020a031992831681179091556003805490921617905582620000b1816401000000006200011b810204565b81620000c68164010000000062000196810204565b505060058054600160a060020a03909416600160a060020a031990941693909317909255506009805463ffffffff9092166401000000000267ffffffff0000000019909216919091179055506200020f915050565b600160a060020a03811615156200019357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b620f424063ffffffff821611156200019357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b6131c3806200021f6000396000f30060806040526004361061020b5763ffffffff60e060020a600035041663024c7ec781146102af5780630c7d5cd8146102c95780630e53aae9146102f757806312c2aca41461034c57806319b64015146103755780631cfab290146103a95780631e1401f8146103ca57806321e6b53d1461040d57806322f3e2d41461042e5780632fe8a6ad1461044357806338a5e01614610458578063395900d41461046d5780633e8ff43f1461049757806349d10b64146104c35780634af80f0e146104d857806354fd4d50146104f9578063579cd3ca1461050e5780635e35359e1461052357806361cd756e1461054d57806367b6d57c14610562578063690d8320146105835780636a49d2c4146105a457806371f52bf3146105ce57806379ba5097146105e35780637b103999146105f85780638da5cb5b1461060d57806394c275ad146106225780639b99a8e214610637578063af94b8d81461064c578063b4a176d314610676578063bf7545581461068b578063c45d3d92146106a0578063cdc91c69146106b5578063d031370b146106ca578063d260529c146106e2578063d3fb73b4146106f7578063d4ee1d901461070c578063d55ec69714610721578063d66bd52414610736578063d895951214610757578063dc8de3791461078a578063e8dc12ff146107ab578063ecbca55d146107d5578063f2fde38b146107f3578063fc0c546a14610814575b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee60005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1615156102ad576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f5245534552564500000000000000000000000000604482015290519081900360640190fd5b005b3480156102bb57600080fd5b506102ad6004351515610829565b3480156102d557600080fd5b506102de610871565b6040805163ffffffff9092168252519081900360200190f35b34801561030357600080fd5b50610318600160a060020a036004351661087d565b6040805195865263ffffffff9094166020860152911515848401521515606084015215156080830152519081900360a00190f35b34801561035857600080fd5b50610361610918565b604080519115158252519081900360200190f35b34801561038157600080fd5b5061038d600435610967565b60408051600160a060020a039092168252519081900360200190f35b3480156103b557600080fd5b506102de600160a060020a0360043516610993565b3480156103d657600080fd5b506103f4600160a060020a03600435811690602435166044356109c5565b6040805192835260208301919091528051918290030190f35b34801561041957600080fd5b506102ad600160a060020a03600435166109e0565b34801561043a57600080fd5b506103616109f4565b34801561044f57600080fd5b50610361610a8e565b34801561046457600080fd5b506102ad610aaf565b34801561047957600080fd5b506102ad600160a060020a0360043581169060243516604435610ac1565b3480156104a357600080fd5b506104ac610b5c565b6040805161ffff9092168252519081900360200190f35b3480156104cf57600080fd5b506102ad610b61565b3480156104e457600080fd5b506102ad600160a060020a0360043516610dce565b34801561050557600080fd5b506104ac610e10565b34801561051a57600080fd5b506102de610e15565b34801561052f57600080fd5b506102ad600160a060020a0360043581169060243516604435610e2d565b34801561055957600080fd5b5061038d610f41565b34801561056e57600080fd5b506102ad600160a060020a0360043516610f50565b34801561058f57600080fd5b506102ad600160a060020a0360043516610ff3565b3480156105b057600080fd5b506102ad600160a060020a036004351663ffffffff60243516611104565b3480156105da57600080fd5b506104ac611173565b3480156105ef57600080fd5b506102ad611182565b34801561060457600080fd5b5061038d611243565b34801561061957600080fd5b5061038d611252565b34801561062e57600080fd5b506102de611261565b34801561064357600080fd5b506104ac611275565b34801561065857600080fd5b506103f4600160a060020a036004358116906024351660443561127b565b34801561068257600080fd5b506102ad611379565b34801561069757600080fd5b506103616113b2565b3480156106ac57600080fd5b5061038d6113b7565b3480156106c157600080fd5b506102ad6113c6565b3480156106d657600080fd5b5061038d60043561141f565b3480156106ee57600080fd5b50610361611447565b34801561070357600080fd5b5061038d61144c565b34801561071857600080fd5b5061038d61145b565b34801561072d57600080fd5b506102ad61146a565b34801561074257600080fd5b50610318600160a060020a036004351661155f565b34801561076357600080fd5b50610778600160a060020a03600435166115a5565b60408051918252519081900360200190f35b34801561079657600080fd5b50610778600160a060020a03600435166115b6565b610778600160a060020a0360043581169060243581169060443590606435811690608435166115df565b3480156107e157600080fd5b506102ad63ffffffff60043516611832565b3480156107ff57600080fd5b506102ad600160a060020a0360043516611927565b34801561082057600080fd5b5061038d6119c4565b6108316119d3565b60038054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b60095463ffffffff1681565b600080600080600061088d61310a565b50505050600160a060020a03929092166000908152600860209081526040808320815160a081018352815480825260019092015463ffffffff811694820185905260ff64010000000082048116151594830194909452650100000000008104841615156060830152660100000000000090049092161515608090920182905295919450919250829190565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee60005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1690565b600060078281548110151561097857fe5b600091825260209091200154600160a060020a031692915050565b60008161099f81611a23565b5050600160a060020a031660009081526008602052604090206001015463ffffffff1690565b6000806109d385858561127b565b915091505b935093915050565b6109e86119d3565b6109f181610f50565b50565b600030600160a060020a0316600560009054906101000a9004600160a060020a0316600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015610a5357600080fd5b505af1158015610a67573d6000803e3d6000fd5b505050506040513d6020811015610a7d57600080fd5b5051600160a060020a031614905090565b60035474010000000000000000000000000000000000000000900460ff1681565b610ab76119d3565b610abf6113c6565b565b610ac96119d3565b600554604080517f5e35359e000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015285811660248301526044820185905291519190921691635e35359e91606480830192600092919082900301818387803b158015610b3f57600080fd5b505af1158015610b53573d6000803e3d6000fd5b50505050505050565b600090565b60008054600160a060020a0316331480610b96575060035474010000000000000000000000000000000000000000900460ff16155b1515610bda576040805160e560020a62461bcd0281526020600482015260116024820152600080516020613178833981519152604482015290519081900360640190fd5b610c037f436f6e7472616374526567697374727900000000000000000000000000000000611aa2565b600254909150600160a060020a03808316911614801590610c2c5750600160a060020a03811615155b1515610c82576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b604080517fbb34534c0000000000000000000000000000000000000000000000000000000081527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b158015610d0657600080fd5b505af1158015610d1a573d6000803e3d6000fd5b505050506040513d6020811015610d3057600080fd5b5051600160a060020a03161415610d91576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a0380841673ffffffffffffffffffffffffffffffffffffffff19928316179092559091169216919091179055565b610dd66119d3565b80610de081611b3a565b506006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b602081565b60095468010000000000000000900463ffffffff1681565b6000610e37611b9b565b6002600455610e446119d3565b610e5b600080516020613158833981519152611aa2565b600160a060020a0385166000908152600860205260409020600101549091506601000000000000900460ff161580610e985750610e966109f4565b155b80610eb05750600054600160a060020a038281169116145b1515610ef4576040805160e560020a62461bcd0281526020600482015260116024820152600080516020613178833981519152604482015290519081900360640190fd5b610eff848484611bf5565b600160a060020a0384166000908152600860205260409020600101546601000000000000900460ff1615610f3657610f3684611c26565b505060016004555050565b600354600160a060020a031681565b610f586119d3565b600080516020613158833981519152610f7081611d20565b600554604080517ff2fde38b000000000000000000000000000000000000000000000000000000008152600160a060020a0385811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b158015610fd757600080fd5b505af1158015610feb573d6000803e3d6000fd5b505050505050565b6000610ffd611b9b565b600260045561100a6119d3565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee61102881611a23565b61103f600080516020613158833981519152611aa2565b91506110496109f4565b15806110625750600054600160a060020a038381169116145b15156110a6576040805160e560020a62461bcd0281526020600482015260116024820152600080516020613178833981519152604482015290519081900360640190fd5b604051600160a060020a03841690303180156108fc02916000818181858888f193505050501580156110dc573d6000803e3d6000fd5b506110fa73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee611c26565b5050600160045550565b61110c611275565b61ffff1615611165576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f434f554e5400000000000000604482015290519081900360640190fd5b61116f8282611d76565b5050565b600061117d611275565b905090565b600154600160a060020a031633146111d2576040805160e560020a62461bcd0281526020600482015260116024820152600080516020613178833981519152604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600254600160a060020a031681565b600054600160a060020a031681565b600954640100000000900463ffffffff1681565b60075490565b6005546000908190600160a060020a0385811691161480156112c25750600160a060020a0385166000908152600860205260409020600101546601000000000000900460ff165b156112d9576112d083611fc7565b915091506109d8565b600554600160a060020a03868116911614801561131b5750600160a060020a0384166000908152600860205260409020600101546601000000000000900460ff165b15611329576112d0836121d6565b6040805160e560020a62461bcd02815260206004820152601160248201527f4552525f494e56414c49445f544f4b454e000000000000000000000000000000604482015290519081900360640190fd5b6113816119d3565b6003546002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03909216919091179055565b600181565b600654600160a060020a031681565b6113ce6119d3565b6113d66122e2565b600554600190600160a060020a03166113ed610b5c565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a4565b600780548290811061142d57fe5b600091825260209091200154600160a060020a0316905081565b600190565b600554600160a060020a031681565b600154600160a060020a031681565b60006114746119d3565b61148b600080516020613158833981519152611aa2565b600554909150600090600160a060020a03166114a5610b5c565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a46114de81611927565b604080517f90f58c96000000000000000000000000000000000000000000000000000000008152602060048201529051600160a060020a038316916390f58c9691602480830192600092919082900301818387803b15801561153f57600080fd5b505af1158015611553573d6000803e3d6000fd5b505050506109f1611182565b6008602052600090815260409020805460019091015463ffffffff81169060ff640100000000820481169165010000000000810482169166010000000000009091041685565b60006115b0826115b6565b92915050565b6000816115c281611a23565b5050600160a060020a031660009081526008602052604090205490565b60006115e9611b9b565b60026004557f536f7672796e537761704e6574776f726b00000000000000000000000000000061161881611d20565b600160a060020a03878116908716141561167c576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f53414d455f534f555243455f54415247455400000000000000000000604482015290519081900360640190fd5b600654600160a060020a031615806117bf5750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03878116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b1580156116f757600080fd5b505af115801561170b573d6000803e3d6000fd5b505050506040513d602081101561172157600080fd5b505180156117bf5750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b15801561179257600080fd5b505af11580156117a6573d6000803e3d6000fd5b505050506040513d60208110156117bc57600080fd5b50515b1515611815576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f4e4f545f57484954454c495354454400000000000000000000000000604482015290519081900360640190fd5b61182287878787876123c0565b6001600455979650505050505050565b61183a6119d3565b60095463ffffffff640100000000909104811690821611156118a6576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b6009546040805163ffffffff6801000000000000000090930483168152918316602083015280517f81cd2ffb37dd237c0e4e2a3de5265fcf9deb43d3e7801e80db9f1ccfba7ee6009281900390910190a16009805463ffffffff90921668010000000000000000026bffffffff000000000000000019909216919091179055565b61192f6119d3565b600054600160a060020a0382811691161415611995576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600554600160a060020a031690565b600054600160a060020a03163314610abf576040805160e560020a62461bcd0281526020600482015260116024820152600080516020613178833981519152604482015290519081900360640190fd5b600160a060020a0381166000908152600860205260409020600101546601000000000000900460ff1615156109f1576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f5245534552564500000000000000000000000000604482015290519081900360640190fd5b600254604080517fbb34534c000000000000000000000000000000000000000000000000000000008152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b158015611b0857600080fd5b505af1158015611b1c573d6000803e3d6000fd5b505050506040513d6020811015611b3257600080fd5b505192915050565b600160a060020a0381163014156109f1576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b600454600114610abf576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5245454e5452414e4359000000000000000000000000000000000000604482015290519081900360640190fd5b611bfd6119d3565b82611c078161259e565b82611c118161259e565b83611c1b81611b3a565b610feb8686866125fe565b80611c3081611a23565b600160a060020a03821673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611c7657600160a060020a03821660009081526008602052604090203031905561116f565b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051600160a060020a038416916370a082319160248083019260209291908290030181600087803b158015611cd757600080fd5b505af1158015611ceb573d6000803e3d6000fd5b505050506040513d6020811015611d0157600080fd5b5051600160a060020a0383166000908152600860205260409020555050565b611d2981611aa2565b600160a060020a031633146109f1576040805160e560020a62461bcd0281526020600482015260116024820152600080516020613178833981519152604482015290519081900360640190fd5b6000611d806119d3565b611d886126b8565b82611d928161259e565b83611d9c81611b3a565b83611da681612715565b600554600160a060020a03878116911614801590611dea5750600160a060020a0386166000908152600860205260409020600101546601000000000000900460ff16155b1515611e40576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f5245534552564500000000000000000000000000604482015290519081900360640190fd5b60095463ffffffff908116620f42400381169086161115611eab576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b61ffff611eb6611275565b61ffff1610611f0f576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f434f554e5400000000000000604482015290519081900360640190fd5b505050600160a060020a0390921660008181526008602052604081208181556001908101805466ff0000000000001963ffffffff80881663ffffffff1993841617919091166601000000000000179092556007805493840181559093527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688909101805473ffffffffffffffffffffffffffffffffffffffff191690931790925560098054808416909401909216921691909117905550565b600080600080600080611fd861278a565b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561202b57600080fd5b505af115801561203f573d6000803e3d6000fd5b505050506040513d602081101561205557600080fd5b505193508315156120b157600160a060020a0383166000908152600860205260409020600101546120a69063ffffffff9081169061209a908a90620f4240906127e816565b9063ffffffff61286c16565b9550600094506121cd565b6007805460009081106120c057fe5b600091825260209091200154600160a060020a031692506121007f536f7672796e53776170466f726d756c61000000000000000000000000000000611aa2565b600160a060020a031663f3250fe285612118866115b6565b600160a060020a038716600090815260086020908152604080832060010154815163ffffffff88811660e060020a02825260048201979097526024810195909552949094166044840152606483018d90529251608480840194939192918390030190829087803b15801561218b57600080fd5b505af115801561219f573d6000803e3d6000fd5b505050506040513d60208110156121b557600080fd5b505191506121c2826128da565b905080820381955095505b50505050915091565b6000806000806000806121e761278a565b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561223a57600080fd5b505af115801561224e573d6000803e3d6000fd5b505050506040513d602081101561226457600080fd5b50516007805491955090600090811061227957fe5b600091825260209091200154600160a060020a03169250838714156122a1576120a6836115b6565b6122ca7f536f7672796e53776170466f726d756c61000000000000000000000000000000611aa2565b600160a060020a03166376cf0b5685612118866115b6565b6122ea6119d3565b60006122f4611275565b61ffff161161234d576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f434f554e5400000000000000604482015290519081900360640190fd5b600560009054906101000a9004600160a060020a0316600160a060020a03166379ba50976040518163ffffffff1660e060020a028152600401600060405180830381600087803b1580156123a057600080fd5b505af11580156123b4573d6000803e3d6000fd5b50505050610abf61290a565b6005546000908190819081908190600160a060020a038a8116911614801561240d5750600160a060020a038a166000908152600860205260409020600101546601000000000000900460ff165b156124275789925061242088888861294c565b935061247c565b600554600160a060020a038b811691161480156124695750600160a060020a0389166000908152600860205260409020600101546601000000000000900460ff165b1561132957889250612420888888612c12565b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156124cf57600080fd5b505af11580156124e3573d6000803e3d6000fd5b505050506040513d60208110156124f957600080fd5b5051600160a060020a0380851660008181526008602052604090206001015460055493955063ffffffff16935091167f77f29993cf2c084e726f7e802da0719d6a0ade3e204badc7a3ffd57ecb768c24612565620f4240612559886115b6565b9063ffffffff6127e816565b6125788663ffffffff808816906127e816565b6040805192835260208301919091528051918290030190a3509198975050505050505050565b600160a060020a03811615156109f1576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff00000000000000000000000000000000000000000000000000000000909316929092179091526126b3908490612f97565b505050565b6126c06109f4565b15610abf576040805160e560020a62461bcd02815260206004820152600a60248201527f4552525f41435449564500000000000000000000000000000000000000000000604482015290519081900360640190fd5b60008163ffffffff161180156127345750620f424063ffffffff821611155b15156109f1576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b6127926109f4565b1515610abf576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f494e4143544956450000000000000000000000000000000000000000604482015290519081900360640190fd5b6000808315156127fb5760009150612865565b5082820282848281151561280b57fe5b0414612861576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b8091505b5092915050565b6000808083116128c6576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f4449564944455f42595f5a45524f0000000000000000000000000000604482015290519081900360640190fd5b82848115156128d157fe5b04949350505050565b6009546000906115b090620f42409061209a90859068010000000000000000900463ffffffff908116906127e816565b60075460005b8181101561116f5761294460078281548110151561292a57fe5b600091825260209091200154600160a060020a0316611c26565b600101612910565b60008060008061295b87611fc7565b90935091508215156129b7576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b6007805460009081106129c657fe5b600091825260209091200154600160a060020a0316905073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee811415612a5557348714612a50576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b612b5d565b34158015612b07575086612b04612a6b836115b6565b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051600160a060020a038616916370a082319160248083019260209291908290030181600087803b158015612acc57600080fd5b505af1158015612ae0573d6000803e3d6000fd5b505050506040513d6020811015612af657600080fd5b50519063ffffffff61302516565b10155b1515612b5d576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b612b6681611c26565b600554604080517f867904b4000000000000000000000000000000000000000000000000000000008152600160a060020a038881166004830152602482018790529151919092169163867904b491604480830192600092919082900301818387803b158015612bd457600080fd5b505af1158015612be8573d6000803e3d6000fd5b5050600554612c079250839150600160a060020a0316888a8787613085565b509095945050505050565b600554604080517f70a08231000000000000000000000000000000000000000000000000000000008152306004820152905160009283928392839283928392600160a060020a03909216916370a082319160248082019260209290919082900301818787803b158015612c8457600080fd5b505af1158015612c98573d6000803e3d6000fd5b505050506040513d6020811015612cae57600080fd5b5051891115612d07576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b612d10896121d6565b9095509350841515612d6c576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b600780546000908110612d7b57fe5b6000918252602080832090910154600554604080517f18160ddd0000000000000000000000000000000000000000000000000000000081529051600160a060020a03938416985091909216936318160ddd93600480850194919392918390030190829087803b158015612ded57600080fd5b505af1158015612e01573d6000803e3d6000fd5b505050506040513d6020811015612e1757600080fd5b50519150612e24836115b6565b905080851080612e3d57508085148015612e3d57508189145b1515612e4557fe5b600554604080517fa24835d1000000000000000000000000000000000000000000000000000000008152306004820152602481018c90529051600160a060020a039092169163a24835d19160448082019260009290919082900301818387803b158015612eb157600080fd5b505af1158015612ec5573d6000803e3d6000fd5b505050600160a060020a038416600090815260086020526040902054612ef291508663ffffffff61302516565b600160a060020a03841660008181526008602052604090209190915573eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415612f6557604051600160a060020a0388169086156108fc029087906000818181858888f19350505050158015612f5f573d6000803e3d6000fd5b50612f70565b612f708388876125fe565b600554612f8a90600160a060020a0316848a8c8989613085565b5092979650505050505050565b612f9f613138565b602060405190810160405280600181525090506020818351602085016000875af1801515612fcc57600080fd5b50805115156126b3576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b60008183101561307f576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b7f800000000000000000000000000000000000000000000000000000000000000081106130ae57fe5b60408051848152602081018490528082018390529051600160a060020a038087169288821692918a16917f276856b36cbc45526a0ba64f44611557a2a8b68662c5388e9fe6d72e86e1c8cb9181900360600190a4505050505050565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b60206040519081016040528060019060208202803883395091929150505600536f7672796e53776170436f6e766572746572557067726164657200000000004552525f4143434553535f44454e494544000000000000000000000000000000a165627a7a7230582037b33979907eb8fc12ff2610f3b308d7e0bd054db4e75effc1afff1358e899ac0029 \ No newline at end of file +60806040526001600455600980546001606060020a03191690553480156200002657600080fd5b5060405160608062003dc783398101604090815281516020830151919092015160008054600160a060020a03191633179055828282818062000071816401000000006200011b810204565b5060028054600160a060020a03909216600160a060020a031992831681179091556003805490921617905582620000b1816401000000006200011b810204565b81620000c68164010000000062000196810204565b505060058054600160a060020a03909416600160a060020a031990941693909317909255506009805463ffffffff9092166401000000000267ffffffff0000000019909216919091179055506200020f915050565b600160a060020a03811615156200019357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b620f424063ffffffff821611156200019357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b613ba8806200021f6000396000f30060806040526004361061022c5763ffffffff60e060020a600035041663024c7ec781146102d0578063064bda02146102ea5780630c7d5cd81461031d5780630e53aae91461034b57806312c2aca4146103a0578063164e68de146103c957806319b64015146103ea5780631cfab2901461041e5780631e1401f81461043f57806321e6b53d1461048257806322f3e2d4146104a35780632fe8a6ad146104b85780633341e006146104cd57806338a5e016146104ee578063395900d4146105035780633e8ff43f1461052d57806349d10b64146105595780634af80f0e1461056e57806354fd4d501461058f578063579cd3ca146105a45780635e35359e146105b957806361cd756e146105e357806367b6d57c146105f8578063690d8320146106195780636a49d2c41461063a57806371f52bf31461066457806379ba5097146106795780637b1039991461068e5780638da5cb5b146106a357806394c275ad146106b85780639b99a8e2146106cd578063af94b8d8146106e2578063b4a176d31461070c578063bf75455814610721578063c45d3d9214610736578063cdc91c691461074b578063d031370b14610760578063d260529c14610778578063d3fb73b41461078d578063d4ee1d90146107a2578063d55ec697146107b7578063d66bd524146107cc578063d8959512146107ed578063dc8de3791461080e578063e8dc12ff1461082f578063ecbca55d14610859578063f2fde38b14610877578063fc0c546a14610898575b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee60005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1615156102ce576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f5245534552564500000000000000000000000000604482015290519081900360640190fd5b005b3480156102dc57600080fd5b506102ce60043515156108ad565b3480156102f657600080fd5b5061030b600160a060020a03600435166108f5565b60408051918252519081900360200190f35b34801561032957600080fd5b50610332610907565b6040805163ffffffff9092168252519081900360200190f35b34801561035757600080fd5b5061036c600160a060020a0360043516610913565b6040805195865263ffffffff9094166020860152911515848401521515606084015215156080830152519081900360a00190f35b3480156103ac57600080fd5b506103b56109ae565b604080519115158252519081900360200190f35b3480156103d557600080fd5b5061030b600160a060020a03600435166109fd565b3480156103f657600080fd5b50610402600435610ff1565b60408051600160a060020a039092168252519081900360200190f35b34801561042a57600080fd5b50610332600160a060020a036004351661101d565b34801561044b57600080fd5b50610469600160a060020a036004358116906024351660443561104f565b6040805192835260208301919091528051918290030190f35b34801561048e57600080fd5b506102ce600160a060020a036004351661106a565b3480156104af57600080fd5b506103b561107e565b3480156104c457600080fd5b506103b5611118565b3480156104d957600080fd5b5061030b600160a060020a0360043516611139565b3480156104fa57600080fd5b506102ce611154565b34801561050f57600080fd5b506102ce600160a060020a0360043581169060243516604435611166565b34801561053957600080fd5b50610542611201565b6040805161ffff9092168252519081900360200190f35b34801561056557600080fd5b506102ce611206565b34801561057a57600080fd5b506102ce600160a060020a036004351661145d565b34801561059b57600080fd5b5061054261149f565b3480156105b057600080fd5b506103326114a4565b3480156105c557600080fd5b506102ce600160a060020a03600435811690602435166044356114bc565b3480156105ef57600080fd5b506104026115d0565b34801561060457600080fd5b506102ce600160a060020a03600435166115df565b34801561062557600080fd5b506102ce600160a060020a0360043516611682565b34801561064657600080fd5b506102ce600160a060020a036004351663ffffffff60243516611793565b34801561067057600080fd5b50610542611802565b34801561068557600080fd5b506102ce611811565b34801561069a57600080fd5b506104026118d2565b3480156106af57600080fd5b506104026118e1565b3480156106c457600080fd5b506103326118f0565b3480156106d957600080fd5b50610542611904565b3480156106ee57600080fd5b50610469600160a060020a036004358116906024351660443561190a565b34801561071857600080fd5b506102ce611a08565b34801561072d57600080fd5b506103b5611a41565b34801561074257600080fd5b50610402611a46565b34801561075757600080fd5b506102ce611a55565b34801561076c57600080fd5b50610402600435611aae565b34801561078457600080fd5b506103b5611ad6565b34801561079957600080fd5b50610402611adb565b3480156107ae57600080fd5b50610402611aea565b3480156107c357600080fd5b506102ce611af9565b3480156107d857600080fd5b5061036c600160a060020a0360043516611bee565b3480156107f957600080fd5b5061030b600160a060020a0360043516611c34565b34801561081a57600080fd5b5061030b600160a060020a0360043516611c45565b61030b600160a060020a036004358116906024358116906044359060643581169060843516611c6e565b34801561086557600080fd5b506102ce63ffffffff60043516611ec1565b34801561088357600080fd5b506102ce600160a060020a0360043516611fb6565b3480156108a457600080fd5b50610402612053565b6108b5612062565b60038054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b600a6020526000908152604090205481565b60095463ffffffff1681565b6000806000806000610923613aef565b50505050600160a060020a03929092166000908152600860209081526040808320815160a081018352815480825260019092015463ffffffff811694820185905260ff64010000000082048116151594830194909452650100000000008104841615156060830152660100000000000090049092161515608090920182905295919450919250829190565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee60005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1690565b6000806000806000806000806060610a136120b2565b600160a060020a03163314610a72576040805160e560020a62461bcd02815260206004820152600c60248201527f756e617574686f72697a65640000000000000000000000000000000000000000604482015290519081900360640190fd5b610a9b7f536f7672796e537761704e6574776f726b0000000000000000000000000000006121db565b9450600093505b600754841015610fd1576007805485908110610aba57fe5b6000918252602080832090910154600160a060020a0316808352600a909152604082205490995097508711610aee57610fc6565b600160a060020a0388166000908152600a6020526040812055610b0f61225d565b600160a060020a031688600160a060020a03161415610c565787600160a060020a031663095ea7b3610b3f6120b2565b896040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b158015610b9257600080fd5b505af1158015610ba6573d6000803e3d6000fd5b505050506040513d6020811015610bbc57600080fd5b50610bc790506120b2565b600160a060020a031663abe979e1610bdd61225d565b6040805160e060020a63ffffffff8516028152600160a060020a0390921660048301526bffffffffffffffffffffffff8b16602483015251604480830192600092919082900301818387803b158015610c3557600080fd5b505af1158015610c49573d6000803e3d6000fd5b5050505060009250610f74565b610c5e612355565b600160a060020a031688600160a060020a03161415610c7f57869250610f61565b87600160a060020a031663095ea7b3610cb77f536f7672796e537761704e6574776f726b0000000000000000000000000000006121db565b896040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b158015610d0a57600080fd5b505af1158015610d1e573d6000803e3d6000fd5b505050506040513d6020811015610d3457600080fd5b50519150811515610d8f576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f415050524f56414c5f4641494c454400000000000000000000000000604482015290519081900360640190fd5b84600160a060020a031663d734fa1989610da7612355565b6040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182600160a060020a0316600160a060020a0316815260200192505050600060405180830381600087803b158015610e0b57600080fd5b505af1158015610e1f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015610e4857600080fd5b810190808051640100000000811115610e6057600080fd5b82016020810184811115610e7357600080fd5b8151856020820283011164010000000082111715610e9057600080fd5b5050929190505050905084600160a060020a031663f3898a97828960016040518463ffffffff1660e060020a0281526004018080602001848152602001838152602001828103825285818151815260200191508051906020019060200280838360005b83811015610f0b578181015183820152602001610ef3565b50505050905001945050505050602060405180830381600087803b158015610f3257600080fd5b505af1158015610f46573d6000803e3d6000fd5b505050506040513d6020811015610f5c57600080fd5b505192505b610f71868463ffffffff61244d16565b95505b60408051600160a060020a038a81168252602082018a90528183018690529151918c169133917f3953f559f015828db2bd3868682d85a85c6e24c3f05fb4e927797d7c007b3673919081900360600190a35b600190930192610aa2565b610fe3610fdc612355565b8b886124b5565b509398975050505050505050565b600060078281548110151561100257fe5b600091825260209091200154600160a060020a031692915050565b6000816110298161256f565b5050600160a060020a031660009081526008602052604090206001015463ffffffff1690565b60008061105d85858561190a565b915091505b935093915050565b611072612062565b61107b816115df565b50565b600030600160a060020a0316600560009054906101000a9004600160a060020a0316600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156110dd57600080fd5b505af11580156110f1573d6000803e3d6000fd5b505050506040513d602081101561110757600080fd5b5051600160a060020a031614905090565b60035474010000000000000000000000000000000000000000900460ff1681565b600160a060020a03166000908152600a602052604090205490565b61115c612062565b611164611a55565b565b61116e612062565b600554604080517f5e35359e000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015285811660248301526044820185905291519190921691635e35359e91606480830192600092919082900301818387803b1580156111e457600080fd5b505af11580156111f8573d6000803e3d6000fd5b50505050505050565b600090565b60008054600160a060020a031633148061123b575060035474010000000000000000000000000000000000000000900460ff16155b151561127f576040805160e560020a62461bcd0281526020600482015260116024820152600080516020613b5d833981519152604482015290519081900360640190fd5b6112a87f436f6e74726163745265676973747279000000000000000000000000000000006121db565b600254909150600160a060020a038083169116148015906112d15750600160a060020a03811615155b1515611327576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6040805160e260020a632ecd14d30281527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b15801561139557600080fd5b505af11580156113a9573d6000803e3d6000fd5b505050506040513d60208110156113bf57600080fd5b5051600160a060020a03161415611420576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a0380841673ffffffffffffffffffffffffffffffffffffffff19928316179092559091169216919091179055565b611465612062565b8061146f816125ee565b506006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b602081565b60095468010000000000000000900463ffffffff1681565b60006114c661264f565b60026004556114d3612062565b6114ea600080516020613b3d8339815191526121db565b600160a060020a0385166000908152600860205260409020600101549091506601000000000000900460ff161580611527575061152561107e565b155b8061153f5750600054600160a060020a038281169116145b1515611583576040805160e560020a62461bcd0281526020600482015260116024820152600080516020613b5d833981519152604482015290519081900360640190fd5b61158e8484846126a9565b600160a060020a0384166000908152600860205260409020600101546601000000000000900460ff16156115c5576115c5846126da565b505060016004555050565b600354600160a060020a031681565b6115e7612062565b600080516020613b3d8339815191526115ff816127f6565b600554604080517ff2fde38b000000000000000000000000000000000000000000000000000000008152600160a060020a0385811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b15801561166657600080fd5b505af115801561167a573d6000803e3d6000fd5b505050505050565b600061168c61264f565b6002600455611699612062565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6116b78161256f565b6116ce600080516020613b3d8339815191526121db565b91506116d861107e565b15806116f15750600054600160a060020a038381169116145b1515611735576040805160e560020a62461bcd0281526020600482015260116024820152600080516020613b5d833981519152604482015290519081900360640190fd5b604051600160a060020a03841690303180156108fc02916000818181858888f1935050505015801561176b573d6000803e3d6000fd5b5061178973eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6126da565b5050600160045550565b61179b611904565b61ffff16156117f4576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f434f554e5400000000000000604482015290519081900360640190fd5b6117fe828261284c565b5050565b600061180c611904565b905090565b600154600160a060020a03163314611861576040805160e560020a62461bcd0281526020600482015260116024820152600080516020613b5d833981519152604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600254600160a060020a031681565b600054600160a060020a031681565b600954640100000000900463ffffffff1681565b60075490565b6005546000908190600160a060020a0385811691161480156119515750600160a060020a0385166000908152600860205260409020600101546601000000000000900460ff165b156119685761195f83612a9d565b91509150611062565b600554600160a060020a0386811691161480156119aa5750600160a060020a0384166000908152600860205260409020600101546601000000000000900460ff165b156119b85761195f83612cac565b6040805160e560020a62461bcd02815260206004820152601160248201527f4552525f494e56414c49445f544f4b454e000000000000000000000000000000604482015290519081900360640190fd5b611a10612062565b6003546002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03909216919091179055565b600181565b600654600160a060020a031681565b611a5d612062565b611a65612db8565b600554600190600160a060020a0316611a7c611201565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a4565b6007805482908110611abc57fe5b600091825260209091200154600160a060020a0316905081565b600190565b600554600160a060020a031681565b600154600160a060020a031681565b6000611b03612062565b611b1a600080516020613b3d8339815191526121db565b600554909150600090600160a060020a0316611b34611201565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a4611b6d81611fb6565b604080517f90f58c96000000000000000000000000000000000000000000000000000000008152602060048201529051600160a060020a038316916390f58c9691602480830192600092919082900301818387803b158015611bce57600080fd5b505af1158015611be2573d6000803e3d6000fd5b5050505061107b611811565b6008602052600090815260409020805460019091015463ffffffff81169060ff640100000000820481169165010000000000810482169166010000000000009091041685565b6000611c3f82611c45565b92915050565b600081611c518161256f565b5050600160a060020a031660009081526008602052604090205490565b6000611c7861264f565b60026004557f536f7672796e537761704e6574776f726b000000000000000000000000000000611ca7816127f6565b600160a060020a038781169087161415611d0b576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f53414d455f534f555243455f54415247455400000000000000000000604482015290519081900360640190fd5b600654600160a060020a03161580611e4e5750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03878116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b158015611d8657600080fd5b505af1158015611d9a573d6000803e3d6000fd5b505050506040513d6020811015611db057600080fd5b50518015611e4e5750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b158015611e2157600080fd5b505af1158015611e35573d6000803e3d6000fd5b505050506040513d6020811015611e4b57600080fd5b50515b1515611ea4576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f4e4f545f57484954454c495354454400000000000000000000000000604482015290519081900360640190fd5b611eb18787878787612e96565b6001600455979650505050505050565b611ec9612062565b60095463ffffffff64010000000090910481169082161115611f35576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b6009546040805163ffffffff6801000000000000000090930483168152918316602083015280517f81cd2ffb37dd237c0e4e2a3de5265fcf9deb43d3e7801e80db9f1ccfba7ee6009281900390910190a16009805463ffffffff90921668010000000000000000026bffffffff000000000000000019909216919091179055565b611fbe612062565b600054600160a060020a0382811691161415612024576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600554600160a060020a031690565b600054600160a060020a03163314611164576040805160e560020a62461bcd0281526020600482015260116024820152600080516020613b5d833981519152604482015290519081900360640190fd5b6002546040805160e260020a632ecd14d30281527f5377617053657474696e6773000000000000000000000000000000000000000060048201529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561212157600080fd5b505af1158015612135573d6000803e3d6000fd5b505050506040513d602081101561214b57600080fd5b5051604080517fe8f627640000000000000000000000000000000000000000000000000000000081529051600160a060020a039092169163e8f62764916004808201926020929091908290030181600087803b1580156121aa57600080fd5b505af11580156121be573d6000803e3d6000fd5b505050506040513d60208110156121d457600080fd5b5051905090565b6002546040805160e260020a632ecd14d3028152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561222b57600080fd5b505af115801561223f573d6000803e3d6000fd5b505050506040513d602081101561225557600080fd5b505192915050565b6002546040805160e260020a632ecd14d30281527f5377617053657474696e6773000000000000000000000000000000000000000060048201529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b1580156122cc57600080fd5b505af11580156122e0573d6000803e3d6000fd5b505050506040513d60208110156122f657600080fd5b5051604080517fb9cffa3e0000000000000000000000000000000000000000000000000000000081529051600160a060020a039092169163b9cffa3e916004808201926020929091908290030181600087803b1580156121aa57600080fd5b6002546040805160e260020a632ecd14d30281527f5377617053657474696e6773000000000000000000000000000000000000000060048201529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b1580156123c457600080fd5b505af11580156123d8573d6000803e3d6000fd5b505050506040513d60208110156123ee57600080fd5b5051604080517f99a752b50000000000000000000000000000000000000000000000000000000081529051600160a060020a03909216916399a752b5916004808201926020929091908290030181600087803b1580156121aa57600080fd5b6000828201838110156124aa576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b8091505b5092915050565b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009093169290921790915261256a908490613074565b505050565b600160a060020a0381166000908152600860205260409020600101546601000000000000900460ff16151561107b576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f5245534552564500000000000000000000000000604482015290519081900360640190fd5b600160a060020a03811630141561107b576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b600454600114611164576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5245454e5452414e4359000000000000000000000000000000000000604482015290519081900360640190fd5b6126b1612062565b826126bb81613102565b826126c581613102565b836126cf816125ee565b61167a8686866124b5565b806126e48161256f565b600160a060020a03821673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee141561272a57600160a060020a0382166000908152600860205260409020303190556117fe565b600160a060020a0382166000818152600a602090815260408083205481517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015291516127d995919491936370a0823193602480820194929392918390030190829087803b1580156127a157600080fd5b505af11580156127b5573d6000803e3d6000fd5b505050506040513d60208110156127cb57600080fd5b50519063ffffffff61316216565b600160a060020a0383166000908152600860205260409020555050565b6127ff816121db565b600160a060020a0316331461107b576040805160e560020a62461bcd0281526020600482015260116024820152600080516020613b5d833981519152604482015290519081900360640190fd5b6000612856612062565b61285e6131c2565b8261286881613102565b83612872816125ee565b8361287c8161321f565b600554600160a060020a038781169116148015906128c05750600160a060020a0386166000908152600860205260409020600101546601000000000000900460ff16155b1515612916576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f5245534552564500000000000000000000000000604482015290519081900360640190fd5b60095463ffffffff908116620f42400381169086161115612981576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b61ffff61298c611904565b61ffff16106129e5576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f434f554e5400000000000000604482015290519081900360640190fd5b505050600160a060020a0390921660008181526008602052604081208181556001908101805466ff0000000000001963ffffffff80881663ffffffff1993841617919091166601000000000000179092556007805493840181559093527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688909101805473ffffffffffffffffffffffffffffffffffffffff191690931790925560098054808416909401909216921691909117905550565b600080600080600080612aae613294565b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015612b0157600080fd5b505af1158015612b15573d6000803e3d6000fd5b505050506040513d6020811015612b2b57600080fd5b50519350831515612b8757600160a060020a038316600090815260086020526040902060010154612b7c9063ffffffff90811690612b70908a90620f4240906132f216565b9063ffffffff61336b16565b955060009450612ca3565b600780546000908110612b9657fe5b600091825260209091200154600160a060020a03169250612bd67f536f7672796e53776170466f726d756c610000000000000000000000000000006121db565b600160a060020a031663f3250fe285612bee86611c45565b600160a060020a038716600090815260086020908152604080832060010154815163ffffffff88811660e060020a02825260048201979097526024810195909552949094166044840152606483018d90529251608480840194939192918390030190829087803b158015612c6157600080fd5b505af1158015612c75573d6000803e3d6000fd5b505050506040513d6020811015612c8b57600080fd5b50519150612c98826133d9565b905080820381955095505b50505050915091565b600080600080600080612cbd613294565b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015612d1057600080fd5b505af1158015612d24573d6000803e3d6000fd5b505050506040513d6020811015612d3a57600080fd5b505160078054919550906000908110612d4f57fe5b600091825260209091200154600160a060020a0316925083871415612d7757612b7c83611c45565b612da07f536f7672796e53776170466f726d756c610000000000000000000000000000006121db565b600160a060020a03166376cf0b5685612bee86611c45565b612dc0612062565b6000612dca611904565b61ffff1611612e23576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f434f554e5400000000000000604482015290519081900360640190fd5b600560009054906101000a9004600160a060020a0316600160a060020a03166379ba50976040518163ffffffff1660e060020a028152600401600060405180830381600087803b158015612e7657600080fd5b505af1158015612e8a573d6000803e3d6000fd5b50505050611164613409565b6005546000908190819081908190600160a060020a038a81169116148015612ee35750600160a060020a038a166000908152600860205260409020600101546601000000000000900460ff165b15612efd57899250612ef688888861344b565b9350612f52565b600554600160a060020a038b81169116148015612f3f5750600160a060020a0389166000908152600860205260409020600101546601000000000000900460ff165b156119b857889250612ef68888886136db565b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015612fa557600080fd5b505af1158015612fb9573d6000803e3d6000fd5b505050506040513d6020811015612fcf57600080fd5b5051600160a060020a0380851660008181526008602052604090206001015460055493955063ffffffff16935091167f77f29993cf2c084e726f7e802da0719d6a0ade3e204badc7a3ffd57ecb768c2461303b620f424061302f88611c45565b9063ffffffff6132f216565b61304e8663ffffffff808816906132f216565b6040805192835260208301919091528051918290030190a3509198975050505050505050565b61307c613b1d565b602060405190810160405280600181525090506020818351602085016000875af18015156130a957600080fd5b508051151561256a576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b600160a060020a038116151561107b576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b6000818310156131bc576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b6131ca61107e565b15611164576040805160e560020a62461bcd02815260206004820152600a60248201527f4552525f41435449564500000000000000000000000000000000000000000000604482015290519081900360640190fd5b60008163ffffffff1611801561323e5750620f424063ffffffff821611155b151561107b576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b61329c61107e565b1515611164576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f494e4143544956450000000000000000000000000000000000000000604482015290519081900360640190fd5b60008083151561330557600091506124ae565b5082820282848281151561331557fe5b04146124aa576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b6000808083116133c5576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f4449564944455f42595f5a45524f0000000000000000000000000000604482015290519081900360640190fd5b82848115156133d057fe5b04949350505050565b600954600090611c3f90620f424090612b7090859068010000000000000000900463ffffffff908116906132f216565b60075460005b818110156117fe5761344360078281548110151561342957fe5b600091825260209091200154600160a060020a03166126da565b60010161340f565b60008060008061345a87612a9d565b90935091508215156134b6576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b6007805460009081106134c557fe5b600091825260209091200154600160a060020a0316905073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8114156135545734871461354f576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b613624565b341580156135ce5750866135cb61356a83611c45565b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051600160a060020a038616916370a082319160248083019260209291908290030181600087803b1580156127a157600080fd5b10155b1515613624576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b61362d816126da565b600554604080517f867904b4000000000000000000000000000000000000000000000000000000008152600160a060020a038881166004830152602482018790529151919092169163867904b491604480830192600092919082900301818387803b15801561369b57600080fd5b505af11580156136af573d6000803e3d6000fd5b50506005546136d09250839150600160a060020a0316888a87876000613a62565b509095945050505050565b600554604080517f70a08231000000000000000000000000000000000000000000000000000000008152306004820152905160009283928392839283928392600160a060020a03909216916370a082319160248082019260209290919082900301818787803b15801561374d57600080fd5b505af1158015613761573d6000803e3d6000fd5b505050506040513d602081101561377757600080fd5b50518911156137d0576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b6137d989612cac565b9095509350841515613835576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b60078054600090811061384457fe5b6000918252602080832090910154600554604080517f18160ddd0000000000000000000000000000000000000000000000000000000081529051600160a060020a03938416985091909216936318160ddd93600480850194919392918390030190829087803b1580156138b657600080fd5b505af11580156138ca573d6000803e3d6000fd5b505050506040513d60208110156138e057600080fd5b505191506138ed83611c45565b9050808510806139065750808514801561390657508189145b151561390e57fe5b600554604080517fa24835d1000000000000000000000000000000000000000000000000000000008152306004820152602481018c90529051600160a060020a039092169163a24835d19160448082019260009290919082900301818387803b15801561397a57600080fd5b505af115801561398e573d6000803e3d6000fd5b505050600160a060020a0384166000908152600860205260409020546139bb91508663ffffffff61316216565b600160a060020a03841660008181526008602052604090209190915573eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415613a2e57604051600160a060020a0388169086156108fc029087906000818181858888f19350505050158015613a28573d6000803e3d6000fd5b50613a39565b613a398388876124b5565b600554613a5590600160a060020a0316848a8c89896000613a62565b5092979650505050505050565b7f80000000000000000000000000000000000000000000000000000000000000008210613a8b57fe5b6040805185815260208101859052808201849052606081018390529051600160a060020a038088169289821692918b16917f82886ccc747026f86399e87d5f3874c5d198ec2498833553651f63a13f5dbd0c9181900360800190a450505050505050565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b60206040519081016040528060019060208202803883395091929150505600536f7672796e53776170436f6e766572746572557067726164657200000000004552525f4143434553535f44454e494544000000000000000000000000000000a165627a7a723058201c72ec2570d553e4921908a0e19afdee99dfbd756c6dac4619c33dbb500fe8c70029 \ No newline at end of file diff --git a/solidity/build/LiquidTokenConverterFactory.abi b/solidity/build/LiquidTokenConverterFactory.abi index 3fb5e77..4d53cfd 100644 --- a/solidity/build/LiquidTokenConverterFactory.abi +++ b/solidity/build/LiquidTokenConverterFactory.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_anchor","type":"address"},{"name":"_registry","type":"address"},{"name":"_maxConversionFee","type":"uint32"}],"name":"createConverter","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"converterType","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"pure","type":"function"}] \ No newline at end of file +[{"constant":true,"inputs":[],"name":"converterType","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_anchor","type":"address"},{"name":"_registry","type":"address"},{"name":"_maxConversionFee","type":"uint32"}],"name":"createConverter","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/LiquidTokenConverterFactory.bin b/solidity/build/LiquidTokenConverterFactory.bin index 8f95611..932c8b6 100644 --- a/solidity/build/LiquidTokenConverterFactory.bin +++ b/solidity/build/LiquidTokenConverterFactory.bin @@ -1 +1 @@ -608060405234801561001057600080fd5b506135f8806100206000396000f30060806040526004361061004b5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416631141395881146100505780633e8ff43f146100b6575b600080fd5b34801561005c57600080fd5b5061008d73ffffffffffffffffffffffffffffffffffffffff6004358116906024351663ffffffff604435166100e2565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b3480156100c257600080fd5b506100cb6101d5565b6040805161ffff9092168252519081900360200190f35b6000808484846100f06101da565b73ffffffffffffffffffffffffffffffffffffffff938416815291909216602082015263ffffffff9091166040808301919091525190819003606001906000f080158015610142573d6000803e3d6000fd5b50604080517ff2fde38b000000000000000000000000000000000000000000000000000000008152336004820152905191925073ffffffffffffffffffffffffffffffffffffffff83169163f2fde38b9160248082019260009290919082900301818387803b1580156101b457600080fd5b505af11580156101c8573d6000803e3d6000fd5b5092979650505050505050565b600090565b6040516133e2806101eb83390190560060806040526001600455600980546001606060020a03191690553480156200002657600080fd5b50604051606080620033e283398101604090815281516020830151919092015160008054600160a060020a03191633179055828282818062000071816401000000006200011b810204565b5060028054600160a060020a03909216600160a060020a031992831681179091556003805490921617905582620000b1816401000000006200011b810204565b81620000c68164010000000062000196810204565b505060058054600160a060020a03909416600160a060020a031990941693909317909255506009805463ffffffff9092166401000000000267ffffffff0000000019909216919091179055506200020f915050565b600160a060020a03811615156200019357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b620f424063ffffffff821611156200019357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b6131c3806200021f6000396000f30060806040526004361061020b5763ffffffff60e060020a600035041663024c7ec781146102af5780630c7d5cd8146102c95780630e53aae9146102f757806312c2aca41461034c57806319b64015146103755780631cfab290146103a95780631e1401f8146103ca57806321e6b53d1461040d57806322f3e2d41461042e5780632fe8a6ad1461044357806338a5e01614610458578063395900d41461046d5780633e8ff43f1461049757806349d10b64146104c35780634af80f0e146104d857806354fd4d50146104f9578063579cd3ca1461050e5780635e35359e1461052357806361cd756e1461054d57806367b6d57c14610562578063690d8320146105835780636a49d2c4146105a457806371f52bf3146105ce57806379ba5097146105e35780637b103999146105f85780638da5cb5b1461060d57806394c275ad146106225780639b99a8e214610637578063af94b8d81461064c578063b4a176d314610676578063bf7545581461068b578063c45d3d92146106a0578063cdc91c69146106b5578063d031370b146106ca578063d260529c146106e2578063d3fb73b4146106f7578063d4ee1d901461070c578063d55ec69714610721578063d66bd52414610736578063d895951214610757578063dc8de3791461078a578063e8dc12ff146107ab578063ecbca55d146107d5578063f2fde38b146107f3578063fc0c546a14610814575b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee60005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1615156102ad576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f5245534552564500000000000000000000000000604482015290519081900360640190fd5b005b3480156102bb57600080fd5b506102ad6004351515610829565b3480156102d557600080fd5b506102de610871565b6040805163ffffffff9092168252519081900360200190f35b34801561030357600080fd5b50610318600160a060020a036004351661087d565b6040805195865263ffffffff9094166020860152911515848401521515606084015215156080830152519081900360a00190f35b34801561035857600080fd5b50610361610918565b604080519115158252519081900360200190f35b34801561038157600080fd5b5061038d600435610967565b60408051600160a060020a039092168252519081900360200190f35b3480156103b557600080fd5b506102de600160a060020a0360043516610993565b3480156103d657600080fd5b506103f4600160a060020a03600435811690602435166044356109c5565b6040805192835260208301919091528051918290030190f35b34801561041957600080fd5b506102ad600160a060020a03600435166109e0565b34801561043a57600080fd5b506103616109f4565b34801561044f57600080fd5b50610361610a8e565b34801561046457600080fd5b506102ad610aaf565b34801561047957600080fd5b506102ad600160a060020a0360043581169060243516604435610ac1565b3480156104a357600080fd5b506104ac610b5c565b6040805161ffff9092168252519081900360200190f35b3480156104cf57600080fd5b506102ad610b61565b3480156104e457600080fd5b506102ad600160a060020a0360043516610dce565b34801561050557600080fd5b506104ac610e10565b34801561051a57600080fd5b506102de610e15565b34801561052f57600080fd5b506102ad600160a060020a0360043581169060243516604435610e2d565b34801561055957600080fd5b5061038d610f41565b34801561056e57600080fd5b506102ad600160a060020a0360043516610f50565b34801561058f57600080fd5b506102ad600160a060020a0360043516610ff3565b3480156105b057600080fd5b506102ad600160a060020a036004351663ffffffff60243516611104565b3480156105da57600080fd5b506104ac611173565b3480156105ef57600080fd5b506102ad611182565b34801561060457600080fd5b5061038d611243565b34801561061957600080fd5b5061038d611252565b34801561062e57600080fd5b506102de611261565b34801561064357600080fd5b506104ac611275565b34801561065857600080fd5b506103f4600160a060020a036004358116906024351660443561127b565b34801561068257600080fd5b506102ad611379565b34801561069757600080fd5b506103616113b2565b3480156106ac57600080fd5b5061038d6113b7565b3480156106c157600080fd5b506102ad6113c6565b3480156106d657600080fd5b5061038d60043561141f565b3480156106ee57600080fd5b50610361611447565b34801561070357600080fd5b5061038d61144c565b34801561071857600080fd5b5061038d61145b565b34801561072d57600080fd5b506102ad61146a565b34801561074257600080fd5b50610318600160a060020a036004351661155f565b34801561076357600080fd5b50610778600160a060020a03600435166115a5565b60408051918252519081900360200190f35b34801561079657600080fd5b50610778600160a060020a03600435166115b6565b610778600160a060020a0360043581169060243581169060443590606435811690608435166115df565b3480156107e157600080fd5b506102ad63ffffffff60043516611832565b3480156107ff57600080fd5b506102ad600160a060020a0360043516611927565b34801561082057600080fd5b5061038d6119c4565b6108316119d3565b60038054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b60095463ffffffff1681565b600080600080600061088d61310a565b50505050600160a060020a03929092166000908152600860209081526040808320815160a081018352815480825260019092015463ffffffff811694820185905260ff64010000000082048116151594830194909452650100000000008104841615156060830152660100000000000090049092161515608090920182905295919450919250829190565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee60005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1690565b600060078281548110151561097857fe5b600091825260209091200154600160a060020a031692915050565b60008161099f81611a23565b5050600160a060020a031660009081526008602052604090206001015463ffffffff1690565b6000806109d385858561127b565b915091505b935093915050565b6109e86119d3565b6109f181610f50565b50565b600030600160a060020a0316600560009054906101000a9004600160a060020a0316600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015610a5357600080fd5b505af1158015610a67573d6000803e3d6000fd5b505050506040513d6020811015610a7d57600080fd5b5051600160a060020a031614905090565b60035474010000000000000000000000000000000000000000900460ff1681565b610ab76119d3565b610abf6113c6565b565b610ac96119d3565b600554604080517f5e35359e000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015285811660248301526044820185905291519190921691635e35359e91606480830192600092919082900301818387803b158015610b3f57600080fd5b505af1158015610b53573d6000803e3d6000fd5b50505050505050565b600090565b60008054600160a060020a0316331480610b96575060035474010000000000000000000000000000000000000000900460ff16155b1515610bda576040805160e560020a62461bcd0281526020600482015260116024820152600080516020613178833981519152604482015290519081900360640190fd5b610c037f436f6e7472616374526567697374727900000000000000000000000000000000611aa2565b600254909150600160a060020a03808316911614801590610c2c5750600160a060020a03811615155b1515610c82576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b604080517fbb34534c0000000000000000000000000000000000000000000000000000000081527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b158015610d0657600080fd5b505af1158015610d1a573d6000803e3d6000fd5b505050506040513d6020811015610d3057600080fd5b5051600160a060020a03161415610d91576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a0380841673ffffffffffffffffffffffffffffffffffffffff19928316179092559091169216919091179055565b610dd66119d3565b80610de081611b3a565b506006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b602081565b60095468010000000000000000900463ffffffff1681565b6000610e37611b9b565b6002600455610e446119d3565b610e5b600080516020613158833981519152611aa2565b600160a060020a0385166000908152600860205260409020600101549091506601000000000000900460ff161580610e985750610e966109f4565b155b80610eb05750600054600160a060020a038281169116145b1515610ef4576040805160e560020a62461bcd0281526020600482015260116024820152600080516020613178833981519152604482015290519081900360640190fd5b610eff848484611bf5565b600160a060020a0384166000908152600860205260409020600101546601000000000000900460ff1615610f3657610f3684611c26565b505060016004555050565b600354600160a060020a031681565b610f586119d3565b600080516020613158833981519152610f7081611d20565b600554604080517ff2fde38b000000000000000000000000000000000000000000000000000000008152600160a060020a0385811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b158015610fd757600080fd5b505af1158015610feb573d6000803e3d6000fd5b505050505050565b6000610ffd611b9b565b600260045561100a6119d3565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee61102881611a23565b61103f600080516020613158833981519152611aa2565b91506110496109f4565b15806110625750600054600160a060020a038381169116145b15156110a6576040805160e560020a62461bcd0281526020600482015260116024820152600080516020613178833981519152604482015290519081900360640190fd5b604051600160a060020a03841690303180156108fc02916000818181858888f193505050501580156110dc573d6000803e3d6000fd5b506110fa73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee611c26565b5050600160045550565b61110c611275565b61ffff1615611165576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f434f554e5400000000000000604482015290519081900360640190fd5b61116f8282611d76565b5050565b600061117d611275565b905090565b600154600160a060020a031633146111d2576040805160e560020a62461bcd0281526020600482015260116024820152600080516020613178833981519152604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600254600160a060020a031681565b600054600160a060020a031681565b600954640100000000900463ffffffff1681565b60075490565b6005546000908190600160a060020a0385811691161480156112c25750600160a060020a0385166000908152600860205260409020600101546601000000000000900460ff165b156112d9576112d083611fc7565b915091506109d8565b600554600160a060020a03868116911614801561131b5750600160a060020a0384166000908152600860205260409020600101546601000000000000900460ff165b15611329576112d0836121d6565b6040805160e560020a62461bcd02815260206004820152601160248201527f4552525f494e56414c49445f544f4b454e000000000000000000000000000000604482015290519081900360640190fd5b6113816119d3565b6003546002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03909216919091179055565b600181565b600654600160a060020a031681565b6113ce6119d3565b6113d66122e2565b600554600190600160a060020a03166113ed610b5c565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a4565b600780548290811061142d57fe5b600091825260209091200154600160a060020a0316905081565b600190565b600554600160a060020a031681565b600154600160a060020a031681565b60006114746119d3565b61148b600080516020613158833981519152611aa2565b600554909150600090600160a060020a03166114a5610b5c565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a46114de81611927565b604080517f90f58c96000000000000000000000000000000000000000000000000000000008152602060048201529051600160a060020a038316916390f58c9691602480830192600092919082900301818387803b15801561153f57600080fd5b505af1158015611553573d6000803e3d6000fd5b505050506109f1611182565b6008602052600090815260409020805460019091015463ffffffff81169060ff640100000000820481169165010000000000810482169166010000000000009091041685565b60006115b0826115b6565b92915050565b6000816115c281611a23565b5050600160a060020a031660009081526008602052604090205490565b60006115e9611b9b565b60026004557f536f7672796e537761704e6574776f726b00000000000000000000000000000061161881611d20565b600160a060020a03878116908716141561167c576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f53414d455f534f555243455f54415247455400000000000000000000604482015290519081900360640190fd5b600654600160a060020a031615806117bf5750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03878116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b1580156116f757600080fd5b505af115801561170b573d6000803e3d6000fd5b505050506040513d602081101561172157600080fd5b505180156117bf5750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b15801561179257600080fd5b505af11580156117a6573d6000803e3d6000fd5b505050506040513d60208110156117bc57600080fd5b50515b1515611815576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f4e4f545f57484954454c495354454400000000000000000000000000604482015290519081900360640190fd5b61182287878787876123c0565b6001600455979650505050505050565b61183a6119d3565b60095463ffffffff640100000000909104811690821611156118a6576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b6009546040805163ffffffff6801000000000000000090930483168152918316602083015280517f81cd2ffb37dd237c0e4e2a3de5265fcf9deb43d3e7801e80db9f1ccfba7ee6009281900390910190a16009805463ffffffff90921668010000000000000000026bffffffff000000000000000019909216919091179055565b61192f6119d3565b600054600160a060020a0382811691161415611995576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600554600160a060020a031690565b600054600160a060020a03163314610abf576040805160e560020a62461bcd0281526020600482015260116024820152600080516020613178833981519152604482015290519081900360640190fd5b600160a060020a0381166000908152600860205260409020600101546601000000000000900460ff1615156109f1576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f5245534552564500000000000000000000000000604482015290519081900360640190fd5b600254604080517fbb34534c000000000000000000000000000000000000000000000000000000008152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b158015611b0857600080fd5b505af1158015611b1c573d6000803e3d6000fd5b505050506040513d6020811015611b3257600080fd5b505192915050565b600160a060020a0381163014156109f1576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b600454600114610abf576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5245454e5452414e4359000000000000000000000000000000000000604482015290519081900360640190fd5b611bfd6119d3565b82611c078161259e565b82611c118161259e565b83611c1b81611b3a565b610feb8686866125fe565b80611c3081611a23565b600160a060020a03821673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611c7657600160a060020a03821660009081526008602052604090203031905561116f565b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051600160a060020a038416916370a082319160248083019260209291908290030181600087803b158015611cd757600080fd5b505af1158015611ceb573d6000803e3d6000fd5b505050506040513d6020811015611d0157600080fd5b5051600160a060020a0383166000908152600860205260409020555050565b611d2981611aa2565b600160a060020a031633146109f1576040805160e560020a62461bcd0281526020600482015260116024820152600080516020613178833981519152604482015290519081900360640190fd5b6000611d806119d3565b611d886126b8565b82611d928161259e565b83611d9c81611b3a565b83611da681612715565b600554600160a060020a03878116911614801590611dea5750600160a060020a0386166000908152600860205260409020600101546601000000000000900460ff16155b1515611e40576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f5245534552564500000000000000000000000000604482015290519081900360640190fd5b60095463ffffffff908116620f42400381169086161115611eab576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b61ffff611eb6611275565b61ffff1610611f0f576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f434f554e5400000000000000604482015290519081900360640190fd5b505050600160a060020a0390921660008181526008602052604081208181556001908101805466ff0000000000001963ffffffff80881663ffffffff1993841617919091166601000000000000179092556007805493840181559093527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688909101805473ffffffffffffffffffffffffffffffffffffffff191690931790925560098054808416909401909216921691909117905550565b600080600080600080611fd861278a565b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561202b57600080fd5b505af115801561203f573d6000803e3d6000fd5b505050506040513d602081101561205557600080fd5b505193508315156120b157600160a060020a0383166000908152600860205260409020600101546120a69063ffffffff9081169061209a908a90620f4240906127e816565b9063ffffffff61286c16565b9550600094506121cd565b6007805460009081106120c057fe5b600091825260209091200154600160a060020a031692506121007f536f7672796e53776170466f726d756c61000000000000000000000000000000611aa2565b600160a060020a031663f3250fe285612118866115b6565b600160a060020a038716600090815260086020908152604080832060010154815163ffffffff88811660e060020a02825260048201979097526024810195909552949094166044840152606483018d90529251608480840194939192918390030190829087803b15801561218b57600080fd5b505af115801561219f573d6000803e3d6000fd5b505050506040513d60208110156121b557600080fd5b505191506121c2826128da565b905080820381955095505b50505050915091565b6000806000806000806121e761278a565b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561223a57600080fd5b505af115801561224e573d6000803e3d6000fd5b505050506040513d602081101561226457600080fd5b50516007805491955090600090811061227957fe5b600091825260209091200154600160a060020a03169250838714156122a1576120a6836115b6565b6122ca7f536f7672796e53776170466f726d756c61000000000000000000000000000000611aa2565b600160a060020a03166376cf0b5685612118866115b6565b6122ea6119d3565b60006122f4611275565b61ffff161161234d576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f434f554e5400000000000000604482015290519081900360640190fd5b600560009054906101000a9004600160a060020a0316600160a060020a03166379ba50976040518163ffffffff1660e060020a028152600401600060405180830381600087803b1580156123a057600080fd5b505af11580156123b4573d6000803e3d6000fd5b50505050610abf61290a565b6005546000908190819081908190600160a060020a038a8116911614801561240d5750600160a060020a038a166000908152600860205260409020600101546601000000000000900460ff165b156124275789925061242088888861294c565b935061247c565b600554600160a060020a038b811691161480156124695750600160a060020a0389166000908152600860205260409020600101546601000000000000900460ff165b1561132957889250612420888888612c12565b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156124cf57600080fd5b505af11580156124e3573d6000803e3d6000fd5b505050506040513d60208110156124f957600080fd5b5051600160a060020a0380851660008181526008602052604090206001015460055493955063ffffffff16935091167f77f29993cf2c084e726f7e802da0719d6a0ade3e204badc7a3ffd57ecb768c24612565620f4240612559886115b6565b9063ffffffff6127e816565b6125788663ffffffff808816906127e816565b6040805192835260208301919091528051918290030190a3509198975050505050505050565b600160a060020a03811615156109f1576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff00000000000000000000000000000000000000000000000000000000909316929092179091526126b3908490612f97565b505050565b6126c06109f4565b15610abf576040805160e560020a62461bcd02815260206004820152600a60248201527f4552525f41435449564500000000000000000000000000000000000000000000604482015290519081900360640190fd5b60008163ffffffff161180156127345750620f424063ffffffff821611155b15156109f1576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b6127926109f4565b1515610abf576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f494e4143544956450000000000000000000000000000000000000000604482015290519081900360640190fd5b6000808315156127fb5760009150612865565b5082820282848281151561280b57fe5b0414612861576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b8091505b5092915050565b6000808083116128c6576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f4449564944455f42595f5a45524f0000000000000000000000000000604482015290519081900360640190fd5b82848115156128d157fe5b04949350505050565b6009546000906115b090620f42409061209a90859068010000000000000000900463ffffffff908116906127e816565b60075460005b8181101561116f5761294460078281548110151561292a57fe5b600091825260209091200154600160a060020a0316611c26565b600101612910565b60008060008061295b87611fc7565b90935091508215156129b7576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b6007805460009081106129c657fe5b600091825260209091200154600160a060020a0316905073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee811415612a5557348714612a50576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b612b5d565b34158015612b07575086612b04612a6b836115b6565b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051600160a060020a038616916370a082319160248083019260209291908290030181600087803b158015612acc57600080fd5b505af1158015612ae0573d6000803e3d6000fd5b505050506040513d6020811015612af657600080fd5b50519063ffffffff61302516565b10155b1515612b5d576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b612b6681611c26565b600554604080517f867904b4000000000000000000000000000000000000000000000000000000008152600160a060020a038881166004830152602482018790529151919092169163867904b491604480830192600092919082900301818387803b158015612bd457600080fd5b505af1158015612be8573d6000803e3d6000fd5b5050600554612c079250839150600160a060020a0316888a8787613085565b509095945050505050565b600554604080517f70a08231000000000000000000000000000000000000000000000000000000008152306004820152905160009283928392839283928392600160a060020a03909216916370a082319160248082019260209290919082900301818787803b158015612c8457600080fd5b505af1158015612c98573d6000803e3d6000fd5b505050506040513d6020811015612cae57600080fd5b5051891115612d07576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b612d10896121d6565b9095509350841515612d6c576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b600780546000908110612d7b57fe5b6000918252602080832090910154600554604080517f18160ddd0000000000000000000000000000000000000000000000000000000081529051600160a060020a03938416985091909216936318160ddd93600480850194919392918390030190829087803b158015612ded57600080fd5b505af1158015612e01573d6000803e3d6000fd5b505050506040513d6020811015612e1757600080fd5b50519150612e24836115b6565b905080851080612e3d57508085148015612e3d57508189145b1515612e4557fe5b600554604080517fa24835d1000000000000000000000000000000000000000000000000000000008152306004820152602481018c90529051600160a060020a039092169163a24835d19160448082019260009290919082900301818387803b158015612eb157600080fd5b505af1158015612ec5573d6000803e3d6000fd5b505050600160a060020a038416600090815260086020526040902054612ef291508663ffffffff61302516565b600160a060020a03841660008181526008602052604090209190915573eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415612f6557604051600160a060020a0388169086156108fc029087906000818181858888f19350505050158015612f5f573d6000803e3d6000fd5b50612f70565b612f708388876125fe565b600554612f8a90600160a060020a0316848a8c8989613085565b5092979650505050505050565b612f9f613138565b602060405190810160405280600181525090506020818351602085016000875af1801515612fcc57600080fd5b50805115156126b3576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b60008183101561307f576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b7f800000000000000000000000000000000000000000000000000000000000000081106130ae57fe5b60408051848152602081018490528082018390529051600160a060020a038087169288821692918a16917f276856b36cbc45526a0ba64f44611557a2a8b68662c5388e9fe6d72e86e1c8cb9181900360600190a4505050505050565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b60206040519081016040528060019060208202803883395091929150505600536f7672796e53776170436f6e766572746572557067726164657200000000004552525f4143434553535f44454e494544000000000000000000000000000000a165627a7a7230582037b33979907eb8fc12ff2610f3b308d7e0bd054db4e75effc1afff1358e899ac0029a165627a7a7230582073f4af898ec23286c8637b8f8c54674bd5ef701cb0189f7ef2446f9afaf33f020029 \ No newline at end of file +608060405234801561001057600080fd5b50613fdd806100206000396000f30060806040526004361061004b5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416631141395881146100505780633e8ff43f146100b6575b600080fd5b34801561005c57600080fd5b5061008d73ffffffffffffffffffffffffffffffffffffffff6004358116906024351663ffffffff604435166100e2565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b3480156100c257600080fd5b506100cb6101d5565b6040805161ffff9092168252519081900360200190f35b6000808484846100f06101da565b73ffffffffffffffffffffffffffffffffffffffff938416815291909216602082015263ffffffff9091166040808301919091525190819003606001906000f080158015610142573d6000803e3d6000fd5b50604080517ff2fde38b000000000000000000000000000000000000000000000000000000008152336004820152905191925073ffffffffffffffffffffffffffffffffffffffff83169163f2fde38b9160248082019260009290919082900301818387803b1580156101b457600080fd5b505af11580156101c8573d6000803e3d6000fd5b5092979650505050505050565b600090565b604051613dc7806101eb83390190560060806040526001600455600980546001606060020a03191690553480156200002657600080fd5b5060405160608062003dc783398101604090815281516020830151919092015160008054600160a060020a03191633179055828282818062000071816401000000006200011b810204565b5060028054600160a060020a03909216600160a060020a031992831681179091556003805490921617905582620000b1816401000000006200011b810204565b81620000c68164010000000062000196810204565b505060058054600160a060020a03909416600160a060020a031990941693909317909255506009805463ffffffff9092166401000000000267ffffffff0000000019909216919091179055506200020f915050565b600160a060020a03811615156200019357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b620f424063ffffffff821611156200019357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b613ba8806200021f6000396000f30060806040526004361061022c5763ffffffff60e060020a600035041663024c7ec781146102d0578063064bda02146102ea5780630c7d5cd81461031d5780630e53aae91461034b57806312c2aca4146103a0578063164e68de146103c957806319b64015146103ea5780631cfab2901461041e5780631e1401f81461043f57806321e6b53d1461048257806322f3e2d4146104a35780632fe8a6ad146104b85780633341e006146104cd57806338a5e016146104ee578063395900d4146105035780633e8ff43f1461052d57806349d10b64146105595780634af80f0e1461056e57806354fd4d501461058f578063579cd3ca146105a45780635e35359e146105b957806361cd756e146105e357806367b6d57c146105f8578063690d8320146106195780636a49d2c41461063a57806371f52bf31461066457806379ba5097146106795780637b1039991461068e5780638da5cb5b146106a357806394c275ad146106b85780639b99a8e2146106cd578063af94b8d8146106e2578063b4a176d31461070c578063bf75455814610721578063c45d3d9214610736578063cdc91c691461074b578063d031370b14610760578063d260529c14610778578063d3fb73b41461078d578063d4ee1d90146107a2578063d55ec697146107b7578063d66bd524146107cc578063d8959512146107ed578063dc8de3791461080e578063e8dc12ff1461082f578063ecbca55d14610859578063f2fde38b14610877578063fc0c546a14610898575b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee60005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1615156102ce576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f5245534552564500000000000000000000000000604482015290519081900360640190fd5b005b3480156102dc57600080fd5b506102ce60043515156108ad565b3480156102f657600080fd5b5061030b600160a060020a03600435166108f5565b60408051918252519081900360200190f35b34801561032957600080fd5b50610332610907565b6040805163ffffffff9092168252519081900360200190f35b34801561035757600080fd5b5061036c600160a060020a0360043516610913565b6040805195865263ffffffff9094166020860152911515848401521515606084015215156080830152519081900360a00190f35b3480156103ac57600080fd5b506103b56109ae565b604080519115158252519081900360200190f35b3480156103d557600080fd5b5061030b600160a060020a03600435166109fd565b3480156103f657600080fd5b50610402600435610ff1565b60408051600160a060020a039092168252519081900360200190f35b34801561042a57600080fd5b50610332600160a060020a036004351661101d565b34801561044b57600080fd5b50610469600160a060020a036004358116906024351660443561104f565b6040805192835260208301919091528051918290030190f35b34801561048e57600080fd5b506102ce600160a060020a036004351661106a565b3480156104af57600080fd5b506103b561107e565b3480156104c457600080fd5b506103b5611118565b3480156104d957600080fd5b5061030b600160a060020a0360043516611139565b3480156104fa57600080fd5b506102ce611154565b34801561050f57600080fd5b506102ce600160a060020a0360043581169060243516604435611166565b34801561053957600080fd5b50610542611201565b6040805161ffff9092168252519081900360200190f35b34801561056557600080fd5b506102ce611206565b34801561057a57600080fd5b506102ce600160a060020a036004351661145d565b34801561059b57600080fd5b5061054261149f565b3480156105b057600080fd5b506103326114a4565b3480156105c557600080fd5b506102ce600160a060020a03600435811690602435166044356114bc565b3480156105ef57600080fd5b506104026115d0565b34801561060457600080fd5b506102ce600160a060020a03600435166115df565b34801561062557600080fd5b506102ce600160a060020a0360043516611682565b34801561064657600080fd5b506102ce600160a060020a036004351663ffffffff60243516611793565b34801561067057600080fd5b50610542611802565b34801561068557600080fd5b506102ce611811565b34801561069a57600080fd5b506104026118d2565b3480156106af57600080fd5b506104026118e1565b3480156106c457600080fd5b506103326118f0565b3480156106d957600080fd5b50610542611904565b3480156106ee57600080fd5b50610469600160a060020a036004358116906024351660443561190a565b34801561071857600080fd5b506102ce611a08565b34801561072d57600080fd5b506103b5611a41565b34801561074257600080fd5b50610402611a46565b34801561075757600080fd5b506102ce611a55565b34801561076c57600080fd5b50610402600435611aae565b34801561078457600080fd5b506103b5611ad6565b34801561079957600080fd5b50610402611adb565b3480156107ae57600080fd5b50610402611aea565b3480156107c357600080fd5b506102ce611af9565b3480156107d857600080fd5b5061036c600160a060020a0360043516611bee565b3480156107f957600080fd5b5061030b600160a060020a0360043516611c34565b34801561081a57600080fd5b5061030b600160a060020a0360043516611c45565b61030b600160a060020a036004358116906024358116906044359060643581169060843516611c6e565b34801561086557600080fd5b506102ce63ffffffff60043516611ec1565b34801561088357600080fd5b506102ce600160a060020a0360043516611fb6565b3480156108a457600080fd5b50610402612053565b6108b5612062565b60038054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b600a6020526000908152604090205481565b60095463ffffffff1681565b6000806000806000610923613aef565b50505050600160a060020a03929092166000908152600860209081526040808320815160a081018352815480825260019092015463ffffffff811694820185905260ff64010000000082048116151594830194909452650100000000008104841615156060830152660100000000000090049092161515608090920182905295919450919250829190565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee60005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1690565b6000806000806000806000806060610a136120b2565b600160a060020a03163314610a72576040805160e560020a62461bcd02815260206004820152600c60248201527f756e617574686f72697a65640000000000000000000000000000000000000000604482015290519081900360640190fd5b610a9b7f536f7672796e537761704e6574776f726b0000000000000000000000000000006121db565b9450600093505b600754841015610fd1576007805485908110610aba57fe5b6000918252602080832090910154600160a060020a0316808352600a909152604082205490995097508711610aee57610fc6565b600160a060020a0388166000908152600a6020526040812055610b0f61225d565b600160a060020a031688600160a060020a03161415610c565787600160a060020a031663095ea7b3610b3f6120b2565b896040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b158015610b9257600080fd5b505af1158015610ba6573d6000803e3d6000fd5b505050506040513d6020811015610bbc57600080fd5b50610bc790506120b2565b600160a060020a031663abe979e1610bdd61225d565b6040805160e060020a63ffffffff8516028152600160a060020a0390921660048301526bffffffffffffffffffffffff8b16602483015251604480830192600092919082900301818387803b158015610c3557600080fd5b505af1158015610c49573d6000803e3d6000fd5b5050505060009250610f74565b610c5e612355565b600160a060020a031688600160a060020a03161415610c7f57869250610f61565b87600160a060020a031663095ea7b3610cb77f536f7672796e537761704e6574776f726b0000000000000000000000000000006121db565b896040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b158015610d0a57600080fd5b505af1158015610d1e573d6000803e3d6000fd5b505050506040513d6020811015610d3457600080fd5b50519150811515610d8f576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f415050524f56414c5f4641494c454400000000000000000000000000604482015290519081900360640190fd5b84600160a060020a031663d734fa1989610da7612355565b6040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182600160a060020a0316600160a060020a0316815260200192505050600060405180830381600087803b158015610e0b57600080fd5b505af1158015610e1f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015610e4857600080fd5b810190808051640100000000811115610e6057600080fd5b82016020810184811115610e7357600080fd5b8151856020820283011164010000000082111715610e9057600080fd5b5050929190505050905084600160a060020a031663f3898a97828960016040518463ffffffff1660e060020a0281526004018080602001848152602001838152602001828103825285818151815260200191508051906020019060200280838360005b83811015610f0b578181015183820152602001610ef3565b50505050905001945050505050602060405180830381600087803b158015610f3257600080fd5b505af1158015610f46573d6000803e3d6000fd5b505050506040513d6020811015610f5c57600080fd5b505192505b610f71868463ffffffff61244d16565b95505b60408051600160a060020a038a81168252602082018a90528183018690529151918c169133917f3953f559f015828db2bd3868682d85a85c6e24c3f05fb4e927797d7c007b3673919081900360600190a35b600190930192610aa2565b610fe3610fdc612355565b8b886124b5565b509398975050505050505050565b600060078281548110151561100257fe5b600091825260209091200154600160a060020a031692915050565b6000816110298161256f565b5050600160a060020a031660009081526008602052604090206001015463ffffffff1690565b60008061105d85858561190a565b915091505b935093915050565b611072612062565b61107b816115df565b50565b600030600160a060020a0316600560009054906101000a9004600160a060020a0316600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156110dd57600080fd5b505af11580156110f1573d6000803e3d6000fd5b505050506040513d602081101561110757600080fd5b5051600160a060020a031614905090565b60035474010000000000000000000000000000000000000000900460ff1681565b600160a060020a03166000908152600a602052604090205490565b61115c612062565b611164611a55565b565b61116e612062565b600554604080517f5e35359e000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015285811660248301526044820185905291519190921691635e35359e91606480830192600092919082900301818387803b1580156111e457600080fd5b505af11580156111f8573d6000803e3d6000fd5b50505050505050565b600090565b60008054600160a060020a031633148061123b575060035474010000000000000000000000000000000000000000900460ff16155b151561127f576040805160e560020a62461bcd0281526020600482015260116024820152600080516020613b5d833981519152604482015290519081900360640190fd5b6112a87f436f6e74726163745265676973747279000000000000000000000000000000006121db565b600254909150600160a060020a038083169116148015906112d15750600160a060020a03811615155b1515611327576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6040805160e260020a632ecd14d30281527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b15801561139557600080fd5b505af11580156113a9573d6000803e3d6000fd5b505050506040513d60208110156113bf57600080fd5b5051600160a060020a03161415611420576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a0380841673ffffffffffffffffffffffffffffffffffffffff19928316179092559091169216919091179055565b611465612062565b8061146f816125ee565b506006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b602081565b60095468010000000000000000900463ffffffff1681565b60006114c661264f565b60026004556114d3612062565b6114ea600080516020613b3d8339815191526121db565b600160a060020a0385166000908152600860205260409020600101549091506601000000000000900460ff161580611527575061152561107e565b155b8061153f5750600054600160a060020a038281169116145b1515611583576040805160e560020a62461bcd0281526020600482015260116024820152600080516020613b5d833981519152604482015290519081900360640190fd5b61158e8484846126a9565b600160a060020a0384166000908152600860205260409020600101546601000000000000900460ff16156115c5576115c5846126da565b505060016004555050565b600354600160a060020a031681565b6115e7612062565b600080516020613b3d8339815191526115ff816127f6565b600554604080517ff2fde38b000000000000000000000000000000000000000000000000000000008152600160a060020a0385811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b15801561166657600080fd5b505af115801561167a573d6000803e3d6000fd5b505050505050565b600061168c61264f565b6002600455611699612062565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6116b78161256f565b6116ce600080516020613b3d8339815191526121db565b91506116d861107e565b15806116f15750600054600160a060020a038381169116145b1515611735576040805160e560020a62461bcd0281526020600482015260116024820152600080516020613b5d833981519152604482015290519081900360640190fd5b604051600160a060020a03841690303180156108fc02916000818181858888f1935050505015801561176b573d6000803e3d6000fd5b5061178973eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6126da565b5050600160045550565b61179b611904565b61ffff16156117f4576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f434f554e5400000000000000604482015290519081900360640190fd5b6117fe828261284c565b5050565b600061180c611904565b905090565b600154600160a060020a03163314611861576040805160e560020a62461bcd0281526020600482015260116024820152600080516020613b5d833981519152604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600254600160a060020a031681565b600054600160a060020a031681565b600954640100000000900463ffffffff1681565b60075490565b6005546000908190600160a060020a0385811691161480156119515750600160a060020a0385166000908152600860205260409020600101546601000000000000900460ff165b156119685761195f83612a9d565b91509150611062565b600554600160a060020a0386811691161480156119aa5750600160a060020a0384166000908152600860205260409020600101546601000000000000900460ff165b156119b85761195f83612cac565b6040805160e560020a62461bcd02815260206004820152601160248201527f4552525f494e56414c49445f544f4b454e000000000000000000000000000000604482015290519081900360640190fd5b611a10612062565b6003546002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03909216919091179055565b600181565b600654600160a060020a031681565b611a5d612062565b611a65612db8565b600554600190600160a060020a0316611a7c611201565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a4565b6007805482908110611abc57fe5b600091825260209091200154600160a060020a0316905081565b600190565b600554600160a060020a031681565b600154600160a060020a031681565b6000611b03612062565b611b1a600080516020613b3d8339815191526121db565b600554909150600090600160a060020a0316611b34611201565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a4611b6d81611fb6565b604080517f90f58c96000000000000000000000000000000000000000000000000000000008152602060048201529051600160a060020a038316916390f58c9691602480830192600092919082900301818387803b158015611bce57600080fd5b505af1158015611be2573d6000803e3d6000fd5b5050505061107b611811565b6008602052600090815260409020805460019091015463ffffffff81169060ff640100000000820481169165010000000000810482169166010000000000009091041685565b6000611c3f82611c45565b92915050565b600081611c518161256f565b5050600160a060020a031660009081526008602052604090205490565b6000611c7861264f565b60026004557f536f7672796e537761704e6574776f726b000000000000000000000000000000611ca7816127f6565b600160a060020a038781169087161415611d0b576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f53414d455f534f555243455f54415247455400000000000000000000604482015290519081900360640190fd5b600654600160a060020a03161580611e4e5750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03878116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b158015611d8657600080fd5b505af1158015611d9a573d6000803e3d6000fd5b505050506040513d6020811015611db057600080fd5b50518015611e4e5750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b158015611e2157600080fd5b505af1158015611e35573d6000803e3d6000fd5b505050506040513d6020811015611e4b57600080fd5b50515b1515611ea4576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f4e4f545f57484954454c495354454400000000000000000000000000604482015290519081900360640190fd5b611eb18787878787612e96565b6001600455979650505050505050565b611ec9612062565b60095463ffffffff64010000000090910481169082161115611f35576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b6009546040805163ffffffff6801000000000000000090930483168152918316602083015280517f81cd2ffb37dd237c0e4e2a3de5265fcf9deb43d3e7801e80db9f1ccfba7ee6009281900390910190a16009805463ffffffff90921668010000000000000000026bffffffff000000000000000019909216919091179055565b611fbe612062565b600054600160a060020a0382811691161415612024576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600554600160a060020a031690565b600054600160a060020a03163314611164576040805160e560020a62461bcd0281526020600482015260116024820152600080516020613b5d833981519152604482015290519081900360640190fd5b6002546040805160e260020a632ecd14d30281527f5377617053657474696e6773000000000000000000000000000000000000000060048201529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561212157600080fd5b505af1158015612135573d6000803e3d6000fd5b505050506040513d602081101561214b57600080fd5b5051604080517fe8f627640000000000000000000000000000000000000000000000000000000081529051600160a060020a039092169163e8f62764916004808201926020929091908290030181600087803b1580156121aa57600080fd5b505af11580156121be573d6000803e3d6000fd5b505050506040513d60208110156121d457600080fd5b5051905090565b6002546040805160e260020a632ecd14d3028152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561222b57600080fd5b505af115801561223f573d6000803e3d6000fd5b505050506040513d602081101561225557600080fd5b505192915050565b6002546040805160e260020a632ecd14d30281527f5377617053657474696e6773000000000000000000000000000000000000000060048201529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b1580156122cc57600080fd5b505af11580156122e0573d6000803e3d6000fd5b505050506040513d60208110156122f657600080fd5b5051604080517fb9cffa3e0000000000000000000000000000000000000000000000000000000081529051600160a060020a039092169163b9cffa3e916004808201926020929091908290030181600087803b1580156121aa57600080fd5b6002546040805160e260020a632ecd14d30281527f5377617053657474696e6773000000000000000000000000000000000000000060048201529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b1580156123c457600080fd5b505af11580156123d8573d6000803e3d6000fd5b505050506040513d60208110156123ee57600080fd5b5051604080517f99a752b50000000000000000000000000000000000000000000000000000000081529051600160a060020a03909216916399a752b5916004808201926020929091908290030181600087803b1580156121aa57600080fd5b6000828201838110156124aa576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b8091505b5092915050565b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009093169290921790915261256a908490613074565b505050565b600160a060020a0381166000908152600860205260409020600101546601000000000000900460ff16151561107b576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f5245534552564500000000000000000000000000604482015290519081900360640190fd5b600160a060020a03811630141561107b576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b600454600114611164576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5245454e5452414e4359000000000000000000000000000000000000604482015290519081900360640190fd5b6126b1612062565b826126bb81613102565b826126c581613102565b836126cf816125ee565b61167a8686866124b5565b806126e48161256f565b600160a060020a03821673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee141561272a57600160a060020a0382166000908152600860205260409020303190556117fe565b600160a060020a0382166000818152600a602090815260408083205481517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015291516127d995919491936370a0823193602480820194929392918390030190829087803b1580156127a157600080fd5b505af11580156127b5573d6000803e3d6000fd5b505050506040513d60208110156127cb57600080fd5b50519063ffffffff61316216565b600160a060020a0383166000908152600860205260409020555050565b6127ff816121db565b600160a060020a0316331461107b576040805160e560020a62461bcd0281526020600482015260116024820152600080516020613b5d833981519152604482015290519081900360640190fd5b6000612856612062565b61285e6131c2565b8261286881613102565b83612872816125ee565b8361287c8161321f565b600554600160a060020a038781169116148015906128c05750600160a060020a0386166000908152600860205260409020600101546601000000000000900460ff16155b1515612916576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f5245534552564500000000000000000000000000604482015290519081900360640190fd5b60095463ffffffff908116620f42400381169086161115612981576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b61ffff61298c611904565b61ffff16106129e5576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f434f554e5400000000000000604482015290519081900360640190fd5b505050600160a060020a0390921660008181526008602052604081208181556001908101805466ff0000000000001963ffffffff80881663ffffffff1993841617919091166601000000000000179092556007805493840181559093527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688909101805473ffffffffffffffffffffffffffffffffffffffff191690931790925560098054808416909401909216921691909117905550565b600080600080600080612aae613294565b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015612b0157600080fd5b505af1158015612b15573d6000803e3d6000fd5b505050506040513d6020811015612b2b57600080fd5b50519350831515612b8757600160a060020a038316600090815260086020526040902060010154612b7c9063ffffffff90811690612b70908a90620f4240906132f216565b9063ffffffff61336b16565b955060009450612ca3565b600780546000908110612b9657fe5b600091825260209091200154600160a060020a03169250612bd67f536f7672796e53776170466f726d756c610000000000000000000000000000006121db565b600160a060020a031663f3250fe285612bee86611c45565b600160a060020a038716600090815260086020908152604080832060010154815163ffffffff88811660e060020a02825260048201979097526024810195909552949094166044840152606483018d90529251608480840194939192918390030190829087803b158015612c6157600080fd5b505af1158015612c75573d6000803e3d6000fd5b505050506040513d6020811015612c8b57600080fd5b50519150612c98826133d9565b905080820381955095505b50505050915091565b600080600080600080612cbd613294565b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015612d1057600080fd5b505af1158015612d24573d6000803e3d6000fd5b505050506040513d6020811015612d3a57600080fd5b505160078054919550906000908110612d4f57fe5b600091825260209091200154600160a060020a0316925083871415612d7757612b7c83611c45565b612da07f536f7672796e53776170466f726d756c610000000000000000000000000000006121db565b600160a060020a03166376cf0b5685612bee86611c45565b612dc0612062565b6000612dca611904565b61ffff1611612e23576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f434f554e5400000000000000604482015290519081900360640190fd5b600560009054906101000a9004600160a060020a0316600160a060020a03166379ba50976040518163ffffffff1660e060020a028152600401600060405180830381600087803b158015612e7657600080fd5b505af1158015612e8a573d6000803e3d6000fd5b50505050611164613409565b6005546000908190819081908190600160a060020a038a81169116148015612ee35750600160a060020a038a166000908152600860205260409020600101546601000000000000900460ff165b15612efd57899250612ef688888861344b565b9350612f52565b600554600160a060020a038b81169116148015612f3f5750600160a060020a0389166000908152600860205260409020600101546601000000000000900460ff165b156119b857889250612ef68888886136db565b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015612fa557600080fd5b505af1158015612fb9573d6000803e3d6000fd5b505050506040513d6020811015612fcf57600080fd5b5051600160a060020a0380851660008181526008602052604090206001015460055493955063ffffffff16935091167f77f29993cf2c084e726f7e802da0719d6a0ade3e204badc7a3ffd57ecb768c2461303b620f424061302f88611c45565b9063ffffffff6132f216565b61304e8663ffffffff808816906132f216565b6040805192835260208301919091528051918290030190a3509198975050505050505050565b61307c613b1d565b602060405190810160405280600181525090506020818351602085016000875af18015156130a957600080fd5b508051151561256a576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b600160a060020a038116151561107b576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b6000818310156131bc576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b6131ca61107e565b15611164576040805160e560020a62461bcd02815260206004820152600a60248201527f4552525f41435449564500000000000000000000000000000000000000000000604482015290519081900360640190fd5b60008163ffffffff1611801561323e5750620f424063ffffffff821611155b151561107b576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b61329c61107e565b1515611164576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f494e4143544956450000000000000000000000000000000000000000604482015290519081900360640190fd5b60008083151561330557600091506124ae565b5082820282848281151561331557fe5b04146124aa576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b6000808083116133c5576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f4449564944455f42595f5a45524f0000000000000000000000000000604482015290519081900360640190fd5b82848115156133d057fe5b04949350505050565b600954600090611c3f90620f424090612b7090859068010000000000000000900463ffffffff908116906132f216565b60075460005b818110156117fe5761344360078281548110151561342957fe5b600091825260209091200154600160a060020a03166126da565b60010161340f565b60008060008061345a87612a9d565b90935091508215156134b6576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b6007805460009081106134c557fe5b600091825260209091200154600160a060020a0316905073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8114156135545734871461354f576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b613624565b341580156135ce5750866135cb61356a83611c45565b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051600160a060020a038616916370a082319160248083019260209291908290030181600087803b1580156127a157600080fd5b10155b1515613624576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b61362d816126da565b600554604080517f867904b4000000000000000000000000000000000000000000000000000000008152600160a060020a038881166004830152602482018790529151919092169163867904b491604480830192600092919082900301818387803b15801561369b57600080fd5b505af11580156136af573d6000803e3d6000fd5b50506005546136d09250839150600160a060020a0316888a87876000613a62565b509095945050505050565b600554604080517f70a08231000000000000000000000000000000000000000000000000000000008152306004820152905160009283928392839283928392600160a060020a03909216916370a082319160248082019260209290919082900301818787803b15801561374d57600080fd5b505af1158015613761573d6000803e3d6000fd5b505050506040513d602081101561377757600080fd5b50518911156137d0576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b6137d989612cac565b9095509350841515613835576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b60078054600090811061384457fe5b6000918252602080832090910154600554604080517f18160ddd0000000000000000000000000000000000000000000000000000000081529051600160a060020a03938416985091909216936318160ddd93600480850194919392918390030190829087803b1580156138b657600080fd5b505af11580156138ca573d6000803e3d6000fd5b505050506040513d60208110156138e057600080fd5b505191506138ed83611c45565b9050808510806139065750808514801561390657508189145b151561390e57fe5b600554604080517fa24835d1000000000000000000000000000000000000000000000000000000008152306004820152602481018c90529051600160a060020a039092169163a24835d19160448082019260009290919082900301818387803b15801561397a57600080fd5b505af115801561398e573d6000803e3d6000fd5b505050600160a060020a0384166000908152600860205260409020546139bb91508663ffffffff61316216565b600160a060020a03841660008181526008602052604090209190915573eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415613a2e57604051600160a060020a0388169086156108fc029087906000818181858888f19350505050158015613a28573d6000803e3d6000fd5b50613a39565b613a398388876124b5565b600554613a5590600160a060020a0316848a8c89896000613a62565b5092979650505050505050565b7f80000000000000000000000000000000000000000000000000000000000000008210613a8b57fe5b6040805185815260208101859052808201849052606081018390529051600160a060020a038088169289821692918b16917f82886ccc747026f86399e87d5f3874c5d198ec2498833553651f63a13f5dbd0c9181900360800190a450505050505050565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b60206040519081016040528060019060208202803883395091929150505600536f7672796e53776170436f6e766572746572557067726164657200000000004552525f4143434553535f44454e494544000000000000000000000000000000a165627a7a723058201c72ec2570d553e4921908a0e19afdee99dfbd756c6dac4619c33dbb500fe8c70029a165627a7a72305820f6c6c0f7ee3969175b05a7fa8e1c87c42ef03d20161ab98f66db4010c554d81b0029 \ No newline at end of file diff --git a/solidity/build/LiquidityPoolConverter.abi b/solidity/build/LiquidityPoolConverter.abi index 862438a..6269e27 100644 --- a/solidity/build/LiquidityPoolConverter.abi +++ b/solidity/build/LiquidityPoolConverter.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"reserveRatio","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"connectors","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint32"},{"name":"","type":"bool"},{"name":"","type":"bool"},{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"hasETHReserve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"connectorTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveWeight","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"getReturn","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"isActive","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawFromAnchor","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"converterType","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_whitelist","type":"address"}],"name":"setConversionWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"version","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"conversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"withdrawETH","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_weight","type":"uint32"}],"name":"addReserve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"connectorTokenCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxConversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reserveTokenCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"targetAmountAndFee","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"conversionsEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"conversionWhitelist","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"reserveTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isV28OrHigher","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"anchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"upgrade","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"reserves","outputs":[{"name":"balance","type":"uint256"},{"name":"weight","type":"uint32"},{"name":"deprecated1","type":"bool"},{"name":"deprecated2","type":"bool"},{"name":"isSet","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_connectorToken","type":"address"}],"name":"getConnectorBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_trader","type":"address"},{"name":"_beneficiary","type":"address"}],"name":"convert","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_conversionFee","type":"uint32"}],"name":"setConversionFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_anchor","type":"address"},{"name":"_registry","type":"address"},{"name":"_maxConversionFee","type":"uint32"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_provider","type":"address"},{"indexed":true,"name":"_reserveToken","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_newBalance","type":"uint256"},{"indexed":false,"name":"_newSupply","type":"uint256"}],"name":"LiquidityAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_provider","type":"address"},{"indexed":true,"name":"_reserveToken","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_newBalance","type":"uint256"},{"indexed":false,"name":"_newSupply","type":"uint256"}],"name":"LiquidityRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_type","type":"uint16"},{"indexed":true,"name":"_anchor","type":"address"},{"indexed":true,"name":"_activated","type":"bool"}],"name":"Activation","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_fromToken","type":"address"},{"indexed":true,"name":"_toToken","type":"address"},{"indexed":true,"name":"_trader","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_return","type":"uint256"},{"indexed":false,"name":"_conversionFee","type":"int256"}],"name":"Conversion","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_token1","type":"address"},{"indexed":true,"name":"_token2","type":"address"},{"indexed":false,"name":"_rateN","type":"uint256"},{"indexed":false,"name":"_rateD","type":"uint256"}],"name":"TokenRateUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_prevFee","type":"uint32"},{"indexed":false,"name":"_newFee","type":"uint32"}],"name":"ConversionFeeUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}] \ No newline at end of file +[{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"protocolFeeTokensHeld","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reserveRatio","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"connectors","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint32"},{"name":"","type":"bool"},{"name":"","type":"bool"},{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"hasETHReserve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"receiver","type":"address"}],"name":"withdrawFees","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"connectorTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveWeight","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"getReturn","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"isActive","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_token","type":"address"}],"name":"getProtocolFeeTokensHeld","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawFromAnchor","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"converterType","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_whitelist","type":"address"}],"name":"setConversionWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"version","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"conversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"withdrawETH","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_weight","type":"uint32"}],"name":"addReserve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"connectorTokenCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxConversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reserveTokenCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"targetAmountAndFee","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"conversionsEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"conversionWhitelist","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"reserveTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isV28OrHigher","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"anchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"upgrade","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"reserves","outputs":[{"name":"balance","type":"uint256"},{"name":"weight","type":"uint32"},{"name":"deprecated1","type":"bool"},{"name":"deprecated2","type":"bool"},{"name":"isSet","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_connectorToken","type":"address"}],"name":"getConnectorBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_trader","type":"address"},{"name":"_beneficiary","type":"address"}],"name":"convert","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_conversionFee","type":"uint32"}],"name":"setConversionFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_anchor","type":"address"},{"name":"_registry","type":"address"},{"name":"_maxConversionFee","type":"uint32"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_provider","type":"address"},{"indexed":true,"name":"_reserveToken","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_newBalance","type":"uint256"},{"indexed":false,"name":"_newSupply","type":"uint256"}],"name":"LiquidityAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_provider","type":"address"},{"indexed":true,"name":"_reserveToken","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_newBalance","type":"uint256"},{"indexed":false,"name":"_newSupply","type":"uint256"}],"name":"LiquidityRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_type","type":"uint16"},{"indexed":true,"name":"_anchor","type":"address"},{"indexed":true,"name":"_activated","type":"bool"}],"name":"Activation","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_fromToken","type":"address"},{"indexed":true,"name":"_toToken","type":"address"},{"indexed":true,"name":"_trader","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_return","type":"uint256"},{"indexed":false,"name":"_conversionFee","type":"int256"},{"indexed":false,"name":"_protocolFee","type":"int256"}],"name":"Conversion","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_token1","type":"address"},{"indexed":true,"name":"_token2","type":"address"},{"indexed":false,"name":"_rateN","type":"uint256"},{"indexed":false,"name":"_rateD","type":"uint256"}],"name":"TokenRateUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_prevFee","type":"uint32"},{"indexed":false,"name":"_newFee","type":"uint32"}],"name":"ConversionFeeUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"sender","type":"address"},{"indexed":true,"name":"receiver","type":"address"},{"indexed":false,"name":"token","type":"address"},{"indexed":false,"name":"protocolFeeAmount","type":"uint256"},{"indexed":false,"name":"wRBTCConverted","type":"uint256"}],"name":"WithdrawFees","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":false,"inputs":[],"name":"acceptAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/LiquidityPoolV1Converter.abi b/solidity/build/LiquidityPoolV1Converter.abi index d15d148..78c7d4b 100644 --- a/solidity/build/LiquidityPoolV1Converter.abi +++ b/solidity/build/LiquidityPoolV1Converter.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"reserveRatio","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"connectors","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint32"},{"name":"","type":"bool"},{"name":"","type":"bool"},{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"hasETHReserve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"connectorTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveWeight","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"getReturn","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"isActive","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawFromAnchor","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"converterType","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"}],"name":"liquidate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_whitelist","type":"address"}],"name":"setConversionWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"version","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"conversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"withdrawETH","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_weight","type":"uint32"}],"name":"addReserve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_x","type":"uint256"}],"name":"decimalLength","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"connectorTokenCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_reserveTokens","type":"address[]"},{"name":"_reserveAmounts","type":"uint256[]"},{"name":"_minReturn","type":"uint256"}],"name":"addLiquidity","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxConversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reserveTokenCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_values","type":"uint256[]"}],"name":"geometricMean","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"targetAmountAndFee","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"},{"name":"_reserveTokens","type":"address[]"},{"name":"_reserveMinReturnAmounts","type":"uint256[]"}],"name":"removeLiquidity","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_n","type":"uint256"},{"name":"_d","type":"uint256"}],"name":"roundDiv","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"conversionsEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"conversionWhitelist","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"}],"name":"fund","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[],"name":"acceptAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"reserveTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isV28OrHigher","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"anchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"upgrade","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"reserves","outputs":[{"name":"balance","type":"uint256"},{"name":"weight","type":"uint32"},{"name":"deprecated1","type":"bool"},{"name":"deprecated2","type":"bool"},{"name":"isSet","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_connectorToken","type":"address"}],"name":"getConnectorBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_trader","type":"address"},{"name":"_beneficiary","type":"address"}],"name":"convert","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_conversionFee","type":"uint32"}],"name":"setConversionFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_token","type":"address"},{"name":"_registry","type":"address"},{"name":"_maxConversionFee","type":"uint32"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_connectorToken","type":"address"},{"indexed":false,"name":"_tokenSupply","type":"uint256"},{"indexed":false,"name":"_connectorBalance","type":"uint256"},{"indexed":false,"name":"_connectorWeight","type":"uint32"}],"name":"PriceDataUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_provider","type":"address"},{"indexed":true,"name":"_reserveToken","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_newBalance","type":"uint256"},{"indexed":false,"name":"_newSupply","type":"uint256"}],"name":"LiquidityAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_provider","type":"address"},{"indexed":true,"name":"_reserveToken","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_newBalance","type":"uint256"},{"indexed":false,"name":"_newSupply","type":"uint256"}],"name":"LiquidityRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_type","type":"uint16"},{"indexed":true,"name":"_anchor","type":"address"},{"indexed":true,"name":"_activated","type":"bool"}],"name":"Activation","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_fromToken","type":"address"},{"indexed":true,"name":"_toToken","type":"address"},{"indexed":true,"name":"_trader","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_return","type":"uint256"},{"indexed":false,"name":"_conversionFee","type":"int256"}],"name":"Conversion","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_token1","type":"address"},{"indexed":true,"name":"_token2","type":"address"},{"indexed":false,"name":"_rateN","type":"uint256"},{"indexed":false,"name":"_rateD","type":"uint256"}],"name":"TokenRateUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_prevFee","type":"uint32"},{"indexed":false,"name":"_newFee","type":"uint32"}],"name":"ConversionFeeUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}] \ No newline at end of file +[{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"protocolFeeTokensHeld","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reserveRatio","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"connectors","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint32"},{"name":"","type":"bool"},{"name":"","type":"bool"},{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"hasETHReserve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"receiver","type":"address"}],"name":"withdrawFees","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"connectorTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveWeight","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"getReturn","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"isActive","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"token1Decimal","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_token","type":"address"}],"name":"getProtocolFeeTokensHeld","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawFromAnchor","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_whitelist","type":"address"}],"name":"setConversionWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"version","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"conversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"withdrawETH","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"connectorTokenCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"oracle","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"DENOMINATOR","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxConversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reserveTokenCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"token0Decimal","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"conversionsEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"conversionWhitelist","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"reserveTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isV28OrHigher","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"anchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"upgrade","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"reserves","outputs":[{"name":"balance","type":"uint256"},{"name":"weight","type":"uint32"},{"name":"deprecated1","type":"bool"},{"name":"deprecated2","type":"bool"},{"name":"isSet","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_connectorToken","type":"address"}],"name":"getConnectorBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_trader","type":"address"},{"name":"_beneficiary","type":"address"}],"name":"convert","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_conversionFee","type":"uint32"}],"name":"setConversionFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_token","type":"address"},{"name":"_registry","type":"address"},{"name":"_maxConversionFee","type":"uint32"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_connectorToken","type":"address"},{"indexed":false,"name":"_tokenSupply","type":"uint256"},{"indexed":false,"name":"_connectorBalance","type":"uint256"},{"indexed":false,"name":"_connectorWeight","type":"uint32"}],"name":"PriceDataUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_provider","type":"address"},{"indexed":true,"name":"_reserveToken","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_newBalance","type":"uint256"},{"indexed":false,"name":"_newSupply","type":"uint256"}],"name":"LiquidityAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_provider","type":"address"},{"indexed":true,"name":"_reserveToken","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_newBalance","type":"uint256"},{"indexed":false,"name":"_newSupply","type":"uint256"}],"name":"LiquidityRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_type","type":"uint16"},{"indexed":true,"name":"_anchor","type":"address"},{"indexed":true,"name":"_activated","type":"bool"}],"name":"Activation","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_fromToken","type":"address"},{"indexed":true,"name":"_toToken","type":"address"},{"indexed":true,"name":"_trader","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_return","type":"uint256"},{"indexed":false,"name":"_conversionFee","type":"int256"},{"indexed":false,"name":"_protocolFee","type":"int256"}],"name":"Conversion","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_token1","type":"address"},{"indexed":true,"name":"_token2","type":"address"},{"indexed":false,"name":"_rateN","type":"uint256"},{"indexed":false,"name":"_rateD","type":"uint256"}],"name":"TokenRateUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_prevFee","type":"uint32"},{"indexed":false,"name":"_newFee","type":"uint32"}],"name":"ConversionFeeUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"sender","type":"address"},{"indexed":true,"name":"receiver","type":"address"},{"indexed":false,"name":"token","type":"address"},{"indexed":false,"name":"protocolFeeAmount","type":"uint256"},{"indexed":false,"name":"wRBTCConverted","type":"uint256"}],"name":"WithdrawFees","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":true,"inputs":[],"name":"converterType","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_oracle","type":"address"}],"name":"setOracle","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"acceptAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_weight","type":"uint32"}],"name":"addReserve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"targetAmountAndFee","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_reserveTokens","type":"address[]"},{"name":"_reserveAmounts","type":"uint256[]"},{"name":"_minReturn","type":"uint256"}],"name":"addLiquidity","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"},{"name":"_reserveTokens","type":"address[]"},{"name":"_reserveMinReturnAmounts","type":"uint256[]"}],"name":"removeLiquidity","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"}],"name":"fund","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"}],"name":"liquidate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"lpTokens","type":"uint256"}],"name":"getExpectedOutAmount","outputs":[{"name":"amountOut","type":"uint256[2]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_x","type":"uint256"}],"name":"decimalLength","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[{"name":"_n","type":"uint256"},{"name":"_d","type":"uint256"}],"name":"roundDiv","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[{"name":"_values","type":"uint256[]"}],"name":"geometricMean","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"}] \ No newline at end of file diff --git a/solidity/build/LiquidityPoolV1Converter.bin b/solidity/build/LiquidityPoolV1Converter.bin index e3091be..2759b66 100644 --- a/solidity/build/LiquidityPoolV1Converter.bin +++ b/solidity/build/LiquidityPoolV1Converter.bin @@ -1 +1 @@ -608060405260016004557fc0829421c1d260bd3cb3e0f06cfe2d52db2ce3150000000000000000000000006009553480156200003a57600080fd5b5060405160608062004b6583398101604090815281516020830151919092015160008054600160a060020a031916331790558282828282828180620000888164010000000062000135810204565b5060028054600160a060020a03909216600160a060020a031992831681179091556003805490921617905582620000c88164010000000062000135810204565b81620000dd81640100000000620001b0810204565b505060058054600160a060020a03909416600160a060020a031990941693909317909255506009805463ffffffff9092166401000000000267ffffffff00000000199092169190911790555062000229945050505050565b600160a060020a0381161515620001ad57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b620f424063ffffffff82161115620001ad57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b61492c80620002396000396000f3006080604052600436106102585763ffffffff60e060020a600035041663024c7ec781146102e45780630c7d5cd8146102fe5780630e53aae91461032c57806312c2aca41461038157806319b64015146103aa5780631cfab290146103de5780631e1401f8146103ff57806321e6b53d1461044257806322f3e2d4146104635780632fe8a6ad1461047857806338a5e0161461048d578063395900d4146104a25780633e8ff43f146104cc578063415f1240146104f857806349d10b64146105105780634af80f0e1461052557806354fd4d5014610546578063579cd3ca1461055b5780635e35359e1461057057806361cd756e1461059a57806367b6d57c146105af578063690d8320146105d05780636a49d2c4146105f15780636aa5332c1461061b57806371f52bf31461064557806379ba50971461065a5780637b1039991461066f5780637d8916bd146106845780638da5cb5b1461070757806394c275ad1461071c5780639b99a8e214610731578063a60e772414610746578063af94b8d81461079b578063b127c0a5146107c5578063b4a176d314610858578063bbb7e5d81461086d578063bf75455814610888578063c45d3d921461089d578063ca1d209d146108b2578063cdc91c69146108bd578063d031370b146108d2578063d260529c146108ea578063d3fb73b4146108ff578063d4ee1d9014610914578063d55ec69714610929578063d66bd5241461093e578063d89595121461095f578063dc8de37914610980578063e8dc12ff146109a1578063ecbca55d146109cb578063f2fde38b146109e9578063fc0c546a14610a0a575b6000805160206148a183398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1615156102e2576040805160e560020a62461bcd0281526020600482015260136024820152600080516020614841833981519152604482015290519081900360640190fd5b005b3480156102f057600080fd5b506102e26004351515610a1f565b34801561030a57600080fd5b50610313610a67565b6040805163ffffffff9092168252519081900360200190f35b34801561033857600080fd5b5061034d600160a060020a0360043516610a73565b6040805195865263ffffffff9094166020860152911515848401521515606084015215156080830152519081900360a00190f35b34801561038d57600080fd5b50610396610b0e565b604080519115158252519081900360200190f35b3480156103b657600080fd5b506103c2600435610b57565b60408051600160a060020a039092168252519081900360200190f35b3480156103ea57600080fd5b50610313600160a060020a0360043516610b83565b34801561040b57600080fd5b50610429600160a060020a0360043581169060243516604435610bb5565b6040805192835260208301919091528051918290030190f35b34801561044e57600080fd5b506102e2600160a060020a0360043516610bcf565b34801561046f57600080fd5b50610396610be3565b34801561048457600080fd5b50610396610c7d565b34801561049957600080fd5b506102e2610c9e565b3480156104ae57600080fd5b506102e2600160a060020a0360043581169060243516604435610cb0565b3480156104d857600080fd5b506104e1610d4b565b6040805161ffff9092168252519081900360200190f35b34801561050457600080fd5b506102e2600435610d50565b34801561051c57600080fd5b506102e2610f94565b34801561053157600080fd5b506102e2600160a060020a0360043516611201565b34801561055257600080fd5b506104e1611243565b34801561056757600080fd5b50610313611248565b34801561057c57600080fd5b506102e2600160a060020a0360043581169060243516604435611260565b3480156105a657600080fd5b506103c2611369565b3480156105bb57600080fd5b506102e2600160a060020a0360043516611378565b3480156105dc57600080fd5b506102e2600160a060020a036004351661141b565b3480156105fd57600080fd5b506102e2600160a060020a036004351663ffffffff60243516611520565b34801561062757600080fd5b5061063360043561175f565b60408051918252519081900360200190f35b34801561065157600080fd5b506104e1611784565b34801561066657600080fd5b506102e2611793565b34801561067b57600080fd5b506103c2611854565b604080516020600480358082013583810280860185019096528085526102e295369593946024949385019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a99890198929750908201955093508392508501908490808284375094975050933594506118639350505050565b34801561071357600080fd5b506103c2611b62565b34801561072857600080fd5b50610313611b71565b34801561073d57600080fd5b506104e1611b85565b34801561075257600080fd5b506040805160206004803580820135838102808601850190965280855261063395369593946024949385019291829185019084908082843750949750611b8b9650505050505050565b3480156107a757600080fd5b50610429600160a060020a0360043581169060243516604435611be1565b3480156107d157600080fd5b506040805160206004602480358281013584810280870186019097528086526102e296843596369660449591949091019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a998901989297509082019550935083925085019084908082843750949750611d869650505050505050565b34801561086457600080fd5b506102e2611eba565b34801561087957600080fd5b50610633600435602435611ef3565b34801561089457600080fd5b50610396611f0d565b3480156108a957600080fd5b506103c2611f12565b6102e2600435611f21565b3480156108c957600080fd5b506102e261242e565b3480156108de57600080fd5b506103c2600435612487565b3480156108f657600080fd5b50610396610d4b565b34801561090b57600080fd5b506103c26124af565b34801561092057600080fd5b506103c26124be565b34801561093557600080fd5b506102e26124cd565b34801561094a57600080fd5b5061034d600160a060020a03600435166125c2565b34801561096b57600080fd5b50610633600160a060020a0360043516612608565b34801561098c57600080fd5b50610633600160a060020a0360043516612619565b610633600160a060020a036004358116906024358116906044359060643581169060843516612642565b3480156109d757600080fd5b506102e263ffffffff60043516612895565b3480156109f557600080fd5b506102e2600160a060020a036004351661298a565b348015610a1657600080fd5b506103c2612a27565b610a27612a36565b60038054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b60095463ffffffff1681565b6000806000806000610a836147f3565b50505050600160a060020a03929092166000908152600860209081526040808320815160a081018352815480825260019092015463ffffffff811694820185905260ff64010000000082048116151594830194909452650100000000008104841615156060830152660100000000000090049092161515608090920182905295919450919250829190565b6000805160206148a183398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1690565b6000600782815481101515610b6857fe5b600091825260209091200154600160a060020a031692915050565b600081610b8f81612a86565b5050600160a060020a031660009081526008602052604090206001015463ffffffff1690565b600080610bc3858585611be1565b91509150935093915050565b610bd7612a36565b610be081611378565b50565b600030600160a060020a0316600560009054906101000a9004600160a060020a0316600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015610c4257600080fd5b505af1158015610c56573d6000803e3d6000fd5b505050506040513d6020811015610c6c57600080fd5b5051600160a060020a031614905090565b60035474010000000000000000000000000000000000000000900460ff1681565b610ca6612a36565b610cae61242e565b565b610cb8612a36565b600554604080517f5e35359e000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015285811660248301526044820185905291519190921691635e35359e91606480830192600092919082900301818387803b158015610d2e57600080fd5b505af1158015610d42573d6000803e3d6000fd5b50505050505050565b600190565b600060606000610d5e612af3565b600260045560008411610dbb576040805160e560020a62461bcd02815260206004820152600f60248201527f4552525f5a45524f5f414d4f554e540000000000000000000000000000000000604482015290519081900360640190fd5b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015610e0e57600080fd5b505af1158015610e22573d6000803e3d6000fd5b505050506040513d6020811015610e3857600080fd5b5051600554604080517fa24835d1000000000000000000000000000000000000000000000000000000008152336004820152602481018890529051929550600160a060020a039091169163a24835d19160448082019260009290919082900301818387803b158015610ea957600080fd5b505af1158015610ebd573d6000803e3d6000fd5b50505050600780549050604051908082528060200260200182016040528015610ef0578160200160208202803883390190505b509150600090505b8151811015610f235760018282815181101515610f1157fe5b60209081029091010152600101610ef8565b610f896007805480602002602001604051908101604052809291908181526020018280548015610f7c57602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311610f5e575b5050505050838587612b4d565b505060016004555050565b60008054600160a060020a0316331480610fc9575060035474010000000000000000000000000000000000000000900460ff16155b151561100d576040805160e560020a62461bcd02815260206004820152601160248201526000805160206148e1833981519152604482015290519081900360640190fd5b6110367f436f6e7472616374526567697374727900000000000000000000000000000000612e12565b600254909150600160a060020a0380831691161480159061105f5750600160a060020a03811615155b15156110b5576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b604080517fbb34534c0000000000000000000000000000000000000000000000000000000081527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b15801561113957600080fd5b505af115801561114d573d6000803e3d6000fd5b505050506040513d602081101561116357600080fd5b5051600160a060020a031614156111c4576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a0380841673ffffffffffffffffffffffffffffffffffffffff19928316179092559091169216919091179055565b611209612a36565b8061121381612eaa565b506006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b602081565b60095468010000000000000000900463ffffffff1681565b600061126a612af3565b6002600455611277612a36565b61128e600080516020614881833981519152612e12565b600160a060020a0385166000908152600860205260409020600101549091506601000000000000900460ff1615806112cb57506112c9610be3565b155b806112e35750600054600160a060020a038281169116145b1515611327576040805160e560020a62461bcd02815260206004820152601160248201526000805160206148e1833981519152604482015290519081900360640190fd5b611332848484612f0b565b600160a060020a0384166000908152600860205260409020600101546601000000000000900460ff1615610f8957610f8984612f3c565b600354600160a060020a031681565b611380612a36565b60008051602061488183398151915261139881613031565b600554604080517ff2fde38b000000000000000000000000000000000000000000000000000000008152600160a060020a0385811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b1580156113ff57600080fd5b505af1158015611413573d6000803e3d6000fd5b505050505050565b6000611425612af3565b6002600455611432612a36565b6000805160206148a183398151915261144a81612a86565b611461600080516020614881833981519152612e12565b915061146b610be3565b15806114845750600054600160a060020a038381169116145b15156114c8576040805160e560020a62461bcd02815260206004820152601160248201526000805160206148e1833981519152604482015290519081900360640190fd5b604051600160a060020a03841690303180156108fc02916000818181858888f193505050501580156114fe573d6000803e3d6000fd5b506115166000805160206148a1833981519152612f3c565b5050600160045550565b600061152a612a36565b611532613087565b8261153c816130e4565b8361154681612eaa565b8361155081613144565b600554600160a060020a038781169116148015906115945750600160a060020a0386166000908152600860205260409020600101546601000000000000900460ff16155b15156115d8576040805160e560020a62461bcd0281526020600482015260136024820152600080516020614841833981519152604482015290519081900360640190fd5b60095463ffffffff908116620f42400381169086161115611643576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b61ffff61164e611b85565b61ffff16106116a7576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f434f554e5400000000000000604482015290519081900360640190fd5b505050600160a060020a0390921660008181526008602052604081208181556001908101805466ff0000000000001963ffffffff80881663ffffffff1993841617919091166601000000000000179092556007805493840181559093527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688909101805473ffffffffffffffffffffffffffffffffffffffff191690931790925560098054808416909401909216921691909117905550565b600080825b600081111561177d5760019190910190600a9004611764565b5092915050565b600061178e611b85565b905090565b600154600160a060020a031633146117e3576040805160e560020a62461bcd02815260206004820152601160248201526000805160206148e1833981519152604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600254600160a060020a031681565b6000806000611870612af3565b600260045561187d6131b9565b611888868686613217565b600092505b85518310156119465785516000805160206148a1833981519152908790859081106118b457fe5b90602001906020020151600160a060020a0316141561193b573485848151811015156118dc57fe5b602090810290910101511461193b576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b60019092019161188d565b60003411156119eb576000805160206148a183398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1615156119eb576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f4e4f5f4554485f524553455256450000000000000000000000000000604482015290519081900360640190fd5b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611a3e57600080fd5b505af1158015611a52573d6000803e3d6000fd5b505050506040513d6020811015611a6857600080fd5b50519150611a778686846134d3565b905083811015611ad1576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f52455455524e5f544f4f5f4c4f570000000000000000000000000000604482015290519081900360640190fd5b600554604080517f867904b4000000000000000000000000000000000000000000000000000000008152336004820152602481018490529051600160a060020a039092169163867904b49160448082019260009290919082900301818387803b158015611b3d57600080fd5b505af1158015611b51573d6000803e3d6000fd5b505060016004555050505050505050565b600054600160a060020a031681565b600954640100000000900463ffffffff1681565b60075490565b80516000908190815b81811015611bc857611bbc8582815181101515611bad57fe5b9060200190602002015161175f565b90920191600101611b94565b6001611bd48484611ef3565b03600a0a95945050505050565b600080600080611bef6131b9565b86611bf981612a86565b86611c0381612a86565b600160a060020a038981169089161415611c67576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f53414d455f534f555243455f54415247455400000000000000000000604482015290519081900360640190fd5b611c7e6000805160206148c1833981519152612e12565b600160a060020a03166394491fab611c958b612619565b600160a060020a038c1660009081526008602052604090206001015463ffffffff16611cc08c612619565b600160a060020a038d16600090815260086020908152604080832060010154815163ffffffff89811660e060020a028252600482019890985295871660248701526044860194909452949092166064840152608483018d9052925160a48084019492939192918390030190829087803b158015611d3c57600080fd5b505af1158015611d50573d6000803e3d6000fd5b505050506040513d6020811015611d6657600080fd5b50519350611d7384613502565b9384900399939850929650505050505050565b6000611d90612af3565b6002600455611d9d6131b9565b611da8838386613217565b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611dfb57600080fd5b505af1158015611e0f573d6000803e3d6000fd5b505050506040513d6020811015611e2557600080fd5b5051600554604080517fa24835d1000000000000000000000000000000000000000000000000000000008152336004820152602481018890529051929350600160a060020a039091169163a24835d19160448082019260009290919082900301818387803b158015611e9657600080fd5b505af1158015611eaa573d6000803e3d6000fd5b50505050610f8983838387612b4d565b611ec2612a36565b6003546002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03909216919091179055565b600081600281048401811515611f0557fe5b049392505050565b600181565b600654600160a060020a031681565b600080600080600080600080600080611f38612af3565b6002600455611f4561353e565b6000805160206148a1833981519152600052600860205260008051602061486183398151915254611f7c903463ffffffff61358016565b6000805160206148a183398151915260009081526008602090815260008051602061486183398151915292909255600554604080517f18160ddd0000000000000000000000000000000000000000000000000000000081529051600160a060020a03909216936318160ddd9360048084019492938390030190829087803b15801561200657600080fd5b505af115801561201a573d6000803e3d6000fd5b505050506040513d602081101561203057600080fd5b5051995061204b6000805160206148c1833981519152612e12565b6007549099509750600096505b8787101561239857600780548890811061206e57fe5b9060005260206000200160009054906101000a9004600160a060020a031695506008600087600160a060020a0316600160a060020a0316815260200190815260200160002060000154945088600160a060020a031663ebbb21588b87600960009054906101000a900463ffffffff168f6040518563ffffffff1660e060020a028152600401808581526020018481526020018363ffffffff1663ffffffff168152602001828152602001945050505050602060405180830381600087803b15801561213857600080fd5b505af115801561214c573d6000803e3d6000fd5b505050506040513d602081101561216257600080fd5b50519350600160a060020a0386166000805160206148a183398151915214156122c457833411156121c25760405133903486900380156108fc02916000818181858888f193505050501580156121bc573d6000803e3d6000fd5b506122bf565b833410156122bf573415612220576040805160e560020a62461bcd02815260206004820152601560248201527f4552525f494e56414c49445f4554485f56414c55450000000000000000000000604482015290519081900360640190fd5b600954612248906c010000000000000000000000009004600160a060020a03163330876135e0565b6009600c9054906101000a9004600160a060020a0316600160a060020a0316632e1a7d4d856040518263ffffffff1660e060020a02815260040180828152602001915050600060405180830381600087803b1580156122a657600080fd5b505af11580156122ba573d6000803e3d6000fd5b505050505b6122d0565b6122d0863330876135e0565b6122e0858563ffffffff6136c816565b600160a060020a0387166000908152600860205260409020819055925061230d8a8c63ffffffff6136c816565b60408051868152602081018690528082018390529051919350600160a060020a0388169133917f4a1a2a6176e9646d9e3157f7c2ab3c499f18337c0b0828cfb28e0a61de4a11f7919081900360600190a350600160a060020a03851660009081526008602052604090206001015463ffffffff1661238d82878584613725565b600190960195612058565b600554604080517f867904b4000000000000000000000000000000000000000000000000000000008152336004820152602481018e90529051600160a060020a039092169163867904b49160448082019260009290919082900301818387803b15801561240457600080fd5b505af1158015612418573d6000803e3d6000fd5b5050600160045550505050505050505050505050565b612436612a36565b61243e613794565b600554600190600160a060020a0316612455610d4b565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a4565b600780548290811061249557fe5b600091825260209091200154600160a060020a0316905081565b600554600160a060020a031681565b600154600160a060020a031681565b60006124d7612a36565b6124ee600080516020614881833981519152612e12565b600554909150600090600160a060020a0316612508610d4b565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a46125418161298a565b604080517f90f58c96000000000000000000000000000000000000000000000000000000008152602060048201529051600160a060020a038316916390f58c9691602480830192600092919082900301818387803b1580156125a257600080fd5b505af11580156125b6573d6000803e3d6000fd5b50505050610be0611793565b6008602052600090815260409020805460019091015463ffffffff81169060ff640100000000820481169165010000000000810482169166010000000000009091041685565b600061261382612619565b92915050565b60008161262581612a86565b5050600160a060020a031660009081526008602052604090205490565b600061264c612af3565b60026004557f536f7672796e537761704e6574776f726b00000000000000000000000000000061267b81613031565b600160a060020a0387811690871614156126df576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f53414d455f534f555243455f54415247455400000000000000000000604482015290519081900360640190fd5b600654600160a060020a031615806128225750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03878116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b15801561275a57600080fd5b505af115801561276e573d6000803e3d6000fd5b505050506040513d602081101561278457600080fd5b505180156128225750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b1580156127f557600080fd5b505af1158015612809573d6000803e3d6000fd5b505050506040513d602081101561281f57600080fd5b50515b1515612878576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f4e4f545f57484954454c495354454400000000000000000000000000604482015290519081900360640190fd5b61288587878787876137ff565b6001600455979650505050505050565b61289d612a36565b60095463ffffffff64010000000090910481169082161115612909576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b6009546040805163ffffffff6801000000000000000090930483168152918316602083015280517f81cd2ffb37dd237c0e4e2a3de5265fcf9deb43d3e7801e80db9f1ccfba7ee6009281900390910190a16009805463ffffffff90921668010000000000000000026bffffffff000000000000000019909216919091179055565b612992612a36565b600054600160a060020a03828116911614156129f8576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600554600160a060020a031690565b600054600160a060020a03163314610cae576040805160e560020a62461bcd02815260206004820152601160248201526000805160206148e1833981519152604482015290519081900360640190fd5b600160a060020a0381166000908152600860205260409020600101546601000000000000900460ff161515610be0576040805160e560020a62461bcd0281526020600482015260136024820152600080516020614841833981519152604482015290519081900360640190fd5b600454600114610cae576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5245454e5452414e4359000000000000000000000000000000000000604482015290519081900360640190fd5b600080600080600080600080612b6161353e565b612b786000805160206148c1833981519152612e12565b9750612b8a8a8a63ffffffff61358016565b9650600095505b8b51861015612e04578b86815181101515612ba857fe5b9060200190602002015194506008600086600160a060020a0316600160a060020a0316815260200190815260200160002060000154935087600160a060020a0316638074590a8b86600960009054906101000a900463ffffffff168d6040518563ffffffff1660e060020a028152600401808581526020018481526020018363ffffffff1663ffffffff168152602001828152602001945050505050602060405180830381600087803b158015612c5e57600080fd5b505af1158015612c72573d6000803e3d6000fd5b505050506040513d6020811015612c8857600080fd5b50518b519093508b9087908110612c9b57fe5b60209081029091010151831015612cfc576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b612d0c848463ffffffff61358016565b600160a060020a03861660008181526008602052604090208290559092506000805160206148a18339815191521415612d7257604051339084156108fc029085906000818181858888f19350505050158015612d6c573d6000803e3d6000fd5b50612d7d565b612d7d853385613ad2565b60408051848152602081018490528082018990529051600160a060020a0387169133917fbc7d19d505c7ec4db83f3b51f19fb98c4c8a99922e7839d1ee608dfbee29501b9181900360600190a350600160a060020a03841660009081526008602052604090206001015463ffffffff16612df987868484613725565b600190950194612b91565b505050505050505050505050565b600254604080517fbb34534c000000000000000000000000000000000000000000000000000000008152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b158015612e7857600080fd5b505af1158015612e8c573d6000803e3d6000fd5b505050506040513d6020811015612ea257600080fd5b505192915050565b600160a060020a038116301415610be0576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b612f13612a36565b82612f1d816130e4565b82612f27816130e4565b83612f3181612eaa565b611413868686613ad2565b80612f4681612a86565b600160a060020a0382166000805160206148a18339815191521415612f8657600160a060020a03821660009081526008602052604090203031905561302d565b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051600160a060020a038416916370a082319160248083019260209291908290030181600087803b158015612fe757600080fd5b505af1158015612ffb573d6000803e3d6000fd5b505050506040513d602081101561301157600080fd5b5051600160a060020a0383166000908152600860205260409020555b5050565b61303a81612e12565b600160a060020a03163314610be0576040805160e560020a62461bcd02815260206004820152601160248201526000805160206148e1833981519152604482015290519081900360640190fd5b61308f610be3565b15610cae576040805160e560020a62461bcd02815260206004820152600a60248201527f4552525f41435449564500000000000000000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a0381161515610be0576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b60008163ffffffff161180156131635750620f424063ffffffff821611155b1515610be0576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b6131c1610be3565b1515610cae576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f494e4143544956450000000000000000000000000000000000000000604482015290519081900360640190fd5b600754835160009182918114613265576040805160e560020a62461bcd0281526020600482015260136024820152600080516020614841833981519152604482015290519081900360640190fd5b845181146132bd576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b600092505b8083101561347b576008600087858151811015156132dc57fe5b6020908102909101810151600160a060020a031682528101919091526040016000206001015460ff6601000000000000909104161515613354576040805160e560020a62461bcd0281526020600482015260136024820152600080516020614841833981519152604482015290519081900360640190fd5b600091505b808210156133bc57858281518110151561336f57fe5b90602001906020020151600160a060020a031660078481548110151561339157fe5b600091825260209091200154600160a060020a031614156133b1576133bc565b600190910190613359565b808210613401576040805160e560020a62461bcd0281526020600482015260136024820152600080516020614841833981519152604482015290519081900360640190fd5b6000858481518110151561341157fe5b6020908102909101015111613470576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b6001909201916132c2565b60008411611413576040805160e560020a62461bcd02815260206004820152600f60248201527f4552525f5a45524f5f414d4f554e540000000000000000000000000000000000604482015290519081900360640190fd5b60008115156134ed576134e68484613b89565b90506134fb565b6134f8848484613d90565b90505b9392505050565b60095460009061261390620f42409061353290859068010000000000000000900463ffffffff9081169061415016565b9063ffffffff6141c916565b60075460005b8181101561302d5761357860078281548110151561355e57fe5b600091825260209091200154600160a060020a0316612f3c565b600101613544565b6000818310156135da576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b604080517f7472616e7366657246726f6d28616464726573732c616464726573732c75696e81527f74323536290000000000000000000000000000000000000000000000000000006020808301919091528251918290036025018220600160a060020a038088166024850152861660448401526064808401869052845180850390910181526084909301909352810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19909316929092179091526136c2908590614237565b50505050565b6000828201838110156134fb576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b600554600160a060020a0380851691167f77f29993cf2c084e726f7e802da0719d6a0ade3e204badc7a3ffd57ecb768c2461376385620f4240614150565b6137768863ffffffff8088169061415016565b6040805192835260208301919091528051918290030190a350505050565b600161379e611b85565b61ffff16116137f7576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f434f554e5400000000000000604482015290519081900360640190fd5b610cae6142c5565b600080600080613810898989611be1565b909350915082151561386c576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b61387588612619565b905080831061388057fe5b600160a060020a0389166000805160206148a183398151915214156138fb573487146138f6576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b613a03565b341580156139ad5750866139aa6139118b612619565b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051600160a060020a038e16916370a082319160248083019260209291908290030181600087803b15801561397257600080fd5b505af1158015613986573d6000803e3d6000fd5b505050506040513d602081101561399c57600080fd5b50519063ffffffff61358016565b10155b1515613a03576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b613a0c89612f3c565b600160a060020a038816600090815260086020526040902054613a35908463ffffffff61358016565b600160a060020a0389166000818152600860205260409020919091556000805160206148a18339815191521415613aa257604051600160a060020a0386169084156108fc029085906000818181858888f19350505050158015613a9c573d6000803e3d6000fd5b50613aad565b613aad888685613ad2565b613abb8989888a87876143a3565b613ac58989614428565b5090979650505050505050565b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1990931692909217909152613b84908490614237565b505050565b600080600080613b9885611b8b565b9250600091505b8551821015613d865785516000805160206148a183398151915290879084908110613bc657fe5b60209081029091010151600160a060020a031614613c1857613c188683815181101515613bef57fe5b9060200190602002015133308886815181101515613c0957fe5b906020019060200201516135e0565b8482815181101515613c2657fe5b90602001906020020151600860008885815181101515613c4257fe5b6020908102909101810151600160a060020a03168252810191909152604001600020558551869083908110613c7357fe5b90602001906020020151600160a060020a031633600160a060020a03167f4a1a2a6176e9646d9e3157f7c2ab3c499f18337c0b0828cfb28e0a61de4a11f78785815181101515613cbf57fe5b906020019060200201518886815181101515613cd757fe5b60209081029091018101516040805193845291830152818101889052519081900360600190a3600860008784815181101515613d0f57fe5b6020908102909101810151600160a060020a0316825281019190915260400160002060010154865163ffffffff9091169150613d7b908490889085908110613d5357fe5b906020019060200201518785815181101515613d6b57fe5b9060200190602002015184613725565b600190910190613b9f565b5090949350505050565b600080600080600080600080600080613da761353e565b6000805160206148a1833981519152600052600860205260008051602061486183398151915254613dde903463ffffffff61358016565b6000805160206148a1833981519152600052600860205260008051602061486183398151915255613e1c6000805160206148c1833981519152612e12565b9850613e2a898c8f8f614636565b9750613e3c8b8963ffffffff6136c816565b9650600095505b8c5186101561413f578c86815181101515613e5a57fe5b9060200190602002015194506008600086600160a060020a0316600160a060020a0316815260200190815260200160002060000154935088600160a060020a031663ebbb21588c86600960009054906101000a900463ffffffff168c6040518563ffffffff1660e060020a028152600401808581526020018481526020018363ffffffff1663ffffffff168152602001828152602001945050505050602060405180830381600087803b158015613f1057600080fd5b505af1158015613f24573d6000803e3d6000fd5b505050506040513d6020811015613f3a57600080fd5b5051925060008311613f96576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b8b86815181101515613fa457fe5b60209081029091010151831115613fb757fe5b600160a060020a0385166000805160206148a183398151915214613fe657613fe1853330866135e0565b614059565b828c87815181101515613ff557fe5b9060200190602002015111156140595733600160a060020a03166108fc848e8981518110151561402157fe5b90602001906020020151039081150290604051600060405180830381858888f19350505050158015614057573d6000803e3d6000fd5b505b614069848463ffffffff6136c816565b600160a060020a03861660008181526008602090815260409182902084905581518781529081018490528082018b90529051929450909133917f4a1a2a6176e9646d9e3157f7c2ab3c499f18337c0b0828cfb28e0a61de4a11f7919081900360600190a3600860008e888151811015156140df57fe5b6020908102909101810151600160a060020a03168252810191909152604001600020600101548d5163ffffffff90911691506141349088908f908990811061412357fe5b906020019060200201518484613725565b600190950194613e43565b50959b9a5050505050505050505050565b600080831515614163576000915061177d565b5082820282848281151561417357fe5b04146134fb576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b600080808311614223576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f4449564944455f42595f5a45524f0000000000000000000000000000604482015290519081900360640190fd5b828481151561422e57fe5b04949350505050565b61423f614821565b602060405190810160405280600181525090506020818351602085016000875af180151561426c57600080fd5b5080511515613b84576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b6142cd612a36565b60006142d7611b85565b61ffff1611614330576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f434f554e5400000000000000604482015290519081900360640190fd5b600560009054906101000a9004600160a060020a0316600160a060020a03166379ba50976040518163ffffffff1660e060020a028152600401600060405180830381600087803b15801561438357600080fd5b505af1158015614397573d6000803e3d6000fd5b50505050610cae61353e565b7f800000000000000000000000000000000000000000000000000000000000000081106143cc57fe5b60408051848152602081018490528082018390529051600160a060020a038087169288821692918a16917f276856b36cbc45526a0ba64f44611557a2a8b68662c5388e9fe6d72e86e1c8cb9181900360600190a4505050505050565b6000806000806000806000600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561448657600080fd5b505af115801561449a573d6000803e3d6000fd5b505050506040513d60208110156144b057600080fd5b505196506144bd89612619565b95506144c888612619565b600160a060020a03808b16600090815260086020526040808220600190810154938d1683529120015491965063ffffffff90811695509081169350614511908690869061415016565b91506145268663ffffffff8086169061415016565b60408051848152602081018390528151929350600160a060020a03808c1693908d16927f77f29993cf2c084e726f7e802da0719d6a0ade3e204badc7a3ffd57ecb768c24928290030190a361457d878a8887613725565b61458987898786613725565b604080518881526020810188905263ffffffff8616818301529051600160a060020a038b16917f8a6a7f53b3c8fa1dc4b83e3f1be668c1b251ff8d44cdcb83eb3acec3fec6a788919081900360600190a2604080518881526020810187905263ffffffff8516818301529051600160a060020a038a16917f8a6a7f53b3c8fa1dc4b83e3f1be668c1b251ff8d44cdcb83eb3acec3fec6a788919081900360600190a2505050505050505050565b60008060015b84518110156146f9576146a160086000878481518110151561465a57fe5b6020908102909101810151600160a060020a0316825281019190915260400160002054855186908590811061468b57fe5b602090810290910101519063ffffffff61415016565b6146e76008600088868151811015156146b657fe5b6020908102909101810151600160a060020a0316825281019190915260400160002054865187908590811061468b57fe5b10156146f1578091505b60010161463c565b86600160a060020a0316632f55bdb58760086000898781518110151561471b57fe5b6020908102909101810151600160a060020a0316825281019190915260400160002054600954885163ffffffff9091169089908890811061475857fe5b906020019060200201516040518563ffffffff1660e060020a028152600401808581526020018481526020018363ffffffff1663ffffffff168152602001828152602001945050505050602060405180830381600087803b1580156147bc57600080fd5b505af11580156147d0573d6000803e3d6000fd5b505050506040513d60208110156147e657600080fd5b5051979650505050505050565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b602060405190810160405280600190602082028038833950919291505056004552525f494e56414c49445f5245534552564500000000000000000000000000353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c42536f7672796e53776170436f6e76657274657255706772616465720000000000000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee536f7672796e53776170466f726d756c610000000000000000000000000000004552525f4143434553535f44454e494544000000000000000000000000000000a165627a7a72305820e11a7a512fa58be542ef6f48b8986264eed6c32fa0a07382d7f2085a38ab0b220029 \ No newline at end of file +60806040526001600455600980546001606060020a0319169055600b8054600160a060020a03191673c0829421c1d260bd3cb3e0f06cfe2d52db2ce3151790553480156200004c57600080fd5b5060405160608062005dad83398101604090815281516020830151919092015160008054600160a060020a0319163317905582828282828281806200009a8164010000000062000147810204565b5060028054600160a060020a03909216600160a060020a031992831681179091556003805490921617905582620000da8164010000000062000147810204565b81620000ef81640100000000620001c2810204565b505060058054600160a060020a03909416600160a060020a031990941693909317909255506009805463ffffffff9092166401000000000267ffffffff0000000019909216919091179055506200023b945050505050565b600160a060020a0381161515620001bf57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b620f424063ffffffff82161115620001bf57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b615b62806200024b6000396000f3006080604052600436106102bb5763ffffffff60e060020a600035041663024c7ec78114610347578063064bda02146103615780630c7d5cd8146103945780630e53aae9146103c257806312c2aca414610417578063164e68de1461044057806319b64015146104615780631cfab290146104955780631e1401f8146104b657806321e6b53d146104f957806322f3e2d41461051a5780632fe8a6ad1461052f5780633266f45c146105445780633341e0061461055957806338a5e0161461057a578063395900d41461058f5780633e8ff43f146105b9578063415f1240146105e557806349d10b64146105fd5780634af80f0e1461061257806354fd4d5014610633578063579cd3ca146106485780635e35359e1461065d57806361cd756e1461068757806367b6d57c1461069c578063690d8320146106bd5780636a49d2c4146106de5780636aa5332c1461070857806371f52bf31461072057806379ba5097146107355780637adbf9731461074a5780637b1039991461076b5780637d8916bd146107805780637dc0d1d0146108035780638da5cb5b14610818578063918f86741461082d57806394c275ad146108425780639b99a8e2146108575780639ddc230a1461086c578063a60e772414610881578063af94b8d8146108d6578063b127c0a514610900578063b4a176d314610993578063bbb7e5d8146109a8578063bf754558146109c3578063c45d3d92146109d8578063ca1d209d146109ed578063cdc91c69146109f8578063d031370b14610a0d578063d260529c14610a25578063d3fb73b414610a3a578063d4ee1d9014610a4f578063d55ec69714610a64578063d66bd52414610a79578063d895951214610a9a578063dc8de37914610abb578063e8dc12ff14610adc578063ecbca55d14610b06578063f169a02114610b24578063f2fde38b14610b77578063fc0c546a14610b98575b600080516020615a9783398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff161515610345576040805160e560020a62461bcd0281526020600482015260136024820152600080516020615a37833981519152604482015290519081900360640190fd5b005b34801561035357600080fd5b506103456004351515610bad565b34801561036d57600080fd5b50610382600160a060020a0360043516610bf5565b60408051918252519081900360200190f35b3480156103a057600080fd5b506103a9610c07565b6040805163ffffffff9092168252519081900360200190f35b3480156103ce57600080fd5b506103e3600160a060020a0360043516610c13565b6040805195865263ffffffff9094166020860152911515848401521515606084015215156080830152519081900360a00190f35b34801561042357600080fd5b5061042c610cae565b604080519115158252519081900360200190f35b34801561044c57600080fd5b50610382600160a060020a0360043516610cf7565b34801561046d57600080fd5b506104796004356112eb565b60408051600160a060020a039092168252519081900360200190f35b3480156104a157600080fd5b506103a9600160a060020a0360043516611317565b3480156104c257600080fd5b506104e0600160a060020a0360043581169060243516604435611349565b6040805192835260208301919091528051918290030190f35b34801561050557600080fd5b50610345600160a060020a0360043516611363565b34801561052657600080fd5b5061042c611377565b34801561053b57600080fd5b5061042c611411565b34801561055057600080fd5b50610382611432565b34801561056557600080fd5b50610382600160a060020a0360043516611438565b34801561058657600080fd5b50610345611453565b34801561059b57600080fd5b50610345600160a060020a0360043581169060243516604435611465565b3480156105c557600080fd5b506105ce611500565b6040805161ffff9092168252519081900360200190f35b3480156105f157600080fd5b50610345600435611505565b34801561060957600080fd5b50610345611749565b34801561061e57600080fd5b50610345600160a060020a0360043516611993565b34801561063f57600080fd5b506105ce6119c8565b34801561065457600080fd5b506103a96119cd565b34801561066957600080fd5b50610345600160a060020a03600435811690602435166044356119e5565b34801561069357600080fd5b50610479611aee565b3480156106a857600080fd5b50610345600160a060020a0360043516611afd565b3480156106c957600080fd5b50610345600160a060020a0360043516611ba0565b3480156106ea57600080fd5b50610345600160a060020a036004351663ffffffff60243516611ca5565b34801561071457600080fd5b50610382600435611db4565b34801561072c57600080fd5b506105ce611dd9565b34801561074157600080fd5b50610345611de8565b34801561075657600080fd5b50610345600160a060020a0360043516611e9c565b34801561077757600080fd5b50610479611ec6565b6040805160206004803580820135838102808601850190965280855261034595369593946024949385019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a9989019892975090820195509350839250850190849080828437509497505093359450611ed59350505050565b34801561080f57600080fd5b506104796121d4565b34801561082457600080fd5b506104796121e3565b34801561083957600080fd5b506103826121f2565b34801561084e57600080fd5b506103a96121f8565b34801561086357600080fd5b506105ce61220c565b34801561087857600080fd5b50610382612212565b34801561088d57600080fd5b5060408051602060048035808201358381028086018501909652808552610382953695939460249493850192918291850190849080828437509497506122189650505050505050565b3480156108e257600080fd5b506104e0600160a060020a036004358116906024351660443561226e565b34801561090c57600080fd5b5060408051602060046024803582810135848102808701860190975280865261034596843596369660449591949091019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a9989019892975090820195509350839250850190849080828437509497506124219650505050505050565b34801561099f57600080fd5b50610345612555565b3480156109b457600080fd5b50610382600435602435612581565b3480156109cf57600080fd5b5061042c61259b565b3480156109e457600080fd5b506104796125a0565b6103456004356125af565b348015610a0457600080fd5b50610345612ab4565b348015610a1957600080fd5b50610479600435612b0d565b348015610a3157600080fd5b5061042c611500565b348015610a4657600080fd5b50610479612b35565b348015610a5b57600080fd5b50610479612b44565b348015610a7057600080fd5b50610345612b53565b348015610a8557600080fd5b506103e3600160a060020a0360043516612c48565b348015610aa657600080fd5b50610382600160a060020a0360043516612c8e565b348015610ac757600080fd5b50610382600160a060020a0360043516612c9f565b610382600160a060020a036004358116906024358116906044359060643581169060843516612cc8565b348015610b1257600080fd5b5061034563ffffffff60043516612f1b565b348015610b3057600080fd5b50610b3c600435613010565b6040518082600260200280838360005b83811015610b64578181015183820152602001610b4c565b5050505090500191505060405180910390f35b348015610b8357600080fd5b50610345600160a060020a03600435166131d0565b348015610ba457600080fd5b50610479613260565b610bb561326f565b60038054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b600a6020526000908152604090205481565b60095463ffffffff1681565b6000806000806000610c236159ce565b50505050600160a060020a03929092166000908152600860209081526040808320815160a081018352815480825260019092015463ffffffff811694820185905260ff64010000000082048116151594830194909452650100000000008104841615156060830152660100000000000090049092161515608090920182905295919450919250829190565b600080516020615a9783398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1690565b6000806000806000806000806060610d0d6132bf565b600160a060020a03163314610d6c576040805160e560020a62461bcd02815260206004820152600c60248201527f756e617574686f72697a65640000000000000000000000000000000000000000604482015290519081900360640190fd5b610d957f536f7672796e537761704e6574776f726b0000000000000000000000000000006133d6565b9450600093505b6007548410156112cb576007805485908110610db457fe5b6000918252602080832090910154600160a060020a0316808352600a909152604082205490995097508711610de8576112c0565b600160a060020a0388166000908152600a6020526040812055610e09613458565b600160a060020a031688600160a060020a03161415610f505787600160a060020a031663095ea7b3610e396132bf565b896040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b158015610e8c57600080fd5b505af1158015610ea0573d6000803e3d6000fd5b505050506040513d6020811015610eb657600080fd5b50610ec190506132bf565b600160a060020a031663abe979e1610ed7613458565b6040805160e060020a63ffffffff8516028152600160a060020a0390921660048301526bffffffffffffffffffffffff8b16602483015251604480830192600092919082900301818387803b158015610f2f57600080fd5b505af1158015610f43573d6000803e3d6000fd5b505050506000925061126e565b610f5861353e565b600160a060020a031688600160a060020a03161415610f795786925061125b565b87600160a060020a031663095ea7b3610fb17f536f7672796e537761704e6574776f726b0000000000000000000000000000006133d6565b896040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b15801561100457600080fd5b505af1158015611018573d6000803e3d6000fd5b505050506040513d602081101561102e57600080fd5b50519150811515611089576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f415050524f56414c5f4641494c454400000000000000000000000000604482015290519081900360640190fd5b84600160a060020a031663d734fa19896110a161353e565b6040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182600160a060020a0316600160a060020a0316815260200192505050600060405180830381600087803b15801561110557600080fd5b505af1158015611119573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561114257600080fd5b81019080805164010000000081111561115a57600080fd5b8201602081018481111561116d57600080fd5b815185602082028301116401000000008211171561118a57600080fd5b5050929190505050905084600160a060020a031663f3898a97828960016040518463ffffffff1660e060020a0281526004018080602001848152602001838152602001828103825285818151815260200191508051906020019060200280838360005b838110156112055781810151838201526020016111ed565b50505050905001945050505050602060405180830381600087803b15801561122c57600080fd5b505af1158015611240573d6000803e3d6000fd5b505050506040513d602081101561125657600080fd5b505192505b61126b868463ffffffff61362416565b95505b60408051600160a060020a038a81168252602082018a90528183018690529151918c169133917f3953f559f015828db2bd3868682d85a85c6e24c3f05fb4e927797d7c007b3673919081900360600190a35b600190930192610d9c565b6112dd6112d661353e565b8b88613688565b509398975050505050505050565b60006007828154811015156112fc57fe5b600091825260209091200154600160a060020a031692915050565b6000816113238161373f565b5050600160a060020a031660009081526008602052604090206001015463ffffffff1690565b60008061135785858561226e565b91509150935093915050565b61136b61326f565b61137481611afd565b50565b600030600160a060020a0316600560009054906101000a9004600160a060020a0316600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156113d657600080fd5b505af11580156113ea573d6000803e3d6000fd5b505050506040513d602081101561140057600080fd5b5051600160a060020a031614905090565b60035474010000000000000000000000000000000000000000900460ff1681565b600e5481565b600160a060020a03166000908152600a602052604090205490565b61145b61326f565b611463612ab4565b565b61146d61326f565b600554604080517f5e35359e000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015285811660248301526044820185905291519190921691635e35359e91606480830192600092919082900301818387803b1580156114e357600080fd5b505af11580156114f7573d6000803e3d6000fd5b50505050505050565b600190565b6000606060006115136137ac565b600260045560008411611570576040805160e560020a62461bcd02815260206004820152600f60248201527f4552525f5a45524f5f414d4f554e540000000000000000000000000000000000604482015290519081900360640190fd5b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156115c357600080fd5b505af11580156115d7573d6000803e3d6000fd5b505050506040513d60208110156115ed57600080fd5b5051600554604080517fa24835d1000000000000000000000000000000000000000000000000000000008152336004820152602481018890529051929550600160a060020a039091169163a24835d19160448082019260009290919082900301818387803b15801561165e57600080fd5b505af1158015611672573d6000803e3d6000fd5b505050506007805490506040519080825280602002602001820160405280156116a5578160200160208202803883390190505b509150600090505b81518110156116d857600182828151811015156116c657fe5b602090810290910101526001016116ad565b61173e600780548060200260200160405190810160405280929190818152602001828054801561173157602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311611713575b5050505050838587613806565b505060016004555050565b60008054600160a060020a031633148061177e575060035474010000000000000000000000000000000000000000900460ff16155b15156117c2576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615af7833981519152604482015290519081900360640190fd5b6117eb7f436f6e74726163745265676973747279000000000000000000000000000000006133d6565b600254909150600160a060020a038083169116148015906118145750600160a060020a03811615155b151561186a576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6040805160e260020a632ecd14d30281527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b1580156118d857600080fd5b505af11580156118ec573d6000803e3d6000fd5b505050506040513d602081101561190257600080fd5b5051600160a060020a03161415611963576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a03808416600160a060020a0319928316179092559091169216919091179055565b61199b61326f565b806119a581613acb565b5060068054600160a060020a031916600160a060020a0392909216919091179055565b602081565b60095468010000000000000000900463ffffffff1681565b60006119ef6137ac565b60026004556119fc61326f565b611a13600080516020615a778339815191526133d6565b600160a060020a0385166000908152600860205260409020600101549091506601000000000000900460ff161580611a505750611a4e611377565b155b80611a685750600054600160a060020a038281169116145b1515611aac576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615af7833981519152604482015290519081900360640190fd5b611ab7848484613b2c565b600160a060020a0384166000908152600860205260409020600101546601000000000000900460ff161561173e5761173e84613b5d565b600354600160a060020a031681565b611b0561326f565b600080516020615a77833981519152611b1d81613c74565b600554604080517ff2fde38b000000000000000000000000000000000000000000000000000000008152600160a060020a0385811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b158015611b8457600080fd5b505af1158015611b98573d6000803e3d6000fd5b505050505050565b6000611baa6137ac565b6002600455611bb761326f565b600080516020615a97833981519152611bcf8161373f565b611be6600080516020615a778339815191526133d6565b9150611bf0611377565b1580611c095750600054600160a060020a038381169116145b1515611c4d576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615af7833981519152604482015290519081900360640190fd5b604051600160a060020a03841690303180156108fc02916000818181858888f19350505050158015611c83573d6000803e3d6000fd5b50611c9b600080516020615a97833981519152613b5d565b5050600160045550565b600080611cb061220c565b61ffff16915060028210611cfc576040805160e560020a62461bcd0281526020600482015260196024820152600080516020615b17833981519152604482015290519081900360640190fd5b506012600160a060020a038416600080516020615a9783398151915214611d8d5783600160a060020a031663313ce5676040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611d5b57600080fd5b505af1158015611d6f573d6000803e3d6000fd5b505050506040513d6020811015611d8557600080fd5b505160ff1690505b811515611d9e57600d819055611da4565b600e8190555b611dae8484613cca565b50505050565b600080825b6000811115611dd25760019190910190600a9004611db9565b5092915050565b6000611de361220c565b905090565b600154600160a060020a03163314611e38576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615af7833981519152604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a36001805460008054600160a060020a0319908116600160a060020a03841617909155169055565b611ea461326f565b600c8054600160a060020a031916600160a060020a0392909216919091179055565b600254600160a060020a031681565b6000806000611ee26137ac565b6002600455611eef613eea565b611efa868686613f48565b600092505b8551831015611fb8578551600080516020615a9783398151915290879085908110611f2657fe5b90602001906020020151600160a060020a03161415611fad57348584815181101515611f4e57fe5b6020908102909101015114611fad576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b600190920191611eff565b600034111561205d57600080516020615a9783398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff16151561205d576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f4e4f5f4554485f524553455256450000000000000000000000000000604482015290519081900360640190fd5b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156120b057600080fd5b505af11580156120c4573d6000803e3d6000fd5b505050506040513d60208110156120da57600080fd5b505191506120e9868684614204565b905083811015612143576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f52455455524e5f544f4f5f4c4f570000000000000000000000000000604482015290519081900360640190fd5b600554604080517f867904b4000000000000000000000000000000000000000000000000000000008152336004820152602481018490529051600160a060020a039092169163867904b49160448082019260009290919082900301818387803b1580156121af57600080fd5b505af11580156121c3573d6000803e3d6000fd5b505060016004555050505050505050565b600c54600160a060020a031681565b600054600160a060020a031681565b6103e881565b600954640100000000900463ffffffff1681565b60075490565b600d5481565b80516000908190815b8181101561225557612249858281518110151561223a57fe5b90602001906020020151611db4565b90920191600101612221565b60016122618484612581565b03600a0a95945050505050565b60008060008061227c613eea565b866122868161373f565b866122908161373f565b600160a060020a0389811690891614156122f4576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f53414d455f534f555243455f54415247455400000000000000000000604482015290519081900360640190fd5b61230b600080516020615ab78339815191526133d6565b600160a060020a03166394491fab6123228b612c9f565b600160a060020a038c1660009081526008602052604090206001015463ffffffff1661234d8c612c9f565b600160a060020a038d16600090815260086020908152604080832060010154815163ffffffff89811660e060020a028252600482019890985295871660248701526044860194909452949092166064840152608483018d9052925160a48084019492939192918390030190829087803b1580156123c957600080fd5b505af11580156123dd573d6000803e3d6000fd5b505050506040513d60208110156123f357600080fd5b5051935061240084614231565b9250612412848463ffffffff61426d16565b99929850919650505050505050565b600061242b6137ac565b6002600455612438613eea565b612443838386613f48565b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561249657600080fd5b505af11580156124aa573d6000803e3d6000fd5b505050506040513d60208110156124c057600080fd5b5051600554604080517fa24835d1000000000000000000000000000000000000000000000000000000008152336004820152602481018890529051929350600160a060020a039091169163a24835d19160448082019260009290919082900301818387803b15801561253157600080fd5b505af1158015612545573d6000803e3d6000fd5b5050505061173e83838387613806565b61255d61326f565b60035460028054600160a060020a031916600160a060020a03909216919091179055565b60008160028104840181151561259357fe5b049392505050565b600181565b600654600160a060020a031681565b6000806000806000806000806000806125c66137ac565b60026004556125d36142cd565b600080516020615a978339815191526000526008602052600080516020615a578339815191525461260a903463ffffffff61426d16565b600080516020615a97833981519152600090815260086020908152600080516020615a5783398151915292909255600554604080517f18160ddd0000000000000000000000000000000000000000000000000000000081529051600160a060020a03909216936318160ddd9360048084019492938390030190829087803b15801561269457600080fd5b505af11580156126a8573d6000803e3d6000fd5b505050506040513d60208110156126be57600080fd5b505199506126d9600080516020615ab78339815191526133d6565b6007549099509750600096505b87871015612a1e5760078054889081106126fc57fe5b9060005260206000200160009054906101000a9004600160a060020a031695506008600087600160a060020a0316600160a060020a0316815260200190815260200160002060000154945088600160a060020a031663ebbb21588b87600960009054906101000a900463ffffffff168f6040518563ffffffff1660e060020a028152600401808581526020018481526020018363ffffffff1663ffffffff168152602001828152602001945050505050602060405180830381600087803b1580156127c657600080fd5b505af11580156127da573d6000803e3d6000fd5b505050506040513d60208110156127f057600080fd5b50519350600160a060020a038616600080516020615a97833981519152141561294a57833411156128505760405133903486900380156108fc02916000818181858888f1935050505015801561284a573d6000803e3d6000fd5b50612945565b833410156129455734156128ae576040805160e560020a62461bcd02815260206004820152601560248201527f4552525f494e56414c49445f4554485f56414c55450000000000000000000000604482015290519081900360640190fd5b600b546128c690600160a060020a031633308761430f565b600b54604080517f2e1a7d4d000000000000000000000000000000000000000000000000000000008152600481018790529051600160a060020a0390921691632e1a7d4d9160248082019260009290919082900301818387803b15801561292c57600080fd5b505af1158015612940573d6000803e3d6000fd5b505050505b612956565b6129568633308761430f565b612966858563ffffffff61362416565b600160a060020a038716600090815260086020526040902081905592506129938a8c63ffffffff61362416565b60408051868152602081018690528082018390529051919350600160a060020a0388169133917f4a1a2a6176e9646d9e3157f7c2ab3c499f18337c0b0828cfb28e0a61de4a11f7919081900360600190a350600160a060020a03851660009081526008602052604090206001015463ffffffff16612a13828785846143f1565b6001909601956126e6565b600554604080517f867904b4000000000000000000000000000000000000000000000000000000008152336004820152602481018e90529051600160a060020a039092169163867904b49160448082019260009290919082900301818387803b158015612a8a57600080fd5b505af1158015612a9e573d6000803e3d6000fd5b5050600160045550505050505050505050505050565b612abc61326f565b612ac4614460565b600554600190600160a060020a0316612adb611500565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a4565b6007805482908110612b1b57fe5b600091825260209091200154600160a060020a0316905081565b600554600160a060020a031681565b600154600160a060020a031681565b6000612b5d61326f565b612b74600080516020615a778339815191526133d6565b600554909150600090600160a060020a0316612b8e611500565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a4612bc7816131d0565b604080517f90f58c96000000000000000000000000000000000000000000000000000000008152602060048201529051600160a060020a038316916390f58c9691602480830192600092919082900301818387803b158015612c2857600080fd5b505af1158015612c3c573d6000803e3d6000fd5b50505050611374611de8565b6008602052600090815260409020805460019091015463ffffffff81169060ff640100000000820481169165010000000000810482169166010000000000009091041685565b6000612c9982612c9f565b92915050565b600081612cab8161373f565b5050600160a060020a031660009081526008602052604090205490565b6000612cd26137ac565b60026004557f536f7672796e537761704e6574776f726b000000000000000000000000000000612d0181613c74565b600160a060020a038781169087161415612d65576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f53414d455f534f555243455f54415247455400000000000000000000604482015290519081900360640190fd5b600654600160a060020a03161580612ea85750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03878116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b158015612de057600080fd5b505af1158015612df4573d6000803e3d6000fd5b505050506040513d6020811015612e0a57600080fd5b50518015612ea85750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b158015612e7b57600080fd5b505af1158015612e8f573d6000803e3d6000fd5b505050506040513d6020811015612ea557600080fd5b50515b1515612efe576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f4e4f545f57484954454c495354454400000000000000000000000000604482015290519081900360640190fd5b612f0b87878787876144b9565b6001600455979650505050505050565b612f2361326f565b60095463ffffffff64010000000090910481169082161115612f8f576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b6009546040805163ffffffff6801000000000000000090930483168152918316602083015280517f81cd2ffb37dd237c0e4e2a3de5265fcf9deb43d3e7801e80db9f1ccfba7ee6009281900390910190a16009805463ffffffff90921668010000000000000000026bffffffff000000000000000019909216919091179055565b6130186159fc565b600080600080600080613038600080516020615ab78339815191526133d6565b9550600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561308d57600080fd5b505af11580156130a1573d6000803e3d6000fd5b505050506040513d60208110156130b757600080fd5b50516007549095509350600092505b838310156131c55760078054849081106130dc57fe5b6000918252602080832090910154600160a060020a039081168084526008835260408085205460095482517f8074590a000000000000000000000000000000000000000000000000000000008152600481018d90526024810183905263ffffffff9091166044820152606481018f905291519297509550918a1693638074590a93608480850194919392918390030190829087803b15801561317d57600080fd5b505af1158015613191573d6000803e3d6000fd5b505050506040513d60208110156131a757600080fd5b50518784600281106131b557fe5b60200201526001909201916130c6565b505050505050919050565b6131d861326f565b600054600160a060020a038281169116141561323e576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b60018054600160a060020a031916600160a060020a0392909216919091179055565b600554600160a060020a031690565b600054600160a060020a03163314611463576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615af7833981519152604482015290519081900360640190fd5b6002546040805160e260020a632ecd14d3028152600080516020615ad783398151915260048201529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561331c57600080fd5b505af1158015613330573d6000803e3d6000fd5b505050506040513d602081101561334657600080fd5b5051604080517fe8f627640000000000000000000000000000000000000000000000000000000081529051600160a060020a039092169163e8f62764916004808201926020929091908290030181600087803b1580156133a557600080fd5b505af11580156133b9573d6000803e3d6000fd5b505050506040513d60208110156133cf57600080fd5b5051905090565b6002546040805160e260020a632ecd14d3028152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561342657600080fd5b505af115801561343a573d6000803e3d6000fd5b505050506040513d602081101561345057600080fd5b505192915050565b6002546040805160e260020a632ecd14d3028152600080516020615ad783398151915260048201529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b1580156134b557600080fd5b505af11580156134c9573d6000803e3d6000fd5b505050506040513d60208110156134df57600080fd5b5051604080517fb9cffa3e0000000000000000000000000000000000000000000000000000000081529051600160a060020a039092169163b9cffa3e916004808201926020929091908290030181600087803b1580156133a557600080fd5b6002546040805160e260020a632ecd14d3028152600080516020615ad783398151915260048201529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561359b57600080fd5b505af11580156135af573d6000803e3d6000fd5b505050506040513d60208110156135c557600080fd5b5051604080517f99a752b50000000000000000000000000000000000000000000000000000000081529051600160a060020a03909216916399a752b5916004808201926020929091908290030181600087803b1580156133a557600080fd5b600082820183811015613681576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b9392505050565b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff199093169290921790915261373a9084906147f4565b505050565b600160a060020a0381166000908152600860205260409020600101546601000000000000900460ff161515611374576040805160e560020a62461bcd0281526020600482015260136024820152600080516020615a37833981519152604482015290519081900360640190fd5b600454600114611463576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5245454e5452414e4359000000000000000000000000000000000000604482015290519081900360640190fd5b60008060008060008060008061381a6142cd565b613831600080516020615ab78339815191526133d6565b97506138438a8a63ffffffff61426d16565b9650600095505b8b51861015613abd578b8681518110151561386157fe5b9060200190602002015194506008600086600160a060020a0316600160a060020a0316815260200190815260200160002060000154935087600160a060020a0316638074590a8b86600960009054906101000a900463ffffffff168d6040518563ffffffff1660e060020a028152600401808581526020018481526020018363ffffffff1663ffffffff168152602001828152602001945050505050602060405180830381600087803b15801561391757600080fd5b505af115801561392b573d6000803e3d6000fd5b505050506040513d602081101561394157600080fd5b50518b519093508b908790811061395457fe5b602090810290910101518310156139b5576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b6139c5848463ffffffff61426d16565b600160a060020a0386166000818152600860205260409020829055909250600080516020615a978339815191521415613a2b57604051339084156108fc029085906000818181858888f19350505050158015613a25573d6000803e3d6000fd5b50613a36565b613a36853385613688565b60408051848152602081018490528082018990529051600160a060020a0387169133917fbc7d19d505c7ec4db83f3b51f19fb98c4c8a99922e7839d1ee608dfbee29501b9181900360600190a350600160a060020a03841660009081526008602052604090206001015463ffffffff16613ab2878684846143f1565b60019095019461384a565b505050505050505050505050565b600160a060020a038116301415611374576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b613b3461326f565b82613b3e81614882565b82613b4881614882565b83613b5281613acb565b611b98868686613688565b80613b678161373f565b600160a060020a038216600080516020615a978339815191521415613ba757600160a060020a038216600090815260086020526040902030319055613c70565b600160a060020a0382166000818152600a602090815260408083205481517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529151613c5695919491936370a0823193602480820194929392918390030190829087803b158015613c1e57600080fd5b505af1158015613c32573d6000803e3d6000fd5b505050506040513d6020811015613c4857600080fd5b50519063ffffffff61426d16565b600160a060020a0383166000908152600860205260409020555b5050565b613c7d816133d6565b600160a060020a03163314611374576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615af7833981519152604482015290519081900360640190fd5b6000613cd461326f565b613cdc6148e2565b82613ce681614882565b83613cf081613acb565b83613cfa8161493f565b600554600160a060020a03878116911614801590613d3e5750600160a060020a0386166000908152600860205260409020600101546601000000000000900460ff16155b1515613d82576040805160e560020a62461bcd0281526020600482015260136024820152600080516020615a37833981519152604482015290519081900360640190fd5b60095463ffffffff908116620f42400381169086161115613ded576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b61ffff613df861220c565b61ffff1610613e3f576040805160e560020a62461bcd0281526020600482015260196024820152600080516020615b17833981519152604482015290519081900360640190fd5b505050600160a060020a0390921660008181526008602052604081208181556001908101805466ff0000000000001963ffffffff80881663ffffffff1993841617919091166601000000000000179092556007805493840181559093527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6889091018054600160a060020a03191690931790925560098054808416909401909216921691909117905550565b613ef2611377565b1515611463576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f494e4143544956450000000000000000000000000000000000000000604482015290519081900360640190fd5b600754835160009182918114613f96576040805160e560020a62461bcd0281526020600482015260136024820152600080516020615a37833981519152604482015290519081900360640190fd5b84518114613fee576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b600092505b808310156141ac5760086000878581518110151561400d57fe5b6020908102909101810151600160a060020a031682528101919091526040016000206001015460ff6601000000000000909104161515614085576040805160e560020a62461bcd0281526020600482015260136024820152600080516020615a37833981519152604482015290519081900360640190fd5b600091505b808210156140ed5785828151811015156140a057fe5b90602001906020020151600160a060020a03166007848154811015156140c257fe5b600091825260209091200154600160a060020a031614156140e2576140ed565b60019091019061408a565b808210614132576040805160e560020a62461bcd0281526020600482015260136024820152600080516020615a37833981519152604482015290519081900360640190fd5b6000858481518110151561414257fe5b60209081029091010151116141a1576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b600190920191613ff3565b60008411611b98576040805160e560020a62461bcd02815260206004820152600f60248201527f4552525f5a45524f5f414d4f554e540000000000000000000000000000000000604482015290519081900360640190fd5b600081151561421e5761421784846149b4565b9050613681565b614229848484614bbb565b949350505050565b600954600090612c9990620f42409061426190859068010000000000000000900463ffffffff90811690614f7b16565b9063ffffffff614ff416565b6000818310156142c7576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b60075460005b81811015613c70576143076007828154811015156142ed57fe5b600091825260209091200154600160a060020a0316613b5d565b6001016142d3565b604080517f7472616e7366657246726f6d28616464726573732c616464726573732c75696e81527f74323536290000000000000000000000000000000000000000000000000000006020808301919091528251918290036025018220600160a060020a038088166024850152861660448401526064808401869052845180850390910181526084909301909352810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1990931692909217909152611dae9085906147f4565b600554600160a060020a0380851691167f77f29993cf2c084e726f7e802da0719d6a0ade3e204badc7a3ffd57ecb768c2461442f85620f4240614f7b565b6144428863ffffffff80881690614f7b16565b6040805192835260208301919091528051918290030190a350505050565b600161446a61220c565b61ffff16116144b1576040805160e560020a62461bcd0281526020600482015260196024820152600080516020615b17833981519152604482015290519081900360640190fd5b611463615062565b600c546000908190819081908190600160a060020a0316156144dd576144dd61512e565b6144e88a8a8a61226e565b935093506144f589612c9f565b915081841061450057fe5b600160a060020a038a16600080516020615a97833981519152141561457b57348814614576576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b61466f565b341580156146195750600160a060020a038a166000908152600a602052604090205488906146169061460a6145af8e612c9f565b8e600160a060020a03166370a08231306040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b158015613c1e57600080fd5b9063ffffffff61426d16565b10155b151561466f576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b6146788a613b5d565b61468183615456565b600160a060020a038a166000908152600a60205260409020549091506146ad908263ffffffff61362416565b600160a060020a038a166000908152600a60209081526040808320939093556008905220546146e890829061460a908763ffffffff61426d16565b600160a060020a038a16600090815260086020526040902055831515614758576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b600160a060020a038916600080516020615a9783398151915214156147b357604051600160a060020a0387169085156108fc029086906000818181858888f193505050501580156147ad573d6000803e3d6000fd5b506147be565b6147be898786613688565b6147dc8a8a898b886147d6898863ffffffff61426d16565b87615490565b6147e68a8a61551d565b509198975050505050505050565b6147fc615a17565b602060405190810160405280600181525090506020818351602085016000875af180151561482957600080fd5b508051151561373a576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b600160a060020a0381161515611374576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b6148ea611377565b15611463576040805160e560020a62461bcd02815260206004820152600a60248201527f4552525f41435449564500000000000000000000000000000000000000000000604482015290519081900360640190fd5b60008163ffffffff1611801561495e5750620f424063ffffffff821611155b1515611374576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b6000806000806149c385612218565b9250600091505b8551821015614bb1578551600080516020615a97833981519152908790849081106149f157fe5b60209081029091010151600160a060020a031614614a4357614a438683815181101515614a1a57fe5b9060200190602002015133308886815181101515614a3457fe5b9060200190602002015161430f565b8482815181101515614a5157fe5b90602001906020020151600860008885815181101515614a6d57fe5b6020908102909101810151600160a060020a03168252810191909152604001600020558551869083908110614a9e57fe5b90602001906020020151600160a060020a031633600160a060020a03167f4a1a2a6176e9646d9e3157f7c2ab3c499f18337c0b0828cfb28e0a61de4a11f78785815181101515614aea57fe5b906020019060200201518886815181101515614b0257fe5b60209081029091018101516040805193845291830152818101889052519081900360600190a3600860008784815181101515614b3a57fe5b6020908102909101810151600160a060020a0316825281019190915260400160002060010154865163ffffffff9091169150614ba6908490889085908110614b7e57fe5b906020019060200201518785815181101515614b9657fe5b90602001906020020151846143f1565b6001909101906149ca565b5090949350505050565b600080600080600080600080600080614bd26142cd565b600080516020615a978339815191526000526008602052600080516020615a5783398151915254614c09903463ffffffff61426d16565b600080516020615a978339815191526000526008602052600080516020615a5783398151915255614c47600080516020615ab78339815191526133d6565b9850614c55898c8f8f61572b565b9750614c678b8963ffffffff61362416565b9650600095505b8c51861015614f6a578c86815181101515614c8557fe5b9060200190602002015194506008600086600160a060020a0316600160a060020a0316815260200190815260200160002060000154935088600160a060020a031663ebbb21588c86600960009054906101000a900463ffffffff168c6040518563ffffffff1660e060020a028152600401808581526020018481526020018363ffffffff1663ffffffff168152602001828152602001945050505050602060405180830381600087803b158015614d3b57600080fd5b505af1158015614d4f573d6000803e3d6000fd5b505050506040513d6020811015614d6557600080fd5b5051925060008311614dc1576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b8b86815181101515614dcf57fe5b60209081029091010151831115614de257fe5b600160a060020a038516600080516020615a9783398151915214614e1157614e0c8533308661430f565b614e84565b828c87815181101515614e2057fe5b906020019060200201511115614e845733600160a060020a03166108fc848e89815181101515614e4c57fe5b90602001906020020151039081150290604051600060405180830381858888f19350505050158015614e82573d6000803e3d6000fd5b505b614e94848463ffffffff61362416565b600160a060020a03861660008181526008602090815260409182902084905581518781529081018490528082018b90529051929450909133917f4a1a2a6176e9646d9e3157f7c2ab3c499f18337c0b0828cfb28e0a61de4a11f7919081900360600190a3600860008e88815181101515614f0a57fe5b6020908102909101810151600160a060020a03168252810191909152604001600020600101548d5163ffffffff9091169150614f5f9088908f9089908110614f4e57fe5b9060200190602002015184846143f1565b600190950194614c6e565b50959b9a5050505050505050505050565b600080831515614f8e5760009150611dd2565b50828202828482811515614f9e57fe5b0414613681576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b60008080831161504e576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f4449564944455f42595f5a45524f0000000000000000000000000000604482015290519081900360640190fd5b828481151561505957fe5b04949350505050565b61506a61326f565b600061507461220c565b61ffff16116150bb576040805160e560020a62461bcd0281526020600482015260196024820152600080516020615b17833981519152604482015290519081900360640190fd5b600560009054906101000a9004600160a060020a0316600160a060020a03166379ba50976040518163ffffffff1660e060020a028152600401600060405180830381600087803b15801561510e57600080fd5b505af1158015615122573d6000803e3d6000fd5b505050506114636142cd565b60008060008060008060008060008060006007600081548110151561514f57fe5b60009182526020909120015460078054600160a060020a039092169c5090600190811061517857fe5b600091825260209091200154600160a060020a031699506151988b612c9f565b98506151a38a612c9f565b600160a060020a03808d16600090815260086020526040808220600190810154938f1683529120015491995063ffffffff908116985090811696506151ee908a906103e890614ff416565b9450615202886103e863ffffffff614ff416565b935061521b600080516020615ab78339815191526133d6565b604080517f94491fab000000000000000000000000000000000000000000000000000000008152600481018c905263ffffffff808b166024830152604482018c905289166064820152608481018890529051919450600160a060020a038516916394491fab9160a4808201926020929091908290030181600087803b1580156152a357600080fd5b505af11580156152b7573d6000803e3d6000fd5b505050506040513d60208110156152cd57600080fd5b5051604080517f94491fab000000000000000000000000000000000000000000000000000000008152600481018b905263ffffffff808a166024830152604482018d90528a166064820152608481018790529051919350600160a060020a038516916394491fab9160a4808201926020929091908290030181600087803b15801561535757600080fd5b505af115801561536b573d6000803e3d6000fd5b505050506040513d602081101561538157600080fd5b5051600d549091506153a3908690614261908590600a0a63ffffffff614f7b16565b91506153c184614261600e54600a0a84614f7b90919063ffffffff16565b600c54604080517f9c0e3f7a00000000000000000000000000000000000000000000000000000000815260048101869052602481018490529051929350600160a060020a0390911691639c0e3f7a9160448082019260009290919082900301818387803b15801561543157600080fd5b505af1158015615445573d6000803e3d6000fd5b505050505050505050505050505050565b60008060006154636158e8565b6009549092506142299063ffffffff680100000000000000009091048116906142619087908690614f7b16565b7f800000000000000000000000000000000000000000000000000000000000000082106154b957fe5b6040805185815260208101859052808201849052606081018390529051600160a060020a038088169289821692918b16917f82886ccc747026f86399e87d5f3874c5d198ec2498833553651f63a13f5dbd0c9181900360800190a450505050505050565b6000806000806000806000600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561557b57600080fd5b505af115801561558f573d6000803e3d6000fd5b505050506040513d60208110156155a557600080fd5b505196506155b289612c9f565b95506155bd88612c9f565b600160a060020a03808b16600090815260086020526040808220600190810154938d1683529120015491965063ffffffff908116955090811693506156069086908690614f7b16565b915061561b8663ffffffff80861690614f7b16565b60408051848152602081018390528151929350600160a060020a03808c1693908d16927f77f29993cf2c084e726f7e802da0719d6a0ade3e204badc7a3ffd57ecb768c24928290030190a3615672878a88876143f1565b61567e878987866143f1565b604080518881526020810188905263ffffffff8616818301529051600160a060020a038b16917f8a6a7f53b3c8fa1dc4b83e3f1be668c1b251ff8d44cdcb83eb3acec3fec6a788919081900360600190a2604080518881526020810187905263ffffffff8516818301529051600160a060020a038a16917f8a6a7f53b3c8fa1dc4b83e3f1be668c1b251ff8d44cdcb83eb3acec3fec6a788919081900360600190a2505050505050505050565b60008060015b84518110156157ee5761579660086000878481518110151561574f57fe5b6020908102909101810151600160a060020a0316825281019190915260400160002054855186908590811061578057fe5b602090810290910101519063ffffffff614f7b16565b6157dc6008600088868151811015156157ab57fe5b6020908102909101810151600160a060020a0316825281019190915260400160002054865187908590811061578057fe5b10156157e6578091505b600101615731565b86600160a060020a0316632f55bdb58760086000898781518110151561581057fe5b6020908102909101810151600160a060020a0316825281019190915260400160002054600954885163ffffffff9091169089908890811061584d57fe5b906020019060200201516040518563ffffffff1660e060020a028152600401808581526020018481526020018363ffffffff1663ffffffff168152602001828152602001945050505050602060405180830381600087803b1580156158b157600080fd5b505af11580156158c5573d6000803e3d6000fd5b505050506040513d60208110156158db57600080fd5b5051979650505050505050565b6002546040805160e260020a632ecd14d3028152600080516020615ad783398151915260048201529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561594557600080fd5b505af1158015615959573d6000803e3d6000fd5b505050506040513d602081101561596f57600080fd5b5051604080517fb0e21e8a0000000000000000000000000000000000000000000000000000000081529051600160a060020a039092169163b0e21e8a916004808201926020929091908290030181600087803b1580156133a557600080fd5b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b60408051808201825290600290829080388339509192915050565b602060405190810160405280600190602082028038833950919291505056004552525f494e56414c49445f5245534552564500000000000000000000000000353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c42536f7672796e53776170436f6e76657274657255706772616465720000000000000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee536f7672796e53776170466f726d756c610000000000000000000000000000005377617053657474696e677300000000000000000000000000000000000000004552525f4143434553535f44454e4945440000000000000000000000000000004552525f494e56414c49445f524553455256455f434f554e5400000000000000a165627a7a72305820c57fa71f448934f38dfed5769d467183f318105003ba6bf2a8fcc5f3d6c520640029 \ No newline at end of file diff --git a/solidity/build/LiquidityPoolV1ConverterFactory.abi b/solidity/build/LiquidityPoolV1ConverterFactory.abi index 3fb5e77..4d53cfd 100644 --- a/solidity/build/LiquidityPoolV1ConverterFactory.abi +++ b/solidity/build/LiquidityPoolV1ConverterFactory.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_anchor","type":"address"},{"name":"_registry","type":"address"},{"name":"_maxConversionFee","type":"uint32"}],"name":"createConverter","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"converterType","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"pure","type":"function"}] \ No newline at end of file +[{"constant":true,"inputs":[],"name":"converterType","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_anchor","type":"address"},{"name":"_registry","type":"address"},{"name":"_maxConversionFee","type":"uint32"}],"name":"createConverter","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/LiquidityPoolV1ConverterFactory.bin b/solidity/build/LiquidityPoolV1ConverterFactory.bin index b184361..1f349f8 100644 --- a/solidity/build/LiquidityPoolV1ConverterFactory.bin +++ b/solidity/build/LiquidityPoolV1ConverterFactory.bin @@ -1 +1 @@ -608060405234801561001057600080fd5b50614d7b806100206000396000f30060806040526004361061004b5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416631141395881146100505780633e8ff43f146100b6575b600080fd5b34801561005c57600080fd5b5061008d73ffffffffffffffffffffffffffffffffffffffff6004358116906024351663ffffffff604435166100e2565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b3480156100c257600080fd5b506100cb6101d5565b6040805161ffff9092168252519081900360200190f35b6000808484846100f06101da565b73ffffffffffffffffffffffffffffffffffffffff938416815291909216602082015263ffffffff9091166040808301919091525190819003606001906000f080158015610142573d6000803e3d6000fd5b50604080517ff2fde38b000000000000000000000000000000000000000000000000000000008152336004820152905191925073ffffffffffffffffffffffffffffffffffffffff83169163f2fde38b9160248082019260009290919082900301818387803b1580156101b457600080fd5b505af11580156101c8573d6000803e3d6000fd5b5092979650505050505050565b600190565b604051614b65806101eb833901905600608060405260016004557fc0829421c1d260bd3cb3e0f06cfe2d52db2ce3150000000000000000000000006009553480156200003a57600080fd5b5060405160608062004b6583398101604090815281516020830151919092015160008054600160a060020a031916331790558282828282828180620000888164010000000062000135810204565b5060028054600160a060020a03909216600160a060020a031992831681179091556003805490921617905582620000c88164010000000062000135810204565b81620000dd81640100000000620001b0810204565b505060058054600160a060020a03909416600160a060020a031990941693909317909255506009805463ffffffff9092166401000000000267ffffffff00000000199092169190911790555062000229945050505050565b600160a060020a0381161515620001ad57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b620f424063ffffffff82161115620001ad57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b61492c80620002396000396000f3006080604052600436106102585763ffffffff60e060020a600035041663024c7ec781146102e45780630c7d5cd8146102fe5780630e53aae91461032c57806312c2aca41461038157806319b64015146103aa5780631cfab290146103de5780631e1401f8146103ff57806321e6b53d1461044257806322f3e2d4146104635780632fe8a6ad1461047857806338a5e0161461048d578063395900d4146104a25780633e8ff43f146104cc578063415f1240146104f857806349d10b64146105105780634af80f0e1461052557806354fd4d5014610546578063579cd3ca1461055b5780635e35359e1461057057806361cd756e1461059a57806367b6d57c146105af578063690d8320146105d05780636a49d2c4146105f15780636aa5332c1461061b57806371f52bf31461064557806379ba50971461065a5780637b1039991461066f5780637d8916bd146106845780638da5cb5b1461070757806394c275ad1461071c5780639b99a8e214610731578063a60e772414610746578063af94b8d81461079b578063b127c0a5146107c5578063b4a176d314610858578063bbb7e5d81461086d578063bf75455814610888578063c45d3d921461089d578063ca1d209d146108b2578063cdc91c69146108bd578063d031370b146108d2578063d260529c146108ea578063d3fb73b4146108ff578063d4ee1d9014610914578063d55ec69714610929578063d66bd5241461093e578063d89595121461095f578063dc8de37914610980578063e8dc12ff146109a1578063ecbca55d146109cb578063f2fde38b146109e9578063fc0c546a14610a0a575b6000805160206148a183398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1615156102e2576040805160e560020a62461bcd0281526020600482015260136024820152600080516020614841833981519152604482015290519081900360640190fd5b005b3480156102f057600080fd5b506102e26004351515610a1f565b34801561030a57600080fd5b50610313610a67565b6040805163ffffffff9092168252519081900360200190f35b34801561033857600080fd5b5061034d600160a060020a0360043516610a73565b6040805195865263ffffffff9094166020860152911515848401521515606084015215156080830152519081900360a00190f35b34801561038d57600080fd5b50610396610b0e565b604080519115158252519081900360200190f35b3480156103b657600080fd5b506103c2600435610b57565b60408051600160a060020a039092168252519081900360200190f35b3480156103ea57600080fd5b50610313600160a060020a0360043516610b83565b34801561040b57600080fd5b50610429600160a060020a0360043581169060243516604435610bb5565b6040805192835260208301919091528051918290030190f35b34801561044e57600080fd5b506102e2600160a060020a0360043516610bcf565b34801561046f57600080fd5b50610396610be3565b34801561048457600080fd5b50610396610c7d565b34801561049957600080fd5b506102e2610c9e565b3480156104ae57600080fd5b506102e2600160a060020a0360043581169060243516604435610cb0565b3480156104d857600080fd5b506104e1610d4b565b6040805161ffff9092168252519081900360200190f35b34801561050457600080fd5b506102e2600435610d50565b34801561051c57600080fd5b506102e2610f94565b34801561053157600080fd5b506102e2600160a060020a0360043516611201565b34801561055257600080fd5b506104e1611243565b34801561056757600080fd5b50610313611248565b34801561057c57600080fd5b506102e2600160a060020a0360043581169060243516604435611260565b3480156105a657600080fd5b506103c2611369565b3480156105bb57600080fd5b506102e2600160a060020a0360043516611378565b3480156105dc57600080fd5b506102e2600160a060020a036004351661141b565b3480156105fd57600080fd5b506102e2600160a060020a036004351663ffffffff60243516611520565b34801561062757600080fd5b5061063360043561175f565b60408051918252519081900360200190f35b34801561065157600080fd5b506104e1611784565b34801561066657600080fd5b506102e2611793565b34801561067b57600080fd5b506103c2611854565b604080516020600480358082013583810280860185019096528085526102e295369593946024949385019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a99890198929750908201955093508392508501908490808284375094975050933594506118639350505050565b34801561071357600080fd5b506103c2611b62565b34801561072857600080fd5b50610313611b71565b34801561073d57600080fd5b506104e1611b85565b34801561075257600080fd5b506040805160206004803580820135838102808601850190965280855261063395369593946024949385019291829185019084908082843750949750611b8b9650505050505050565b3480156107a757600080fd5b50610429600160a060020a0360043581169060243516604435611be1565b3480156107d157600080fd5b506040805160206004602480358281013584810280870186019097528086526102e296843596369660449591949091019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a998901989297509082019550935083925085019084908082843750949750611d869650505050505050565b34801561086457600080fd5b506102e2611eba565b34801561087957600080fd5b50610633600435602435611ef3565b34801561089457600080fd5b50610396611f0d565b3480156108a957600080fd5b506103c2611f12565b6102e2600435611f21565b3480156108c957600080fd5b506102e261242e565b3480156108de57600080fd5b506103c2600435612487565b3480156108f657600080fd5b50610396610d4b565b34801561090b57600080fd5b506103c26124af565b34801561092057600080fd5b506103c26124be565b34801561093557600080fd5b506102e26124cd565b34801561094a57600080fd5b5061034d600160a060020a03600435166125c2565b34801561096b57600080fd5b50610633600160a060020a0360043516612608565b34801561098c57600080fd5b50610633600160a060020a0360043516612619565b610633600160a060020a036004358116906024358116906044359060643581169060843516612642565b3480156109d757600080fd5b506102e263ffffffff60043516612895565b3480156109f557600080fd5b506102e2600160a060020a036004351661298a565b348015610a1657600080fd5b506103c2612a27565b610a27612a36565b60038054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b60095463ffffffff1681565b6000806000806000610a836147f3565b50505050600160a060020a03929092166000908152600860209081526040808320815160a081018352815480825260019092015463ffffffff811694820185905260ff64010000000082048116151594830194909452650100000000008104841615156060830152660100000000000090049092161515608090920182905295919450919250829190565b6000805160206148a183398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1690565b6000600782815481101515610b6857fe5b600091825260209091200154600160a060020a031692915050565b600081610b8f81612a86565b5050600160a060020a031660009081526008602052604090206001015463ffffffff1690565b600080610bc3858585611be1565b91509150935093915050565b610bd7612a36565b610be081611378565b50565b600030600160a060020a0316600560009054906101000a9004600160a060020a0316600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015610c4257600080fd5b505af1158015610c56573d6000803e3d6000fd5b505050506040513d6020811015610c6c57600080fd5b5051600160a060020a031614905090565b60035474010000000000000000000000000000000000000000900460ff1681565b610ca6612a36565b610cae61242e565b565b610cb8612a36565b600554604080517f5e35359e000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015285811660248301526044820185905291519190921691635e35359e91606480830192600092919082900301818387803b158015610d2e57600080fd5b505af1158015610d42573d6000803e3d6000fd5b50505050505050565b600190565b600060606000610d5e612af3565b600260045560008411610dbb576040805160e560020a62461bcd02815260206004820152600f60248201527f4552525f5a45524f5f414d4f554e540000000000000000000000000000000000604482015290519081900360640190fd5b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015610e0e57600080fd5b505af1158015610e22573d6000803e3d6000fd5b505050506040513d6020811015610e3857600080fd5b5051600554604080517fa24835d1000000000000000000000000000000000000000000000000000000008152336004820152602481018890529051929550600160a060020a039091169163a24835d19160448082019260009290919082900301818387803b158015610ea957600080fd5b505af1158015610ebd573d6000803e3d6000fd5b50505050600780549050604051908082528060200260200182016040528015610ef0578160200160208202803883390190505b509150600090505b8151811015610f235760018282815181101515610f1157fe5b60209081029091010152600101610ef8565b610f896007805480602002602001604051908101604052809291908181526020018280548015610f7c57602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311610f5e575b5050505050838587612b4d565b505060016004555050565b60008054600160a060020a0316331480610fc9575060035474010000000000000000000000000000000000000000900460ff16155b151561100d576040805160e560020a62461bcd02815260206004820152601160248201526000805160206148e1833981519152604482015290519081900360640190fd5b6110367f436f6e7472616374526567697374727900000000000000000000000000000000612e12565b600254909150600160a060020a0380831691161480159061105f5750600160a060020a03811615155b15156110b5576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b604080517fbb34534c0000000000000000000000000000000000000000000000000000000081527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b15801561113957600080fd5b505af115801561114d573d6000803e3d6000fd5b505050506040513d602081101561116357600080fd5b5051600160a060020a031614156111c4576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a0380841673ffffffffffffffffffffffffffffffffffffffff19928316179092559091169216919091179055565b611209612a36565b8061121381612eaa565b506006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b602081565b60095468010000000000000000900463ffffffff1681565b600061126a612af3565b6002600455611277612a36565b61128e600080516020614881833981519152612e12565b600160a060020a0385166000908152600860205260409020600101549091506601000000000000900460ff1615806112cb57506112c9610be3565b155b806112e35750600054600160a060020a038281169116145b1515611327576040805160e560020a62461bcd02815260206004820152601160248201526000805160206148e1833981519152604482015290519081900360640190fd5b611332848484612f0b565b600160a060020a0384166000908152600860205260409020600101546601000000000000900460ff1615610f8957610f8984612f3c565b600354600160a060020a031681565b611380612a36565b60008051602061488183398151915261139881613031565b600554604080517ff2fde38b000000000000000000000000000000000000000000000000000000008152600160a060020a0385811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b1580156113ff57600080fd5b505af1158015611413573d6000803e3d6000fd5b505050505050565b6000611425612af3565b6002600455611432612a36565b6000805160206148a183398151915261144a81612a86565b611461600080516020614881833981519152612e12565b915061146b610be3565b15806114845750600054600160a060020a038381169116145b15156114c8576040805160e560020a62461bcd02815260206004820152601160248201526000805160206148e1833981519152604482015290519081900360640190fd5b604051600160a060020a03841690303180156108fc02916000818181858888f193505050501580156114fe573d6000803e3d6000fd5b506115166000805160206148a1833981519152612f3c565b5050600160045550565b600061152a612a36565b611532613087565b8261153c816130e4565b8361154681612eaa565b8361155081613144565b600554600160a060020a038781169116148015906115945750600160a060020a0386166000908152600860205260409020600101546601000000000000900460ff16155b15156115d8576040805160e560020a62461bcd0281526020600482015260136024820152600080516020614841833981519152604482015290519081900360640190fd5b60095463ffffffff908116620f42400381169086161115611643576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b61ffff61164e611b85565b61ffff16106116a7576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f434f554e5400000000000000604482015290519081900360640190fd5b505050600160a060020a0390921660008181526008602052604081208181556001908101805466ff0000000000001963ffffffff80881663ffffffff1993841617919091166601000000000000179092556007805493840181559093527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688909101805473ffffffffffffffffffffffffffffffffffffffff191690931790925560098054808416909401909216921691909117905550565b600080825b600081111561177d5760019190910190600a9004611764565b5092915050565b600061178e611b85565b905090565b600154600160a060020a031633146117e3576040805160e560020a62461bcd02815260206004820152601160248201526000805160206148e1833981519152604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600254600160a060020a031681565b6000806000611870612af3565b600260045561187d6131b9565b611888868686613217565b600092505b85518310156119465785516000805160206148a1833981519152908790859081106118b457fe5b90602001906020020151600160a060020a0316141561193b573485848151811015156118dc57fe5b602090810290910101511461193b576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b60019092019161188d565b60003411156119eb576000805160206148a183398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1615156119eb576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f4e4f5f4554485f524553455256450000000000000000000000000000604482015290519081900360640190fd5b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611a3e57600080fd5b505af1158015611a52573d6000803e3d6000fd5b505050506040513d6020811015611a6857600080fd5b50519150611a778686846134d3565b905083811015611ad1576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f52455455524e5f544f4f5f4c4f570000000000000000000000000000604482015290519081900360640190fd5b600554604080517f867904b4000000000000000000000000000000000000000000000000000000008152336004820152602481018490529051600160a060020a039092169163867904b49160448082019260009290919082900301818387803b158015611b3d57600080fd5b505af1158015611b51573d6000803e3d6000fd5b505060016004555050505050505050565b600054600160a060020a031681565b600954640100000000900463ffffffff1681565b60075490565b80516000908190815b81811015611bc857611bbc8582815181101515611bad57fe5b9060200190602002015161175f565b90920191600101611b94565b6001611bd48484611ef3565b03600a0a95945050505050565b600080600080611bef6131b9565b86611bf981612a86565b86611c0381612a86565b600160a060020a038981169089161415611c67576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f53414d455f534f555243455f54415247455400000000000000000000604482015290519081900360640190fd5b611c7e6000805160206148c1833981519152612e12565b600160a060020a03166394491fab611c958b612619565b600160a060020a038c1660009081526008602052604090206001015463ffffffff16611cc08c612619565b600160a060020a038d16600090815260086020908152604080832060010154815163ffffffff89811660e060020a028252600482019890985295871660248701526044860194909452949092166064840152608483018d9052925160a48084019492939192918390030190829087803b158015611d3c57600080fd5b505af1158015611d50573d6000803e3d6000fd5b505050506040513d6020811015611d6657600080fd5b50519350611d7384613502565b9384900399939850929650505050505050565b6000611d90612af3565b6002600455611d9d6131b9565b611da8838386613217565b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611dfb57600080fd5b505af1158015611e0f573d6000803e3d6000fd5b505050506040513d6020811015611e2557600080fd5b5051600554604080517fa24835d1000000000000000000000000000000000000000000000000000000008152336004820152602481018890529051929350600160a060020a039091169163a24835d19160448082019260009290919082900301818387803b158015611e9657600080fd5b505af1158015611eaa573d6000803e3d6000fd5b50505050610f8983838387612b4d565b611ec2612a36565b6003546002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03909216919091179055565b600081600281048401811515611f0557fe5b049392505050565b600181565b600654600160a060020a031681565b600080600080600080600080600080611f38612af3565b6002600455611f4561353e565b6000805160206148a1833981519152600052600860205260008051602061486183398151915254611f7c903463ffffffff61358016565b6000805160206148a183398151915260009081526008602090815260008051602061486183398151915292909255600554604080517f18160ddd0000000000000000000000000000000000000000000000000000000081529051600160a060020a03909216936318160ddd9360048084019492938390030190829087803b15801561200657600080fd5b505af115801561201a573d6000803e3d6000fd5b505050506040513d602081101561203057600080fd5b5051995061204b6000805160206148c1833981519152612e12565b6007549099509750600096505b8787101561239857600780548890811061206e57fe5b9060005260206000200160009054906101000a9004600160a060020a031695506008600087600160a060020a0316600160a060020a0316815260200190815260200160002060000154945088600160a060020a031663ebbb21588b87600960009054906101000a900463ffffffff168f6040518563ffffffff1660e060020a028152600401808581526020018481526020018363ffffffff1663ffffffff168152602001828152602001945050505050602060405180830381600087803b15801561213857600080fd5b505af115801561214c573d6000803e3d6000fd5b505050506040513d602081101561216257600080fd5b50519350600160a060020a0386166000805160206148a183398151915214156122c457833411156121c25760405133903486900380156108fc02916000818181858888f193505050501580156121bc573d6000803e3d6000fd5b506122bf565b833410156122bf573415612220576040805160e560020a62461bcd02815260206004820152601560248201527f4552525f494e56414c49445f4554485f56414c55450000000000000000000000604482015290519081900360640190fd5b600954612248906c010000000000000000000000009004600160a060020a03163330876135e0565b6009600c9054906101000a9004600160a060020a0316600160a060020a0316632e1a7d4d856040518263ffffffff1660e060020a02815260040180828152602001915050600060405180830381600087803b1580156122a657600080fd5b505af11580156122ba573d6000803e3d6000fd5b505050505b6122d0565b6122d0863330876135e0565b6122e0858563ffffffff6136c816565b600160a060020a0387166000908152600860205260409020819055925061230d8a8c63ffffffff6136c816565b60408051868152602081018690528082018390529051919350600160a060020a0388169133917f4a1a2a6176e9646d9e3157f7c2ab3c499f18337c0b0828cfb28e0a61de4a11f7919081900360600190a350600160a060020a03851660009081526008602052604090206001015463ffffffff1661238d82878584613725565b600190960195612058565b600554604080517f867904b4000000000000000000000000000000000000000000000000000000008152336004820152602481018e90529051600160a060020a039092169163867904b49160448082019260009290919082900301818387803b15801561240457600080fd5b505af1158015612418573d6000803e3d6000fd5b5050600160045550505050505050505050505050565b612436612a36565b61243e613794565b600554600190600160a060020a0316612455610d4b565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a4565b600780548290811061249557fe5b600091825260209091200154600160a060020a0316905081565b600554600160a060020a031681565b600154600160a060020a031681565b60006124d7612a36565b6124ee600080516020614881833981519152612e12565b600554909150600090600160a060020a0316612508610d4b565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a46125418161298a565b604080517f90f58c96000000000000000000000000000000000000000000000000000000008152602060048201529051600160a060020a038316916390f58c9691602480830192600092919082900301818387803b1580156125a257600080fd5b505af11580156125b6573d6000803e3d6000fd5b50505050610be0611793565b6008602052600090815260409020805460019091015463ffffffff81169060ff640100000000820481169165010000000000810482169166010000000000009091041685565b600061261382612619565b92915050565b60008161262581612a86565b5050600160a060020a031660009081526008602052604090205490565b600061264c612af3565b60026004557f536f7672796e537761704e6574776f726b00000000000000000000000000000061267b81613031565b600160a060020a0387811690871614156126df576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f53414d455f534f555243455f54415247455400000000000000000000604482015290519081900360640190fd5b600654600160a060020a031615806128225750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03878116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b15801561275a57600080fd5b505af115801561276e573d6000803e3d6000fd5b505050506040513d602081101561278457600080fd5b505180156128225750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b1580156127f557600080fd5b505af1158015612809573d6000803e3d6000fd5b505050506040513d602081101561281f57600080fd5b50515b1515612878576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f4e4f545f57484954454c495354454400000000000000000000000000604482015290519081900360640190fd5b61288587878787876137ff565b6001600455979650505050505050565b61289d612a36565b60095463ffffffff64010000000090910481169082161115612909576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b6009546040805163ffffffff6801000000000000000090930483168152918316602083015280517f81cd2ffb37dd237c0e4e2a3de5265fcf9deb43d3e7801e80db9f1ccfba7ee6009281900390910190a16009805463ffffffff90921668010000000000000000026bffffffff000000000000000019909216919091179055565b612992612a36565b600054600160a060020a03828116911614156129f8576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600554600160a060020a031690565b600054600160a060020a03163314610cae576040805160e560020a62461bcd02815260206004820152601160248201526000805160206148e1833981519152604482015290519081900360640190fd5b600160a060020a0381166000908152600860205260409020600101546601000000000000900460ff161515610be0576040805160e560020a62461bcd0281526020600482015260136024820152600080516020614841833981519152604482015290519081900360640190fd5b600454600114610cae576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5245454e5452414e4359000000000000000000000000000000000000604482015290519081900360640190fd5b600080600080600080600080612b6161353e565b612b786000805160206148c1833981519152612e12565b9750612b8a8a8a63ffffffff61358016565b9650600095505b8b51861015612e04578b86815181101515612ba857fe5b9060200190602002015194506008600086600160a060020a0316600160a060020a0316815260200190815260200160002060000154935087600160a060020a0316638074590a8b86600960009054906101000a900463ffffffff168d6040518563ffffffff1660e060020a028152600401808581526020018481526020018363ffffffff1663ffffffff168152602001828152602001945050505050602060405180830381600087803b158015612c5e57600080fd5b505af1158015612c72573d6000803e3d6000fd5b505050506040513d6020811015612c8857600080fd5b50518b519093508b9087908110612c9b57fe5b60209081029091010151831015612cfc576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b612d0c848463ffffffff61358016565b600160a060020a03861660008181526008602052604090208290559092506000805160206148a18339815191521415612d7257604051339084156108fc029085906000818181858888f19350505050158015612d6c573d6000803e3d6000fd5b50612d7d565b612d7d853385613ad2565b60408051848152602081018490528082018990529051600160a060020a0387169133917fbc7d19d505c7ec4db83f3b51f19fb98c4c8a99922e7839d1ee608dfbee29501b9181900360600190a350600160a060020a03841660009081526008602052604090206001015463ffffffff16612df987868484613725565b600190950194612b91565b505050505050505050505050565b600254604080517fbb34534c000000000000000000000000000000000000000000000000000000008152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b158015612e7857600080fd5b505af1158015612e8c573d6000803e3d6000fd5b505050506040513d6020811015612ea257600080fd5b505192915050565b600160a060020a038116301415610be0576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b612f13612a36565b82612f1d816130e4565b82612f27816130e4565b83612f3181612eaa565b611413868686613ad2565b80612f4681612a86565b600160a060020a0382166000805160206148a18339815191521415612f8657600160a060020a03821660009081526008602052604090203031905561302d565b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051600160a060020a038416916370a082319160248083019260209291908290030181600087803b158015612fe757600080fd5b505af1158015612ffb573d6000803e3d6000fd5b505050506040513d602081101561301157600080fd5b5051600160a060020a0383166000908152600860205260409020555b5050565b61303a81612e12565b600160a060020a03163314610be0576040805160e560020a62461bcd02815260206004820152601160248201526000805160206148e1833981519152604482015290519081900360640190fd5b61308f610be3565b15610cae576040805160e560020a62461bcd02815260206004820152600a60248201527f4552525f41435449564500000000000000000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a0381161515610be0576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b60008163ffffffff161180156131635750620f424063ffffffff821611155b1515610be0576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b6131c1610be3565b1515610cae576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f494e4143544956450000000000000000000000000000000000000000604482015290519081900360640190fd5b600754835160009182918114613265576040805160e560020a62461bcd0281526020600482015260136024820152600080516020614841833981519152604482015290519081900360640190fd5b845181146132bd576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b600092505b8083101561347b576008600087858151811015156132dc57fe5b6020908102909101810151600160a060020a031682528101919091526040016000206001015460ff6601000000000000909104161515613354576040805160e560020a62461bcd0281526020600482015260136024820152600080516020614841833981519152604482015290519081900360640190fd5b600091505b808210156133bc57858281518110151561336f57fe5b90602001906020020151600160a060020a031660078481548110151561339157fe5b600091825260209091200154600160a060020a031614156133b1576133bc565b600190910190613359565b808210613401576040805160e560020a62461bcd0281526020600482015260136024820152600080516020614841833981519152604482015290519081900360640190fd5b6000858481518110151561341157fe5b6020908102909101015111613470576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b6001909201916132c2565b60008411611413576040805160e560020a62461bcd02815260206004820152600f60248201527f4552525f5a45524f5f414d4f554e540000000000000000000000000000000000604482015290519081900360640190fd5b60008115156134ed576134e68484613b89565b90506134fb565b6134f8848484613d90565b90505b9392505050565b60095460009061261390620f42409061353290859068010000000000000000900463ffffffff9081169061415016565b9063ffffffff6141c916565b60075460005b8181101561302d5761357860078281548110151561355e57fe5b600091825260209091200154600160a060020a0316612f3c565b600101613544565b6000818310156135da576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b604080517f7472616e7366657246726f6d28616464726573732c616464726573732c75696e81527f74323536290000000000000000000000000000000000000000000000000000006020808301919091528251918290036025018220600160a060020a038088166024850152861660448401526064808401869052845180850390910181526084909301909352810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19909316929092179091526136c2908590614237565b50505050565b6000828201838110156134fb576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b600554600160a060020a0380851691167f77f29993cf2c084e726f7e802da0719d6a0ade3e204badc7a3ffd57ecb768c2461376385620f4240614150565b6137768863ffffffff8088169061415016565b6040805192835260208301919091528051918290030190a350505050565b600161379e611b85565b61ffff16116137f7576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f434f554e5400000000000000604482015290519081900360640190fd5b610cae6142c5565b600080600080613810898989611be1565b909350915082151561386c576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b61387588612619565b905080831061388057fe5b600160a060020a0389166000805160206148a183398151915214156138fb573487146138f6576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b613a03565b341580156139ad5750866139aa6139118b612619565b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051600160a060020a038e16916370a082319160248083019260209291908290030181600087803b15801561397257600080fd5b505af1158015613986573d6000803e3d6000fd5b505050506040513d602081101561399c57600080fd5b50519063ffffffff61358016565b10155b1515613a03576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b613a0c89612f3c565b600160a060020a038816600090815260086020526040902054613a35908463ffffffff61358016565b600160a060020a0389166000818152600860205260409020919091556000805160206148a18339815191521415613aa257604051600160a060020a0386169084156108fc029085906000818181858888f19350505050158015613a9c573d6000803e3d6000fd5b50613aad565b613aad888685613ad2565b613abb8989888a87876143a3565b613ac58989614428565b5090979650505050505050565b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1990931692909217909152613b84908490614237565b505050565b600080600080613b9885611b8b565b9250600091505b8551821015613d865785516000805160206148a183398151915290879084908110613bc657fe5b60209081029091010151600160a060020a031614613c1857613c188683815181101515613bef57fe5b9060200190602002015133308886815181101515613c0957fe5b906020019060200201516135e0565b8482815181101515613c2657fe5b90602001906020020151600860008885815181101515613c4257fe5b6020908102909101810151600160a060020a03168252810191909152604001600020558551869083908110613c7357fe5b90602001906020020151600160a060020a031633600160a060020a03167f4a1a2a6176e9646d9e3157f7c2ab3c499f18337c0b0828cfb28e0a61de4a11f78785815181101515613cbf57fe5b906020019060200201518886815181101515613cd757fe5b60209081029091018101516040805193845291830152818101889052519081900360600190a3600860008784815181101515613d0f57fe5b6020908102909101810151600160a060020a0316825281019190915260400160002060010154865163ffffffff9091169150613d7b908490889085908110613d5357fe5b906020019060200201518785815181101515613d6b57fe5b9060200190602002015184613725565b600190910190613b9f565b5090949350505050565b600080600080600080600080600080613da761353e565b6000805160206148a1833981519152600052600860205260008051602061486183398151915254613dde903463ffffffff61358016565b6000805160206148a1833981519152600052600860205260008051602061486183398151915255613e1c6000805160206148c1833981519152612e12565b9850613e2a898c8f8f614636565b9750613e3c8b8963ffffffff6136c816565b9650600095505b8c5186101561413f578c86815181101515613e5a57fe5b9060200190602002015194506008600086600160a060020a0316600160a060020a0316815260200190815260200160002060000154935088600160a060020a031663ebbb21588c86600960009054906101000a900463ffffffff168c6040518563ffffffff1660e060020a028152600401808581526020018481526020018363ffffffff1663ffffffff168152602001828152602001945050505050602060405180830381600087803b158015613f1057600080fd5b505af1158015613f24573d6000803e3d6000fd5b505050506040513d6020811015613f3a57600080fd5b5051925060008311613f96576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b8b86815181101515613fa457fe5b60209081029091010151831115613fb757fe5b600160a060020a0385166000805160206148a183398151915214613fe657613fe1853330866135e0565b614059565b828c87815181101515613ff557fe5b9060200190602002015111156140595733600160a060020a03166108fc848e8981518110151561402157fe5b90602001906020020151039081150290604051600060405180830381858888f19350505050158015614057573d6000803e3d6000fd5b505b614069848463ffffffff6136c816565b600160a060020a03861660008181526008602090815260409182902084905581518781529081018490528082018b90529051929450909133917f4a1a2a6176e9646d9e3157f7c2ab3c499f18337c0b0828cfb28e0a61de4a11f7919081900360600190a3600860008e888151811015156140df57fe5b6020908102909101810151600160a060020a03168252810191909152604001600020600101548d5163ffffffff90911691506141349088908f908990811061412357fe5b906020019060200201518484613725565b600190950194613e43565b50959b9a5050505050505050505050565b600080831515614163576000915061177d565b5082820282848281151561417357fe5b04146134fb576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b600080808311614223576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f4449564944455f42595f5a45524f0000000000000000000000000000604482015290519081900360640190fd5b828481151561422e57fe5b04949350505050565b61423f614821565b602060405190810160405280600181525090506020818351602085016000875af180151561426c57600080fd5b5080511515613b84576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b6142cd612a36565b60006142d7611b85565b61ffff1611614330576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f434f554e5400000000000000604482015290519081900360640190fd5b600560009054906101000a9004600160a060020a0316600160a060020a03166379ba50976040518163ffffffff1660e060020a028152600401600060405180830381600087803b15801561438357600080fd5b505af1158015614397573d6000803e3d6000fd5b50505050610cae61353e565b7f800000000000000000000000000000000000000000000000000000000000000081106143cc57fe5b60408051848152602081018490528082018390529051600160a060020a038087169288821692918a16917f276856b36cbc45526a0ba64f44611557a2a8b68662c5388e9fe6d72e86e1c8cb9181900360600190a4505050505050565b6000806000806000806000600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561448657600080fd5b505af115801561449a573d6000803e3d6000fd5b505050506040513d60208110156144b057600080fd5b505196506144bd89612619565b95506144c888612619565b600160a060020a03808b16600090815260086020526040808220600190810154938d1683529120015491965063ffffffff90811695509081169350614511908690869061415016565b91506145268663ffffffff8086169061415016565b60408051848152602081018390528151929350600160a060020a03808c1693908d16927f77f29993cf2c084e726f7e802da0719d6a0ade3e204badc7a3ffd57ecb768c24928290030190a361457d878a8887613725565b61458987898786613725565b604080518881526020810188905263ffffffff8616818301529051600160a060020a038b16917f8a6a7f53b3c8fa1dc4b83e3f1be668c1b251ff8d44cdcb83eb3acec3fec6a788919081900360600190a2604080518881526020810187905263ffffffff8516818301529051600160a060020a038a16917f8a6a7f53b3c8fa1dc4b83e3f1be668c1b251ff8d44cdcb83eb3acec3fec6a788919081900360600190a2505050505050505050565b60008060015b84518110156146f9576146a160086000878481518110151561465a57fe5b6020908102909101810151600160a060020a0316825281019190915260400160002054855186908590811061468b57fe5b602090810290910101519063ffffffff61415016565b6146e76008600088868151811015156146b657fe5b6020908102909101810151600160a060020a0316825281019190915260400160002054865187908590811061468b57fe5b10156146f1578091505b60010161463c565b86600160a060020a0316632f55bdb58760086000898781518110151561471b57fe5b6020908102909101810151600160a060020a0316825281019190915260400160002054600954885163ffffffff9091169089908890811061475857fe5b906020019060200201516040518563ffffffff1660e060020a028152600401808581526020018481526020018363ffffffff1663ffffffff168152602001828152602001945050505050602060405180830381600087803b1580156147bc57600080fd5b505af11580156147d0573d6000803e3d6000fd5b505050506040513d60208110156147e657600080fd5b5051979650505050505050565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b602060405190810160405280600190602082028038833950919291505056004552525f494e56414c49445f5245534552564500000000000000000000000000353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c42536f7672796e53776170436f6e76657274657255706772616465720000000000000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee536f7672796e53776170466f726d756c610000000000000000000000000000004552525f4143434553535f44454e494544000000000000000000000000000000a165627a7a72305820e11a7a512fa58be542ef6f48b8986264eed6c32fa0a07382d7f2085a38ab0b220029a165627a7a723058201b53f1b941572275c01357ae14f4f39c8c6b889ffd7858a4e6a491e56407f1960029 \ No newline at end of file +608060405234801561001057600080fd5b50615fc3806100206000396000f30060806040526004361061004b5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416631141395881146100505780633e8ff43f146100b6575b600080fd5b34801561005c57600080fd5b5061008d73ffffffffffffffffffffffffffffffffffffffff6004358116906024351663ffffffff604435166100e2565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b3480156100c257600080fd5b506100cb6101d5565b6040805161ffff9092168252519081900360200190f35b6000808484846100f06101da565b73ffffffffffffffffffffffffffffffffffffffff938416815291909216602082015263ffffffff9091166040808301919091525190819003606001906000f080158015610142573d6000803e3d6000fd5b50604080517ff2fde38b000000000000000000000000000000000000000000000000000000008152336004820152905191925073ffffffffffffffffffffffffffffffffffffffff83169163f2fde38b9160248082019260009290919082900301818387803b1580156101b457600080fd5b505af11580156101c8573d6000803e3d6000fd5b5092979650505050505050565b600190565b604051615dad806101eb83390190560060806040526001600455600980546001606060020a0319169055600b8054600160a060020a03191673c0829421c1d260bd3cb3e0f06cfe2d52db2ce3151790553480156200004c57600080fd5b5060405160608062005dad83398101604090815281516020830151919092015160008054600160a060020a0319163317905582828282828281806200009a8164010000000062000147810204565b5060028054600160a060020a03909216600160a060020a031992831681179091556003805490921617905582620000da8164010000000062000147810204565b81620000ef81640100000000620001c2810204565b505060058054600160a060020a03909416600160a060020a031990941693909317909255506009805463ffffffff9092166401000000000267ffffffff0000000019909216919091179055506200023b945050505050565b600160a060020a0381161515620001bf57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b620f424063ffffffff82161115620001bf57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b615b62806200024b6000396000f3006080604052600436106102bb5763ffffffff60e060020a600035041663024c7ec78114610347578063064bda02146103615780630c7d5cd8146103945780630e53aae9146103c257806312c2aca414610417578063164e68de1461044057806319b64015146104615780631cfab290146104955780631e1401f8146104b657806321e6b53d146104f957806322f3e2d41461051a5780632fe8a6ad1461052f5780633266f45c146105445780633341e0061461055957806338a5e0161461057a578063395900d41461058f5780633e8ff43f146105b9578063415f1240146105e557806349d10b64146105fd5780634af80f0e1461061257806354fd4d5014610633578063579cd3ca146106485780635e35359e1461065d57806361cd756e1461068757806367b6d57c1461069c578063690d8320146106bd5780636a49d2c4146106de5780636aa5332c1461070857806371f52bf31461072057806379ba5097146107355780637adbf9731461074a5780637b1039991461076b5780637d8916bd146107805780637dc0d1d0146108035780638da5cb5b14610818578063918f86741461082d57806394c275ad146108425780639b99a8e2146108575780639ddc230a1461086c578063a60e772414610881578063af94b8d8146108d6578063b127c0a514610900578063b4a176d314610993578063bbb7e5d8146109a8578063bf754558146109c3578063c45d3d92146109d8578063ca1d209d146109ed578063cdc91c69146109f8578063d031370b14610a0d578063d260529c14610a25578063d3fb73b414610a3a578063d4ee1d9014610a4f578063d55ec69714610a64578063d66bd52414610a79578063d895951214610a9a578063dc8de37914610abb578063e8dc12ff14610adc578063ecbca55d14610b06578063f169a02114610b24578063f2fde38b14610b77578063fc0c546a14610b98575b600080516020615a9783398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff161515610345576040805160e560020a62461bcd0281526020600482015260136024820152600080516020615a37833981519152604482015290519081900360640190fd5b005b34801561035357600080fd5b506103456004351515610bad565b34801561036d57600080fd5b50610382600160a060020a0360043516610bf5565b60408051918252519081900360200190f35b3480156103a057600080fd5b506103a9610c07565b6040805163ffffffff9092168252519081900360200190f35b3480156103ce57600080fd5b506103e3600160a060020a0360043516610c13565b6040805195865263ffffffff9094166020860152911515848401521515606084015215156080830152519081900360a00190f35b34801561042357600080fd5b5061042c610cae565b604080519115158252519081900360200190f35b34801561044c57600080fd5b50610382600160a060020a0360043516610cf7565b34801561046d57600080fd5b506104796004356112eb565b60408051600160a060020a039092168252519081900360200190f35b3480156104a157600080fd5b506103a9600160a060020a0360043516611317565b3480156104c257600080fd5b506104e0600160a060020a0360043581169060243516604435611349565b6040805192835260208301919091528051918290030190f35b34801561050557600080fd5b50610345600160a060020a0360043516611363565b34801561052657600080fd5b5061042c611377565b34801561053b57600080fd5b5061042c611411565b34801561055057600080fd5b50610382611432565b34801561056557600080fd5b50610382600160a060020a0360043516611438565b34801561058657600080fd5b50610345611453565b34801561059b57600080fd5b50610345600160a060020a0360043581169060243516604435611465565b3480156105c557600080fd5b506105ce611500565b6040805161ffff9092168252519081900360200190f35b3480156105f157600080fd5b50610345600435611505565b34801561060957600080fd5b50610345611749565b34801561061e57600080fd5b50610345600160a060020a0360043516611993565b34801561063f57600080fd5b506105ce6119c8565b34801561065457600080fd5b506103a96119cd565b34801561066957600080fd5b50610345600160a060020a03600435811690602435166044356119e5565b34801561069357600080fd5b50610479611aee565b3480156106a857600080fd5b50610345600160a060020a0360043516611afd565b3480156106c957600080fd5b50610345600160a060020a0360043516611ba0565b3480156106ea57600080fd5b50610345600160a060020a036004351663ffffffff60243516611ca5565b34801561071457600080fd5b50610382600435611db4565b34801561072c57600080fd5b506105ce611dd9565b34801561074157600080fd5b50610345611de8565b34801561075657600080fd5b50610345600160a060020a0360043516611e9c565b34801561077757600080fd5b50610479611ec6565b6040805160206004803580820135838102808601850190965280855261034595369593946024949385019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a9989019892975090820195509350839250850190849080828437509497505093359450611ed59350505050565b34801561080f57600080fd5b506104796121d4565b34801561082457600080fd5b506104796121e3565b34801561083957600080fd5b506103826121f2565b34801561084e57600080fd5b506103a96121f8565b34801561086357600080fd5b506105ce61220c565b34801561087857600080fd5b50610382612212565b34801561088d57600080fd5b5060408051602060048035808201358381028086018501909652808552610382953695939460249493850192918291850190849080828437509497506122189650505050505050565b3480156108e257600080fd5b506104e0600160a060020a036004358116906024351660443561226e565b34801561090c57600080fd5b5060408051602060046024803582810135848102808701860190975280865261034596843596369660449591949091019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a9989019892975090820195509350839250850190849080828437509497506124219650505050505050565b34801561099f57600080fd5b50610345612555565b3480156109b457600080fd5b50610382600435602435612581565b3480156109cf57600080fd5b5061042c61259b565b3480156109e457600080fd5b506104796125a0565b6103456004356125af565b348015610a0457600080fd5b50610345612ab4565b348015610a1957600080fd5b50610479600435612b0d565b348015610a3157600080fd5b5061042c611500565b348015610a4657600080fd5b50610479612b35565b348015610a5b57600080fd5b50610479612b44565b348015610a7057600080fd5b50610345612b53565b348015610a8557600080fd5b506103e3600160a060020a0360043516612c48565b348015610aa657600080fd5b50610382600160a060020a0360043516612c8e565b348015610ac757600080fd5b50610382600160a060020a0360043516612c9f565b610382600160a060020a036004358116906024358116906044359060643581169060843516612cc8565b348015610b1257600080fd5b5061034563ffffffff60043516612f1b565b348015610b3057600080fd5b50610b3c600435613010565b6040518082600260200280838360005b83811015610b64578181015183820152602001610b4c565b5050505090500191505060405180910390f35b348015610b8357600080fd5b50610345600160a060020a03600435166131d0565b348015610ba457600080fd5b50610479613260565b610bb561326f565b60038054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b600a6020526000908152604090205481565b60095463ffffffff1681565b6000806000806000610c236159ce565b50505050600160a060020a03929092166000908152600860209081526040808320815160a081018352815480825260019092015463ffffffff811694820185905260ff64010000000082048116151594830194909452650100000000008104841615156060830152660100000000000090049092161515608090920182905295919450919250829190565b600080516020615a9783398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1690565b6000806000806000806000806060610d0d6132bf565b600160a060020a03163314610d6c576040805160e560020a62461bcd02815260206004820152600c60248201527f756e617574686f72697a65640000000000000000000000000000000000000000604482015290519081900360640190fd5b610d957f536f7672796e537761704e6574776f726b0000000000000000000000000000006133d6565b9450600093505b6007548410156112cb576007805485908110610db457fe5b6000918252602080832090910154600160a060020a0316808352600a909152604082205490995097508711610de8576112c0565b600160a060020a0388166000908152600a6020526040812055610e09613458565b600160a060020a031688600160a060020a03161415610f505787600160a060020a031663095ea7b3610e396132bf565b896040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b158015610e8c57600080fd5b505af1158015610ea0573d6000803e3d6000fd5b505050506040513d6020811015610eb657600080fd5b50610ec190506132bf565b600160a060020a031663abe979e1610ed7613458565b6040805160e060020a63ffffffff8516028152600160a060020a0390921660048301526bffffffffffffffffffffffff8b16602483015251604480830192600092919082900301818387803b158015610f2f57600080fd5b505af1158015610f43573d6000803e3d6000fd5b505050506000925061126e565b610f5861353e565b600160a060020a031688600160a060020a03161415610f795786925061125b565b87600160a060020a031663095ea7b3610fb17f536f7672796e537761704e6574776f726b0000000000000000000000000000006133d6565b896040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b15801561100457600080fd5b505af1158015611018573d6000803e3d6000fd5b505050506040513d602081101561102e57600080fd5b50519150811515611089576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f415050524f56414c5f4641494c454400000000000000000000000000604482015290519081900360640190fd5b84600160a060020a031663d734fa19896110a161353e565b6040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182600160a060020a0316600160a060020a0316815260200192505050600060405180830381600087803b15801561110557600080fd5b505af1158015611119573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561114257600080fd5b81019080805164010000000081111561115a57600080fd5b8201602081018481111561116d57600080fd5b815185602082028301116401000000008211171561118a57600080fd5b5050929190505050905084600160a060020a031663f3898a97828960016040518463ffffffff1660e060020a0281526004018080602001848152602001838152602001828103825285818151815260200191508051906020019060200280838360005b838110156112055781810151838201526020016111ed565b50505050905001945050505050602060405180830381600087803b15801561122c57600080fd5b505af1158015611240573d6000803e3d6000fd5b505050506040513d602081101561125657600080fd5b505192505b61126b868463ffffffff61362416565b95505b60408051600160a060020a038a81168252602082018a90528183018690529151918c169133917f3953f559f015828db2bd3868682d85a85c6e24c3f05fb4e927797d7c007b3673919081900360600190a35b600190930192610d9c565b6112dd6112d661353e565b8b88613688565b509398975050505050505050565b60006007828154811015156112fc57fe5b600091825260209091200154600160a060020a031692915050565b6000816113238161373f565b5050600160a060020a031660009081526008602052604090206001015463ffffffff1690565b60008061135785858561226e565b91509150935093915050565b61136b61326f565b61137481611afd565b50565b600030600160a060020a0316600560009054906101000a9004600160a060020a0316600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156113d657600080fd5b505af11580156113ea573d6000803e3d6000fd5b505050506040513d602081101561140057600080fd5b5051600160a060020a031614905090565b60035474010000000000000000000000000000000000000000900460ff1681565b600e5481565b600160a060020a03166000908152600a602052604090205490565b61145b61326f565b611463612ab4565b565b61146d61326f565b600554604080517f5e35359e000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015285811660248301526044820185905291519190921691635e35359e91606480830192600092919082900301818387803b1580156114e357600080fd5b505af11580156114f7573d6000803e3d6000fd5b50505050505050565b600190565b6000606060006115136137ac565b600260045560008411611570576040805160e560020a62461bcd02815260206004820152600f60248201527f4552525f5a45524f5f414d4f554e540000000000000000000000000000000000604482015290519081900360640190fd5b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156115c357600080fd5b505af11580156115d7573d6000803e3d6000fd5b505050506040513d60208110156115ed57600080fd5b5051600554604080517fa24835d1000000000000000000000000000000000000000000000000000000008152336004820152602481018890529051929550600160a060020a039091169163a24835d19160448082019260009290919082900301818387803b15801561165e57600080fd5b505af1158015611672573d6000803e3d6000fd5b505050506007805490506040519080825280602002602001820160405280156116a5578160200160208202803883390190505b509150600090505b81518110156116d857600182828151811015156116c657fe5b602090810290910101526001016116ad565b61173e600780548060200260200160405190810160405280929190818152602001828054801561173157602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311611713575b5050505050838587613806565b505060016004555050565b60008054600160a060020a031633148061177e575060035474010000000000000000000000000000000000000000900460ff16155b15156117c2576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615af7833981519152604482015290519081900360640190fd5b6117eb7f436f6e74726163745265676973747279000000000000000000000000000000006133d6565b600254909150600160a060020a038083169116148015906118145750600160a060020a03811615155b151561186a576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6040805160e260020a632ecd14d30281527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b1580156118d857600080fd5b505af11580156118ec573d6000803e3d6000fd5b505050506040513d602081101561190257600080fd5b5051600160a060020a03161415611963576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a03808416600160a060020a0319928316179092559091169216919091179055565b61199b61326f565b806119a581613acb565b5060068054600160a060020a031916600160a060020a0392909216919091179055565b602081565b60095468010000000000000000900463ffffffff1681565b60006119ef6137ac565b60026004556119fc61326f565b611a13600080516020615a778339815191526133d6565b600160a060020a0385166000908152600860205260409020600101549091506601000000000000900460ff161580611a505750611a4e611377565b155b80611a685750600054600160a060020a038281169116145b1515611aac576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615af7833981519152604482015290519081900360640190fd5b611ab7848484613b2c565b600160a060020a0384166000908152600860205260409020600101546601000000000000900460ff161561173e5761173e84613b5d565b600354600160a060020a031681565b611b0561326f565b600080516020615a77833981519152611b1d81613c74565b600554604080517ff2fde38b000000000000000000000000000000000000000000000000000000008152600160a060020a0385811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b158015611b8457600080fd5b505af1158015611b98573d6000803e3d6000fd5b505050505050565b6000611baa6137ac565b6002600455611bb761326f565b600080516020615a97833981519152611bcf8161373f565b611be6600080516020615a778339815191526133d6565b9150611bf0611377565b1580611c095750600054600160a060020a038381169116145b1515611c4d576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615af7833981519152604482015290519081900360640190fd5b604051600160a060020a03841690303180156108fc02916000818181858888f19350505050158015611c83573d6000803e3d6000fd5b50611c9b600080516020615a97833981519152613b5d565b5050600160045550565b600080611cb061220c565b61ffff16915060028210611cfc576040805160e560020a62461bcd0281526020600482015260196024820152600080516020615b17833981519152604482015290519081900360640190fd5b506012600160a060020a038416600080516020615a9783398151915214611d8d5783600160a060020a031663313ce5676040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611d5b57600080fd5b505af1158015611d6f573d6000803e3d6000fd5b505050506040513d6020811015611d8557600080fd5b505160ff1690505b811515611d9e57600d819055611da4565b600e8190555b611dae8484613cca565b50505050565b600080825b6000811115611dd25760019190910190600a9004611db9565b5092915050565b6000611de361220c565b905090565b600154600160a060020a03163314611e38576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615af7833981519152604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a36001805460008054600160a060020a0319908116600160a060020a03841617909155169055565b611ea461326f565b600c8054600160a060020a031916600160a060020a0392909216919091179055565b600254600160a060020a031681565b6000806000611ee26137ac565b6002600455611eef613eea565b611efa868686613f48565b600092505b8551831015611fb8578551600080516020615a9783398151915290879085908110611f2657fe5b90602001906020020151600160a060020a03161415611fad57348584815181101515611f4e57fe5b6020908102909101015114611fad576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b600190920191611eff565b600034111561205d57600080516020615a9783398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff16151561205d576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f4e4f5f4554485f524553455256450000000000000000000000000000604482015290519081900360640190fd5b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156120b057600080fd5b505af11580156120c4573d6000803e3d6000fd5b505050506040513d60208110156120da57600080fd5b505191506120e9868684614204565b905083811015612143576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f52455455524e5f544f4f5f4c4f570000000000000000000000000000604482015290519081900360640190fd5b600554604080517f867904b4000000000000000000000000000000000000000000000000000000008152336004820152602481018490529051600160a060020a039092169163867904b49160448082019260009290919082900301818387803b1580156121af57600080fd5b505af11580156121c3573d6000803e3d6000fd5b505060016004555050505050505050565b600c54600160a060020a031681565b600054600160a060020a031681565b6103e881565b600954640100000000900463ffffffff1681565b60075490565b600d5481565b80516000908190815b8181101561225557612249858281518110151561223a57fe5b90602001906020020151611db4565b90920191600101612221565b60016122618484612581565b03600a0a95945050505050565b60008060008061227c613eea565b866122868161373f565b866122908161373f565b600160a060020a0389811690891614156122f4576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f53414d455f534f555243455f54415247455400000000000000000000604482015290519081900360640190fd5b61230b600080516020615ab78339815191526133d6565b600160a060020a03166394491fab6123228b612c9f565b600160a060020a038c1660009081526008602052604090206001015463ffffffff1661234d8c612c9f565b600160a060020a038d16600090815260086020908152604080832060010154815163ffffffff89811660e060020a028252600482019890985295871660248701526044860194909452949092166064840152608483018d9052925160a48084019492939192918390030190829087803b1580156123c957600080fd5b505af11580156123dd573d6000803e3d6000fd5b505050506040513d60208110156123f357600080fd5b5051935061240084614231565b9250612412848463ffffffff61426d16565b99929850919650505050505050565b600061242b6137ac565b6002600455612438613eea565b612443838386613f48565b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561249657600080fd5b505af11580156124aa573d6000803e3d6000fd5b505050506040513d60208110156124c057600080fd5b5051600554604080517fa24835d1000000000000000000000000000000000000000000000000000000008152336004820152602481018890529051929350600160a060020a039091169163a24835d19160448082019260009290919082900301818387803b15801561253157600080fd5b505af1158015612545573d6000803e3d6000fd5b5050505061173e83838387613806565b61255d61326f565b60035460028054600160a060020a031916600160a060020a03909216919091179055565b60008160028104840181151561259357fe5b049392505050565b600181565b600654600160a060020a031681565b6000806000806000806000806000806125c66137ac565b60026004556125d36142cd565b600080516020615a978339815191526000526008602052600080516020615a578339815191525461260a903463ffffffff61426d16565b600080516020615a97833981519152600090815260086020908152600080516020615a5783398151915292909255600554604080517f18160ddd0000000000000000000000000000000000000000000000000000000081529051600160a060020a03909216936318160ddd9360048084019492938390030190829087803b15801561269457600080fd5b505af11580156126a8573d6000803e3d6000fd5b505050506040513d60208110156126be57600080fd5b505199506126d9600080516020615ab78339815191526133d6565b6007549099509750600096505b87871015612a1e5760078054889081106126fc57fe5b9060005260206000200160009054906101000a9004600160a060020a031695506008600087600160a060020a0316600160a060020a0316815260200190815260200160002060000154945088600160a060020a031663ebbb21588b87600960009054906101000a900463ffffffff168f6040518563ffffffff1660e060020a028152600401808581526020018481526020018363ffffffff1663ffffffff168152602001828152602001945050505050602060405180830381600087803b1580156127c657600080fd5b505af11580156127da573d6000803e3d6000fd5b505050506040513d60208110156127f057600080fd5b50519350600160a060020a038616600080516020615a97833981519152141561294a57833411156128505760405133903486900380156108fc02916000818181858888f1935050505015801561284a573d6000803e3d6000fd5b50612945565b833410156129455734156128ae576040805160e560020a62461bcd02815260206004820152601560248201527f4552525f494e56414c49445f4554485f56414c55450000000000000000000000604482015290519081900360640190fd5b600b546128c690600160a060020a031633308761430f565b600b54604080517f2e1a7d4d000000000000000000000000000000000000000000000000000000008152600481018790529051600160a060020a0390921691632e1a7d4d9160248082019260009290919082900301818387803b15801561292c57600080fd5b505af1158015612940573d6000803e3d6000fd5b505050505b612956565b6129568633308761430f565b612966858563ffffffff61362416565b600160a060020a038716600090815260086020526040902081905592506129938a8c63ffffffff61362416565b60408051868152602081018690528082018390529051919350600160a060020a0388169133917f4a1a2a6176e9646d9e3157f7c2ab3c499f18337c0b0828cfb28e0a61de4a11f7919081900360600190a350600160a060020a03851660009081526008602052604090206001015463ffffffff16612a13828785846143f1565b6001909601956126e6565b600554604080517f867904b4000000000000000000000000000000000000000000000000000000008152336004820152602481018e90529051600160a060020a039092169163867904b49160448082019260009290919082900301818387803b158015612a8a57600080fd5b505af1158015612a9e573d6000803e3d6000fd5b5050600160045550505050505050505050505050565b612abc61326f565b612ac4614460565b600554600190600160a060020a0316612adb611500565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a4565b6007805482908110612b1b57fe5b600091825260209091200154600160a060020a0316905081565b600554600160a060020a031681565b600154600160a060020a031681565b6000612b5d61326f565b612b74600080516020615a778339815191526133d6565b600554909150600090600160a060020a0316612b8e611500565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a4612bc7816131d0565b604080517f90f58c96000000000000000000000000000000000000000000000000000000008152602060048201529051600160a060020a038316916390f58c9691602480830192600092919082900301818387803b158015612c2857600080fd5b505af1158015612c3c573d6000803e3d6000fd5b50505050611374611de8565b6008602052600090815260409020805460019091015463ffffffff81169060ff640100000000820481169165010000000000810482169166010000000000009091041685565b6000612c9982612c9f565b92915050565b600081612cab8161373f565b5050600160a060020a031660009081526008602052604090205490565b6000612cd26137ac565b60026004557f536f7672796e537761704e6574776f726b000000000000000000000000000000612d0181613c74565b600160a060020a038781169087161415612d65576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f53414d455f534f555243455f54415247455400000000000000000000604482015290519081900360640190fd5b600654600160a060020a03161580612ea85750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03878116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b158015612de057600080fd5b505af1158015612df4573d6000803e3d6000fd5b505050506040513d6020811015612e0a57600080fd5b50518015612ea85750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b158015612e7b57600080fd5b505af1158015612e8f573d6000803e3d6000fd5b505050506040513d6020811015612ea557600080fd5b50515b1515612efe576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f4e4f545f57484954454c495354454400000000000000000000000000604482015290519081900360640190fd5b612f0b87878787876144b9565b6001600455979650505050505050565b612f2361326f565b60095463ffffffff64010000000090910481169082161115612f8f576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b6009546040805163ffffffff6801000000000000000090930483168152918316602083015280517f81cd2ffb37dd237c0e4e2a3de5265fcf9deb43d3e7801e80db9f1ccfba7ee6009281900390910190a16009805463ffffffff90921668010000000000000000026bffffffff000000000000000019909216919091179055565b6130186159fc565b600080600080600080613038600080516020615ab78339815191526133d6565b9550600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561308d57600080fd5b505af11580156130a1573d6000803e3d6000fd5b505050506040513d60208110156130b757600080fd5b50516007549095509350600092505b838310156131c55760078054849081106130dc57fe5b6000918252602080832090910154600160a060020a039081168084526008835260408085205460095482517f8074590a000000000000000000000000000000000000000000000000000000008152600481018d90526024810183905263ffffffff9091166044820152606481018f905291519297509550918a1693638074590a93608480850194919392918390030190829087803b15801561317d57600080fd5b505af1158015613191573d6000803e3d6000fd5b505050506040513d60208110156131a757600080fd5b50518784600281106131b557fe5b60200201526001909201916130c6565b505050505050919050565b6131d861326f565b600054600160a060020a038281169116141561323e576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b60018054600160a060020a031916600160a060020a0392909216919091179055565b600554600160a060020a031690565b600054600160a060020a03163314611463576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615af7833981519152604482015290519081900360640190fd5b6002546040805160e260020a632ecd14d3028152600080516020615ad783398151915260048201529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561331c57600080fd5b505af1158015613330573d6000803e3d6000fd5b505050506040513d602081101561334657600080fd5b5051604080517fe8f627640000000000000000000000000000000000000000000000000000000081529051600160a060020a039092169163e8f62764916004808201926020929091908290030181600087803b1580156133a557600080fd5b505af11580156133b9573d6000803e3d6000fd5b505050506040513d60208110156133cf57600080fd5b5051905090565b6002546040805160e260020a632ecd14d3028152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561342657600080fd5b505af115801561343a573d6000803e3d6000fd5b505050506040513d602081101561345057600080fd5b505192915050565b6002546040805160e260020a632ecd14d3028152600080516020615ad783398151915260048201529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b1580156134b557600080fd5b505af11580156134c9573d6000803e3d6000fd5b505050506040513d60208110156134df57600080fd5b5051604080517fb9cffa3e0000000000000000000000000000000000000000000000000000000081529051600160a060020a039092169163b9cffa3e916004808201926020929091908290030181600087803b1580156133a557600080fd5b6002546040805160e260020a632ecd14d3028152600080516020615ad783398151915260048201529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561359b57600080fd5b505af11580156135af573d6000803e3d6000fd5b505050506040513d60208110156135c557600080fd5b5051604080517f99a752b50000000000000000000000000000000000000000000000000000000081529051600160a060020a03909216916399a752b5916004808201926020929091908290030181600087803b1580156133a557600080fd5b600082820183811015613681576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b9392505050565b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff199093169290921790915261373a9084906147f4565b505050565b600160a060020a0381166000908152600860205260409020600101546601000000000000900460ff161515611374576040805160e560020a62461bcd0281526020600482015260136024820152600080516020615a37833981519152604482015290519081900360640190fd5b600454600114611463576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5245454e5452414e4359000000000000000000000000000000000000604482015290519081900360640190fd5b60008060008060008060008061381a6142cd565b613831600080516020615ab78339815191526133d6565b97506138438a8a63ffffffff61426d16565b9650600095505b8b51861015613abd578b8681518110151561386157fe5b9060200190602002015194506008600086600160a060020a0316600160a060020a0316815260200190815260200160002060000154935087600160a060020a0316638074590a8b86600960009054906101000a900463ffffffff168d6040518563ffffffff1660e060020a028152600401808581526020018481526020018363ffffffff1663ffffffff168152602001828152602001945050505050602060405180830381600087803b15801561391757600080fd5b505af115801561392b573d6000803e3d6000fd5b505050506040513d602081101561394157600080fd5b50518b519093508b908790811061395457fe5b602090810290910101518310156139b5576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b6139c5848463ffffffff61426d16565b600160a060020a0386166000818152600860205260409020829055909250600080516020615a978339815191521415613a2b57604051339084156108fc029085906000818181858888f19350505050158015613a25573d6000803e3d6000fd5b50613a36565b613a36853385613688565b60408051848152602081018490528082018990529051600160a060020a0387169133917fbc7d19d505c7ec4db83f3b51f19fb98c4c8a99922e7839d1ee608dfbee29501b9181900360600190a350600160a060020a03841660009081526008602052604090206001015463ffffffff16613ab2878684846143f1565b60019095019461384a565b505050505050505050505050565b600160a060020a038116301415611374576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b613b3461326f565b82613b3e81614882565b82613b4881614882565b83613b5281613acb565b611b98868686613688565b80613b678161373f565b600160a060020a038216600080516020615a978339815191521415613ba757600160a060020a038216600090815260086020526040902030319055613c70565b600160a060020a0382166000818152600a602090815260408083205481517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529151613c5695919491936370a0823193602480820194929392918390030190829087803b158015613c1e57600080fd5b505af1158015613c32573d6000803e3d6000fd5b505050506040513d6020811015613c4857600080fd5b50519063ffffffff61426d16565b600160a060020a0383166000908152600860205260409020555b5050565b613c7d816133d6565b600160a060020a03163314611374576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615af7833981519152604482015290519081900360640190fd5b6000613cd461326f565b613cdc6148e2565b82613ce681614882565b83613cf081613acb565b83613cfa8161493f565b600554600160a060020a03878116911614801590613d3e5750600160a060020a0386166000908152600860205260409020600101546601000000000000900460ff16155b1515613d82576040805160e560020a62461bcd0281526020600482015260136024820152600080516020615a37833981519152604482015290519081900360640190fd5b60095463ffffffff908116620f42400381169086161115613ded576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b61ffff613df861220c565b61ffff1610613e3f576040805160e560020a62461bcd0281526020600482015260196024820152600080516020615b17833981519152604482015290519081900360640190fd5b505050600160a060020a0390921660008181526008602052604081208181556001908101805466ff0000000000001963ffffffff80881663ffffffff1993841617919091166601000000000000179092556007805493840181559093527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6889091018054600160a060020a03191690931790925560098054808416909401909216921691909117905550565b613ef2611377565b1515611463576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f494e4143544956450000000000000000000000000000000000000000604482015290519081900360640190fd5b600754835160009182918114613f96576040805160e560020a62461bcd0281526020600482015260136024820152600080516020615a37833981519152604482015290519081900360640190fd5b84518114613fee576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b600092505b808310156141ac5760086000878581518110151561400d57fe5b6020908102909101810151600160a060020a031682528101919091526040016000206001015460ff6601000000000000909104161515614085576040805160e560020a62461bcd0281526020600482015260136024820152600080516020615a37833981519152604482015290519081900360640190fd5b600091505b808210156140ed5785828151811015156140a057fe5b90602001906020020151600160a060020a03166007848154811015156140c257fe5b600091825260209091200154600160a060020a031614156140e2576140ed565b60019091019061408a565b808210614132576040805160e560020a62461bcd0281526020600482015260136024820152600080516020615a37833981519152604482015290519081900360640190fd5b6000858481518110151561414257fe5b60209081029091010151116141a1576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b600190920191613ff3565b60008411611b98576040805160e560020a62461bcd02815260206004820152600f60248201527f4552525f5a45524f5f414d4f554e540000000000000000000000000000000000604482015290519081900360640190fd5b600081151561421e5761421784846149b4565b9050613681565b614229848484614bbb565b949350505050565b600954600090612c9990620f42409061426190859068010000000000000000900463ffffffff90811690614f7b16565b9063ffffffff614ff416565b6000818310156142c7576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b60075460005b81811015613c70576143076007828154811015156142ed57fe5b600091825260209091200154600160a060020a0316613b5d565b6001016142d3565b604080517f7472616e7366657246726f6d28616464726573732c616464726573732c75696e81527f74323536290000000000000000000000000000000000000000000000000000006020808301919091528251918290036025018220600160a060020a038088166024850152861660448401526064808401869052845180850390910181526084909301909352810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1990931692909217909152611dae9085906147f4565b600554600160a060020a0380851691167f77f29993cf2c084e726f7e802da0719d6a0ade3e204badc7a3ffd57ecb768c2461442f85620f4240614f7b565b6144428863ffffffff80881690614f7b16565b6040805192835260208301919091528051918290030190a350505050565b600161446a61220c565b61ffff16116144b1576040805160e560020a62461bcd0281526020600482015260196024820152600080516020615b17833981519152604482015290519081900360640190fd5b611463615062565b600c546000908190819081908190600160a060020a0316156144dd576144dd61512e565b6144e88a8a8a61226e565b935093506144f589612c9f565b915081841061450057fe5b600160a060020a038a16600080516020615a97833981519152141561457b57348814614576576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b61466f565b341580156146195750600160a060020a038a166000908152600a602052604090205488906146169061460a6145af8e612c9f565b8e600160a060020a03166370a08231306040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b158015613c1e57600080fd5b9063ffffffff61426d16565b10155b151561466f576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b6146788a613b5d565b61468183615456565b600160a060020a038a166000908152600a60205260409020549091506146ad908263ffffffff61362416565b600160a060020a038a166000908152600a60209081526040808320939093556008905220546146e890829061460a908763ffffffff61426d16565b600160a060020a038a16600090815260086020526040902055831515614758576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b600160a060020a038916600080516020615a9783398151915214156147b357604051600160a060020a0387169085156108fc029086906000818181858888f193505050501580156147ad573d6000803e3d6000fd5b506147be565b6147be898786613688565b6147dc8a8a898b886147d6898863ffffffff61426d16565b87615490565b6147e68a8a61551d565b509198975050505050505050565b6147fc615a17565b602060405190810160405280600181525090506020818351602085016000875af180151561482957600080fd5b508051151561373a576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b600160a060020a0381161515611374576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b6148ea611377565b15611463576040805160e560020a62461bcd02815260206004820152600a60248201527f4552525f41435449564500000000000000000000000000000000000000000000604482015290519081900360640190fd5b60008163ffffffff1611801561495e5750620f424063ffffffff821611155b1515611374576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b6000806000806149c385612218565b9250600091505b8551821015614bb1578551600080516020615a97833981519152908790849081106149f157fe5b60209081029091010151600160a060020a031614614a4357614a438683815181101515614a1a57fe5b9060200190602002015133308886815181101515614a3457fe5b9060200190602002015161430f565b8482815181101515614a5157fe5b90602001906020020151600860008885815181101515614a6d57fe5b6020908102909101810151600160a060020a03168252810191909152604001600020558551869083908110614a9e57fe5b90602001906020020151600160a060020a031633600160a060020a03167f4a1a2a6176e9646d9e3157f7c2ab3c499f18337c0b0828cfb28e0a61de4a11f78785815181101515614aea57fe5b906020019060200201518886815181101515614b0257fe5b60209081029091018101516040805193845291830152818101889052519081900360600190a3600860008784815181101515614b3a57fe5b6020908102909101810151600160a060020a0316825281019190915260400160002060010154865163ffffffff9091169150614ba6908490889085908110614b7e57fe5b906020019060200201518785815181101515614b9657fe5b90602001906020020151846143f1565b6001909101906149ca565b5090949350505050565b600080600080600080600080600080614bd26142cd565b600080516020615a978339815191526000526008602052600080516020615a5783398151915254614c09903463ffffffff61426d16565b600080516020615a978339815191526000526008602052600080516020615a5783398151915255614c47600080516020615ab78339815191526133d6565b9850614c55898c8f8f61572b565b9750614c678b8963ffffffff61362416565b9650600095505b8c51861015614f6a578c86815181101515614c8557fe5b9060200190602002015194506008600086600160a060020a0316600160a060020a0316815260200190815260200160002060000154935088600160a060020a031663ebbb21588c86600960009054906101000a900463ffffffff168c6040518563ffffffff1660e060020a028152600401808581526020018481526020018363ffffffff1663ffffffff168152602001828152602001945050505050602060405180830381600087803b158015614d3b57600080fd5b505af1158015614d4f573d6000803e3d6000fd5b505050506040513d6020811015614d6557600080fd5b5051925060008311614dc1576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b8b86815181101515614dcf57fe5b60209081029091010151831115614de257fe5b600160a060020a038516600080516020615a9783398151915214614e1157614e0c8533308661430f565b614e84565b828c87815181101515614e2057fe5b906020019060200201511115614e845733600160a060020a03166108fc848e89815181101515614e4c57fe5b90602001906020020151039081150290604051600060405180830381858888f19350505050158015614e82573d6000803e3d6000fd5b505b614e94848463ffffffff61362416565b600160a060020a03861660008181526008602090815260409182902084905581518781529081018490528082018b90529051929450909133917f4a1a2a6176e9646d9e3157f7c2ab3c499f18337c0b0828cfb28e0a61de4a11f7919081900360600190a3600860008e88815181101515614f0a57fe5b6020908102909101810151600160a060020a03168252810191909152604001600020600101548d5163ffffffff9091169150614f5f9088908f9089908110614f4e57fe5b9060200190602002015184846143f1565b600190950194614c6e565b50959b9a5050505050505050505050565b600080831515614f8e5760009150611dd2565b50828202828482811515614f9e57fe5b0414613681576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b60008080831161504e576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f4449564944455f42595f5a45524f0000000000000000000000000000604482015290519081900360640190fd5b828481151561505957fe5b04949350505050565b61506a61326f565b600061507461220c565b61ffff16116150bb576040805160e560020a62461bcd0281526020600482015260196024820152600080516020615b17833981519152604482015290519081900360640190fd5b600560009054906101000a9004600160a060020a0316600160a060020a03166379ba50976040518163ffffffff1660e060020a028152600401600060405180830381600087803b15801561510e57600080fd5b505af1158015615122573d6000803e3d6000fd5b505050506114636142cd565b60008060008060008060008060008060006007600081548110151561514f57fe5b60009182526020909120015460078054600160a060020a039092169c5090600190811061517857fe5b600091825260209091200154600160a060020a031699506151988b612c9f565b98506151a38a612c9f565b600160a060020a03808d16600090815260086020526040808220600190810154938f1683529120015491995063ffffffff908116985090811696506151ee908a906103e890614ff416565b9450615202886103e863ffffffff614ff416565b935061521b600080516020615ab78339815191526133d6565b604080517f94491fab000000000000000000000000000000000000000000000000000000008152600481018c905263ffffffff808b166024830152604482018c905289166064820152608481018890529051919450600160a060020a038516916394491fab9160a4808201926020929091908290030181600087803b1580156152a357600080fd5b505af11580156152b7573d6000803e3d6000fd5b505050506040513d60208110156152cd57600080fd5b5051604080517f94491fab000000000000000000000000000000000000000000000000000000008152600481018b905263ffffffff808a166024830152604482018d90528a166064820152608481018790529051919350600160a060020a038516916394491fab9160a4808201926020929091908290030181600087803b15801561535757600080fd5b505af115801561536b573d6000803e3d6000fd5b505050506040513d602081101561538157600080fd5b5051600d549091506153a3908690614261908590600a0a63ffffffff614f7b16565b91506153c184614261600e54600a0a84614f7b90919063ffffffff16565b600c54604080517f9c0e3f7a00000000000000000000000000000000000000000000000000000000815260048101869052602481018490529051929350600160a060020a0390911691639c0e3f7a9160448082019260009290919082900301818387803b15801561543157600080fd5b505af1158015615445573d6000803e3d6000fd5b505050505050505050505050505050565b60008060006154636158e8565b6009549092506142299063ffffffff680100000000000000009091048116906142619087908690614f7b16565b7f800000000000000000000000000000000000000000000000000000000000000082106154b957fe5b6040805185815260208101859052808201849052606081018390529051600160a060020a038088169289821692918b16917f82886ccc747026f86399e87d5f3874c5d198ec2498833553651f63a13f5dbd0c9181900360800190a450505050505050565b6000806000806000806000600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561557b57600080fd5b505af115801561558f573d6000803e3d6000fd5b505050506040513d60208110156155a557600080fd5b505196506155b289612c9f565b95506155bd88612c9f565b600160a060020a03808b16600090815260086020526040808220600190810154938d1683529120015491965063ffffffff908116955090811693506156069086908690614f7b16565b915061561b8663ffffffff80861690614f7b16565b60408051848152602081018390528151929350600160a060020a03808c1693908d16927f77f29993cf2c084e726f7e802da0719d6a0ade3e204badc7a3ffd57ecb768c24928290030190a3615672878a88876143f1565b61567e878987866143f1565b604080518881526020810188905263ffffffff8616818301529051600160a060020a038b16917f8a6a7f53b3c8fa1dc4b83e3f1be668c1b251ff8d44cdcb83eb3acec3fec6a788919081900360600190a2604080518881526020810187905263ffffffff8516818301529051600160a060020a038a16917f8a6a7f53b3c8fa1dc4b83e3f1be668c1b251ff8d44cdcb83eb3acec3fec6a788919081900360600190a2505050505050505050565b60008060015b84518110156157ee5761579660086000878481518110151561574f57fe5b6020908102909101810151600160a060020a0316825281019190915260400160002054855186908590811061578057fe5b602090810290910101519063ffffffff614f7b16565b6157dc6008600088868151811015156157ab57fe5b6020908102909101810151600160a060020a0316825281019190915260400160002054865187908590811061578057fe5b10156157e6578091505b600101615731565b86600160a060020a0316632f55bdb58760086000898781518110151561581057fe5b6020908102909101810151600160a060020a0316825281019190915260400160002054600954885163ffffffff9091169089908890811061584d57fe5b906020019060200201516040518563ffffffff1660e060020a028152600401808581526020018481526020018363ffffffff1663ffffffff168152602001828152602001945050505050602060405180830381600087803b1580156158b157600080fd5b505af11580156158c5573d6000803e3d6000fd5b505050506040513d60208110156158db57600080fd5b5051979650505050505050565b6002546040805160e260020a632ecd14d3028152600080516020615ad783398151915260048201529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561594557600080fd5b505af1158015615959573d6000803e3d6000fd5b505050506040513d602081101561596f57600080fd5b5051604080517fb0e21e8a0000000000000000000000000000000000000000000000000000000081529051600160a060020a039092169163b0e21e8a916004808201926020929091908290030181600087803b1580156133a557600080fd5b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b60408051808201825290600290829080388339509192915050565b602060405190810160405280600190602082028038833950919291505056004552525f494e56414c49445f5245534552564500000000000000000000000000353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c42536f7672796e53776170436f6e76657274657255706772616465720000000000000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee536f7672796e53776170466f726d756c610000000000000000000000000000005377617053657474696e677300000000000000000000000000000000000000004552525f4143434553535f44454e4945440000000000000000000000000000004552525f494e56414c49445f524553455256455f434f554e5400000000000000a165627a7a72305820c57fa71f448934f38dfed5769d467183f318105003ba6bf2a8fcc5f3d6c520640029a165627a7a723058202b82f9a25dfbcb335d73b6475cd6156849b890e4d3aae33c0da427fe8696f89f0029 \ No newline at end of file diff --git a/solidity/build/LiquidityPoolV1ConverterMultiAsset.abi b/solidity/build/LiquidityPoolV1ConverterMultiAsset.abi new file mode 100644 index 0000000..760037d --- /dev/null +++ b/solidity/build/LiquidityPoolV1ConverterMultiAsset.abi @@ -0,0 +1 @@ +[{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"protocolFeeTokensHeld","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reserveRatio","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"connectors","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint32"},{"name":"","type":"bool"},{"name":"","type":"bool"},{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"hasETHReserve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"receiver","type":"address"}],"name":"withdrawFees","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"connectorTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveWeight","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"getReturn","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"isActive","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_token","type":"address"}],"name":"getProtocolFeeTokensHeld","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawFromAnchor","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_whitelist","type":"address"}],"name":"setConversionWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"version","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"conversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"withdrawETH","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_weight","type":"uint32"}],"name":"addReserve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"connectorTokenCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxConversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reserveTokenCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"conversionsEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"conversionWhitelist","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"reserveTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isV28OrHigher","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"anchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"upgrade","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"reserves","outputs":[{"name":"balance","type":"uint256"},{"name":"weight","type":"uint32"},{"name":"deprecated1","type":"bool"},{"name":"deprecated2","type":"bool"},{"name":"isSet","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_connectorToken","type":"address"}],"name":"getConnectorBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_trader","type":"address"},{"name":"_beneficiary","type":"address"}],"name":"convert","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_conversionFee","type":"uint32"}],"name":"setConversionFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_token","type":"address"},{"name":"_registry","type":"address"},{"name":"_maxConversionFee","type":"uint32"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_connectorToken","type":"address"},{"indexed":false,"name":"_tokenSupply","type":"uint256"},{"indexed":false,"name":"_connectorBalance","type":"uint256"},{"indexed":false,"name":"_connectorWeight","type":"uint32"}],"name":"PriceDataUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_provider","type":"address"},{"indexed":true,"name":"_reserveToken","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_newBalance","type":"uint256"},{"indexed":false,"name":"_newSupply","type":"uint256"}],"name":"LiquidityAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_provider","type":"address"},{"indexed":true,"name":"_reserveToken","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_newBalance","type":"uint256"},{"indexed":false,"name":"_newSupply","type":"uint256"}],"name":"LiquidityRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_type","type":"uint16"},{"indexed":true,"name":"_anchor","type":"address"},{"indexed":true,"name":"_activated","type":"bool"}],"name":"Activation","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_fromToken","type":"address"},{"indexed":true,"name":"_toToken","type":"address"},{"indexed":true,"name":"_trader","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_return","type":"uint256"},{"indexed":false,"name":"_conversionFee","type":"int256"},{"indexed":false,"name":"_protocolFee","type":"int256"}],"name":"Conversion","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_token1","type":"address"},{"indexed":true,"name":"_token2","type":"address"},{"indexed":false,"name":"_rateN","type":"uint256"},{"indexed":false,"name":"_rateD","type":"uint256"}],"name":"TokenRateUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_prevFee","type":"uint32"},{"indexed":false,"name":"_newFee","type":"uint32"}],"name":"ConversionFeeUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"sender","type":"address"},{"indexed":true,"name":"receiver","type":"address"},{"indexed":false,"name":"token","type":"address"},{"indexed":false,"name":"protocolFeeAmount","type":"uint256"},{"indexed":false,"name":"wRBTCConverted","type":"uint256"}],"name":"WithdrawFees","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":true,"inputs":[],"name":"converterType","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[],"name":"acceptAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"targetAmountAndFee","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_reserveTokens","type":"address[]"},{"name":"_reserveAmounts","type":"uint256[]"},{"name":"_minReturn","type":"uint256"}],"name":"addLiquidity","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"},{"name":"_reserveTokens","type":"address[]"},{"name":"_reserveMinReturnAmounts","type":"uint256[]"}],"name":"removeLiquidity","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"}],"name":"fund","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"}],"name":"liquidate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_x","type":"uint256"}],"name":"decimalLength","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[{"name":"_n","type":"uint256"},{"name":"_d","type":"uint256"}],"name":"roundDiv","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[{"name":"_values","type":"uint256[]"}],"name":"geometricMean","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"}] \ No newline at end of file diff --git a/solidity/build/LiquidityPoolV1ConverterMultiAsset.bin b/solidity/build/LiquidityPoolV1ConverterMultiAsset.bin new file mode 100644 index 0000000..b928a05 --- /dev/null +++ b/solidity/build/LiquidityPoolV1ConverterMultiAsset.bin @@ -0,0 +1 @@ +60806040526001600455600980546001606060020a0319169055600b8054600160a060020a03191673c0829421c1d260bd3cb3e0f06cfe2d52db2ce3151790553480156200004c57600080fd5b50604051606080620054fa83398101604090815281516020830151919092015160008054600160a060020a0319163317905582828282828281806200009a8164010000000062000147810204565b5060028054600160a060020a03909216600160a060020a031992831681179091556003805490921617905582620000da8164010000000062000147810204565b81620000ef81640100000000620001c2810204565b505060058054600160a060020a03909416600160a060020a031990941693909317909255506009805463ffffffff9092166401000000000267ffffffff0000000019909216919091179055506200023b945050505050565b600160a060020a0381161515620001bf57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b620f424063ffffffff82161115620001bf57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b6152af806200024b6000396000f3006080604052600436106102795763ffffffff60e060020a600035041663024c7ec78114610305578063064bda021461031f5780630c7d5cd8146103525780630e53aae91461038057806312c2aca4146103d5578063164e68de146103fe57806319b640151461041f5780631cfab290146104535780631e1401f81461047457806321e6b53d146104b757806322f3e2d4146104d85780632fe8a6ad146104ed5780633341e0061461050257806338a5e01614610523578063395900d4146105385780633e8ff43f14610562578063415f12401461058e57806349d10b64146105a65780634af80f0e146105bb57806354fd4d50146105dc578063579cd3ca146105f15780635e35359e1461060657806361cd756e1461063057806367b6d57c14610645578063690d8320146106665780636a49d2c4146106875780636aa5332c146106b157806371f52bf3146106c957806379ba5097146106de5780637b103999146106f35780637d8916bd146107085780638da5cb5b1461078b57806394c275ad146107a05780639b99a8e2146107b5578063a60e7724146107ca578063af94b8d81461081f578063b127c0a514610849578063b4a176d3146108dc578063bbb7e5d8146108f1578063bf7545581461090c578063c45d3d9214610921578063ca1d209d14610936578063cdc91c6914610941578063d031370b14610956578063d260529c1461096e578063d3fb73b414610983578063d4ee1d9014610998578063d55ec697146109ad578063d66bd524146109c2578063d8959512146109e3578063dc8de37914610a04578063e8dc12ff14610a25578063ecbca55d14610a4f578063f2fde38b14610a6d578063fc0c546a14610a8e575b60008051602061522483398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff161515610303576040805160e560020a62461bcd02815260206004820152601360248201526000805160206151c4833981519152604482015290519081900360640190fd5b005b34801561031157600080fd5b506103036004351515610aa3565b34801561032b57600080fd5b50610340600160a060020a0360043516610aeb565b60408051918252519081900360200190f35b34801561035e57600080fd5b50610367610afd565b6040805163ffffffff9092168252519081900360200190f35b34801561038c57600080fd5b506103a1600160a060020a0360043516610b09565b6040805195865263ffffffff9094166020860152911515848401521515606084015215156080830152519081900360a00190f35b3480156103e157600080fd5b506103ea610ba4565b604080519115158252519081900360200190f35b34801561040a57600080fd5b50610340600160a060020a0360043516610bed565b34801561042b57600080fd5b506104376004356111e1565b60408051600160a060020a039092168252519081900360200190f35b34801561045f57600080fd5b50610367600160a060020a036004351661120d565b34801561048057600080fd5b5061049e600160a060020a036004358116906024351660443561123f565b6040805192835260208301919091528051918290030190f35b3480156104c357600080fd5b50610303600160a060020a0360043516611259565b3480156104e457600080fd5b506103ea61126d565b3480156104f957600080fd5b506103ea611307565b34801561050e57600080fd5b50610340600160a060020a0360043516611328565b34801561052f57600080fd5b50610303611343565b34801561054457600080fd5b50610303600160a060020a0360043581169060243516604435611355565b34801561056e57600080fd5b506105776113f0565b6040805161ffff9092168252519081900360200190f35b34801561059a57600080fd5b506103036004356113f5565b3480156105b257600080fd5b50610303611639565b3480156105c757600080fd5b50610303600160a060020a0360043516611890565b3480156105e857600080fd5b506105776118d2565b3480156105fd57600080fd5b506103676118d7565b34801561061257600080fd5b50610303600160a060020a03600435811690602435166044356118ef565b34801561063c57600080fd5b506104376119f8565b34801561065157600080fd5b50610303600160a060020a0360043516611a07565b34801561067257600080fd5b50610303600160a060020a0360043516611aaa565b34801561069357600080fd5b50610303600160a060020a036004351663ffffffff60243516611baf565b3480156106bd57600080fd5b50610340600435611dee565b3480156106d557600080fd5b50610577611e13565b3480156106ea57600080fd5b50610303611e22565b3480156106ff57600080fd5b50610437611ee3565b6040805160206004803580820135838102808601850190965280855261030395369593946024949385019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a9989019892975090820195509350839250850190849080828437509497505093359450611ef29350505050565b34801561079757600080fd5b506104376121f1565b3480156107ac57600080fd5b50610367612200565b3480156107c157600080fd5b50610577612214565b3480156107d657600080fd5b50604080516020600480358082013583810280860185019096528085526103409536959394602494938501929182918501908490808284375094975061221a9650505050505050565b34801561082b57600080fd5b5061049e600160a060020a0360043581169060243516604435612270565b34801561085557600080fd5b5060408051602060046024803582810135848102808701860190975280865261030396843596369660449591949091019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a9989019892975090820195509350839250850190849080828437509497506124159650505050505050565b3480156108e857600080fd5b50610303612549565b3480156108fd57600080fd5b50610340600435602435612582565b34801561091857600080fd5b506103ea61259c565b34801561092d57600080fd5b506104376125a1565b6103036004356125b0565b34801561094d57600080fd5b50610303612ab5565b34801561096257600080fd5b50610437600435612b0e565b34801561097a57600080fd5b506103ea6113f0565b34801561098f57600080fd5b50610437612b36565b3480156109a457600080fd5b50610437612b45565b3480156109b957600080fd5b50610303612b54565b3480156109ce57600080fd5b506103a1600160a060020a0360043516612c49565b3480156109ef57600080fd5b50610340600160a060020a0360043516612c8f565b348015610a1057600080fd5b50610340600160a060020a0360043516612ca0565b610340600160a060020a036004358116906024358116906044359060643581169060843516612cc9565b348015610a5b57600080fd5b5061030363ffffffff60043516612f1c565b348015610a7957600080fd5b50610303600160a060020a0360043516613011565b348015610a9a57600080fd5b506104376130ae565b610aab6130bd565b60038054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b600a6020526000908152604090205481565b60095463ffffffff1681565b6000806000806000610b19615176565b50505050600160a060020a03929092166000908152600860209081526040808320815160a081018352815480825260019092015463ffffffff811694820185905260ff64010000000082048116151594830194909452650100000000008104841615156060830152660100000000000090049092161515608090920182905295919450919250829190565b60008051602061522483398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1690565b6000806000806000806000806060610c0361310d565b600160a060020a03163314610c62576040805160e560020a62461bcd02815260206004820152600c60248201527f756e617574686f72697a65640000000000000000000000000000000000000000604482015290519081900360640190fd5b610c8b7f536f7672796e537761704e6574776f726b000000000000000000000000000000613236565b9450600093505b6007548410156111c1576007805485908110610caa57fe5b6000918252602080832090910154600160a060020a0316808352600a909152604082205490995097508711610cde576111b6565b600160a060020a0388166000908152600a6020526040812055610cff6132b8565b600160a060020a031688600160a060020a03161415610e465787600160a060020a031663095ea7b3610d2f61310d565b896040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b158015610d8257600080fd5b505af1158015610d96573d6000803e3d6000fd5b505050506040513d6020811015610dac57600080fd5b50610db7905061310d565b600160a060020a031663abe979e1610dcd6132b8565b6040805160e060020a63ffffffff8516028152600160a060020a0390921660048301526bffffffffffffffffffffffff8b16602483015251604480830192600092919082900301818387803b158015610e2557600080fd5b505af1158015610e39573d6000803e3d6000fd5b5050505060009250611164565b610e4e6133b0565b600160a060020a031688600160a060020a03161415610e6f57869250611151565b87600160a060020a031663095ea7b3610ea77f536f7672796e537761704e6574776f726b000000000000000000000000000000613236565b896040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b158015610efa57600080fd5b505af1158015610f0e573d6000803e3d6000fd5b505050506040513d6020811015610f2457600080fd5b50519150811515610f7f576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f415050524f56414c5f4641494c454400000000000000000000000000604482015290519081900360640190fd5b84600160a060020a031663d734fa1989610f976133b0565b6040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182600160a060020a0316600160a060020a0316815260200192505050600060405180830381600087803b158015610ffb57600080fd5b505af115801561100f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561103857600080fd5b81019080805164010000000081111561105057600080fd5b8201602081018481111561106357600080fd5b815185602082028301116401000000008211171561108057600080fd5b5050929190505050905084600160a060020a031663f3898a97828960016040518463ffffffff1660e060020a0281526004018080602001848152602001838152602001828103825285818151815260200191508051906020019060200280838360005b838110156110fb5781810151838201526020016110e3565b50505050905001945050505050602060405180830381600087803b15801561112257600080fd5b505af1158015611136573d6000803e3d6000fd5b505050506040513d602081101561114c57600080fd5b505192505b611161868463ffffffff6134a816565b95505b60408051600160a060020a038a81168252602082018a90528183018690529151918c169133917f3953f559f015828db2bd3868682d85a85c6e24c3f05fb4e927797d7c007b3673919081900360600190a35b600190930192610c92565b6111d36111cc6133b0565b8b8861350c565b509398975050505050505050565b60006007828154811015156111f257fe5b600091825260209091200154600160a060020a031692915050565b600081611219816135c3565b5050600160a060020a031660009081526008602052604090206001015463ffffffff1690565b60008061124d858585612270565b91509150935093915050565b6112616130bd565b61126a81611a07565b50565b600030600160a060020a0316600560009054906101000a9004600160a060020a0316600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156112cc57600080fd5b505af11580156112e0573d6000803e3d6000fd5b505050506040513d60208110156112f657600080fd5b5051600160a060020a031614905090565b60035474010000000000000000000000000000000000000000900460ff1681565b600160a060020a03166000908152600a602052604090205490565b61134b6130bd565b611353612ab5565b565b61135d6130bd565b600554604080517f5e35359e000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015285811660248301526044820185905291519190921691635e35359e91606480830192600092919082900301818387803b1580156113d357600080fd5b505af11580156113e7573d6000803e3d6000fd5b50505050505050565b600190565b600060606000611403613630565b600260045560008411611460576040805160e560020a62461bcd02815260206004820152600f60248201527f4552525f5a45524f5f414d4f554e540000000000000000000000000000000000604482015290519081900360640190fd5b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156114b357600080fd5b505af11580156114c7573d6000803e3d6000fd5b505050506040513d60208110156114dd57600080fd5b5051600554604080517fa24835d1000000000000000000000000000000000000000000000000000000008152336004820152602481018890529051929550600160a060020a039091169163a24835d19160448082019260009290919082900301818387803b15801561154e57600080fd5b505af1158015611562573d6000803e3d6000fd5b50505050600780549050604051908082528060200260200182016040528015611595578160200160208202803883390190505b509150600090505b81518110156115c857600182828151811015156115b657fe5b6020908102909101015260010161159d565b61162e600780548060200260200160405190810160405280929190818152602001828054801561162157602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311611603575b505050505083858761368a565b505060016004555050565b60008054600160a060020a031633148061166e575060035474010000000000000000000000000000000000000000900460ff16155b15156116b2576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615264833981519152604482015290519081900360640190fd5b6116db7f436f6e7472616374526567697374727900000000000000000000000000000000613236565b600254909150600160a060020a038083169116148015906117045750600160a060020a03811615155b151561175a576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6040805160e260020a632ecd14d30281527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b1580156117c857600080fd5b505af11580156117dc573d6000803e3d6000fd5b505050506040513d60208110156117f257600080fd5b5051600160a060020a03161415611853576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a0380841673ffffffffffffffffffffffffffffffffffffffff19928316179092559091169216919091179055565b6118986130bd565b806118a28161394f565b506006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b602081565b60095468010000000000000000900463ffffffff1681565b60006118f9613630565b60026004556119066130bd565b61191d600080516020615204833981519152613236565b600160a060020a0385166000908152600860205260409020600101549091506601000000000000900460ff16158061195a575061195861126d565b155b806119725750600054600160a060020a038281169116145b15156119b6576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615264833981519152604482015290519081900360640190fd5b6119c18484846139b0565b600160a060020a0384166000908152600860205260409020600101546601000000000000900460ff161561162e5761162e846139e1565b600354600160a060020a031681565b611a0f6130bd565b600080516020615204833981519152611a2781613af8565b600554604080517ff2fde38b000000000000000000000000000000000000000000000000000000008152600160a060020a0385811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b158015611a8e57600080fd5b505af1158015611aa2573d6000803e3d6000fd5b505050505050565b6000611ab4613630565b6002600455611ac16130bd565b600080516020615224833981519152611ad9816135c3565b611af0600080516020615204833981519152613236565b9150611afa61126d565b1580611b135750600054600160a060020a038381169116145b1515611b57576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615264833981519152604482015290519081900360640190fd5b604051600160a060020a03841690303180156108fc02916000818181858888f19350505050158015611b8d573d6000803e3d6000fd5b50611ba56000805160206152248339815191526139e1565b5050600160045550565b6000611bb96130bd565b611bc1613b4e565b82611bcb81613bab565b83611bd58161394f565b83611bdf81613c0b565b600554600160a060020a03878116911614801590611c235750600160a060020a0386166000908152600860205260409020600101546601000000000000900460ff16155b1515611c67576040805160e560020a62461bcd02815260206004820152601360248201526000805160206151c4833981519152604482015290519081900360640190fd5b60095463ffffffff908116620f42400381169086161115611cd2576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b61ffff611cdd612214565b61ffff1610611d36576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f434f554e5400000000000000604482015290519081900360640190fd5b505050600160a060020a0390921660008181526008602052604081208181556001908101805466ff0000000000001963ffffffff80881663ffffffff1993841617919091166601000000000000179092556007805493840181559093527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688909101805473ffffffffffffffffffffffffffffffffffffffff191690931790925560098054808416909401909216921691909117905550565b600080825b6000811115611e0c5760019190910190600a9004611df3565b5092915050565b6000611e1d612214565b905090565b600154600160a060020a03163314611e72576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615264833981519152604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600254600160a060020a031681565b6000806000611eff613630565b6002600455611f0c613c80565b611f17868686613cde565b600092505b8551831015611fd557855160008051602061522483398151915290879085908110611f4357fe5b90602001906020020151600160a060020a03161415611fca57348584815181101515611f6b57fe5b6020908102909101015114611fca576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b600190920191611f1c565b600034111561207a5760008051602061522483398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff16151561207a576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f4e4f5f4554485f524553455256450000000000000000000000000000604482015290519081900360640190fd5b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156120cd57600080fd5b505af11580156120e1573d6000803e3d6000fd5b505050506040513d60208110156120f757600080fd5b50519150612106868684613f9a565b905083811015612160576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f52455455524e5f544f4f5f4c4f570000000000000000000000000000604482015290519081900360640190fd5b600554604080517f867904b4000000000000000000000000000000000000000000000000000000008152336004820152602481018490529051600160a060020a039092169163867904b49160448082019260009290919082900301818387803b1580156121cc57600080fd5b505af11580156121e0573d6000803e3d6000fd5b505060016004555050505050505050565b600054600160a060020a031681565b600954640100000000900463ffffffff1681565b60075490565b80516000908190815b818110156122575761224b858281518110151561223c57fe5b90602001906020020151611dee565b90920191600101612223565b60016122638484612582565b03600a0a95945050505050565b60008060008061227e613c80565b86612288816135c3565b86612292816135c3565b600160a060020a0389811690891614156122f6576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f53414d455f534f555243455f54415247455400000000000000000000604482015290519081900360640190fd5b61230d600080516020615244833981519152613236565b600160a060020a03166394491fab6123248b612ca0565b600160a060020a038c1660009081526008602052604090206001015463ffffffff1661234f8c612ca0565b600160a060020a038d16600090815260086020908152604080832060010154815163ffffffff89811660e060020a028252600482019890985295871660248701526044860194909452949092166064840152608483018d9052925160a48084019492939192918390030190829087803b1580156123cb57600080fd5b505af11580156123df573d6000803e3d6000fd5b505050506040513d60208110156123f557600080fd5b5051935061240284613fc7565b9384900399939850929650505050505050565b600061241f613630565b600260045561242c613c80565b612437838386613cde565b600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561248a57600080fd5b505af115801561249e573d6000803e3d6000fd5b505050506040513d60208110156124b457600080fd5b5051600554604080517fa24835d1000000000000000000000000000000000000000000000000000000008152336004820152602481018890529051929350600160a060020a039091169163a24835d19160448082019260009290919082900301818387803b15801561252557600080fd5b505af1158015612539573d6000803e3d6000fd5b5050505061162e8383838761368a565b6125516130bd565b6003546002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03909216919091179055565b60008160028104840181151561259457fe5b049392505050565b600181565b600654600160a060020a031681565b6000806000806000806000806000806125c7613630565b60026004556125d4614003565b60008051602061522483398151915260005260086020526000805160206151e48339815191525461260b903463ffffffff61404516565b6000805160206152248339815191526000908152600860209081526000805160206151e483398151915292909255600554604080517f18160ddd0000000000000000000000000000000000000000000000000000000081529051600160a060020a03909216936318160ddd9360048084019492938390030190829087803b15801561269557600080fd5b505af11580156126a9573d6000803e3d6000fd5b505050506040513d60208110156126bf57600080fd5b505199506126da600080516020615244833981519152613236565b6007549099509750600096505b87871015612a1f5760078054889081106126fd57fe5b9060005260206000200160009054906101000a9004600160a060020a031695506008600087600160a060020a0316600160a060020a0316815260200190815260200160002060000154945088600160a060020a031663ebbb21588b87600960009054906101000a900463ffffffff168f6040518563ffffffff1660e060020a028152600401808581526020018481526020018363ffffffff1663ffffffff168152602001828152602001945050505050602060405180830381600087803b1580156127c757600080fd5b505af11580156127db573d6000803e3d6000fd5b505050506040513d60208110156127f157600080fd5b50519350600160a060020a038616600080516020615224833981519152141561294b57833411156128515760405133903486900380156108fc02916000818181858888f1935050505015801561284b573d6000803e3d6000fd5b50612946565b833410156129465734156128af576040805160e560020a62461bcd02815260206004820152601560248201527f4552525f494e56414c49445f4554485f56414c55450000000000000000000000604482015290519081900360640190fd5b600b546128c790600160a060020a03163330876140a5565b600b54604080517f2e1a7d4d000000000000000000000000000000000000000000000000000000008152600481018790529051600160a060020a0390921691632e1a7d4d9160248082019260009290919082900301818387803b15801561292d57600080fd5b505af1158015612941573d6000803e3d6000fd5b505050505b612957565b612957863330876140a5565b612967858563ffffffff6134a816565b600160a060020a038716600090815260086020526040902081905592506129948a8c63ffffffff6134a816565b60408051868152602081018690528082018390529051919350600160a060020a0388169133917f4a1a2a6176e9646d9e3157f7c2ab3c499f18337c0b0828cfb28e0a61de4a11f7919081900360600190a350600160a060020a03851660009081526008602052604090206001015463ffffffff16612a148287858461418d565b6001909601956126e7565b600554604080517f867904b4000000000000000000000000000000000000000000000000000000008152336004820152602481018e90529051600160a060020a039092169163867904b49160448082019260009290919082900301818387803b158015612a8b57600080fd5b505af1158015612a9f573d6000803e3d6000fd5b5050600160045550505050505050505050505050565b612abd6130bd565b612ac56141fc565b600554600190600160a060020a0316612adc6113f0565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a4565b6007805482908110612b1c57fe5b600091825260209091200154600160a060020a0316905081565b600554600160a060020a031681565b600154600160a060020a031681565b6000612b5e6130bd565b612b75600080516020615204833981519152613236565b600554909150600090600160a060020a0316612b8f6113f0565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a4612bc881613011565b604080517f90f58c96000000000000000000000000000000000000000000000000000000008152602060048201529051600160a060020a038316916390f58c9691602480830192600092919082900301818387803b158015612c2957600080fd5b505af1158015612c3d573d6000803e3d6000fd5b5050505061126a611e22565b6008602052600090815260409020805460019091015463ffffffff81169060ff640100000000820481169165010000000000810482169166010000000000009091041685565b6000612c9a82612ca0565b92915050565b600081612cac816135c3565b5050600160a060020a031660009081526008602052604090205490565b6000612cd3613630565b60026004557f536f7672796e537761704e6574776f726b000000000000000000000000000000612d0281613af8565b600160a060020a038781169087161415612d66576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f53414d455f534f555243455f54415247455400000000000000000000604482015290519081900360640190fd5b600654600160a060020a03161580612ea95750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03878116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b158015612de157600080fd5b505af1158015612df5573d6000803e3d6000fd5b505050506040513d6020811015612e0b57600080fd5b50518015612ea95750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b158015612e7c57600080fd5b505af1158015612e90573d6000803e3d6000fd5b505050506040513d6020811015612ea657600080fd5b50515b1515612eff576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f4e4f545f57484954454c495354454400000000000000000000000000604482015290519081900360640190fd5b612f0c8787878787614267565b6001600455979650505050505050565b612f246130bd565b60095463ffffffff64010000000090910481169082161115612f90576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b6009546040805163ffffffff6801000000000000000090930483168152918316602083015280517f81cd2ffb37dd237c0e4e2a3de5265fcf9deb43d3e7801e80db9f1ccfba7ee6009281900390910190a16009805463ffffffff90921668010000000000000000026bffffffff000000000000000019909216919091179055565b6130196130bd565b600054600160a060020a038281169116141561307f576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600554600160a060020a031690565b600054600160a060020a03163314611353576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615264833981519152604482015290519081900360640190fd5b6002546040805160e260020a632ecd14d30281527f5377617053657474696e6773000000000000000000000000000000000000000060048201529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561317c57600080fd5b505af1158015613190573d6000803e3d6000fd5b505050506040513d60208110156131a657600080fd5b5051604080517fe8f627640000000000000000000000000000000000000000000000000000000081529051600160a060020a039092169163e8f62764916004808201926020929091908290030181600087803b15801561320557600080fd5b505af1158015613219573d6000803e3d6000fd5b505050506040513d602081101561322f57600080fd5b5051905090565b6002546040805160e260020a632ecd14d3028152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561328657600080fd5b505af115801561329a573d6000803e3d6000fd5b505050506040513d60208110156132b057600080fd5b505192915050565b6002546040805160e260020a632ecd14d30281527f5377617053657474696e6773000000000000000000000000000000000000000060048201529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561332757600080fd5b505af115801561333b573d6000803e3d6000fd5b505050506040513d602081101561335157600080fd5b5051604080517fb9cffa3e0000000000000000000000000000000000000000000000000000000081529051600160a060020a039092169163b9cffa3e916004808201926020929091908290030181600087803b15801561320557600080fd5b6002546040805160e260020a632ecd14d30281527f5377617053657474696e6773000000000000000000000000000000000000000060048201529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561341f57600080fd5b505af1158015613433573d6000803e3d6000fd5b505050506040513d602081101561344957600080fd5b5051604080517f99a752b50000000000000000000000000000000000000000000000000000000081529051600160a060020a03909216916399a752b5916004808201926020929091908290030181600087803b15801561320557600080fd5b600082820183811015613505576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b9392505050565b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19909316929092179091526135be908490614504565b505050565b600160a060020a0381166000908152600860205260409020600101546601000000000000900460ff16151561126a576040805160e560020a62461bcd02815260206004820152601360248201526000805160206151c4833981519152604482015290519081900360640190fd5b600454600114611353576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5245454e5452414e4359000000000000000000000000000000000000604482015290519081900360640190fd5b60008060008060008060008061369e614003565b6136b5600080516020615244833981519152613236565b97506136c78a8a63ffffffff61404516565b9650600095505b8b51861015613941578b868151811015156136e557fe5b9060200190602002015194506008600086600160a060020a0316600160a060020a0316815260200190815260200160002060000154935087600160a060020a0316638074590a8b86600960009054906101000a900463ffffffff168d6040518563ffffffff1660e060020a028152600401808581526020018481526020018363ffffffff1663ffffffff168152602001828152602001945050505050602060405180830381600087803b15801561379b57600080fd5b505af11580156137af573d6000803e3d6000fd5b505050506040513d60208110156137c557600080fd5b50518b519093508b90879081106137d857fe5b60209081029091010151831015613839576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b613849848463ffffffff61404516565b600160a060020a038616600081815260086020526040902082905590925060008051602061522483398151915214156138af57604051339084156108fc029085906000818181858888f193505050501580156138a9573d6000803e3d6000fd5b506138ba565b6138ba85338561350c565b60408051848152602081018490528082018990529051600160a060020a0387169133917fbc7d19d505c7ec4db83f3b51f19fb98c4c8a99922e7839d1ee608dfbee29501b9181900360600190a350600160a060020a03841660009081526008602052604090206001015463ffffffff166139368786848461418d565b6001909501946136ce565b505050505050505050505050565b600160a060020a03811630141561126a576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b6139b86130bd565b826139c281613bab565b826139cc81613bab565b836139d68161394f565b611aa286868661350c565b806139eb816135c3565b600160a060020a0382166000805160206152248339815191521415613a2b57600160a060020a038216600090815260086020526040902030319055613af4565b600160a060020a0382166000818152600a602090815260408083205481517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529151613ada95919491936370a0823193602480820194929392918390030190829087803b158015613aa257600080fd5b505af1158015613ab6573d6000803e3d6000fd5b505050506040513d6020811015613acc57600080fd5b50519063ffffffff61404516565b600160a060020a0383166000908152600860205260409020555b5050565b613b0181613236565b600160a060020a0316331461126a576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615264833981519152604482015290519081900360640190fd5b613b5661126d565b15611353576040805160e560020a62461bcd02815260206004820152600a60248201527f4552525f41435449564500000000000000000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a038116151561126a576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b60008163ffffffff16118015613c2a5750620f424063ffffffff821611155b151561126a576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b613c8861126d565b1515611353576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f494e4143544956450000000000000000000000000000000000000000604482015290519081900360640190fd5b600754835160009182918114613d2c576040805160e560020a62461bcd02815260206004820152601360248201526000805160206151c4833981519152604482015290519081900360640190fd5b84518114613d84576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b600092505b80831015613f4257600860008785815181101515613da357fe5b6020908102909101810151600160a060020a031682528101919091526040016000206001015460ff6601000000000000909104161515613e1b576040805160e560020a62461bcd02815260206004820152601360248201526000805160206151c4833981519152604482015290519081900360640190fd5b600091505b80821015613e83578582815181101515613e3657fe5b90602001906020020151600160a060020a0316600784815481101515613e5857fe5b600091825260209091200154600160a060020a03161415613e7857613e83565b600190910190613e20565b808210613ec8576040805160e560020a62461bcd02815260206004820152601360248201526000805160206151c4833981519152604482015290519081900360640190fd5b60008584815181101515613ed857fe5b6020908102909101015111613f37576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b600190920191613d89565b60008411611aa2576040805160e560020a62461bcd02815260206004820152600f60248201527f4552525f5a45524f5f414d4f554e540000000000000000000000000000000000604482015290519081900360640190fd5b6000811515613fb457613fad8484614592565b9050613505565b613fbf848484614799565b949350505050565b600954600090612c9a90620f424090613ff790859068010000000000000000900463ffffffff90811690614b5916565b9063ffffffff614bd216565b60075460005b81811015613af45761403d60078281548110151561402357fe5b600091825260209091200154600160a060020a03166139e1565b600101614009565b60008183101561409f576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b604080517f7472616e7366657246726f6d28616464726573732c616464726573732c75696e81527f74323536290000000000000000000000000000000000000000000000000000006020808301919091528251918290036025018220600160a060020a038088166024850152861660448401526064808401869052845180850390910181526084909301909352810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1990931692909217909152614187908590614504565b50505050565b600554600160a060020a0380851691167f77f29993cf2c084e726f7e802da0719d6a0ade3e204badc7a3ffd57ecb768c246141cb85620f4240614b59565b6141de8863ffffffff80881690614b5916565b6040805192835260208301919091528051918290030190a350505050565b6001614206612214565b61ffff161161425f576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f434f554e5400000000000000604482015290519081900360640190fd5b611353614c40565b600080600080614278898989612270565b90935091508215156142d4576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b6142dd88612ca0565b90508083106142e857fe5b600160a060020a03891660008051602061522483398151915214156143635734871461435e576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b614433565b341580156143dd5750866143da6143798b612ca0565b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051600160a060020a038e16916370a082319160248083019260209291908290030181600087803b158015613aa257600080fd5b10155b1515614433576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b61443c896139e1565b600160a060020a038816600090815260086020526040902054614465908463ffffffff61404516565b600160a060020a03891660008181526008602052604090209190915560008051602061522483398151915214156144d257604051600160a060020a0386169084156108fc029085906000818181858888f193505050501580156144cc573d6000803e3d6000fd5b506144dd565b6144dd88868561350c565b6144ed8989888a87876000614d1e565b6144f78989614dab565b5090979650505050505050565b61450c6151a4565b602060405190810160405280600181525090506020818351602085016000875af180151561453957600080fd5b50805115156135be576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b6000806000806145a18561221a565b9250600091505b855182101561478f578551600080516020615224833981519152908790849081106145cf57fe5b60209081029091010151600160a060020a0316146146215761462186838151811015156145f857fe5b906020019060200201513330888681518110151561461257fe5b906020019060200201516140a5565b848281518110151561462f57fe5b9060200190602002015160086000888581518110151561464b57fe5b6020908102909101810151600160a060020a0316825281019190915260400160002055855186908390811061467c57fe5b90602001906020020151600160a060020a031633600160a060020a03167f4a1a2a6176e9646d9e3157f7c2ab3c499f18337c0b0828cfb28e0a61de4a11f787858151811015156146c857fe5b9060200190602002015188868151811015156146e057fe5b60209081029091018101516040805193845291830152818101889052519081900360600190a360086000878481518110151561471857fe5b6020908102909101810151600160a060020a0316825281019190915260400160002060010154865163ffffffff909116915061478490849088908590811061475c57fe5b90602001906020020151878581518110151561477457fe5b906020019060200201518461418d565b6001909101906145a8565b5090949350505050565b6000806000806000806000806000806147b0614003565b60008051602061522483398151915260005260086020526000805160206151e4833981519152546147e7903463ffffffff61404516565b60008051602061522483398151915260005260086020526000805160206151e483398151915255614825600080516020615244833981519152613236565b9850614833898c8f8f614fb9565b97506148458b8963ffffffff6134a816565b9650600095505b8c51861015614b48578c8681518110151561486357fe5b9060200190602002015194506008600086600160a060020a0316600160a060020a0316815260200190815260200160002060000154935088600160a060020a031663ebbb21588c86600960009054906101000a900463ffffffff168c6040518563ffffffff1660e060020a028152600401808581526020018481526020018363ffffffff1663ffffffff168152602001828152602001945050505050602060405180830381600087803b15801561491957600080fd5b505af115801561492d573d6000803e3d6000fd5b505050506040513d602081101561494357600080fd5b505192506000831161499f576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b8b868151811015156149ad57fe5b602090810290910101518311156149c057fe5b600160a060020a038516600080516020615224833981519152146149ef576149ea853330866140a5565b614a62565b828c878151811015156149fe57fe5b906020019060200201511115614a625733600160a060020a03166108fc848e89815181101515614a2a57fe5b90602001906020020151039081150290604051600060405180830381858888f19350505050158015614a60573d6000803e3d6000fd5b505b614a72848463ffffffff6134a816565b600160a060020a03861660008181526008602090815260409182902084905581518781529081018490528082018b90529051929450909133917f4a1a2a6176e9646d9e3157f7c2ab3c499f18337c0b0828cfb28e0a61de4a11f7919081900360600190a3600860008e88815181101515614ae857fe5b6020908102909101810151600160a060020a03168252810191909152604001600020600101548d5163ffffffff9091169150614b3d9088908f9089908110614b2c57fe5b90602001906020020151848461418d565b60019095019461484c565b50959b9a5050505050505050505050565b600080831515614b6c5760009150611e0c565b50828202828482811515614b7c57fe5b0414613505576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b600080808311614c2c576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f4449564944455f42595f5a45524f0000000000000000000000000000604482015290519081900360640190fd5b8284811515614c3757fe5b04949350505050565b614c486130bd565b6000614c52612214565b61ffff1611614cab576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f434f554e5400000000000000604482015290519081900360640190fd5b600560009054906101000a9004600160a060020a0316600160a060020a03166379ba50976040518163ffffffff1660e060020a028152600401600060405180830381600087803b158015614cfe57600080fd5b505af1158015614d12573d6000803e3d6000fd5b50505050611353614003565b7f80000000000000000000000000000000000000000000000000000000000000008210614d4757fe5b6040805185815260208101859052808201849052606081018390529051600160a060020a038088169289821692918b16917f82886ccc747026f86399e87d5f3874c5d198ec2498833553651f63a13f5dbd0c9181900360800190a450505050505050565b6000806000806000806000600560009054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015614e0957600080fd5b505af1158015614e1d573d6000803e3d6000fd5b505050506040513d6020811015614e3357600080fd5b50519650614e4089612ca0565b9550614e4b88612ca0565b600160a060020a03808b16600090815260086020526040808220600190810154938d1683529120015491965063ffffffff90811695509081169350614e949086908690614b5916565b9150614ea98663ffffffff80861690614b5916565b60408051848152602081018390528151929350600160a060020a03808c1693908d16927f77f29993cf2c084e726f7e802da0719d6a0ade3e204badc7a3ffd57ecb768c24928290030190a3614f00878a888761418d565b614f0c8789878661418d565b604080518881526020810188905263ffffffff8616818301529051600160a060020a038b16917f8a6a7f53b3c8fa1dc4b83e3f1be668c1b251ff8d44cdcb83eb3acec3fec6a788919081900360600190a2604080518881526020810187905263ffffffff8516818301529051600160a060020a038a16917f8a6a7f53b3c8fa1dc4b83e3f1be668c1b251ff8d44cdcb83eb3acec3fec6a788919081900360600190a2505050505050505050565b60008060015b845181101561507c57615024600860008784815181101515614fdd57fe5b6020908102909101810151600160a060020a0316825281019190915260400160002054855186908590811061500e57fe5b602090810290910101519063ffffffff614b5916565b61506a60086000888681518110151561503957fe5b6020908102909101810151600160a060020a0316825281019190915260400160002054865187908590811061500e57fe5b1015615074578091505b600101614fbf565b86600160a060020a0316632f55bdb58760086000898781518110151561509e57fe5b6020908102909101810151600160a060020a0316825281019190915260400160002054600954885163ffffffff909116908990889081106150db57fe5b906020019060200201516040518563ffffffff1660e060020a028152600401808581526020018481526020018363ffffffff1663ffffffff168152602001828152602001945050505050602060405180830381600087803b15801561513f57600080fd5b505af1158015615153573d6000803e3d6000fd5b505050506040513d602081101561516957600080fd5b5051979650505050505050565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b602060405190810160405280600190602082028038833950919291505056004552525f494e56414c49445f5245534552564500000000000000000000000000353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c42536f7672796e53776170436f6e76657274657255706772616465720000000000000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee536f7672796e53776170466f726d756c610000000000000000000000000000004552525f4143434553535f44454e494544000000000000000000000000000000a165627a7a723058205adb5d6eea93f8eca6eee312bb3ea091cd8e0280077ce438c0e1ea22d0e926ef0029 \ No newline at end of file diff --git a/solidity/build/LiquidityPoolV2Converter.abi b/solidity/build/LiquidityPoolV2Converter.abi index 8a4b4d4..f990650 100644 --- a/solidity/build/LiquidityPoolV2Converter.abi +++ b/solidity/build/LiquidityPoolV2Converter.abi @@ -1 +1 @@ -[{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveStakedBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"primaryReserveToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxStakedBalanceEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reserveRatio","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"connectors","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint32"},{"name":"","type":"bool"},{"name":"","type":"bool"},{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_primaryReserveToken","type":"address"},{"name":"_primaryReserveOracle","type":"address"},{"name":"_secondaryReserveOracle","type":"address"}],"name":"activate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"hasETHReserve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"disableMaxStakedBalances","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"connectorTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveWeight","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"getReturn","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"isActive","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"priceOracle","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveAmplifiedBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_poolToken","type":"address"}],"name":"liquidationLimit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawFromAnchor","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"converterType","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_reserve1MaxStakedBalance","type":"uint256"},{"name":"_reserve2MaxStakedBalance","type":"uint256"}],"name":"setMaxStakedBalances","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_whitelist","type":"address"}],"name":"setConversionWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"version","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_reserveToken","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"}],"name":"addLiquidity","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"poolToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"conversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_poolToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"removeLiquidityReturnAndFee","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"withdrawETH","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_dynamicFeeFactor","type":"uint256"}],"name":"setDynamicFeeFactor","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_weight","type":"uint32"}],"name":"addReserve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"connectorTokenCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxConversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"maxStakedBalances","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reserveTokenCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"referenceRate","outputs":[{"name":"n","type":"uint256"},{"name":"d","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"targetAmountAndFee","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"conversionsEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_reserveToken","type":"address"},{"name":"_balance","type":"uint256"}],"name":"setReserveStakedBalance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"referenceRateUpdateTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"conversionWhitelist","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"reserveTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isV28OrHigher","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"anchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"upgrade","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"amplificationFactor","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"reserves","outputs":[{"name":"balance","type":"uint256"},{"name":"weight","type":"uint32"},{"name":"deprecated1","type":"bool"},{"name":"deprecated2","type":"bool"},{"name":"isSet","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_connectorToken","type":"address"}],"name":"getConnectorBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"effectiveTokensRate","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"secondaryReserveToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_poolToken","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"}],"name":"removeLiquidity","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"dynamicFeeFactor","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_trader","type":"address"},{"name":"_beneficiary","type":"address"}],"name":"convert","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"effectiveReserveWeights","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_conversionFee","type":"uint32"}],"name":"setConversionFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"lastConversionRate","outputs":[{"name":"n","type":"uint256"},{"name":"d","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_poolTokensContainer","type":"address"},{"name":"_registry","type":"address"},{"name":"_maxConversionFee","type":"uint32"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_prevFactor","type":"uint256"},{"indexed":false,"name":"_newFactor","type":"uint256"}],"name":"DynamicFeeFactorUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_provider","type":"address"},{"indexed":true,"name":"_reserveToken","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_newBalance","type":"uint256"},{"indexed":false,"name":"_newSupply","type":"uint256"}],"name":"LiquidityAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_provider","type":"address"},{"indexed":true,"name":"_reserveToken","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_newBalance","type":"uint256"},{"indexed":false,"name":"_newSupply","type":"uint256"}],"name":"LiquidityRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_type","type":"uint16"},{"indexed":true,"name":"_anchor","type":"address"},{"indexed":true,"name":"_activated","type":"bool"}],"name":"Activation","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_fromToken","type":"address"},{"indexed":true,"name":"_toToken","type":"address"},{"indexed":true,"name":"_trader","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_return","type":"uint256"},{"indexed":false,"name":"_conversionFee","type":"int256"}],"name":"Conversion","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_token1","type":"address"},{"indexed":true,"name":"_token2","type":"address"},{"indexed":false,"name":"_rateN","type":"uint256"},{"indexed":false,"name":"_rateD","type":"uint256"}],"name":"TokenRateUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_prevFee","type":"uint32"},{"indexed":false,"name":"_newFee","type":"uint32"}],"name":"ConversionFeeUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}] \ No newline at end of file +[{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"primaryReserveToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"protocolFeeTokensHeld","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxStakedBalanceEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reserveRatio","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"connectors","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint32"},{"name":"","type":"bool"},{"name":"","type":"bool"},{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"hasETHReserve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"receiver","type":"address"}],"name":"withdrawFees","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint256"}],"name":"connectorTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveWeight","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"getReturn","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"priceOracle","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_token","type":"address"}],"name":"getProtocolFeeTokensHeld","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptTokenOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawFromAnchor","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_whitelist","type":"address"}],"name":"setConversionWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"version","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"conversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"withdrawETH","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"connectorTokenCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxConversionFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"maxStakedBalances","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reserveTokenCount","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"referenceRate","outputs":[{"name":"n","type":"uint256"},{"name":"d","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"conversionsEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"referenceRateUpdateTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"conversionWhitelist","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptAnchorOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"reserveTokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isV28OrHigher","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"anchor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"upgrade","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"reserves","outputs":[{"name":"balance","type":"uint256"},{"name":"weight","type":"uint32"},{"name":"deprecated1","type":"bool"},{"name":"deprecated2","type":"bool"},{"name":"isSet","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_connectorToken","type":"address"}],"name":"getConnectorBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"secondaryReserveToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"dynamicFeeFactor","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_trader","type":"address"},{"name":"_beneficiary","type":"address"}],"name":"convert","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_conversionFee","type":"uint32"}],"name":"setConversionFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"lastConversionRate","outputs":[{"name":"n","type":"uint256"},{"name":"d","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_poolTokensContainer","type":"address"},{"name":"_registry","type":"address"},{"name":"_maxConversionFee","type":"uint32"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_prevFactor","type":"uint256"},{"indexed":false,"name":"_newFactor","type":"uint256"}],"name":"DynamicFeeFactorUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_provider","type":"address"},{"indexed":true,"name":"_reserveToken","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_newBalance","type":"uint256"},{"indexed":false,"name":"_newSupply","type":"uint256"}],"name":"LiquidityAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_provider","type":"address"},{"indexed":true,"name":"_reserveToken","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_newBalance","type":"uint256"},{"indexed":false,"name":"_newSupply","type":"uint256"}],"name":"LiquidityRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_type","type":"uint16"},{"indexed":true,"name":"_anchor","type":"address"},{"indexed":true,"name":"_activated","type":"bool"}],"name":"Activation","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_fromToken","type":"address"},{"indexed":true,"name":"_toToken","type":"address"},{"indexed":true,"name":"_trader","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_return","type":"uint256"},{"indexed":false,"name":"_conversionFee","type":"int256"},{"indexed":false,"name":"_protocolFee","type":"int256"}],"name":"Conversion","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_token1","type":"address"},{"indexed":true,"name":"_token2","type":"address"},{"indexed":false,"name":"_rateN","type":"uint256"},{"indexed":false,"name":"_rateD","type":"uint256"}],"name":"TokenRateUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_prevFee","type":"uint32"},{"indexed":false,"name":"_newFee","type":"uint32"}],"name":"ConversionFeeUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"sender","type":"address"},{"indexed":true,"name":"receiver","type":"address"},{"indexed":false,"name":"token","type":"address"},{"indexed":false,"name":"protocolFeeAmount","type":"uint256"},{"indexed":false,"name":"wRBTCConverted","type":"uint256"}],"name":"WithdrawFees","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":true,"inputs":[],"name":"converterType","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"isActive","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"amplificationFactor","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_primaryReserveToken","type":"address"},{"name":"_primaryReserveOracle","type":"address"},{"name":"_secondaryReserveOracle","type":"address"}],"name":"activate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_dynamicFeeFactor","type":"uint256"}],"name":"setDynamicFeeFactor","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveStakedBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"reserveAmplifiedBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_reserveToken","type":"address"},{"name":"_balance","type":"uint256"}],"name":"setReserveStakedBalance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_reserve1MaxStakedBalance","type":"uint256"},{"name":"_reserve2MaxStakedBalance","type":"uint256"}],"name":"setMaxStakedBalances","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"disableMaxStakedBalances","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_reserveToken","type":"address"}],"name":"poolToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_poolToken","type":"address"}],"name":"liquidationLimit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_weight","type":"uint32"}],"name":"addReserve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"effectiveTokensRate","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"targetAmountAndFee","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_reserveToken","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"}],"name":"addLiquidity","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_poolToken","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"}],"name":"removeLiquidity","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_poolToken","type":"address"},{"name":"_amount","type":"uint256"}],"name":"removeLiquidityReturnAndFee","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"effectiveReserveWeights","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/solidity/build/LiquidityPoolV2Converter.bin b/solidity/build/LiquidityPoolV2Converter.bin index 40676da..0f3f10c 100644 --- a/solidity/build/LiquidityPoolV2Converter.bin +++ b/solidity/build/LiquidityPoolV2Converter.bin @@ -1 +1 @@ -608060405260016004819055600980546001606060020a03191690556015805460ff19169091179055620111706016553480156200003c57600080fd5b50604051606080620055ba83398101604090815281516020830151919092015160008054600160a060020a0319163317905582828282828281806200008a8164010000000062000137810204565b5060028054600160a060020a03909216600160a060020a031992831681179091556003805490921617905582620000ca8164010000000062000137810204565b81620000df81640100000000620001b2810204565b505060058054600160a060020a03909416600160a060020a031990941693909317909255506009805463ffffffff9092166401000000000267ffffffff0000000019909216919091179055506200022b945050505050565b600160a060020a0381161515620001af57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b620f424063ffffffff82161115620001af57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b61537f806200023b6000396000f3006080604052600436106103125763ffffffff60e060020a6000350416625e319c81146103b0578063024c7ec7146103e35780630337e3fb146103fd5780630a55fb3d1461042e5780630c7d5cd8146104575780630e53aae914610485578063119b90cd146104da57806312c2aca41461050757806316912f961461051c57806319b64015146105315780631cfab290146105495780631e1401f81461056a57806321e6b53d146105ad57806322f3e2d4146105ce5780632630c12f146105e35780632bd3c107146105f85780632bf0c985146106195780632fe8a6ad1461063a57806338a5e0161461064f578063395900d4146106645780633e8ff43f1461068e57806346749468146106ba57806349d10b64146106d55780634af80f0e146106ea57806354fd4d501461070b57806355776b77146107205780635768adcf1461073a578063579cd3ca1461075b5780635e35359e1461077057806361cd756e1461079a57806367b6d57c146107af57806369067d95146107d0578063690d8320146107f457806369d1354a146108155780636a49d2c41461082d57806371f52bf31461085757806379ba50971461086c5780637b103999146108815780638da5cb5b1461089657806394c275ad146108ab57806398a71dcb146108c05780639b99a8e2146108e1578063a32bff44146108f6578063af94b8d81461090b578063b4a176d314610935578063bf7545581461094a578063bf7da6ba1461095f578063c3321fb014610983578063c45d3d9214610998578063cdc91c69146109ad578063d031370b146109c2578063d260529c146109da578063d3fb73b4146109ef578063d4ee1d9014610a04578063d55ec69714610a19578063d64c5a1a14610a2e578063d66bd52414610a59578063d895951214610a7a578063db2830a414610a9b578063dc75eb9a14610ab0578063dc8de37914610ac5578063e38192e314610ae6578063e8104af914610b0d578063e8dc12ff14610b22578063ec2240f514610b4c578063ecbca55d14610b61578063f2fde38b14610b7f578063f9cddde214610ba0578063fc0c546a14610bb5575b6000805160206152f483398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1615156103ae576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f5245534552564500000000000000000000000000604482015290519081900360640190fd5b005b3480156103bc57600080fd5b506103d1600160a060020a0360043516610bca565b60408051918252519081900360200190f35b3480156103ef57600080fd5b506103ae6004351515610bf3565b34801561040957600080fd5b50610412610c3b565b60408051600160a060020a039092168252519081900360200190f35b34801561043a57600080fd5b50610443610c4a565b604080519115158252519081900360200190f35b34801561046357600080fd5b5061046c610c53565b6040805163ffffffff9092168252519081900360200190f35b34801561049157600080fd5b506104a6600160a060020a0360043516610c5f565b6040805195865263ffffffff9094166020860152911515848401521515606084015215156080830152519081900360a00190f35b3480156104e657600080fd5b506103ae600160a060020a0360043581169060243581169060443516610cfa565b34801561051357600080fd5b50610443611464565b34801561052857600080fd5b506103ae6114ad565b34801561053d57600080fd5b506104126004356114c1565b34801561055557600080fd5b5061046c600160a060020a03600435166114ed565b34801561057657600080fd5b50610594600160a060020a036004358116906024351660443561151f565b6040805192835260208301919091528051918290030190f35b3480156105b957600080fd5b506103ae600160a060020a0360043516611539565b3480156105da57600080fd5b5061044361154d565b3480156105ef57600080fd5b50610412611582565b34801561060457600080fd5b506103d1600160a060020a03600435166115a1565b34801561062557600080fd5b506103d1600160a060020a03600435166115f6565b34801561064657600080fd5b506104436116d9565b34801561065b57600080fd5b506103ae6116fa565b34801561067057600080fd5b506103ae600160a060020a036004358116906024351660443561170c565b34801561069a57600080fd5b506106a36117a7565b6040805161ffff9092168252519081900360200190f35b3480156106c657600080fd5b506103ae6004356024356117ac565b3480156106e157600080fd5b506103ae611830565b3480156106f657600080fd5b506103ae600160a060020a0360043516611a90565b34801561071757600080fd5b506106a3611ac5565b6103d1600160a060020a0360043516602435604435611aca565b34801561074657600080fd5b50610412600160a060020a0360043516612033565b34801561076757600080fd5b5061046c612051565b34801561077c57600080fd5b506103ae600160a060020a0360043581169060243516604435612069565b3480156107a657600080fd5b5061041261217d565b3480156107bb57600080fd5b506103ae600160a060020a036004351661218c565b3480156107dc57600080fd5b50610594600160a060020a036004351660243561222f565b34801561080057600080fd5b506103ae600160a060020a036004351661238a565b34801561082157600080fd5b506103ae60043561248f565b34801561083957600080fd5b506103ae600160a060020a036004351663ffffffff60243516612534565b34801561086357600080fd5b506106a3612593565b34801561087857600080fd5b506103ae61259d565b34801561088d57600080fd5b50610412612651565b3480156108a257600080fd5b50610412612660565b3480156108b757600080fd5b5061046c61266f565b3480156108cc57600080fd5b506103d1600160a060020a0360043516612683565b3480156108ed57600080fd5b506106a3612695565b34801561090257600080fd5b5061059461269b565b34801561091757600080fd5b50610594600160a060020a03600435811690602435166044356126a4565b34801561094157600080fd5b506103ae612848565b34801561095657600080fd5b50610443612874565b34801561096b57600080fd5b506103ae600160a060020a0360043516602435612879565b34801561098f57600080fd5b506103d16128c1565b3480156109a457600080fd5b506104126128c7565b3480156109b957600080fd5b506103ae6128d6565b3480156109ce57600080fd5b5061041260043561292f565b3480156109e657600080fd5b50610443612957565b3480156109fb57600080fd5b5061041261295c565b348015610a1057600080fd5b5061041261296b565b348015610a2557600080fd5b506103ae61297a565b348015610a3a57600080fd5b50610a43612a6f565b6040805160ff9092168252519081900360200190f35b348015610a6557600080fd5b506104a6600160a060020a0360043516612a74565b348015610a8657600080fd5b506103d1600160a060020a0360043516612aba565b348015610aa757600080fd5b50610594612acb565b348015610abc57600080fd5b50610412612af0565b348015610ad157600080fd5b506103d1600160a060020a0360043516612aff565b348015610af257600080fd5b506103d1600160a060020a0360043516602435604435612b28565b348015610b1957600080fd5b506103d1612e8d565b6103d1600160a060020a036004358116906024358116906044359060643581169060843516612e93565b348015610b5857600080fd5b506105946130e6565b348015610b6d57600080fd5b506103ae63ffffffff60043516613166565b348015610b8b57600080fd5b506103ae600160a060020a036004351661325b565b348015610bac57600080fd5b506105946132eb565b348015610bc157600080fd5b506104126132f4565b600081610bd681613303565b5050600160a060020a03166000908152600c602052604090205490565b610bfb613382565b60038054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b600a54600160a060020a031681565b60155460ff1681565b60095463ffffffff1681565b6000806000806000610c6f61526f565b50505050600160a060020a03929092166000908152600860209081526040808320815160a081018352815480825260019092015463ffffffff811694820185905260ff64010000000082048116151594830194909452650100000000008104841615156060830152660100000000000090049092161515608090920182905295919450919250829190565b6000806000806000610d0a6133d2565b610d12613382565b87610d1c81613303565b87610d268161342f565b87610d308161342f565b89610d3a81613490565b89610d4481613490565b600554604080517f8da5cb5b00000000000000000000000000000000000000000000000000000000815290513092600160a060020a031691638da5cb5b9160048083019260209291908290030181600087803b158015610da357600080fd5b505af1158015610db7573d6000803e3d6000fd5b505050506040513d6020811015610dcd57600080fd5b5051600160a060020a031614610e2d576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f414e43484f525f4e4f545f4f574e4544000000000000000000000000604482015290519081900360640190fd5b610e567f436861696e6c696e6b4f7261636c6557686974656c69737400000000000000006134f0565b995089600160a060020a0316633af32abf8d6040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b158015610eb357600080fd5b505af1158015610ec7573d6000803e3d6000fd5b505050506040513d6020811015610edd57600080fd5b50511515610f35576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f4f5241434c450000000000000000000000000000604482015290519081900360640190fd5b89600160a060020a0316633af32abf8c6040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b158015610f9057600080fd5b505af1158015610fa4573d6000803e3d6000fd5b505050506040513d6020811015610fba57600080fd5b50511515611012576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f4f5241434c450000000000000000000000000000604482015290519081900360640190fd5b61101a613588565b600a8054600160a060020a031916600160a060020a038f1617905560078054600090811061104457fe5b600091825260209091200154600160a060020a038e8116911614156110a25760078054600190811061107257fe5b600091825260209091200154600b8054600160a060020a031916600160a060020a039092169190911790556110dd565b6007805460009081106110b157fe5b600091825260209091200154600b8054600160a060020a031916600160a060020a039092169190911790555b6111067f436f6e766572746572466163746f7279000000000000000000000000000000006134f0565b600160a060020a031663c977aed261111c6117a7565b6040518263ffffffff1660e060020a028152600401808261ffff1661ffff168152602001915050602060405180830381600087803b15801561115d57600080fd5b505af1158015611171573d6000803e3d6000fd5b505050506040513d602081101561118757600080fd5b8101908080519060200190929190505050985088600160a060020a0316631b27444e8e600b60009054906101000a9004600160a060020a03168f8f6040518563ffffffff1660e060020a0281526004018085600160a060020a0316600160a060020a0316815260200184600160a060020a0316600160a060020a0316815260200183600160a060020a0316600160a060020a0316815260200182600160a060020a0316600160a060020a03168152602001945050505050602060405180830381600087803b15801561125857600080fd5b505af115801561126c573d6000803e3d6000fd5b505050506040513d602081101561128257600080fd5b5051600980546bffffffffffffffffffffffff166c01000000000000000000000000600160a060020a0393841681029190911791829055600a54600b54604080517fae818004000000000000000000000000000000000000000000000000000000008152928616600484015290851660248301528051929093049093169263ae8180049260448083019391928290030181600087803b15801561132457600080fd5b505af1158015611338573d6000803e3d6000fd5b505050506040513d604081101561134e57600080fd5b5080516020909101516010819055600f8290556012919091556013556113726137c4565b601155600a5461138a90600160a060020a0316610bca565b600a549098506113a290600160a060020a0316612aff565b600b549097506113ba90600160a060020a0316612aff565b9550868814156113e55760008811806113d35750600086115b156113e0576113e06137c8565b61140e565b6000881180156113f55750600087115b80156114015750600086115b1561140e5761140e6137c8565b600554600190600160a060020a03166114256117a7565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a450505050505050505050505050565b6000805160206152f483398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1690565b6114b5613382565b6015805460ff19169055565b60006007828154811015156114d257fe5b600091825260209091200154600160a060020a031692915050565b6000816114f981613303565b5050600160a060020a031660009081526008602052604090206001015463ffffffff1690565b60008061152d8585856126a4565b91509150935093915050565b611541613382565b61154a8161218c565b50565b6000611557613840565b801561157d57506009546c010000000000000000000000009004600160a060020a031615155b905090565b6009546c010000000000000000000000009004600160a060020a031681565b6000816115ad81613303565b6115ef6115b984612aff565b600160a060020a0385166000908152600c60205260409020546115e390601363ffffffff6138da16565b9063ffffffff61395e16565b9392505050565b600080600080600085600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561163c57600080fd5b505af1158015611650573d6000803e3d6000fd5b505050506040513d602081101561166657600080fd5b5051600160a060020a038088166000908152600e602052604090205491955016925061169183612aff565b600160a060020a0384166000908152600c602052604090205490925090506116cf816116c3848763ffffffff6138da16565b9063ffffffff6139bb16565b9695505050505050565b60035474010000000000000000000000000000000000000000900460ff1681565b611702613382565b61170a6128d6565b565b611714613382565b600554604080517f5e35359e000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015285811660248301526044820185905291519190921691635e35359e91606480830192600092919082900301818387803b15801561178a57600080fd5b505af115801561179e573d6000803e3d6000fd5b50505050505050565b600290565b6117b4613382565b8160146000600760008154811015156117c957fe5b6000918252602080832090910154600160a060020a031683528201929092526040018120919091556007805483926014929091600190811061180757fe5b6000918252602080832090910154600160a060020a031683528201929092526040019020555050565b60008054600160a060020a0316331480611865575060035474010000000000000000000000000000000000000000900460ff16155b15156118a9576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615314833981519152604482015290519081900360640190fd5b6118d27f436f6e74726163745265676973747279000000000000000000000000000000006134f0565b600254909150600160a060020a038083169116148015906118fb5750600160a060020a03811615155b1515611951576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b604080517fbb34534c0000000000000000000000000000000000000000000000000000000081527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b1580156119d557600080fd5b505af11580156119e9573d6000803e3d6000fd5b505050506040513d60208110156119ff57600080fd5b5051600160a060020a03161415611a60576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a03808416600160a060020a0319928316179092559091169216919091179055565b611a98613382565b80611aa28161342f565b5060068054600160a060020a031916600160a060020a0392909216919091179055565b602081565b6000806000806000611ada613a29565b6002600455611ae7613a83565b87611af181613303565b87611afb81613ae1565b87611b0581613ae1565b600160a060020a038b166000805160206152f483398151915214611b2a573415611b2e565b8934145b1515611b84576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b611b8c613b39565b600160a060020a038b166000805160206152f48339815191521415611c2e576000805160206152f483398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c4254611bf4903463ffffffff613b7b16565b6000805160206152f483398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c42555b600160a060020a038b166000908152600c602052604090205460155490975060ff1615611cf757600160a060020a038b166000908152601460205260409020541580611ca15750600160a060020a038b16600090815260146020526040902054611c9e888c63ffffffff61395e16565b11155b1515611cf7576040805160e560020a62461bcd02815260206004820152601e60248201527f4552525f4d41585f5354414b45445f42414c414e43455f524541434845440000604482015290519081900360640190fd5b600160a060020a03808c166000908152600d602090815260408083205481517f18160ddd00000000000000000000000000000000000000000000000000000000815291519416995089936318160ddd93600480840194938390030190829087803b158015611d6457600080fd5b505af1158015611d78573d6000803e3d6000fd5b505050506040513d6020811015611d8e57600080fd5b50519450600160a060020a038b166000805160206152f483398151915214611dbc57611dbc8b33308d613bdb565b600160a060020a038b16600090815260086020526040902054611de5908b63ffffffff61395e16565b600160a060020a038c16600090815260086020526040902055611e0e878b63ffffffff61395e16565b600160a060020a038c166000908152600c60205260408120919091559350861580611e37575084155b15611e4457899350611e5b565b611e58876116c38c8863ffffffff6138da16565b93505b88841015611eb3576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f52455455524e5f544f4f5f4c4f570000000000000000000000000000604482015290519081900360640190fd5b600554604080517fc6c3bbe6000000000000000000000000000000000000000000000000000000008152600160a060020a038981166004830152336024830152604482018890529151919092169163c6c3bbe691606480830192600092919082900301818387803b158015611f2757600080fd5b505af1158015611f3b573d6000803e3d6000fd5b50505050611f476137c8565b600160a060020a038b16337f4a1a2a6176e9646d9e3157f7c2ab3c499f18337c0b0828cfb28e0a61de4a11f78c611f848b8263ffffffff61395e16565b611f948a8a63ffffffff61395e16565b60408051938452602084019290925282820152519081900360600190a3611fcb86611fc5878763ffffffff61395e16565b8d613cc3565b61202060076000815481101515611fde57fe5b60009182526020909120015460078054600160a060020a0390921691600190811061200557fe5b6000918252602082200154600160a060020a03169080613d23565b5050600160045550979650505050505050565b600160a060020a039081166000908152600d60205260409020541690565b60095468010000000000000000900463ffffffff1681565b6000612073613a29565b6002600455612080613382565b6120976000805160206152d48339815191526134f0565b600160a060020a0385166000908152600860205260409020600101549091506601000000000000900460ff1615806120d457506120d261154d565b155b806120ec5750600054600160a060020a038281169116145b1515612130576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615314833981519152604482015290519081900360640190fd5b61213b848484613d8f565b600160a060020a0384166000908152600860205260409020600101546601000000000000900460ff16156121725761217284613dc0565b505060016004555050565b600354600160a060020a031681565b612194613382565b6000805160206152d48339815191526121ac81613eb4565b600554604080517ff2fde38b000000000000000000000000000000000000000000000000000000008152600160a060020a0385811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b15801561221357600080fd5b505af1158015612227573d6000803e3d6000fd5b505050505050565b6000806000806000806000806000808b600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561227c57600080fd5b505af1158015612290573d6000803e3d6000fd5b505050506040513d60208110156122a657600080fd5b5051600160a060020a03808e166000908152600e60209081526040808320549093168252600c905220549098509650878b101561237157600a54600160a060020a03166000908152600c602052604090205461230990601463ffffffff6138da16565b600a5490965061232190600160a060020a03166115a1565b9450848610612331578486612334565b85855b909450925061234d886116c38d8a63ffffffff6138da16565b9150612363836116c3848763ffffffff6138da16565b99505088810397508861237b565b9598506000975088955b50505050505050509250929050565b6000612394613a29565b60026004556123a1613382565b6000805160206152f48339815191526123b981613303565b6123d06000805160206152d48339815191526134f0565b91506123da61154d565b15806123f35750600054600160a060020a038381169116145b1515612437576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615314833981519152604482015290519081900360640190fd5b604051600160a060020a03841690303180156108fc02916000818181858888f1935050505015801561246d573d6000803e3d6000fd5b506124856000805160206152f4833981519152613dc0565b5050600160045550565b612497613382565b620186a08111156124f2576040805160e560020a62461bcd02815260206004820152601e60248201527f4552525f494e56414c49445f44594e414d49435f4645455f464143544f520000604482015290519081900360640190fd5b601654604080519182526020820183905280517f382fd3516344712a511dcd464ff8e6ab54139d6a28f64087a3253353ee7a56799281900390910190a1601655565b600261253e612695565b61ffff1610612585576040805160e560020a62461bcd0281526020600482015260196024820152600080516020615334833981519152604482015290519081900360640190fd5b61258f8282613f0a565b5050565b600061157d612695565b600154600160a060020a031633146125ed576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615314833981519152604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a36001805460008054600160a060020a0319908116600160a060020a03841617909155169055565b600254600160a060020a031681565b600054600160a060020a031681565b600954640100000000900463ffffffff1681565b60146020526000908152604090205481565b60075490565b600f5460105482565b6000806000806126b261529d565b6000806000806126c0613a83565b6126c98c613303565b6126d28b613303565b600160a060020a038c8116908c161415612736576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f53414d455f534f555243455f54415247455400000000000000000000604482015290519081900360640190fd5b61273e6137c4565b60115414156127e557600f604080519081016040529081600082015481526020016001820154815250509450600860008d600160a060020a0316600160a060020a0316815260200190815260200160002060010160009054906101000a900463ffffffff169650600860008c600160a060020a0316600160a060020a0316815260200190815260200160002060010160009054906101000a900463ffffffff169550612825565b6127ed61413c565b94506127f885614380565b600a549195509350600160a060020a038d81169116141561281e57839650829550612825565b8296508395505b6128338c8c8989898f6144aa565b919e919d50909b505050505050505050505050565b612850613382565b60035460028054600160a060020a031916600160a060020a03909216919091179055565b600181565b612881613382565b6000805160206152d483398151915261289981613eb4565b826128a381613303565b5050600160a060020a039091166000908152600c6020526040902055565b60115481565b600654600160a060020a031681565b60016128e0612695565b61ffff1611612927576040805160e560020a62461bcd0281526020600482015260196024820152600080516020615334833981519152604482015290519081900360640190fd5b61170a614646565b600780548290811061293d57fe5b600091825260209091200154600160a060020a0316905081565b600190565b600554600160a060020a031681565b600154600160a060020a031681565b6000612984613382565b61299b6000805160206152d48339815191526134f0565b600554909150600090600160a060020a03166129b56117a7565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a46129ee8161325b565b604080517f90f58c96000000000000000000000000000000000000000000000000000000008152602060048201529051600160a060020a038316916390f58c9691602480830192600092919082900301818387803b158015612a4f57600080fd5b505af1158015612a63573d6000803e3d6000fd5b5050505061154a61259d565b601490565b6008602052600090815260409020805460019091015463ffffffff81169060ff640100000000820481169165010000000000810482169166010000000000009091041685565b6000612ac582612aff565b92915050565b600080612ad661529d565b612ade61413c565b80516020909101519094909350915050565b600b54600160a060020a031681565b600081612b0b81613303565b5050600160a060020a031660009081526008602052604090205490565b600080600080600080612b39613a29565b6002600455612b46613a83565b88612b5081614712565b88612b5a81613ae1565b88612b6481613ae1565b612b6c613b39565b8b600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015612baa57600080fd5b505af1158015612bbe573d6000803e3d6000fd5b505050506040513d6020811015612bd457600080fd5b50519750612be28c8c61222f565b50965089871015612c3d576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f52455455524e5f544f4f5f4c4f570000000000000000000000000000604482015290519081900360640190fd5b600e60008d600160a060020a0316600160a060020a0316815260200190815260200160002060009054906101000a9004600160a060020a03169550600560009054906101000a9004600160a060020a0316600160a060020a031663f6b911bc8d338e6040518463ffffffff1660e060020a0281526004018084600160a060020a0316600160a060020a0316815260200183600160a060020a0316600160a060020a031681526020018281526020019350505050600060405180830381600087803b158015612d0a57600080fd5b505af1158015612d1e573d6000803e3d6000fd5b505050600160a060020a038716600090815260086020526040902054612d4b91508863ffffffff613b7b16565b600160a060020a038716600090815260086020908152604080832093909355600c90522054612d80908863ffffffff613b7b16565b600160a060020a0387166000818152600c602052604090208290559095506000805160206152f48339815191521415612de657604051339088156108fc029089906000818181858888f19350505050158015612de0573d6000803e3d6000fd5b50612df1565b612df1863389614783565b612df96137c8565b612e09888c63ffffffff613b7b16565b60408051898152602081018890528082018390529051919550600160a060020a0388169133917fbc7d19d505c7ec4db83f3b51f19fb98c4c8a99922e7839d1ee608dfbee29501b919081900360600190a3612e658c8588613cc3565b612e7860076000815481101515611fde57fe5b50506001600455509298975050505050505050565b60165481565b6000612e9d613a29565b60026004557f536f7672796e537761704e6574776f726b000000000000000000000000000000612ecc81613eb4565b600160a060020a038781169087161415612f30576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f53414d455f534f555243455f54415247455400000000000000000000604482015290519081900360640190fd5b600654600160a060020a031615806130735750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03878116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b158015612fab57600080fd5b505af1158015612fbf573d6000803e3d6000fd5b505050506040513d6020811015612fd557600080fd5b505180156130735750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b15801561304657600080fd5b505af115801561305a573d6000803e3d6000fd5b505050506040513d602081101561307057600080fd5b50515b15156130c9576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f4e4f545f57484954454c495354454400000000000000000000000000604482015290519081900360640190fd5b6130d6878787878761483a565b6001600455979650505050505050565b6000806130f161529d565b6000806130fc61413c565b925061310783614380565b915091506007600081548110151561311b57fe5b600091825260209091200154600a54600160a060020a03908116911614156131505763ffffffff80831695508116935061315f565b63ffffffff8082169550821693505b5050509091565b61316e613382565b60095463ffffffff640100000000909104811690821611156131da576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b6009546040805163ffffffff6801000000000000000090930483168152918316602083015280517f81cd2ffb37dd237c0e4e2a3de5265fcf9deb43d3e7801e80db9f1ccfba7ee6009281900390910190a16009805463ffffffff90921668010000000000000000026bffffffff000000000000000019909216919091179055565b613263613382565b600054600160a060020a03828116911614156132c9576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b60018054600160a060020a031916600160a060020a0392909216919091179055565b60125460135482565b600554600160a060020a031690565b600160a060020a0381166000908152600860205260409020600101546601000000000000900460ff16151561154a576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f5245534552564500000000000000000000000000604482015290519081900360640190fd5b600054600160a060020a0316331461170a576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615314833981519152604482015290519081900360640190fd5b6133da61154d565b1561170a576040805160e560020a62461bcd02815260206004820152600a60248201527f4552525f41435449564500000000000000000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a03811630141561154a576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b600160a060020a038116151561154a576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b600254604080517fbb34534c000000000000000000000000000000000000000000000000000000008152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561355657600080fd5b505af115801561356a573d6000803e3d6000fd5b505050506040513d602081101561358057600080fd5b505192915050565b60006060600080600080600560009054906101000a9004600160a060020a0316955085600160a060020a0316636d3e313e6040518163ffffffff1660e060020a028152600401600060405180830381600087803b1580156135e857600080fd5b505af11580156135fc573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561362557600080fd5b81019080805164010000000081111561363d57600080fd5b8201602081018481111561365057600080fd5b815185602082028301116401000000008211171561366d57600080fd5b505080516007549199501597509550600094505050505b828210156122275783156137035785600160a060020a0316639cbf9e366040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156136d057600080fd5b505af11580156136e4573d6000803e3d6000fd5b505050506040513d60208110156136fa57600080fd5b5051905061371e565b848281518110151561371157fe5b9060200190602002015190505b80600d600060078581548110151561373257fe5b600091825260208083209190910154600160a060020a03908116845290830193909352604090910190208054600160a060020a03191692909116919091179055600780548390811061378057fe5b6000918252602080832090910154600160a060020a038481168452600e90925260409092208054600160a060020a0319169190921617905560019190910190613684565b4290565b60408051808201909152600f548152601054602082015260009081906137ed90614380565b600a54600160a060020a039081166000908152600860205260408082206001908101805463ffffffff97881663ffffffff1991821617909155600b54909416835291200180549290931691161790555050565b600030600160a060020a0316600560009054906101000a9004600160a060020a0316600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561389f57600080fd5b505af11580156138b3573d6000803e3d6000fd5b505050506040513d60208110156138c957600080fd5b5051600160a060020a031614905090565b6000808315156138ed5760009150613957565b508282028284828115156138fd57fe5b0414613953576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b8091505b5092915050565b600082820183811015613953576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b600080808311613a15576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f4449564944455f42595f5a45524f0000000000000000000000000000604482015290519081900360640190fd5b8284811515613a2057fe5b04949350505050565b60045460011461170a576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5245454e5452414e4359000000000000000000000000000000000000604482015290519081900360640190fd5b613a8b61154d565b151561170a576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f494e4143544956450000000000000000000000000000000000000000604482015290519081900360640190fd5b6000811161154a576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5a45524f5f56414c5545000000000000000000000000000000000000604482015290519081900360640190fd5b60075460005b8181101561258f57613b73600782815481101515613b5957fe5b600091825260209091200154600160a060020a0316613dc0565b600101613b3f565b600081831015613bd5576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b604080517f7472616e7366657246726f6d28616464726573732c616464726573732c75696e81527f74323536290000000000000000000000000000000000000000000000000000006020808301919091528251918290036025018220600160a060020a038088166024850152861660448401526064808401869052845180850390910181526084909301909352810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1990931692909217909152613cbd90859061492d565b50505050565b600160a060020a038082166000818152600c6020908152604091829020548251908152908101869052815192938716927f77f29993cf2c084e726f7e802da0719d6a0ade3e204badc7a3ffd57ecb768c24929181900390910190a3505050565b613d2b61529d565b613d37858585856149bb565b805160208083015160408051938452918301528051929350600160a060020a0380881693908916927f77f29993cf2c084e726f7e802da0719d6a0ade3e204badc7a3ffd57ecb768c2492908290030190a35050505050565b613d97613382565b82613da181613490565b82613dab81613490565b83613db58161342f565b612227868686614783565b80613dca81613303565b600160a060020a0382166000805160206152f48339815191521415613e0a57600160a060020a03821660009081526008602052604090203031905561258f565b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051600160a060020a038416916370a082319160248083019260209291908290030181600087803b158015613e6b57600080fd5b505af1158015613e7f573d6000803e3d6000fd5b505050506040513d6020811015613e9557600080fd5b5051600160a060020a0383166000908152600860205260409020555050565b613ebd816134f0565b600160a060020a0316331461154a576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615314833981519152604482015290519081900360640190fd5b6000613f14613382565b613f1c6133d2565b82613f2681613490565b83613f308161342f565b83613f3a81614a83565b600554600160a060020a03878116911614801590613f7e5750600160a060020a0386166000908152600860205260409020600101546601000000000000900460ff16155b1515613fd4576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f5245534552564500000000000000000000000000604482015290519081900360640190fd5b60095463ffffffff908116620f4240038116908616111561403f576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b61ffff61404a612695565b61ffff1610614091576040805160e560020a62461bcd0281526020600482015260196024820152600080516020615334833981519152604482015290519081900360640190fd5b505050600160a060020a0390921660008181526008602052604081208181556001908101805466ff0000000000001963ffffffff80881663ffffffff1993841617919091166601000000000000179092556007805493840181559093527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6889091018054600160a060020a03191690931790925560098054808416909401909216921691909117905550565b61414461529d565b60008060008061415261529d565b61415a61529d565b600954600a54600b54604080517fb1772d7a000000000000000000000000000000000000000000000000000000008152600160a060020a0393841660048201529183166024830152516000938493849384936c010000000000000000000000009093049091169163b1772d7a9160448082019260609290919082900301818787803b1580156141e857600080fd5b505af11580156141fc573d6000803e3d6000fd5b505050506040513d606081101561421257600080fd5b5080516020820151604090920151601154919c50919a5090985088111561424f5760408051908101604052808b81526020018a8152509a50614373565b60115461425a6137c4565b0396508615156142825760408051808201909152600f54815260105460208201529a50614373565b61025887106142a95760408051808201909152601254815260135460208201529a50614373565b604080518082018252600f548152601054602080830191825283518085019094526012548085526013549185019190915290519198509196506142f19163ffffffff6138da16565b6020860151875191955061430b919063ffffffff6138da16565b9250614335614320858963ffffffff6138da16565b6115e3856102588b900363ffffffff6138da16565b9150614364610258614358876020015189602001516138da90919063ffffffff16565b9063ffffffff6138da16565b90506143708282614af8565b9a505b5050505050505050505090565b600a54600160a060020a03166000818152600c60205260408120549091829190829081906143ad906115a1565b600b549092506143c590600160a060020a03166115a1565b90506143f07f536f7672796e53776170466f726d756c610000000000000000000000000000006134f0565b600160a060020a031663a11aa1b461440f85601463ffffffff6138da16565b885160208a01516040805160e060020a63ffffffff87160281526004810194909452602484018890526044840187905260648401929092526084830152805160a4808401938290030181600087803b15801561446a57600080fd5b505af115801561447e573d6000803e3d6000fd5b505050506040513d604081101561449457600080fd5b5080516020909101519095509350505050915091565b60008080808063ffffffff891615156144e257600160a060020a038b1660009081526008602052604090206001015463ffffffff1698505b63ffffffff8816151561451457600160a060020a038a1660009081526008602052604090206001015463ffffffff1697505b61451d8b6115a1565b91506145288a6115a1565b90506145537f536f7672796e53776170466f726d756c610000000000000000000000000000006134f0565b604080517f94491fab0000000000000000000000000000000000000000000000000000000081526004810185905263ffffffff808d166024830152604482018590528b166064820152608481018990529051600160a060020a0392909216916394491fab9160a4808201926020929091908290030181600087803b1580156145da57600080fd5b505af11580156145ee573d6000803e3d6000fd5b505050506040513d602081101561460457600080fd5b5051945061461185614b4d565b9350614624846115e38c8c8c8c8b614b7d565b9250614636858463ffffffff613b7b16565b9450505096509650969350505050565b61464e613382565b6000614658612695565b61ffff161161469f576040805160e560020a62461bcd0281526020600482015260196024820152600080516020615334833981519152604482015290519081900360640190fd5b600560009054906101000a9004600160a060020a0316600160a060020a03166379ba50976040518163ffffffff1660e060020a028152600401600060405180830381600087803b1580156146f257600080fd5b505af1158015614706573d6000803e3d6000fd5b5050505061170a613b39565b600160a060020a038181166000908152600e602052604090205416151561154a576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f494e56414c49445f504f4f4c5f544f4b454e00000000000000000000604482015290519081900360640190fd5b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff199093169290921790915261483590849061492d565b505050565b6000806000614847613a83565b8761485181613303565b8761485b81613303565b6148668a8a8a614c56565b9094509250600160a060020a0389166000805160206152f483398151915214156148c657604051600160a060020a0387169085156108fc029086906000818181858888f193505050501580156148c0573d6000803e3d6000fd5b506148d1565b6148d1898786614783565b6148df8a8a898b8888614f6b565b600160a060020a03808b16600090815260086020526040808220600190810154938d1683529120015461491f918c918c9163ffffffff9081169116614ff0565b509198975050505050505050565b6149356152b4565b602060405190810160405280600181525090506020818351602085016000875af180151561496257600080fd5b5080511515614835576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b6149c361529d565b6000806149cf876115a1565b91506149da866115a1565b905063ffffffff85161515614a0e57600160a060020a03871660009081526008602052604090206001015463ffffffff1694505b63ffffffff84161515614a4057600160a060020a03861660009081526008602052604090206001015463ffffffff1693505b6040805180820190915280614a5e8363ffffffff808a16906138da16565b8152602001614a768463ffffffff808916906138da16565b9052979650505050505050565b60008163ffffffff16118015614aa25750620f424063ffffffff821611155b151561154a576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b614b0061529d565b614b0861529d565b828410614b2057614b198484615081565b9150613957565b614b2a8385615081565b604080518082019091526020808301518252825190820152925090505092915050565b600954600090612ac590620f4240906116c390859068010000000000000000900463ffffffff908116906138da16565b600b546000908190600160a060020a0388811691161415614beb57600a54600160a060020a039081166000908152600c6020908152604080832054600b54909416835290912054865191870151601654614be4949363ffffffff808d1693908c169261513e565b9050614c3a565b600a54600160a060020a039081166000908152600c6020908152604080832054600b54909416835290912054865191870151601654614c37949363ffffffff808c1693908d169261513e565b90505b614c4b620f42406116c385846138da565b979650505050505050565b6000806000614c6361529d565b600080600080614c716151aa565b95509550614c848b8b600080898e6144aa565b91955093509150831515614ce2576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b614ceb8a612aff565b9050808410614d44576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f5441524745545f414d4f554e545f544f4f5f48494748000000000000604482015290519081900360640190fd5b600160a060020a038b166000805160206152f48339815191521415614dbf57348914614dba576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b614ec1565b34158015614e6b575088614e68614dd58d612aff565b8d600160a060020a03166370a08231306040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b158015614e3057600080fd5b505af1158015614e44573d6000803e3d6000fd5b505050506040513d6020811015614e5a57600080fd5b50519063ffffffff613b7b16565b10155b1515614ec1576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b614eca8b613dc0565b614eda818563ffffffff613b7b16565b600160a060020a038b16600090815260086020908152604080832093909355600c90522054614f0f908463ffffffff61395e16565b600160a060020a038b166000908152600c60205260409020558515614f5a57600a54600b54614f4d91600160a060020a0390811691166000806149bb565b8051601255602001516013555b509199919850909650505050505050565b7f80000000000000000000000000000000000000000000000000000000000000008110614f9457fe5b60408051848152602081018490528082018390529051600160a060020a038087169288821692918a16917f276856b36cbc45526a0ba64f44611557a2a8b68662c5388e9fe6d72e86e1c8cb9181900360600190a4505050505050565b600080614fff86868686613d23565b61500885612033565b915081600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561504857600080fd5b505af115801561505c573d6000803e3d6000fd5b505050506040513d602081101561507257600080fd5b50519050612227828287613cc3565b61508961529d565b7314484bfeebc29f863424b06f3529a051a31be5998211156150db57604080518082019091526c0c9f2c9cd04674edea4000000080825260208201908504848115156150d157fe5b0490529050612ac5565b6c0c9f2c9cd04674edea400000008311156151285760408051908101604052806c0c9f2c9cd04674edea400000008152602001846c0c9f2c9cd04674edea4000000085028115156150d157fe5b5060408051808201909152918252602082015290565b60008080615156876143588c8963ffffffff6138da16565b915061516c886143588b8863ffffffff6138da16565b90508181111561519857615191816116c360146143588684038963ffffffff6138da16565b925061519d565b600092505b5050979650505050505050565b60006151b461529d565b60006151be61529d565b6151c661529d565b6151ce6137c4565b92508260115414156151fc5760408051808201909152600f548152601054602082015260009550935061315f565b61520461413c565b60408051808201909152600f5480825260105460208301528251929450909250148015615238575080602001518260200151145b15615249576000829450945061315f565b8151600f55602082015160105560118390556152636137c8565b50600194909350915050565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b604080518082019091526000808252602082015290565b60206040519081016040528060019060208202803883395091929150505600536f7672796e53776170436f6e76657274657255706772616465720000000000000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee4552525f4143434553535f44454e4945440000000000000000000000000000004552525f494e56414c49445f524553455256455f434f554e5400000000000000a165627a7a72305820fdb290fc35b0c0fc6a3850a3599eb08cff14f9d1e59cb6b97bcccb9ab43b34c70029 \ No newline at end of file +608060405260016004819055600980546001606060020a03191690556017805460ff19169091179055620111706018553480156200003c57600080fd5b5060405160608062005ef383398101604090815281516020830151919092015160008054600160a060020a0319163317905582828282828281806200008a8164010000000062000137810204565b5060028054600160a060020a03909216600160a060020a031992831681179091556003805490921617905582620000ca8164010000000062000137810204565b81620000df81640100000000620001b2810204565b505060058054600160a060020a03909416600160a060020a031990941693909317909255506009805463ffffffff9092166401000000000267ffffffff0000000019909216919091179055506200022b945050505050565b600160a060020a0381161515620001af57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b620f424063ffffffff82161115620001af57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b615cb8806200023b6000396000f3006080604052600436106103335763ffffffff60e060020a6000350416625e319c81146103d1578063024c7ec7146104045780630337e3fb1461041e578063064bda021461044f5780630a55fb3d146104705780630c7d5cd8146104995780630e53aae9146104c7578063119b90cd1461051c57806312c2aca414610549578063164e68de1461055e57806316912f961461057f57806319b64015146105945780631cfab290146105ac5780631e1401f8146105cd57806321e6b53d1461061057806322f3e2d4146106315780632630c12f146106465780632bd3c1071461065b5780632bf0c9851461067c5780632fe8a6ad1461069d5780633341e006146106b257806338a5e016146106d3578063395900d4146106e85780633e8ff43f14610712578063467494681461073e57806349d10b64146107595780634af80f0e1461076e57806354fd4d501461078f57806355776b77146107a45780635768adcf146107be578063579cd3ca146107df5780635e35359e146107f457806361cd756e1461081e57806367b6d57c1461083357806369067d9514610854578063690d83201461087857806369d1354a146108995780636a49d2c4146108b157806371f52bf3146108db57806379ba5097146108f05780637b103999146109055780638da5cb5b1461091a57806394c275ad1461092f57806398a71dcb146109445780639b99a8e214610965578063a32bff441461097a578063af94b8d81461098f578063b4a176d3146109b9578063bf754558146109ce578063bf7da6ba146109e3578063c3321fb014610a07578063c45d3d9214610a1c578063cdc91c6914610a31578063d031370b14610a46578063d260529c14610a5e578063d3fb73b414610a73578063d4ee1d9014610a88578063d55ec69714610a9d578063d64c5a1a14610ab2578063d66bd52414610add578063d895951214610afe578063db2830a414610b1f578063dc75eb9a14610b34578063dc8de37914610b49578063e38192e314610b6a578063e8104af914610b91578063e8dc12ff14610ba6578063ec2240f514610bd0578063ecbca55d14610be5578063f2fde38b14610c03578063f9cddde214610c24578063fc0c546a14610c39575b600080516020615c2d83398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1615156103cf576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f5245534552564500000000000000000000000000604482015290519081900360640190fd5b005b3480156103dd57600080fd5b506103f2600160a060020a0360043516610c4e565b60408051918252519081900360200190f35b34801561041057600080fd5b506103cf6004351515610c77565b34801561042a57600080fd5b50610433610cbf565b60408051600160a060020a039092168252519081900360200190f35b34801561045b57600080fd5b506103f2600160a060020a0360043516610cce565b34801561047c57600080fd5b50610485610ce0565b604080519115158252519081900360200190f35b3480156104a557600080fd5b506104ae610ce9565b6040805163ffffffff9092168252519081900360200190f35b3480156104d357600080fd5b506104e8600160a060020a0360043516610cf5565b6040805195865263ffffffff9094166020860152911515848401521515606084015215156080830152519081900360a00190f35b34801561052857600080fd5b506103cf600160a060020a0360043581169060243581169060443516610d90565b34801561055557600080fd5b506104856114de565b34801561056a57600080fd5b506103f2600160a060020a0360043516611527565b34801561058b57600080fd5b506103cf611b1b565b3480156105a057600080fd5b50610433600435611b2f565b3480156105b857600080fd5b506104ae600160a060020a0360043516611b5b565b3480156105d957600080fd5b506105f7600160a060020a0360043581169060243516604435611b8d565b6040805192835260208301919091528051918290030190f35b34801561061c57600080fd5b506103cf600160a060020a0360043516611ba7565b34801561063d57600080fd5b50610485611bbb565b34801561065257600080fd5b50610433611be0565b34801561066757600080fd5b506103f2600160a060020a0360043516611bef565b34801561068857600080fd5b506103f2600160a060020a0360043516611c44565b3480156106a957600080fd5b50610485611d27565b3480156106be57600080fd5b506103f2600160a060020a0360043516611d48565b3480156106df57600080fd5b506103cf611d63565b3480156106f457600080fd5b506103cf600160a060020a0360043581169060243516604435611d75565b34801561071e57600080fd5b50610727611e10565b6040805161ffff9092168252519081900360200190f35b34801561074a57600080fd5b506103cf600435602435611e15565b34801561076557600080fd5b506103cf611e99565b34801561077a57600080fd5b506103cf600160a060020a03600435166120e3565b34801561079b57600080fd5b50610727612118565b6103f2600160a060020a036004351660243560443561211d565b3480156107ca57600080fd5b50610433600160a060020a0360043516612686565b3480156107eb57600080fd5b506104ae6126a4565b34801561080057600080fd5b506103cf600160a060020a03600435811690602435166044356126bc565b34801561082a57600080fd5b506104336127d0565b34801561083f57600080fd5b506103cf600160a060020a03600435166127df565b34801561086057600080fd5b506105f7600160a060020a0360043516602435612882565b34801561088457600080fd5b506103cf600160a060020a03600435166129dd565b3480156108a557600080fd5b506103cf600435612ae2565b3480156108bd57600080fd5b506103cf600160a060020a036004351663ffffffff60243516612b87565b3480156108e757600080fd5b50610727612be6565b3480156108fc57600080fd5b506103cf612bf0565b34801561091157600080fd5b50610433612ca4565b34801561092657600080fd5b50610433612cb3565b34801561093b57600080fd5b506104ae612cc2565b34801561095057600080fd5b506103f2600160a060020a0360043516612cd6565b34801561097157600080fd5b50610727612ce8565b34801561098657600080fd5b506105f7612cee565b34801561099b57600080fd5b506105f7600160a060020a0360043581169060243516604435612cf7565b3480156109c557600080fd5b506103cf612e9b565b3480156109da57600080fd5b50610485612ec7565b3480156109ef57600080fd5b506103cf600160a060020a0360043516602435612ecc565b348015610a1357600080fd5b506103f2612f14565b348015610a2857600080fd5b50610433612f1a565b348015610a3d57600080fd5b506103cf612f29565b348015610a5257600080fd5b50610433600435612f82565b348015610a6a57600080fd5b50610485612faa565b348015610a7f57600080fd5b50610433612faf565b348015610a9457600080fd5b50610433612fbe565b348015610aa957600080fd5b506103cf612fcd565b348015610abe57600080fd5b50610ac76130c2565b6040805160ff9092168252519081900360200190f35b348015610ae957600080fd5b506104e8600160a060020a03600435166130c7565b348015610b0a57600080fd5b506103f2600160a060020a036004351661310d565b348015610b2b57600080fd5b506105f761311e565b348015610b4057600080fd5b50610433613143565b348015610b5557600080fd5b506103f2600160a060020a0360043516613152565b348015610b7657600080fd5b506103f2600160a060020a036004351660243560443561317b565b348015610b9d57600080fd5b506103f26134e0565b6103f2600160a060020a0360043581169060243581169060443590606435811690608435166134e6565b348015610bdc57600080fd5b506105f7613739565b348015610bf157600080fd5b506103cf63ffffffff600435166137b9565b348015610c0f57600080fd5b506103cf600160a060020a03600435166138ae565b348015610c3057600080fd5b506105f761393e565b348015610c4557600080fd5b50610433613947565b600081610c5a81613956565b5050600160a060020a03166000908152600e602052604090205490565b610c7f6139d5565b60038054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b600c54600160a060020a031681565b600a6020526000908152604090205481565b60175460ff1681565b60095463ffffffff1681565b6000806000806000610d05615ba8565b50505050600160a060020a03929092166000908152600860209081526040808320815160a081018352815480825260019092015463ffffffff811694820185905260ff64010000000082048116151594830194909452650100000000008104841615156060830152660100000000000090049092161515608090920182905295919450919250829190565b6000806000806000610da0613a25565b610da86139d5565b87610db281613956565b87610dbc81613a82565b87610dc681613a82565b89610dd081613ae3565b89610dda81613ae3565b600554604080517f8da5cb5b00000000000000000000000000000000000000000000000000000000815290513092600160a060020a031691638da5cb5b9160048083019260209291908290030181600087803b158015610e3957600080fd5b505af1158015610e4d573d6000803e3d6000fd5b505050506040513d6020811015610e6357600080fd5b5051600160a060020a031614610ec3576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f414e43484f525f4e4f545f4f574e4544000000000000000000000000604482015290519081900360640190fd5b610eec7f436861696e6c696e6b4f7261636c6557686974656c6973740000000000000000613b43565b995089600160a060020a0316633af32abf8d6040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b158015610f4957600080fd5b505af1158015610f5d573d6000803e3d6000fd5b505050506040513d6020811015610f7357600080fd5b50511515610fcb576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f4f5241434c450000000000000000000000000000604482015290519081900360640190fd5b89600160a060020a0316633af32abf8c6040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b15801561102657600080fd5b505af115801561103a573d6000803e3d6000fd5b505050506040513d602081101561105057600080fd5b505115156110a8576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f4f5241434c450000000000000000000000000000604482015290519081900360640190fd5b6110b0613bc5565b600c8054600160a060020a031916600160a060020a038f161790556007805460009081106110da57fe5b600091825260209091200154600160a060020a038e8116911614156111385760078054600190811061110857fe5b600091825260209091200154600d8054600160a060020a031916600160a060020a03909216919091179055611173565b60078054600090811061114757fe5b600091825260209091200154600d8054600160a060020a031916600160a060020a039092169190911790555b61119c7f436f6e766572746572466163746f727900000000000000000000000000000000613b43565b600160a060020a031663c977aed26111b2611e10565b6040518263ffffffff1660e060020a028152600401808261ffff1661ffff168152602001915050602060405180830381600087803b1580156111f357600080fd5b505af1158015611207573d6000803e3d6000fd5b505050506040513d602081101561121d57600080fd5b8101908080519060200190929190505050985088600160a060020a0316631b27444e8e600d60009054906101000a9004600160a060020a03168f8f6040518563ffffffff1660e060020a0281526004018085600160a060020a0316600160a060020a0316815260200184600160a060020a0316600160a060020a0316815260200183600160a060020a0316600160a060020a0316815260200182600160a060020a0316600160a060020a03168152602001945050505050602060405180830381600087803b1580156112ee57600080fd5b505af1158015611302573d6000803e3d6000fd5b505050506040513d602081101561131857600080fd5b5051600b8054600160a060020a031916600160a060020a039283161790819055600c54600d54604080517fae818004000000000000000000000000000000000000000000000000000000008152928516600484015290841660248301528051929093169263ae818004926044808401938290030181600087803b15801561139e57600080fd5b505af11580156113b2573d6000803e3d6000fd5b505050506040513d60408110156113c857600080fd5b508051602090910151601281905560118290556014919091556015556113ec613e01565b601355600c5461140490600160a060020a0316610c4e565b600c5490985061141c90600160a060020a0316613152565b600d5490975061143490600160a060020a0316613152565b95508688141561145f57600088118061144d5750600086115b1561145a5761145a613e05565b611488565b60008811801561146f5750600087115b801561147b5750600086115b1561148857611488613e05565b600554600190600160a060020a031661149f611e10565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a450505050505050505050505050565b600080516020615c2d83398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1690565b600080600080600080600080606061153d613e7d565b600160a060020a0316331461159c576040805160e560020a62461bcd02815260206004820152600c60248201527f756e617574686f72697a65640000000000000000000000000000000000000000604482015290519081900360640190fd5b6115c57f536f7672796e537761704e6574776f726b000000000000000000000000000000613b43565b9450600093505b600754841015611afb5760078054859081106115e457fe5b6000918252602080832090910154600160a060020a0316808352600a90915260408220549099509750871161161857611af0565b600160a060020a0388166000908152600a6020526040812055611639613fa6565b600160a060020a031688600160a060020a031614156117805787600160a060020a031663095ea7b3611669613e7d565b896040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b1580156116bc57600080fd5b505af11580156116d0573d6000803e3d6000fd5b505050506040513d60208110156116e657600080fd5b506116f19050613e7d565b600160a060020a031663abe979e1611707613fa6565b6040805160e060020a63ffffffff8516028152600160a060020a0390921660048301526bffffffffffffffffffffffff8b16602483015251604480830192600092919082900301818387803b15801561175f57600080fd5b505af1158015611773573d6000803e3d6000fd5b5050505060009250611a9e565b61178861409e565b600160a060020a031688600160a060020a031614156117a957869250611a8b565b87600160a060020a031663095ea7b36117e17f536f7672796e537761704e6574776f726b000000000000000000000000000000613b43565b896040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b15801561183457600080fd5b505af1158015611848573d6000803e3d6000fd5b505050506040513d602081101561185e57600080fd5b505191508115156118b9576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f415050524f56414c5f4641494c454400000000000000000000000000604482015290519081900360640190fd5b84600160a060020a031663d734fa19896118d161409e565b6040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182600160a060020a0316600160a060020a0316815260200192505050600060405180830381600087803b15801561193557600080fd5b505af1158015611949573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561197257600080fd5b81019080805164010000000081111561198a57600080fd5b8201602081018481111561199d57600080fd5b81518560208202830111640100000000821117156119ba57600080fd5b5050929190505050905084600160a060020a031663f3898a97828960016040518463ffffffff1660e060020a0281526004018080602001848152602001838152602001828103825285818151815260200191508051906020019060200280838360005b83811015611a35578181015183820152602001611a1d565b50505050905001945050505050602060405180830381600087803b158015611a5c57600080fd5b505af1158015611a70573d6000803e3d6000fd5b505050506040513d6020811015611a8657600080fd5b505192505b611a9b868463ffffffff61419616565b95505b60408051600160a060020a038a81168252602082018a90528183018690529151918c169133917f3953f559f015828db2bd3868682d85a85c6e24c3f05fb4e927797d7c007b3673919081900360600190a35b6001909301926115cc565b611b0d611b0661409e565b8b886141fe565b509398975050505050505050565b611b236139d5565b6017805460ff19169055565b6000600782815481101515611b4057fe5b600091825260209091200154600160a060020a031692915050565b600081611b6781613956565b5050600160a060020a031660009081526008602052604090206001015463ffffffff1690565b600080611b9b858585612cf7565b91509150935093915050565b611baf6139d5565b611bb8816127df565b50565b6000611bc56142b5565b8015611bdb5750600b54600160a060020a031615155b905090565b600b54600160a060020a031681565b600081611bfb81613956565b611c3d611c0784613152565b600160a060020a0385166000908152600e6020526040902054611c3190601363ffffffff61434f16565b9063ffffffff61419616565b9392505050565b600080600080600085600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611c8a57600080fd5b505af1158015611c9e573d6000803e3d6000fd5b505050506040513d6020811015611cb457600080fd5b5051600160a060020a03808816600090815260106020526040902054919550169250611cdf83613152565b600160a060020a0384166000908152600e60205260409020549092509050611d1d81611d11848763ffffffff61434f16565b9063ffffffff6143c816565b9695505050505050565b60035474010000000000000000000000000000000000000000900460ff1681565b600160a060020a03166000908152600a602052604090205490565b611d6b6139d5565b611d73612f29565b565b611d7d6139d5565b600554604080517f5e35359e000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015285811660248301526044820185905291519190921691635e35359e91606480830192600092919082900301818387803b158015611df357600080fd5b505af1158015611e07573d6000803e3d6000fd5b50505050505050565b600290565b611e1d6139d5565b816016600060076000815481101515611e3257fe5b6000918252602080832090910154600160a060020a0316835282019290925260400181209190915560078054839260169290916001908110611e7057fe5b6000918252602080832090910154600160a060020a031683528201929092526040019020555050565b60008054600160a060020a0316331480611ece575060035474010000000000000000000000000000000000000000900460ff16155b1515611f12576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615c4d833981519152604482015290519081900360640190fd5b611f3b7f436f6e7472616374526567697374727900000000000000000000000000000000613b43565b600254909150600160a060020a03808316911614801590611f645750600160a060020a03811615155b1515611fba576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6040805160e260020a632ecd14d30281527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b15801561202857600080fd5b505af115801561203c573d6000803e3d6000fd5b505050506040513d602081101561205257600080fd5b5051600160a060020a031614156120b3576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a03808416600160a060020a0319928316179092559091169216919091179055565b6120eb6139d5565b806120f581613a82565b5060068054600160a060020a031916600160a060020a0392909216919091179055565b602081565b600080600080600061212d614436565b600260045561213a614490565b8761214481613956565b8761214e816144ee565b87612158816144ee565b600160a060020a038b16600080516020615c2d8339815191521461217d573415612181565b8934145b15156121d7576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b6121df614546565b600160a060020a038b16600080516020615c2d833981519152141561228157600080516020615c2d83398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c4254612247903463ffffffff61458816565b600080516020615c2d83398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c42555b600160a060020a038b166000908152600e602052604090205460175490975060ff161561234a57600160a060020a038b1660009081526016602052604090205415806122f45750600160a060020a038b166000908152601660205260409020546122f1888c63ffffffff61419616565b11155b151561234a576040805160e560020a62461bcd02815260206004820152601e60248201527f4552525f4d41585f5354414b45445f42414c414e43455f524541434845440000604482015290519081900360640190fd5b600160a060020a03808c166000908152600f602090815260408083205481517f18160ddd00000000000000000000000000000000000000000000000000000000815291519416995089936318160ddd93600480840194938390030190829087803b1580156123b757600080fd5b505af11580156123cb573d6000803e3d6000fd5b505050506040513d60208110156123e157600080fd5b50519450600160a060020a038b16600080516020615c2d8339815191521461240f5761240f8b33308d6145e8565b600160a060020a038b16600090815260086020526040902054612438908b63ffffffff61419616565b600160a060020a038c16600090815260086020526040902055612461878b63ffffffff61419616565b600160a060020a038c166000908152600e6020526040812091909155935086158061248a575084155b15612497578993506124ae565b6124ab87611d118c8863ffffffff61434f16565b93505b88841015612506576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f52455455524e5f544f4f5f4c4f570000000000000000000000000000604482015290519081900360640190fd5b600554604080517fc6c3bbe6000000000000000000000000000000000000000000000000000000008152600160a060020a038981166004830152336024830152604482018890529151919092169163c6c3bbe691606480830192600092919082900301818387803b15801561257a57600080fd5b505af115801561258e573d6000803e3d6000fd5b5050505061259a613e05565b600160a060020a038b16337f4a1a2a6176e9646d9e3157f7c2ab3c499f18337c0b0828cfb28e0a61de4a11f78c6125d78b8263ffffffff61419616565b6125e78a8a63ffffffff61419616565b60408051938452602084019290925282820152519081900360600190a361261e86612618878763ffffffff61419616565b8d6146d0565b6126736007600081548110151561263157fe5b60009182526020909120015460078054600160a060020a0390921691600190811061265857fe5b6000918252602082200154600160a060020a03169080614730565b5050600160045550979650505050505050565b600160a060020a039081166000908152600f60205260409020541690565b60095468010000000000000000900463ffffffff1681565b60006126c6614436565b60026004556126d36139d5565b6126ea600080516020615c0d833981519152613b43565b600160a060020a0385166000908152600860205260409020600101549091506601000000000000900460ff1615806127275750612725611bbb565b155b8061273f5750600054600160a060020a038281169116145b1515612783576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615c4d833981519152604482015290519081900360640190fd5b61278e84848461479c565b600160a060020a0384166000908152600860205260409020600101546601000000000000900460ff16156127c5576127c5846147cd565b505060016004555050565b600354600160a060020a031681565b6127e76139d5565b600080516020615c0d8339815191526127ff816148e3565b600554604080517ff2fde38b000000000000000000000000000000000000000000000000000000008152600160a060020a0385811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b15801561286657600080fd5b505af115801561287a573d6000803e3d6000fd5b505050505050565b6000806000806000806000806000808b600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156128cf57600080fd5b505af11580156128e3573d6000803e3d6000fd5b505050506040513d60208110156128f957600080fd5b5051600160a060020a03808e166000908152601060209081526040808320549093168252600e905220549098509650878b10156129c457600c54600160a060020a03166000908152600e602052604090205461295c90601463ffffffff61434f16565b600c5490965061297490600160a060020a0316611bef565b9450848610612984578486612987565b85855b90945092506129a088611d118d8a63ffffffff61434f16565b91506129b683611d11848763ffffffff61434f16565b9950508881039750886129ce565b9598506000975088955b50505050505050509250929050565b60006129e7614436565b60026004556129f46139d5565b600080516020615c2d833981519152612a0c81613956565b612a23600080516020615c0d833981519152613b43565b9150612a2d611bbb565b1580612a465750600054600160a060020a038381169116145b1515612a8a576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615c4d833981519152604482015290519081900360640190fd5b604051600160a060020a03841690303180156108fc02916000818181858888f19350505050158015612ac0573d6000803e3d6000fd5b50612ad8600080516020615c2d8339815191526147cd565b5050600160045550565b612aea6139d5565b620186a0811115612b45576040805160e560020a62461bcd02815260206004820152601e60248201527f4552525f494e56414c49445f44594e414d49435f4645455f464143544f520000604482015290519081900360640190fd5b601854604080519182526020820183905280517f382fd3516344712a511dcd464ff8e6ab54139d6a28f64087a3253353ee7a56799281900390910190a1601855565b6002612b91612ce8565b61ffff1610612bd8576040805160e560020a62461bcd0281526020600482015260196024820152600080516020615c6d833981519152604482015290519081900360640190fd5b612be28282614939565b5050565b6000611bdb612ce8565b600154600160a060020a03163314612c40576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615c4d833981519152604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a36001805460008054600160a060020a0319908116600160a060020a03841617909155169055565b600254600160a060020a031681565b600054600160a060020a031681565b600954640100000000900463ffffffff1681565b60166020526000908152604090205481565b60075490565b60115460125482565b600080600080612d05615bd6565b600080600080612d13614490565b612d1c8c613956565b612d258b613956565b600160a060020a038c8116908c161415612d89576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f53414d455f534f555243455f54415247455400000000000000000000604482015290519081900360640190fd5b612d91613e01565b6013541415612e38576011604080519081016040529081600082015481526020016001820154815250509450600860008d600160a060020a0316600160a060020a0316815260200190815260200160002060010160009054906101000a900463ffffffff169650600860008c600160a060020a0316600160a060020a0316815260200190815260200160002060010160009054906101000a900463ffffffff169550612e78565b612e40614b6b565b9450612e4b85614d9e565b600c549195509350600160a060020a038d811691161415612e7157839650829550612e78565b8296508395505b612e868c8c8989898f614ec8565b919e919d50909b505050505050505050505050565b612ea36139d5565b60035460028054600160a060020a031916600160a060020a03909216919091179055565b600181565b612ed46139d5565b600080516020615c0d833981519152612eec816148e3565b82612ef681613956565b5050600160a060020a039091166000908152600e6020526040902055565b60135481565b600654600160a060020a031681565b6001612f33612ce8565b61ffff1611612f7a576040805160e560020a62461bcd0281526020600482015260196024820152600080516020615c6d833981519152604482015290519081900360640190fd5b611d73615064565b6007805482908110612f9057fe5b600091825260209091200154600160a060020a0316905081565b600190565b600554600160a060020a031681565b600154600160a060020a031681565b6000612fd76139d5565b612fee600080516020615c0d833981519152613b43565b600554909150600090600160a060020a0316613008611e10565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a4613041816138ae565b604080517f90f58c96000000000000000000000000000000000000000000000000000000008152602060048201529051600160a060020a038316916390f58c9691602480830192600092919082900301818387803b1580156130a257600080fd5b505af11580156130b6573d6000803e3d6000fd5b50505050611bb8612bf0565b601490565b6008602052600090815260409020805460019091015463ffffffff81169060ff640100000000820481169165010000000000810482169166010000000000009091041685565b600061311882613152565b92915050565b600080613129615bd6565b613131614b6b565b80516020909101519094909350915050565b600d54600160a060020a031681565b60008161315e81613956565b5050600160a060020a031660009081526008602052604090205490565b60008060008060008061318c614436565b6002600455613199614490565b886131a381615130565b886131ad816144ee565b886131b7816144ee565b6131bf614546565b8b600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156131fd57600080fd5b505af1158015613211573d6000803e3d6000fd5b505050506040513d602081101561322757600080fd5b505197506132358c8c612882565b50965089871015613290576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f52455455524e5f544f4f5f4c4f570000000000000000000000000000604482015290519081900360640190fd5b601060008d600160a060020a0316600160a060020a0316815260200190815260200160002060009054906101000a9004600160a060020a03169550600560009054906101000a9004600160a060020a0316600160a060020a031663f6b911bc8d338e6040518463ffffffff1660e060020a0281526004018084600160a060020a0316600160a060020a0316815260200183600160a060020a0316600160a060020a031681526020018281526020019350505050600060405180830381600087803b15801561335d57600080fd5b505af1158015613371573d6000803e3d6000fd5b505050600160a060020a03871660009081526008602052604090205461339e91508863ffffffff61458816565b600160a060020a038716600090815260086020908152604080832093909355600e905220546133d3908863ffffffff61458816565b600160a060020a0387166000818152600e60205260409020829055909550600080516020615c2d833981519152141561343957604051339088156108fc029089906000818181858888f19350505050158015613433573d6000803e3d6000fd5b50613444565b6134448633896141fe565b61344c613e05565b61345c888c63ffffffff61458816565b60408051898152602081018890528082018390529051919550600160a060020a0388169133917fbc7d19d505c7ec4db83f3b51f19fb98c4c8a99922e7839d1ee608dfbee29501b919081900360600190a36134b88c85886146d0565b6134cb6007600081548110151561263157fe5b50506001600455509298975050505050505050565b60185481565b60006134f0614436565b60026004557f536f7672796e537761704e6574776f726b00000000000000000000000000000061351f816148e3565b600160a060020a038781169087161415613583576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f53414d455f534f555243455f54415247455400000000000000000000604482015290519081900360640190fd5b600654600160a060020a031615806136c65750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03878116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b1580156135fe57600080fd5b505af1158015613612573d6000803e3d6000fd5b505050506040513d602081101561362857600080fd5b505180156136c65750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b15801561369957600080fd5b505af11580156136ad573d6000803e3d6000fd5b505050506040513d60208110156136c357600080fd5b50515b151561371c576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f4e4f545f57484954454c495354454400000000000000000000000000604482015290519081900360640190fd5b61372987878787876151a1565b6001600455979650505050505050565b600080613744615bd6565b60008061374f614b6b565b925061375a83614d9e565b915091506007600081548110151561376e57fe5b600091825260209091200154600c54600160a060020a03908116911614156137a35763ffffffff8083169550811693506137b2565b63ffffffff8082169550821693505b5050509091565b6137c16139d5565b60095463ffffffff6401000000009091048116908216111561382d576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b6009546040805163ffffffff6801000000000000000090930483168152918316602083015280517f81cd2ffb37dd237c0e4e2a3de5265fcf9deb43d3e7801e80db9f1ccfba7ee6009281900390910190a16009805463ffffffff90921668010000000000000000026bffffffff000000000000000019909216919091179055565b6138b66139d5565b600054600160a060020a038281169116141561391c576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b60018054600160a060020a031916600160a060020a0392909216919091179055565b60145460155482565b600554600160a060020a031690565b600160a060020a0381166000908152600860205260409020600101546601000000000000900460ff161515611bb8576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f5245534552564500000000000000000000000000604482015290519081900360640190fd5b600054600160a060020a03163314611d73576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615c4d833981519152604482015290519081900360640190fd5b613a2d611bbb565b15611d73576040805160e560020a62461bcd02815260206004820152600a60248201527f4552525f41435449564500000000000000000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a038116301415611bb8576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b600160a060020a0381161515611bb8576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b6002546040805160e260020a632ecd14d3028152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b158015613b9357600080fd5b505af1158015613ba7573d6000803e3d6000fd5b505050506040513d6020811015613bbd57600080fd5b505192915050565b60006060600080600080600560009054906101000a9004600160a060020a0316955085600160a060020a0316636d3e313e6040518163ffffffff1660e060020a028152600401600060405180830381600087803b158015613c2557600080fd5b505af1158015613c39573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015613c6257600080fd5b810190808051640100000000811115613c7a57600080fd5b82016020810184811115613c8d57600080fd5b8151856020820283011164010000000082111715613caa57600080fd5b505080516007549199501597509550600094505050505b8282101561287a578315613d405785600160a060020a0316639cbf9e366040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015613d0d57600080fd5b505af1158015613d21573d6000803e3d6000fd5b505050506040513d6020811015613d3757600080fd5b50519050613d5b565b8482815181101515613d4e57fe5b9060200190602002015190505b80600f6000600785815481101515613d6f57fe5b600091825260208083209190910154600160a060020a03908116845290830193909352604090910190208054600160a060020a031916929091169190911790556007805483908110613dbd57fe5b6000918252602080832090910154600160a060020a038481168452601090925260409092208054600160a060020a0319169190921617905560019190910190613cc1565b4290565b60408051808201909152601154815260125460208201526000908190613e2a90614d9e565b600c54600160a060020a039081166000908152600860205260408082206001908101805463ffffffff97881663ffffffff1991821617909155600d54909416835291200180549290931691161790555050565b6002546040805160e260020a632ecd14d30281527f5377617053657474696e6773000000000000000000000000000000000000000060048201529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b158015613eec57600080fd5b505af1158015613f00573d6000803e3d6000fd5b505050506040513d6020811015613f1657600080fd5b5051604080517fe8f627640000000000000000000000000000000000000000000000000000000081529051600160a060020a039092169163e8f62764916004808201926020929091908290030181600087803b158015613f7557600080fd5b505af1158015613f89573d6000803e3d6000fd5b505050506040513d6020811015613f9f57600080fd5b5051905090565b6002546040805160e260020a632ecd14d30281527f5377617053657474696e6773000000000000000000000000000000000000000060048201529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561401557600080fd5b505af1158015614029573d6000803e3d6000fd5b505050506040513d602081101561403f57600080fd5b5051604080517fb9cffa3e0000000000000000000000000000000000000000000000000000000081529051600160a060020a039092169163b9cffa3e916004808201926020929091908290030181600087803b158015613f7557600080fd5b6002546040805160e260020a632ecd14d30281527f5377617053657474696e6773000000000000000000000000000000000000000060048201529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561410d57600080fd5b505af1158015614121573d6000803e3d6000fd5b505050506040513d602081101561413757600080fd5b5051604080517f99a752b50000000000000000000000000000000000000000000000000000000081529051600160a060020a03909216916399a752b5916004808201926020929091908290030181600087803b158015613f7557600080fd5b6000828201838110156141f3576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b8091505b5092915050565b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19909316929092179091526142b0908490615296565b505050565b600030600160a060020a0316600560009054906101000a9004600160a060020a0316600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561431457600080fd5b505af1158015614328573d6000803e3d6000fd5b505050506040513d602081101561433e57600080fd5b5051600160a060020a031614905090565b60008083151561436257600091506141f7565b5082820282848281151561437257fe5b04146141f3576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b600080808311614422576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f4449564944455f42595f5a45524f0000000000000000000000000000604482015290519081900360640190fd5b828481151561442d57fe5b04949350505050565b600454600114611d73576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5245454e5452414e4359000000000000000000000000000000000000604482015290519081900360640190fd5b614498611bbb565b1515611d73576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f494e4143544956450000000000000000000000000000000000000000604482015290519081900360640190fd5b60008111611bb8576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5a45524f5f56414c5545000000000000000000000000000000000000604482015290519081900360640190fd5b60075460005b81811015612be25761458060078281548110151561456657fe5b600091825260209091200154600160a060020a03166147cd565b60010161454c565b6000818310156145e2576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b604080517f7472616e7366657246726f6d28616464726573732c616464726573732c75696e81527f74323536290000000000000000000000000000000000000000000000000000006020808301919091528251918290036025018220600160a060020a038088166024850152861660448401526064808401869052845180850390910181526084909301909352810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19909316929092179091526146ca908590615296565b50505050565b600160a060020a038082166000818152600e6020908152604091829020548251908152908101869052815192938716927f77f29993cf2c084e726f7e802da0719d6a0ade3e204badc7a3ffd57ecb768c24929181900390910190a3505050565b614738615bd6565b61474485858585615324565b805160208083015160408051938452918301528051929350600160a060020a0380881693908916927f77f29993cf2c084e726f7e802da0719d6a0ade3e204badc7a3ffd57ecb768c2492908290030190a35050505050565b6147a46139d5565b826147ae81613ae3565b826147b881613ae3565b836147c281613a82565b61287a8686866141fe565b806147d781613956565b600160a060020a038216600080516020615c2d833981519152141561481757600160a060020a038216600090815260086020526040902030319055612be2565b600160a060020a0382166000818152600a602090815260408083205481517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015291516148c695919491936370a0823193602480820194929392918390030190829087803b15801561488e57600080fd5b505af11580156148a2573d6000803e3d6000fd5b505050506040513d60208110156148b857600080fd5b50519063ffffffff61458816565b600160a060020a0383166000908152600860205260409020555050565b6148ec81613b43565b600160a060020a03163314611bb8576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615c4d833981519152604482015290519081900360640190fd5b60006149436139d5565b61494b613a25565b8261495581613ae3565b8361495f81613a82565b83614969816153ec565b600554600160a060020a038781169116148015906149ad5750600160a060020a0386166000908152600860205260409020600101546601000000000000900460ff16155b1515614a03576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f5245534552564500000000000000000000000000604482015290519081900360640190fd5b60095463ffffffff908116620f42400381169086161115614a6e576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b61ffff614a79612ce8565b61ffff1610614ac0576040805160e560020a62461bcd0281526020600482015260196024820152600080516020615c6d833981519152604482015290519081900360640190fd5b505050600160a060020a0390921660008181526008602052604081208181556001908101805466ff0000000000001963ffffffff80881663ffffffff1993841617919091166601000000000000179092556007805493840181559093527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6889091018054600160a060020a03191690931790925560098054808416909401909216921691909117905550565b614b73615bd6565b600080600080614b81615bd6565b614b89615bd6565b600b54600c54600d54604080517fb1772d7a000000000000000000000000000000000000000000000000000000008152600160a060020a039384166004820152918316602483015251600093849384938493919092169163b1772d7a91604480830192606092919082900301818787803b158015614c0657600080fd5b505af1158015614c1a573d6000803e3d6000fd5b505050506040513d6060811015614c3057600080fd5b5080516020820151604090920151601354919c50919a50909850881115614c6d5760408051908101604052808b81526020018a8152509a50614d91565b601354614c78613e01565b039650861515614ca05760408051808201909152601154815260125460208201529a50614d91565b6102588710614cc75760408051808201909152601454815260155460208201529a50614d91565b604080518082018252601154815260125460208083019182528351808501909452601454808552601554918501919091529051919850919650614d0f9163ffffffff61434f16565b60208601518751919550614d29919063ffffffff61434f16565b9250614d53614d3e858963ffffffff61434f16565b611c31856102588b900363ffffffff61434f16565b9150614d82610258614d768760200151896020015161434f90919063ffffffff16565b9063ffffffff61434f16565b9050614d8e8282615461565b9a505b5050505050505050505090565b600c54600160a060020a03166000818152600e6020526040812054909182919082908190614dcb90611bef565b600d54909250614de390600160a060020a0316611bef565b9050614e0e7f536f7672796e53776170466f726d756c61000000000000000000000000000000613b43565b600160a060020a031663a11aa1b4614e2d85601463ffffffff61434f16565b885160208a01516040805160e060020a63ffffffff87160281526004810194909452602484018890526044840187905260648401929092526084830152805160a4808401938290030181600087803b158015614e8857600080fd5b505af1158015614e9c573d6000803e3d6000fd5b505050506040513d6040811015614eb257600080fd5b5080516020909101519095509350505050915091565b60008080808063ffffffff89161515614f0057600160a060020a038b1660009081526008602052604090206001015463ffffffff1698505b63ffffffff88161515614f3257600160a060020a038a1660009081526008602052604090206001015463ffffffff1697505b614f3b8b611bef565b9150614f468a611bef565b9050614f717f536f7672796e53776170466f726d756c61000000000000000000000000000000613b43565b604080517f94491fab0000000000000000000000000000000000000000000000000000000081526004810185905263ffffffff808d166024830152604482018590528b166064820152608481018990529051600160a060020a0392909216916394491fab9160a4808201926020929091908290030181600087803b158015614ff857600080fd5b505af115801561500c573d6000803e3d6000fd5b505050506040513d602081101561502257600080fd5b5051945061502f856154b6565b935061504284611c318c8c8c8c8b6154e6565b9250615054858463ffffffff61458816565b9450505096509650969350505050565b61506c6139d5565b6000615076612ce8565b61ffff16116150bd576040805160e560020a62461bcd0281526020600482015260196024820152600080516020615c6d833981519152604482015290519081900360640190fd5b600560009054906101000a9004600160a060020a0316600160a060020a03166379ba50976040518163ffffffff1660e060020a028152600401600060405180830381600087803b15801561511057600080fd5b505af1158015615124573d6000803e3d6000fd5b50505050611d73614546565b600160a060020a03818116600090815260106020526040902054161515611bb8576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f494e56414c49445f504f4f4c5f544f4b454e00000000000000000000604482015290519081900360640190fd5b60008060006151ae614490565b876151b881613956565b876151c281613956565b6151cd8a8a8a6155bf565b9094509250600160a060020a038916600080516020615c2d833981519152141561522d57604051600160a060020a0387169085156108fc029086906000818181858888f19350505050158015615227573d6000803e3d6000fd5b50615238565b6152388987866141fe565b6152488a8a898b8888600061589c565b600160a060020a03808b16600090815260086020526040808220600190810154938d16835291200154615288918c918c9163ffffffff9081169116615929565b509198975050505050505050565b61529e615bed565b602060405190810160405280600181525090506020818351602085016000875af18015156152cb57600080fd5b50805115156142b0576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b61532c615bd6565b60008061533887611bef565b915061534386611bef565b905063ffffffff8516151561537757600160a060020a03871660009081526008602052604090206001015463ffffffff1694505b63ffffffff841615156153a957600160a060020a03861660009081526008602052604090206001015463ffffffff1693505b60408051808201909152806153c78363ffffffff808a169061434f16565b81526020016153df8463ffffffff8089169061434f16565b9052979650505050505050565b60008163ffffffff1611801561540b5750620f424063ffffffff821611155b1515611bb8576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b615469615bd6565b615471615bd6565b8284106154895761548284846159ba565b91506141f7565b61549383856159ba565b604080518082019091526020808301518252825190820152925090505092915050565b60095460009061311890620f424090611d1190859068010000000000000000900463ffffffff9081169061434f16565b600d546000908190600160a060020a038881169116141561555457600c54600160a060020a039081166000908152600e6020908152604080832054600d5490941683529091205486519187015160185461554d949363ffffffff808d1693908c1692615a77565b90506155a3565b600c54600160a060020a039081166000908152600e6020908152604080832054600d549094168352909120548651918701516018546155a0949363ffffffff808c1693908d1692615a77565b90505b6155b4620f4240611d11858461434f565b979650505050505050565b60008060006155cc615bd6565b6000806000806155da615ae3565b955095506155ed8b8b600080898e614ec8565b9195509350915083151561564b576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b6156548a613152565b90508084106156ad576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f5441524745545f414d4f554e545f544f4f5f48494748000000000000604482015290519081900360640190fd5b600160a060020a038b16600080516020615c2d833981519152141561572857348914615723576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b6157f2565b3415801561579c57508861579961573e8d613152565b8d600160a060020a03166370a08231306040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b15801561488e57600080fd5b10155b15156157f2576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b6157fb8b6147cd565b61580b818563ffffffff61458816565b600160a060020a038b16600090815260086020908152604080832093909355600e90522054615840908463ffffffff61419616565b600160a060020a038b166000908152600e6020526040902055851561588b57600c54600d5461587e91600160a060020a039081169116600080615324565b8051601455602001516015555b509199919850909650505050505050565b7f800000000000000000000000000000000000000000000000000000000000000082106158c557fe5b6040805185815260208101859052808201849052606081018390529051600160a060020a038088169289821692918b16917f82886ccc747026f86399e87d5f3874c5d198ec2498833553651f63a13f5dbd0c9181900360800190a450505050505050565b60008061593886868686614730565b61594185612686565b915081600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561598157600080fd5b505af1158015615995573d6000803e3d6000fd5b505050506040513d60208110156159ab57600080fd5b5051905061287a8282876146d0565b6159c2615bd6565b7314484bfeebc29f863424b06f3529a051a31be599821115615a1457604080518082019091526c0c9f2c9cd04674edea400000008082526020820190850484811515615a0a57fe5b0490529050613118565b6c0c9f2c9cd04674edea40000000831115615a615760408051908101604052806c0c9f2c9cd04674edea400000008152602001846c0c9f2c9cd04674edea400000008502811515615a0a57fe5b5060408051808201909152918252602082015290565b60008080615a8f87614d768c8963ffffffff61434f16565b9150615aa588614d768b8863ffffffff61434f16565b905081811115615ad157615aca81611d116014614d768684038963ffffffff61434f16565b9250615ad6565b600092505b5050979650505050505050565b6000615aed615bd6565b6000615af7615bd6565b615aff615bd6565b615b07613e01565b9250826013541415615b355760408051808201909152601154815260125460208201526000955093506137b2565b615b3d614b6b565b6040805180820190915260115480825260125460208301528251929450909250148015615b71575080602001518260200151145b15615b8257600082945094506137b2565b815160115560208201516012556013839055615b9c613e05565b50600194909350915050565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b604080518082019091526000808252602082015290565b60206040519081016040528060019060208202803883395091929150505600536f7672796e53776170436f6e76657274657255706772616465720000000000000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee4552525f4143434553535f44454e4945440000000000000000000000000000004552525f494e56414c49445f524553455256455f434f554e5400000000000000a165627a7a723058201181ee02996552a31334ccf382cd6acecf1cbd8594a097439ae7f82d05518a6c0029 \ No newline at end of file diff --git a/solidity/build/LiquidityPoolV2ConverterAnchorFactory.bin b/solidity/build/LiquidityPoolV2ConverterAnchorFactory.bin index 6f943b4..7885e6c 100644 --- a/solidity/build/LiquidityPoolV2ConverterAnchorFactory.bin +++ b/solidity/build/LiquidityPoolV2ConverterAnchorFactory.bin @@ -1 +1 @@ -608060405234801561001057600080fd5b50612558806100206000396000f30060806040526004361061004b5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416633e8ff43f8114610050578063a9fd4a2a1461007c575b600080fd5b34801561005c57600080fd5b50610065610141565b6040805161ffff9092168252519081900360200190f35b34801561008857600080fd5b506040805160206004803580820135601f810184900484028501840190955284845261011894369492936024939284019190819084018382808284375050604080516020601f89358b018035918201839004830284018301909452808352979a9998810197919650918201945092508291508401838280828437509497505050923560ff16935061014692505050565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b600290565b6000808484846101546102dc565b60ff82166040820152606080825284519082015283518190602080830191608084019188019080838360005b83811015610198578181015183820152602001610180565b50505050905090810190601f1680156101c55780820380516001836020036101000a031916815260200191505b50838103825285518152855160209182019187019080838360005b838110156101f85781810151838201526020016101e0565b50505050905090810190601f1680156102255780820380516001836020036101000a031916815260200191505b5095505050505050604051809103906000f080158015610249573d6000803e3d6000fd5b50604080517ff2fde38b000000000000000000000000000000000000000000000000000000008152336004820152905191925073ffffffffffffffffffffffffffffffffffffffff83169163f2fde38b9160248082019260009290919082900301818387803b1580156102bb57600080fd5b505af11580156102cf573d6000803e3d6000fd5b5092979650505050505050565b604051612240806102ed83390190560060806040523480156200001157600080fd5b506040516200224038038062002240833981016040908152815160208301519183015160008054600160a060020a03191633178155918401805190949390930192909110620000c157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4552525f494e56414c49445f4e414d4500000000000000000000000000000000604482015290519081900360640190fd5b81516000106200013257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4552525f494e56414c49445f53594d424f4c0000000000000000000000000000604482015290519081900360640190fd5b8251620001479060029060208601906200017b565b5081516200015d9060039060208501906200017b565b506004805460ff191660ff9290921691909117905550620002209050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001be57805160ff1916838001178555620001ee565b82800160010185558215620001ee579182015b82811115620001ee578251825591602001919060010190620001d1565b50620001fc92915062000200565b5090565b6200021d91905b80821115620001fc576000815560010162000207565b90565b61201080620002306000396000f300608060405260043610620000ad5763ffffffff60e060020a60003504166306fdde038114620000b2578063313ce56714620001425780635e35359e14620001705780636d3e313e146200019f57806379ba509714620002095780638da5cb5b146200022157806395d89b4114620002555780639cbf9e36146200026d578063c6c3bbe61462000285578063d4ee1d9014620002b2578063f2fde38b14620002ca578063f6b911bc14620002ee575b600080fd5b348015620000bf57600080fd5b50620000ca6200031b565b6040805160208082528351818301528351919283929083019185019080838360005b8381101562000106578181015183820152602001620000ec565b50505050905090810190601f168015620001345780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156200014f57600080fd5b506200015a620003aa565b6040805160ff9092168252519081900360200190f35b3480156200017d57600080fd5b506200019d600160a060020a0360043581169060243516604435620003b3565b005b348015620001ac57600080fd5b50620001b7620003f6565b60408051602080825283518183015283519192839290830191858101910280838360005b83811015620001f5578181015183820152602001620001db565b505050509050019250505060405180910390f35b3480156200021657600080fd5b506200019d6200045a565b3480156200022e57600080fd5b50620002396200052e565b60408051600160a060020a039092168252519081900360200190f35b3480156200026257600080fd5b50620000ca6200053d565b3480156200027a57600080fd5b50620002396200059b565b3480156200029257600080fd5b506200019d600160a060020a036004358116906024351660443562000882565b348015620002bf57600080fd5b50620002396200090e565b348015620002d757600080fd5b506200019d600160a060020a03600435166200091d565b348015620002fb57600080fd5b506200019d600160a060020a0360043581169060243516604435620009bd565b6002805460408051602060018416156101000260001901909316849004601f81018490048402820184019092528181529291830182828015620003a25780601f106200037657610100808354040283529160200191620003a2565b820191906000526020600020905b8154815290600101906020018083116200038457829003601f168201915b505050505081565b60045460ff1681565b620003bd62000a2b565b82620003c98162000a90565b82620003d58162000a90565b83620003e18162000af4565b620003ee86868662000b56565b505050505050565b606060058054806020026020016040519081016040528092919081815260200182805480156200045057602002820191906000526020600020905b8154600160a060020a0316815260019091019060200180831162000431575b5050505050905090565b600154600160a060020a03163314620004bd576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600054600160a060020a031681565b6003805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015620003a25780601f106200037657610100808354040283529160200191620003a2565b60006060806000620005ac62000a2b565b600580541062000606576040805160e560020a62461bcd02815260206004820152601560248201527f4552525f4d41585f4c494d49545f524541434845440000000000000000000000604482015290519081900360640190fd5b60028054604080516020601f60001961010060018716150201909416859004938401819004810282018101909252828152620006a89390929091830182828015620006955780601f10620006695761010080835404028352916020019162000695565b820191906000526020600020905b8154815290600101906020018083116200067757829003601f168201915b5050600554600101925062000c12915050565b6003805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529396506200070e939291830182828015620006955780601f10620006695761010080835404028352916020019162000695565b6004549092508390839060ff166200072562000d8c565b60ff82166040820152606080825284519082015283518190602080830191608084019188019080838360005b838110156200076b57818101518382015260200162000751565b50505050905090810190601f168015620007995780820380516001836020036101000a031916815260200191505b50838103825285518152855160209182019187019080838360005b83811015620007ce578181015183820152602001620007b4565b50505050905090810190601f168015620007fc5780820380516001836020036101000a031916815260200191505b5095505050505050604051809103906000f08015801562000821573d6000803e3d6000fd5b50600580546001810182556000919091527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a038316179055949350505050565b6200088c62000a2b565b82600160a060020a031663867904b483836040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050600060405180830381600087803b158015620008f057600080fd5b505af115801562000905573d6000803e3d6000fd5b50505050505050565b600154600160a060020a031681565b6200092762000a2b565b600054600160a060020a03828116911614156200098e576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b620009c762000a2b565b82600160a060020a031663a24835d183836040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050600060405180830381600087803b158015620008f057600080fd5b600054600160a060020a0316331462000a8e576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b600160a060020a038116151562000af1576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b600160a060020a03811630141562000af1576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009093169290921790915262000c0d90849062000cfa565b505050565b606082827f30000000000000000000000000000000000000000000000000000000000000007f01000000000000000000000000000000000000000000000000000000000000009004016040516020018083805190602001908083835b6020831062000c8f5780518252601f19909201916020918201910162000c6e565b6001836020036101000a0380198251168184511680821785525050505050509050018260ff1660ff167f010000000000000000000000000000000000000000000000000000000000000002815260010192505050604051602081830303815290604052905092915050565b62000d0462000d9d565b602060405190810160405280600181525090506020818351602085016000875af180151562000d3257600080fd5b508051151562000c0d576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b6040516112288062000dbd83390190565b6020604051908101604052806001906020820280388339509192915050560060806040526008805460ff191660011790553480156200001e57600080fd5b506040516200122838038062001228833981016040908152815160208301519183015160008054600160a060020a0319163317815591840180519094939093019290918491849184918110620000d557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4552525f494e56414c49445f4e414d4500000000000000000000000000000000604482015290519081900360640190fd5b82516000106200014657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4552525f494e56414c49445f53594d424f4c0000000000000000000000000000604482015290519081900360640190fd5b83516200015b906002906020870190620001a8565b50825162000171906003906020860190620001a8565b506004805460ff191660ff9390931692909217909155600581905533600090815260066020526040902055506200024d9350505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001eb57805160ff19168380011785556200021b565b828001600101855582156200021b579182015b828111156200021b578251825591602001919060010190620001fe565b50620002299291506200022d565b5090565b6200024a91905b8082111562000229576000815560010162000234565b90565b610fcb806200025d6000396000f3006080604052600436106101065763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461010b578063095ea7b3146101955780631608f18f146101cd57806318160ddd146101e957806323b872dd14610210578063313ce5671461023a57806354fd4d50146102655780635e35359e1461029157806370a08231146102bb57806379ba5097146102dc578063867904b4146102f15780638da5cb5b1461031557806395d89b4114610346578063a24835d11461035b578063a9059cbb1461037f578063bef97c87146103a3578063d4ee1d90146103b8578063dd62ed3e146103cd578063f2fde38b146103f4575b600080fd5b34801561011757600080fd5b50610120610415565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015a578181015183820152602001610142565b50505050905090810190601f1680156101875780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101a157600080fd5b506101b9600160a060020a03600435166024356104a0565b604080519115158252519081900360200190f35b3480156101d957600080fd5b506101e76004351515610598565b005b3480156101f557600080fd5b506101fe6105b2565b60408051918252519081900360200190f35b34801561021c57600080fd5b506101b9600160a060020a03600435811690602435166044356105b8565b34801561024657600080fd5b5061024f6105df565b6040805160ff9092168252519081900360200190f35b34801561027157600080fd5b5061027a6105e8565b6040805161ffff9092168252519081900360200190f35b34801561029d57600080fd5b506101e7600160a060020a03600435811690602435166044356105ed565b3480156102c757600080fd5b506101fe600160a060020a0360043516610626565b3480156102e857600080fd5b506101e7610638565b3480156102fd57600080fd5b506101e7600160a060020a036004351660243561070b565b34801561032157600080fd5b5061032a6107ed565b60408051600160a060020a039092168252519081900360200190f35b34801561035257600080fd5b506101206107fc565b34801561036757600080fd5b506101e7600160a060020a0360043516602435610857565b34801561038b57600080fd5b506101b9600160a060020a036004351660243561091d565b3480156103af57600080fd5b506101b9610942565b3480156103c457600080fd5b5061032a61094b565b3480156103d957600080fd5b506101fe600160a060020a036004358116906024351661095a565b34801561040057600080fd5b506101e7600160a060020a0360043516610977565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156104985780601f1061046d57610100808354040283529160200191610498565b820191906000526020600020905b81548152906001019060200180831161047b57829003601f168201915b505050505081565b6000826104ac81610a14565b8215806104da5750336000908152600760209081526040808320600160a060020a0388168452909152902054155b1515610530576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b336000818152600760209081526040808320600160a060020a03891680855290835292819020879055805187815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b6105a0610a77565b6008805460ff19169115919091179055565b60055481565b60006105c2610adb565b6105cd848484610b37565b15156105d557fe5b5060019392505050565b60045460ff1681565b600481565b6105f5610a77565b826105ff81610a14565b8261060981610a14565b8361061381610c48565b61061e868686610ca9565b505050505050565b60066020526000908152604090205481565b600154600160a060020a0316331461069a576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b610713610a77565b8161071d81610a14565b8261072781610c48565b60055461073a908463ffffffff610d6316565b600555600160a060020a038416600090815260066020526040902054610766908463ffffffff610d6316565b600160a060020a03851660009081526006602090815260409182902092909255805185815290517f9386c90217c323f58030f9dadcbc938f807a940f4ff41cd4cead9562f5da7dc3929181900390910190a1604080518481529051600160a060020a03861691600091600080516020610f808339815191529181900360200190a350505050565b600054600160a060020a031681565b6003805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104985780601f1061046d57610100808354040283529160200191610498565b61085f610a77565b600160a060020a038216600090815260066020526040902054610888908263ffffffff610dc716565b600160a060020a0383166000908152600660205260409020556005546108b4908263ffffffff610dc716565b600555604080518281529051600091600160a060020a03851691600080516020610f808339815191529181900360200190a36040805182815290517f9a1b418bc061a5d80270261562e6986a35d995f8051145f277be16103abd34539181900360200190a15050565b6000610927610adb565b6109318383610e27565b151561093957fe5b50600192915050565b60085460ff1681565b600154600160a060020a031681565b600760209081526000928352604080842090915290825290205481565b61097f610a77565b600054600160a060020a03828116911614156109e5576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600160a060020a0381161515610a74576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b600054600160a060020a03163314610ad9576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b60085460ff161515610ad9576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5452414e53464552535f44495341424c454400000000000000000000604482015290519081900360640190fd5b600083610b4381610a14565b83610b4d81610a14565b600160a060020a0386166000908152600760209081526040808320338452909152902054610b81908563ffffffff610dc716565b600160a060020a038716600081815260076020908152604080832033845282528083209490945591815260069091522054610bc2908563ffffffff610dc716565b600160a060020a038088166000908152600660205260408082209390935590871681522054610bf7908563ffffffff610d6316565b600160a060020a0380871660008181526006602090815260409182902094909455805188815290519193928a1692600080516020610f8083398151915292918290030190a350600195945050505050565b600160a060020a038116301415610a74576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090931692909217909152610d5e908490610ed2565b505050565b600082820183811015610dc0576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b9392505050565b600081831015610e21576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b600082610e3381610a14565b33600090815260066020526040902054610e53908463ffffffff610dc716565b3360009081526006602052604080822092909255600160a060020a03861681522054610e85908463ffffffff610d6316565b600160a060020a038516600081815260066020908152604091829020939093558051868152905191923392600080516020610f808339815191529281900390910190a35060019392505050565b610eda610f60565b602060405190810160405280600181525090506020818351602085016000875af1801515610f0757600080fd5b5080511515610d5e576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b60206040519081016040528060019060208202803883395091929150505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820deacababea352373a412cdf1cc7a9cce57f1406f5d9d4e2e52f9ad7258ae10260029a165627a7a7230582013ca9425340763bc7bea18fbee2602a91994a81c00dc98d118ac2c3574b78db00029a165627a7a72305820b68e7ed11899492a61a1ca67c4d950a92069ebee1ff293dd39e98326b1d563170029 \ No newline at end of file +608060405234801561001057600080fd5b50612558806100206000396000f30060806040526004361061004b5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416633e8ff43f8114610050578063a9fd4a2a1461007c575b600080fd5b34801561005c57600080fd5b50610065610141565b6040805161ffff9092168252519081900360200190f35b34801561008857600080fd5b506040805160206004803580820135601f810184900484028501840190955284845261011894369492936024939284019190819084018382808284375050604080516020601f89358b018035918201839004830284018301909452808352979a9998810197919650918201945092508291508401838280828437509497505050923560ff16935061014692505050565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b600290565b6000808484846101546102dc565b60ff82166040820152606080825284519082015283518190602080830191608084019188019080838360005b83811015610198578181015183820152602001610180565b50505050905090810190601f1680156101c55780820380516001836020036101000a031916815260200191505b50838103825285518152855160209182019187019080838360005b838110156101f85781810151838201526020016101e0565b50505050905090810190601f1680156102255780820380516001836020036101000a031916815260200191505b5095505050505050604051809103906000f080158015610249573d6000803e3d6000fd5b50604080517ff2fde38b000000000000000000000000000000000000000000000000000000008152336004820152905191925073ffffffffffffffffffffffffffffffffffffffff83169163f2fde38b9160248082019260009290919082900301818387803b1580156102bb57600080fd5b505af11580156102cf573d6000803e3d6000fd5b5092979650505050505050565b604051612240806102ed83390190560060806040523480156200001157600080fd5b506040516200224038038062002240833981016040908152815160208301519183015160008054600160a060020a03191633178155918401805190949390930192909110620000c157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4552525f494e56414c49445f4e414d4500000000000000000000000000000000604482015290519081900360640190fd5b81516000106200013257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4552525f494e56414c49445f53594d424f4c0000000000000000000000000000604482015290519081900360640190fd5b8251620001479060029060208601906200017b565b5081516200015d9060039060208501906200017b565b506004805460ff191660ff9290921691909117905550620002209050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001be57805160ff1916838001178555620001ee565b82800160010185558215620001ee579182015b82811115620001ee578251825591602001919060010190620001d1565b50620001fc92915062000200565b5090565b6200021d91905b80821115620001fc576000815560010162000207565b90565b61201080620002306000396000f300608060405260043610620000ad5763ffffffff60e060020a60003504166306fdde038114620000b2578063313ce56714620001425780635e35359e14620001705780636d3e313e146200019f57806379ba509714620002095780638da5cb5b146200022157806395d89b4114620002555780639cbf9e36146200026d578063c6c3bbe61462000285578063d4ee1d9014620002b2578063f2fde38b14620002ca578063f6b911bc14620002ee575b600080fd5b348015620000bf57600080fd5b50620000ca6200031b565b6040805160208082528351818301528351919283929083019185019080838360005b8381101562000106578181015183820152602001620000ec565b50505050905090810190601f168015620001345780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156200014f57600080fd5b506200015a620003aa565b6040805160ff9092168252519081900360200190f35b3480156200017d57600080fd5b506200019d600160a060020a0360043581169060243516604435620003b3565b005b348015620001ac57600080fd5b50620001b7620003f6565b60408051602080825283518183015283519192839290830191858101910280838360005b83811015620001f5578181015183820152602001620001db565b505050509050019250505060405180910390f35b3480156200021657600080fd5b506200019d6200045a565b3480156200022e57600080fd5b50620002396200052e565b60408051600160a060020a039092168252519081900360200190f35b3480156200026257600080fd5b50620000ca6200053d565b3480156200027a57600080fd5b50620002396200059b565b3480156200029257600080fd5b506200019d600160a060020a036004358116906024351660443562000882565b348015620002bf57600080fd5b50620002396200090e565b348015620002d757600080fd5b506200019d600160a060020a03600435166200091d565b348015620002fb57600080fd5b506200019d600160a060020a0360043581169060243516604435620009bd565b6002805460408051602060018416156101000260001901909316849004601f81018490048402820184019092528181529291830182828015620003a25780601f106200037657610100808354040283529160200191620003a2565b820191906000526020600020905b8154815290600101906020018083116200038457829003601f168201915b505050505081565b60045460ff1681565b620003bd62000a2b565b82620003c98162000a90565b82620003d58162000a90565b83620003e18162000af4565b620003ee86868662000b56565b505050505050565b606060058054806020026020016040519081016040528092919081815260200182805480156200045057602002820191906000526020600020905b8154600160a060020a0316815260019091019060200180831162000431575b5050505050905090565b600154600160a060020a03163314620004bd576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600054600160a060020a031681565b6003805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015620003a25780601f106200037657610100808354040283529160200191620003a2565b60006060806000620005ac62000a2b565b600580541062000606576040805160e560020a62461bcd02815260206004820152601560248201527f4552525f4d41585f4c494d49545f524541434845440000000000000000000000604482015290519081900360640190fd5b60028054604080516020601f60001961010060018716150201909416859004938401819004810282018101909252828152620006a89390929091830182828015620006955780601f10620006695761010080835404028352916020019162000695565b820191906000526020600020905b8154815290600101906020018083116200067757829003601f168201915b5050600554600101925062000c12915050565b6003805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529396506200070e939291830182828015620006955780601f10620006695761010080835404028352916020019162000695565b6004549092508390839060ff166200072562000d8c565b60ff82166040820152606080825284519082015283518190602080830191608084019188019080838360005b838110156200076b57818101518382015260200162000751565b50505050905090810190601f168015620007995780820380516001836020036101000a031916815260200191505b50838103825285518152855160209182019187019080838360005b83811015620007ce578181015183820152602001620007b4565b50505050905090810190601f168015620007fc5780820380516001836020036101000a031916815260200191505b5095505050505050604051809103906000f08015801562000821573d6000803e3d6000fd5b50600580546001810182556000919091527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a038316179055949350505050565b6200088c62000a2b565b82600160a060020a031663867904b483836040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050600060405180830381600087803b158015620008f057600080fd5b505af115801562000905573d6000803e3d6000fd5b50505050505050565b600154600160a060020a031681565b6200092762000a2b565b600054600160a060020a03828116911614156200098e576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b620009c762000a2b565b82600160a060020a031663a24835d183836040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050600060405180830381600087803b158015620008f057600080fd5b600054600160a060020a0316331462000a8e576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b600160a060020a038116151562000af1576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b600160a060020a03811630141562000af1576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009093169290921790915262000c0d90849062000cfa565b505050565b606082827f30000000000000000000000000000000000000000000000000000000000000007f01000000000000000000000000000000000000000000000000000000000000009004016040516020018083805190602001908083835b6020831062000c8f5780518252601f19909201916020918201910162000c6e565b6001836020036101000a0380198251168184511680821785525050505050509050018260ff1660ff167f010000000000000000000000000000000000000000000000000000000000000002815260010192505050604051602081830303815290604052905092915050565b62000d0462000d9d565b602060405190810160405280600181525090506020818351602085016000875af180151562000d3257600080fd5b508051151562000c0d576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b6040516112288062000dbd83390190565b6020604051908101604052806001906020820280388339509192915050560060806040526008805460ff191660011790553480156200001e57600080fd5b506040516200122838038062001228833981016040908152815160208301519183015160008054600160a060020a0319163317815591840180519094939093019290918491849184918110620000d557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4552525f494e56414c49445f4e414d4500000000000000000000000000000000604482015290519081900360640190fd5b82516000106200014657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4552525f494e56414c49445f53594d424f4c0000000000000000000000000000604482015290519081900360640190fd5b83516200015b906002906020870190620001a8565b50825162000171906003906020860190620001a8565b506004805460ff191660ff9390931692909217909155600581905533600090815260066020526040902055506200024d9350505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001eb57805160ff19168380011785556200021b565b828001600101855582156200021b579182015b828111156200021b578251825591602001919060010190620001fe565b50620002299291506200022d565b5090565b6200024a91905b8082111562000229576000815560010162000234565b90565b610fcb806200025d6000396000f3006080604052600436106101065763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461010b578063095ea7b3146101955780631608f18f146101cd57806318160ddd146101e957806323b872dd14610210578063313ce5671461023a57806354fd4d50146102655780635e35359e1461029157806370a08231146102bb57806379ba5097146102dc578063867904b4146102f15780638da5cb5b1461031557806395d89b4114610346578063a24835d11461035b578063a9059cbb1461037f578063bef97c87146103a3578063d4ee1d90146103b8578063dd62ed3e146103cd578063f2fde38b146103f4575b600080fd5b34801561011757600080fd5b50610120610415565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015a578181015183820152602001610142565b50505050905090810190601f1680156101875780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101a157600080fd5b506101b9600160a060020a03600435166024356104a0565b604080519115158252519081900360200190f35b3480156101d957600080fd5b506101e76004351515610598565b005b3480156101f557600080fd5b506101fe6105b2565b60408051918252519081900360200190f35b34801561021c57600080fd5b506101b9600160a060020a03600435811690602435166044356105b8565b34801561024657600080fd5b5061024f6105df565b6040805160ff9092168252519081900360200190f35b34801561027157600080fd5b5061027a6105e8565b6040805161ffff9092168252519081900360200190f35b34801561029d57600080fd5b506101e7600160a060020a03600435811690602435166044356105ed565b3480156102c757600080fd5b506101fe600160a060020a0360043516610626565b3480156102e857600080fd5b506101e7610638565b3480156102fd57600080fd5b506101e7600160a060020a036004351660243561070b565b34801561032157600080fd5b5061032a6107ed565b60408051600160a060020a039092168252519081900360200190f35b34801561035257600080fd5b506101206107fc565b34801561036757600080fd5b506101e7600160a060020a0360043516602435610857565b34801561038b57600080fd5b506101b9600160a060020a036004351660243561091d565b3480156103af57600080fd5b506101b9610942565b3480156103c457600080fd5b5061032a61094b565b3480156103d957600080fd5b506101fe600160a060020a036004358116906024351661095a565b34801561040057600080fd5b506101e7600160a060020a0360043516610977565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156104985780601f1061046d57610100808354040283529160200191610498565b820191906000526020600020905b81548152906001019060200180831161047b57829003601f168201915b505050505081565b6000826104ac81610a14565b8215806104da5750336000908152600760209081526040808320600160a060020a0388168452909152902054155b1515610530576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b336000818152600760209081526040808320600160a060020a03891680855290835292819020879055805187815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b6105a0610a77565b6008805460ff19169115919091179055565b60055481565b60006105c2610adb565b6105cd848484610b37565b15156105d557fe5b5060019392505050565b60045460ff1681565b600481565b6105f5610a77565b826105ff81610a14565b8261060981610a14565b8361061381610c48565b61061e868686610ca9565b505050505050565b60066020526000908152604090205481565b600154600160a060020a0316331461069a576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b610713610a77565b8161071d81610a14565b8261072781610c48565b60055461073a908463ffffffff610d6316565b600555600160a060020a038416600090815260066020526040902054610766908463ffffffff610d6316565b600160a060020a03851660009081526006602090815260409182902092909255805185815290517f9386c90217c323f58030f9dadcbc938f807a940f4ff41cd4cead9562f5da7dc3929181900390910190a1604080518481529051600160a060020a03861691600091600080516020610f808339815191529181900360200190a350505050565b600054600160a060020a031681565b6003805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104985780601f1061046d57610100808354040283529160200191610498565b61085f610a77565b600160a060020a038216600090815260066020526040902054610888908263ffffffff610dc716565b600160a060020a0383166000908152600660205260409020556005546108b4908263ffffffff610dc716565b600555604080518281529051600091600160a060020a03851691600080516020610f808339815191529181900360200190a36040805182815290517f9a1b418bc061a5d80270261562e6986a35d995f8051145f277be16103abd34539181900360200190a15050565b6000610927610adb565b6109318383610e27565b151561093957fe5b50600192915050565b60085460ff1681565b600154600160a060020a031681565b600760209081526000928352604080842090915290825290205481565b61097f610a77565b600054600160a060020a03828116911614156109e5576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600160a060020a0381161515610a74576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b600054600160a060020a03163314610ad9576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b60085460ff161515610ad9576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5452414e53464552535f44495341424c454400000000000000000000604482015290519081900360640190fd5b600083610b4381610a14565b83610b4d81610a14565b600160a060020a0386166000908152600760209081526040808320338452909152902054610b81908563ffffffff610dc716565b600160a060020a038716600081815260076020908152604080832033845282528083209490945591815260069091522054610bc2908563ffffffff610dc716565b600160a060020a038088166000908152600660205260408082209390935590871681522054610bf7908563ffffffff610d6316565b600160a060020a0380871660008181526006602090815260409182902094909455805188815290519193928a1692600080516020610f8083398151915292918290030190a350600195945050505050565b600160a060020a038116301415610a74576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090931692909217909152610d5e908490610ed2565b505050565b600082820183811015610dc0576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b9392505050565b600081831015610e21576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b600082610e3381610a14565b33600090815260066020526040902054610e53908463ffffffff610dc716565b3360009081526006602052604080822092909255600160a060020a03861681522054610e85908463ffffffff610d6316565b600160a060020a038516600081815260066020908152604091829020939093558051868152905191923392600080516020610f808339815191529281900390910190a35060019392505050565b610eda610f60565b602060405190810160405280600181525090506020818351602085016000875af1801515610f0757600080fd5b5080511515610d5e576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b60206040519081016040528060019060208202803883395091929150505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820ab924832ddea261f0e3fbf4d24ac3b4778f7be5a9bbf5bfa6e40bc49f56017d30029a165627a7a72305820b74c13a0f72eb82dcda2e38d4ca2f2ca5b7798b153ec77e86b2f1e519009cf7d0029a165627a7a72305820500dda47ffd8a3cea038e7e020832153519fd97b876ea23b2e251a3b2b1c25ac0029 \ No newline at end of file diff --git a/solidity/build/LiquidityPoolV2ConverterCustomFactory.abi b/solidity/build/LiquidityPoolV2ConverterCustomFactory.abi index f8b92b5..3bfe9b8 100644 --- a/solidity/build/LiquidityPoolV2ConverterCustomFactory.abi +++ b/solidity/build/LiquidityPoolV2ConverterCustomFactory.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_primaryReserveToken","type":"address"},{"name":"_secondaryReserveToken","type":"address"},{"name":"_primaryReserveOracle","type":"address"},{"name":"_secondaryReserveOracle","type":"address"}],"name":"createPriceOracle","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"converterType","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"pure","type":"function"}] \ No newline at end of file +[{"constant":true,"inputs":[],"name":"converterType","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_primaryReserveToken","type":"address"},{"name":"_secondaryReserveToken","type":"address"},{"name":"_primaryReserveOracle","type":"address"},{"name":"_secondaryReserveOracle","type":"address"}],"name":"createPriceOracle","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/LiquidityPoolV2ConverterCustomFactory.bin b/solidity/build/LiquidityPoolV2ConverterCustomFactory.bin index 254cd15..3d2f753 100644 --- a/solidity/build/LiquidityPoolV2ConverterCustomFactory.bin +++ b/solidity/build/LiquidityPoolV2ConverterCustomFactory.bin @@ -1 +1 @@ -608060405234801561001057600080fd5b50610cd2806100206000396000f30060806040526004361061004b5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416631b27444e81146100505780633e8ff43f146100b9575b600080fd5b34801561005c57600080fd5b5061009073ffffffffffffffffffffffffffffffffffffffff600435811690602435811690604435811690606435166100e5565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b3480156100c557600080fd5b506100ce610151565b6040805161ffff9092168252519081900360200190f35b6000848484846100f3610156565b73ffffffffffffffffffffffffffffffffffffffff9485168152928416602084015290831660408084019190915292166060820152905190819003608001906000f080158015610147573d6000803e3d6000fd5b5095945050505050565b600290565b604051610b4080610167833901905600608060405234801561001057600080fd5b50604051608080610b408339810160409081528151602083015191830151606090930151909290838361004c8282640100000000610168810204565b83836100618282640100000000610168810204565b60008054600160a060020a03808b16600160a060020a03199283161790925560018054928a16929091169190911790556100a38864010000000061020b810204565b600160a060020a0389166000908152600260205260409020805460ff191660ff929092169190911790556100df8764010000000061020b810204565b600160a060020a039788166000818152600260209081526040808320805460ff9690961660ff1990961695909517909455600380549a8c16600160a060020a03199b8c168117909155600480549a8d169a8c168b1790559b909a168152600590995281892080548916909a1790995597875250505093909220805490911690911790555061033f565b61017a826401000000006102c5810204565b61018c816401000000006102c5810204565b600160a060020a03828116908216141561020757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4552525f53414d455f4144445245535300000000000000000000000000000000604482015290519081900360640190fd5b5050565b6000600160a060020a03821673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee141561023a575060126102c0565b81600160a060020a031663313ce5676040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b15801561029157600080fd5b505af11580156102a5573d6000803e3d6000fd5b505050506040513d60208110156102bb57600080fd5b505190505b919050565b600160a060020a038116151561033c57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b6107f28061034e6000396000f3006080604052600436106100985763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630fc63d10811461009d5780635f64b55b146100ce5780638ee573ac146100e3578063ae8180041461011a578063b1772d7a1461015a578063b9e1715b1461019f578063c8f33c91146101b4578063cbd962d1146101db578063f997fda7146101fc575b600080fd5b3480156100a957600080fd5b506100b2610211565b60408051600160a060020a039092168252519081900360200190f35b3480156100da57600080fd5b506100b2610220565b3480156100ef57600080fd5b50610104600160a060020a036004351661022f565b6040805160ff9092168252519081900360200190f35b34801561012657600080fd5b50610141600160a060020a0360043581169060243516610244565b6040805192835260208301919091528051918290030190f35b34801561016657600080fd5b50610181600160a060020a0360043581169060243516610419565b60408051938452602084019290925282820152519081900360600190f35b3480156101ab57600080fd5b506100b2610448565b3480156101c057600080fd5b506101c9610457565b60408051918252519081900360200190f35b3480156101e757600080fd5b506100b2600160a060020a0360043516610599565b34801561020857600080fd5b506100b26105b4565b600054600160a060020a031681565b600154600160a060020a031681565b60026020526000908152604090205460ff1681565b600080600080600080878761025982826105c3565b600160a060020a03808b1660009081526005602090815260408083205481517f50d25bcd00000000000000000000000000000000000000000000000000000000815291519416936350d25bcd93600480840194938390030190829087803b1580156102c357600080fd5b505af11580156102d7573d6000803e3d6000fd5b505050506040513d60208110156102ed57600080fd5b5051600160a060020a03808b1660009081526005602090815260408083205481517f50d25bcd0000000000000000000000000000000000000000000000000000000081529151959b50909316936350d25bcd93600480820194918390030190829087803b15801561035d57600080fd5b505af1158015610371573d6000803e3d6000fd5b505050506040513d602081101561038757600080fd5b5051600160a060020a03808c1660009081526002602052604080822054928d16825290205491965060ff9081169550169250828411156103e0576103d98560ff85870316600a0a63ffffffff61066916565b9450610409565b8260ff168460ff161015610409576104068660ff86860316600a0a63ffffffff61066916565b95505b5093989297509195505050505050565b600080600080600061042b8787610244565b915091508181610439610457565b94509450945050509250925092565b600354600160a060020a031681565b6000806000600360009054906101000a9004600160a060020a0316600160a060020a0316638205bf6a6040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1580156104c857600080fd5b505af11580156104dc573d6000803e3d6000fd5b505050506040513d60208110156104f257600080fd5b505160048054604080517f8205bf6a0000000000000000000000000000000000000000000000000000000081529051939550600160a060020a0390911692638205bf6a928281019260209291908290030181600087803b15801561055557600080fd5b505af1158015610569573d6000803e3d6000fd5b505050506040513d602081101561057f57600080fd5b505190508082116105905780610592565b815b9250505090565b600560205260009081526040902054600160a060020a031681565b600454600160a060020a031681565b6105cd82826106ed565b600160a060020a03828116600090815260056020526040902054161580159061060f5750600160a060020a038181166000908152600560205260409020541615155b1515610665576040805160e560020a62461bcd02815260206004820152601560248201527f4552525f554e535550504f525445445f544f4b454e0000000000000000000000604482015290519081900360640190fd5b5050565b60008083151561067c57600091506106e6565b5082820282848281151561068c57fe5b04146106e2576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b8091505b5092915050565b6106f682610763565b6106ff81610763565b600160a060020a038281169082161415610665576040805160e560020a62461bcd02815260206004820152601060248201527f4552525f53414d455f4144445245535300000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a03811615156107c3576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b505600a165627a7a72305820c4f23a7a93a999db628045fcad1e1c8d52d59b91b3c559958bf0c8724d5a0df50029a165627a7a723058207c9c084e234bf8767707394279c9cfaed571e991fea4ab4ce3c53b3a567c28c30029 \ No newline at end of file +608060405234801561001057600080fd5b50610cd2806100206000396000f30060806040526004361061004b5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416631b27444e81146100505780633e8ff43f146100b9575b600080fd5b34801561005c57600080fd5b5061009073ffffffffffffffffffffffffffffffffffffffff600435811690602435811690604435811690606435166100e5565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b3480156100c557600080fd5b506100ce610151565b6040805161ffff9092168252519081900360200190f35b6000848484846100f3610156565b73ffffffffffffffffffffffffffffffffffffffff9485168152928416602084015290831660408084019190915292166060820152905190819003608001906000f080158015610147573d6000803e3d6000fd5b5095945050505050565b600290565b604051610b4080610167833901905600608060405234801561001057600080fd5b50604051608080610b408339810160409081528151602083015191830151606090930151909290838361004c8282640100000000610168810204565b83836100618282640100000000610168810204565b60008054600160a060020a03808b16600160a060020a03199283161790925560018054928a16929091169190911790556100a38864010000000061020b810204565b600160a060020a0389166000908152600260205260409020805460ff191660ff929092169190911790556100df8764010000000061020b810204565b600160a060020a039788166000818152600260209081526040808320805460ff9690961660ff1990961695909517909455600380549a8c16600160a060020a03199b8c168117909155600480549a8d169a8c168b1790559b909a168152600590995281892080548916909a1790995597875250505093909220805490911690911790555061033f565b61017a826401000000006102c5810204565b61018c816401000000006102c5810204565b600160a060020a03828116908216141561020757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4552525f53414d455f4144445245535300000000000000000000000000000000604482015290519081900360640190fd5b5050565b6000600160a060020a03821673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee141561023a575060126102c0565b81600160a060020a031663313ce5676040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b15801561029157600080fd5b505af11580156102a5573d6000803e3d6000fd5b505050506040513d60208110156102bb57600080fd5b505190505b919050565b600160a060020a038116151561033c57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b6107f28061034e6000396000f3006080604052600436106100985763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630fc63d10811461009d5780635f64b55b146100ce5780638ee573ac146100e3578063ae8180041461011a578063b1772d7a1461015a578063b9e1715b1461019f578063c8f33c91146101b4578063cbd962d1146101db578063f997fda7146101fc575b600080fd5b3480156100a957600080fd5b506100b2610211565b60408051600160a060020a039092168252519081900360200190f35b3480156100da57600080fd5b506100b2610220565b3480156100ef57600080fd5b50610104600160a060020a036004351661022f565b6040805160ff9092168252519081900360200190f35b34801561012657600080fd5b50610141600160a060020a0360043581169060243516610244565b6040805192835260208301919091528051918290030190f35b34801561016657600080fd5b50610181600160a060020a0360043581169060243516610419565b60408051938452602084019290925282820152519081900360600190f35b3480156101ab57600080fd5b506100b2610448565b3480156101c057600080fd5b506101c9610457565b60408051918252519081900360200190f35b3480156101e757600080fd5b506100b2600160a060020a0360043516610599565b34801561020857600080fd5b506100b26105b4565b600054600160a060020a031681565b600154600160a060020a031681565b60026020526000908152604090205460ff1681565b600080600080600080878761025982826105c3565b600160a060020a03808b1660009081526005602090815260408083205481517f50d25bcd00000000000000000000000000000000000000000000000000000000815291519416936350d25bcd93600480840194938390030190829087803b1580156102c357600080fd5b505af11580156102d7573d6000803e3d6000fd5b505050506040513d60208110156102ed57600080fd5b5051600160a060020a03808b1660009081526005602090815260408083205481517f50d25bcd0000000000000000000000000000000000000000000000000000000081529151959b50909316936350d25bcd93600480820194918390030190829087803b15801561035d57600080fd5b505af1158015610371573d6000803e3d6000fd5b505050506040513d602081101561038757600080fd5b5051600160a060020a03808c1660009081526002602052604080822054928d16825290205491965060ff9081169550169250828411156103e0576103d98560ff85870316600a0a63ffffffff61066916565b9450610409565b8260ff168460ff161015610409576104068660ff86860316600a0a63ffffffff61066916565b95505b5093989297509195505050505050565b600080600080600061042b8787610244565b915091508181610439610457565b94509450945050509250925092565b600354600160a060020a031681565b6000806000600360009054906101000a9004600160a060020a0316600160a060020a0316638205bf6a6040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1580156104c857600080fd5b505af11580156104dc573d6000803e3d6000fd5b505050506040513d60208110156104f257600080fd5b505160048054604080517f8205bf6a0000000000000000000000000000000000000000000000000000000081529051939550600160a060020a0390911692638205bf6a928281019260209291908290030181600087803b15801561055557600080fd5b505af1158015610569573d6000803e3d6000fd5b505050506040513d602081101561057f57600080fd5b505190508082116105905780610592565b815b9250505090565b600560205260009081526040902054600160a060020a031681565b600454600160a060020a031681565b6105cd82826106ed565b600160a060020a03828116600090815260056020526040902054161580159061060f5750600160a060020a038181166000908152600560205260409020541615155b1515610665576040805160e560020a62461bcd02815260206004820152601560248201527f4552525f554e535550504f525445445f544f4b454e0000000000000000000000604482015290519081900360640190fd5b5050565b60008083151561067c57600091506106e6565b5082820282848281151561068c57fe5b04146106e2576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b8091505b5092915050565b6106f682610763565b6106ff81610763565b600160a060020a038281169082161415610665576040805160e560020a62461bcd02815260206004820152601060248201527f4552525f53414d455f4144445245535300000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a03811615156107c3576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b505600a165627a7a72305820b8da0461f4103d30aefe325151627d56503293d6e32bdd8a35a31eff9b7091160029a165627a7a72305820b483bf475588edcf3a29e3ef82dc5aee897b4f44228ae3d922f4e351b73aba4a0029 \ No newline at end of file diff --git a/solidity/build/LiquidityPoolV2ConverterFactory.abi b/solidity/build/LiquidityPoolV2ConverterFactory.abi index 3fb5e77..4d53cfd 100644 --- a/solidity/build/LiquidityPoolV2ConverterFactory.abi +++ b/solidity/build/LiquidityPoolV2ConverterFactory.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_anchor","type":"address"},{"name":"_registry","type":"address"},{"name":"_maxConversionFee","type":"uint32"}],"name":"createConverter","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"converterType","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"pure","type":"function"}] \ No newline at end of file +[{"constant":true,"inputs":[],"name":"converterType","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_anchor","type":"address"},{"name":"_registry","type":"address"},{"name":"_maxConversionFee","type":"uint32"}],"name":"createConverter","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/LiquidityPoolV2ConverterFactory.bin b/solidity/build/LiquidityPoolV2ConverterFactory.bin index a82b740..ff31506 100644 --- a/solidity/build/LiquidityPoolV2ConverterFactory.bin +++ b/solidity/build/LiquidityPoolV2ConverterFactory.bin @@ -1 +1 @@ -608060405234801561001057600080fd5b506157d0806100206000396000f30060806040526004361061004b5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416631141395881146100505780633e8ff43f146100b6575b600080fd5b34801561005c57600080fd5b5061008d73ffffffffffffffffffffffffffffffffffffffff6004358116906024351663ffffffff604435166100e2565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b3480156100c257600080fd5b506100cb6101d5565b6040805161ffff9092168252519081900360200190f35b6000808484846100f06101da565b73ffffffffffffffffffffffffffffffffffffffff938416815291909216602082015263ffffffff9091166040808301919091525190819003606001906000f080158015610142573d6000803e3d6000fd5b50604080517ff2fde38b000000000000000000000000000000000000000000000000000000008152336004820152905191925073ffffffffffffffffffffffffffffffffffffffff83169163f2fde38b9160248082019260009290919082900301818387803b1580156101b457600080fd5b505af11580156101c8573d6000803e3d6000fd5b5092979650505050505050565b600290565b6040516155ba806101eb833901905600608060405260016004819055600980546001606060020a03191690556015805460ff19169091179055620111706016553480156200003c57600080fd5b50604051606080620055ba83398101604090815281516020830151919092015160008054600160a060020a0319163317905582828282828281806200008a8164010000000062000137810204565b5060028054600160a060020a03909216600160a060020a031992831681179091556003805490921617905582620000ca8164010000000062000137810204565b81620000df81640100000000620001b2810204565b505060058054600160a060020a03909416600160a060020a031990941693909317909255506009805463ffffffff9092166401000000000267ffffffff0000000019909216919091179055506200022b945050505050565b600160a060020a0381161515620001af57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b620f424063ffffffff82161115620001af57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b61537f806200023b6000396000f3006080604052600436106103125763ffffffff60e060020a6000350416625e319c81146103b0578063024c7ec7146103e35780630337e3fb146103fd5780630a55fb3d1461042e5780630c7d5cd8146104575780630e53aae914610485578063119b90cd146104da57806312c2aca41461050757806316912f961461051c57806319b64015146105315780631cfab290146105495780631e1401f81461056a57806321e6b53d146105ad57806322f3e2d4146105ce5780632630c12f146105e35780632bd3c107146105f85780632bf0c985146106195780632fe8a6ad1461063a57806338a5e0161461064f578063395900d4146106645780633e8ff43f1461068e57806346749468146106ba57806349d10b64146106d55780634af80f0e146106ea57806354fd4d501461070b57806355776b77146107205780635768adcf1461073a578063579cd3ca1461075b5780635e35359e1461077057806361cd756e1461079a57806367b6d57c146107af57806369067d95146107d0578063690d8320146107f457806369d1354a146108155780636a49d2c41461082d57806371f52bf31461085757806379ba50971461086c5780637b103999146108815780638da5cb5b1461089657806394c275ad146108ab57806398a71dcb146108c05780639b99a8e2146108e1578063a32bff44146108f6578063af94b8d81461090b578063b4a176d314610935578063bf7545581461094a578063bf7da6ba1461095f578063c3321fb014610983578063c45d3d9214610998578063cdc91c69146109ad578063d031370b146109c2578063d260529c146109da578063d3fb73b4146109ef578063d4ee1d9014610a04578063d55ec69714610a19578063d64c5a1a14610a2e578063d66bd52414610a59578063d895951214610a7a578063db2830a414610a9b578063dc75eb9a14610ab0578063dc8de37914610ac5578063e38192e314610ae6578063e8104af914610b0d578063e8dc12ff14610b22578063ec2240f514610b4c578063ecbca55d14610b61578063f2fde38b14610b7f578063f9cddde214610ba0578063fc0c546a14610bb5575b6000805160206152f483398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1615156103ae576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f5245534552564500000000000000000000000000604482015290519081900360640190fd5b005b3480156103bc57600080fd5b506103d1600160a060020a0360043516610bca565b60408051918252519081900360200190f35b3480156103ef57600080fd5b506103ae6004351515610bf3565b34801561040957600080fd5b50610412610c3b565b60408051600160a060020a039092168252519081900360200190f35b34801561043a57600080fd5b50610443610c4a565b604080519115158252519081900360200190f35b34801561046357600080fd5b5061046c610c53565b6040805163ffffffff9092168252519081900360200190f35b34801561049157600080fd5b506104a6600160a060020a0360043516610c5f565b6040805195865263ffffffff9094166020860152911515848401521515606084015215156080830152519081900360a00190f35b3480156104e657600080fd5b506103ae600160a060020a0360043581169060243581169060443516610cfa565b34801561051357600080fd5b50610443611464565b34801561052857600080fd5b506103ae6114ad565b34801561053d57600080fd5b506104126004356114c1565b34801561055557600080fd5b5061046c600160a060020a03600435166114ed565b34801561057657600080fd5b50610594600160a060020a036004358116906024351660443561151f565b6040805192835260208301919091528051918290030190f35b3480156105b957600080fd5b506103ae600160a060020a0360043516611539565b3480156105da57600080fd5b5061044361154d565b3480156105ef57600080fd5b50610412611582565b34801561060457600080fd5b506103d1600160a060020a03600435166115a1565b34801561062557600080fd5b506103d1600160a060020a03600435166115f6565b34801561064657600080fd5b506104436116d9565b34801561065b57600080fd5b506103ae6116fa565b34801561067057600080fd5b506103ae600160a060020a036004358116906024351660443561170c565b34801561069a57600080fd5b506106a36117a7565b6040805161ffff9092168252519081900360200190f35b3480156106c657600080fd5b506103ae6004356024356117ac565b3480156106e157600080fd5b506103ae611830565b3480156106f657600080fd5b506103ae600160a060020a0360043516611a90565b34801561071757600080fd5b506106a3611ac5565b6103d1600160a060020a0360043516602435604435611aca565b34801561074657600080fd5b50610412600160a060020a0360043516612033565b34801561076757600080fd5b5061046c612051565b34801561077c57600080fd5b506103ae600160a060020a0360043581169060243516604435612069565b3480156107a657600080fd5b5061041261217d565b3480156107bb57600080fd5b506103ae600160a060020a036004351661218c565b3480156107dc57600080fd5b50610594600160a060020a036004351660243561222f565b34801561080057600080fd5b506103ae600160a060020a036004351661238a565b34801561082157600080fd5b506103ae60043561248f565b34801561083957600080fd5b506103ae600160a060020a036004351663ffffffff60243516612534565b34801561086357600080fd5b506106a3612593565b34801561087857600080fd5b506103ae61259d565b34801561088d57600080fd5b50610412612651565b3480156108a257600080fd5b50610412612660565b3480156108b757600080fd5b5061046c61266f565b3480156108cc57600080fd5b506103d1600160a060020a0360043516612683565b3480156108ed57600080fd5b506106a3612695565b34801561090257600080fd5b5061059461269b565b34801561091757600080fd5b50610594600160a060020a03600435811690602435166044356126a4565b34801561094157600080fd5b506103ae612848565b34801561095657600080fd5b50610443612874565b34801561096b57600080fd5b506103ae600160a060020a0360043516602435612879565b34801561098f57600080fd5b506103d16128c1565b3480156109a457600080fd5b506104126128c7565b3480156109b957600080fd5b506103ae6128d6565b3480156109ce57600080fd5b5061041260043561292f565b3480156109e657600080fd5b50610443612957565b3480156109fb57600080fd5b5061041261295c565b348015610a1057600080fd5b5061041261296b565b348015610a2557600080fd5b506103ae61297a565b348015610a3a57600080fd5b50610a43612a6f565b6040805160ff9092168252519081900360200190f35b348015610a6557600080fd5b506104a6600160a060020a0360043516612a74565b348015610a8657600080fd5b506103d1600160a060020a0360043516612aba565b348015610aa757600080fd5b50610594612acb565b348015610abc57600080fd5b50610412612af0565b348015610ad157600080fd5b506103d1600160a060020a0360043516612aff565b348015610af257600080fd5b506103d1600160a060020a0360043516602435604435612b28565b348015610b1957600080fd5b506103d1612e8d565b6103d1600160a060020a036004358116906024358116906044359060643581169060843516612e93565b348015610b5857600080fd5b506105946130e6565b348015610b6d57600080fd5b506103ae63ffffffff60043516613166565b348015610b8b57600080fd5b506103ae600160a060020a036004351661325b565b348015610bac57600080fd5b506105946132eb565b348015610bc157600080fd5b506104126132f4565b600081610bd681613303565b5050600160a060020a03166000908152600c602052604090205490565b610bfb613382565b60038054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b600a54600160a060020a031681565b60155460ff1681565b60095463ffffffff1681565b6000806000806000610c6f61526f565b50505050600160a060020a03929092166000908152600860209081526040808320815160a081018352815480825260019092015463ffffffff811694820185905260ff64010000000082048116151594830194909452650100000000008104841615156060830152660100000000000090049092161515608090920182905295919450919250829190565b6000806000806000610d0a6133d2565b610d12613382565b87610d1c81613303565b87610d268161342f565b87610d308161342f565b89610d3a81613490565b89610d4481613490565b600554604080517f8da5cb5b00000000000000000000000000000000000000000000000000000000815290513092600160a060020a031691638da5cb5b9160048083019260209291908290030181600087803b158015610da357600080fd5b505af1158015610db7573d6000803e3d6000fd5b505050506040513d6020811015610dcd57600080fd5b5051600160a060020a031614610e2d576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f414e43484f525f4e4f545f4f574e4544000000000000000000000000604482015290519081900360640190fd5b610e567f436861696e6c696e6b4f7261636c6557686974656c69737400000000000000006134f0565b995089600160a060020a0316633af32abf8d6040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b158015610eb357600080fd5b505af1158015610ec7573d6000803e3d6000fd5b505050506040513d6020811015610edd57600080fd5b50511515610f35576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f4f5241434c450000000000000000000000000000604482015290519081900360640190fd5b89600160a060020a0316633af32abf8c6040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b158015610f9057600080fd5b505af1158015610fa4573d6000803e3d6000fd5b505050506040513d6020811015610fba57600080fd5b50511515611012576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f4f5241434c450000000000000000000000000000604482015290519081900360640190fd5b61101a613588565b600a8054600160a060020a031916600160a060020a038f1617905560078054600090811061104457fe5b600091825260209091200154600160a060020a038e8116911614156110a25760078054600190811061107257fe5b600091825260209091200154600b8054600160a060020a031916600160a060020a039092169190911790556110dd565b6007805460009081106110b157fe5b600091825260209091200154600b8054600160a060020a031916600160a060020a039092169190911790555b6111067f436f6e766572746572466163746f7279000000000000000000000000000000006134f0565b600160a060020a031663c977aed261111c6117a7565b6040518263ffffffff1660e060020a028152600401808261ffff1661ffff168152602001915050602060405180830381600087803b15801561115d57600080fd5b505af1158015611171573d6000803e3d6000fd5b505050506040513d602081101561118757600080fd5b8101908080519060200190929190505050985088600160a060020a0316631b27444e8e600b60009054906101000a9004600160a060020a03168f8f6040518563ffffffff1660e060020a0281526004018085600160a060020a0316600160a060020a0316815260200184600160a060020a0316600160a060020a0316815260200183600160a060020a0316600160a060020a0316815260200182600160a060020a0316600160a060020a03168152602001945050505050602060405180830381600087803b15801561125857600080fd5b505af115801561126c573d6000803e3d6000fd5b505050506040513d602081101561128257600080fd5b5051600980546bffffffffffffffffffffffff166c01000000000000000000000000600160a060020a0393841681029190911791829055600a54600b54604080517fae818004000000000000000000000000000000000000000000000000000000008152928616600484015290851660248301528051929093049093169263ae8180049260448083019391928290030181600087803b15801561132457600080fd5b505af1158015611338573d6000803e3d6000fd5b505050506040513d604081101561134e57600080fd5b5080516020909101516010819055600f8290556012919091556013556113726137c4565b601155600a5461138a90600160a060020a0316610bca565b600a549098506113a290600160a060020a0316612aff565b600b549097506113ba90600160a060020a0316612aff565b9550868814156113e55760008811806113d35750600086115b156113e0576113e06137c8565b61140e565b6000881180156113f55750600087115b80156114015750600086115b1561140e5761140e6137c8565b600554600190600160a060020a03166114256117a7565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a450505050505050505050505050565b6000805160206152f483398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1690565b6114b5613382565b6015805460ff19169055565b60006007828154811015156114d257fe5b600091825260209091200154600160a060020a031692915050565b6000816114f981613303565b5050600160a060020a031660009081526008602052604090206001015463ffffffff1690565b60008061152d8585856126a4565b91509150935093915050565b611541613382565b61154a8161218c565b50565b6000611557613840565b801561157d57506009546c010000000000000000000000009004600160a060020a031615155b905090565b6009546c010000000000000000000000009004600160a060020a031681565b6000816115ad81613303565b6115ef6115b984612aff565b600160a060020a0385166000908152600c60205260409020546115e390601363ffffffff6138da16565b9063ffffffff61395e16565b9392505050565b600080600080600085600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561163c57600080fd5b505af1158015611650573d6000803e3d6000fd5b505050506040513d602081101561166657600080fd5b5051600160a060020a038088166000908152600e602052604090205491955016925061169183612aff565b600160a060020a0384166000908152600c602052604090205490925090506116cf816116c3848763ffffffff6138da16565b9063ffffffff6139bb16565b9695505050505050565b60035474010000000000000000000000000000000000000000900460ff1681565b611702613382565b61170a6128d6565b565b611714613382565b600554604080517f5e35359e000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015285811660248301526044820185905291519190921691635e35359e91606480830192600092919082900301818387803b15801561178a57600080fd5b505af115801561179e573d6000803e3d6000fd5b50505050505050565b600290565b6117b4613382565b8160146000600760008154811015156117c957fe5b6000918252602080832090910154600160a060020a031683528201929092526040018120919091556007805483926014929091600190811061180757fe5b6000918252602080832090910154600160a060020a031683528201929092526040019020555050565b60008054600160a060020a0316331480611865575060035474010000000000000000000000000000000000000000900460ff16155b15156118a9576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615314833981519152604482015290519081900360640190fd5b6118d27f436f6e74726163745265676973747279000000000000000000000000000000006134f0565b600254909150600160a060020a038083169116148015906118fb5750600160a060020a03811615155b1515611951576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b604080517fbb34534c0000000000000000000000000000000000000000000000000000000081527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b1580156119d557600080fd5b505af11580156119e9573d6000803e3d6000fd5b505050506040513d60208110156119ff57600080fd5b5051600160a060020a03161415611a60576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a03808416600160a060020a0319928316179092559091169216919091179055565b611a98613382565b80611aa28161342f565b5060068054600160a060020a031916600160a060020a0392909216919091179055565b602081565b6000806000806000611ada613a29565b6002600455611ae7613a83565b87611af181613303565b87611afb81613ae1565b87611b0581613ae1565b600160a060020a038b166000805160206152f483398151915214611b2a573415611b2e565b8934145b1515611b84576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b611b8c613b39565b600160a060020a038b166000805160206152f48339815191521415611c2e576000805160206152f483398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c4254611bf4903463ffffffff613b7b16565b6000805160206152f483398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c42555b600160a060020a038b166000908152600c602052604090205460155490975060ff1615611cf757600160a060020a038b166000908152601460205260409020541580611ca15750600160a060020a038b16600090815260146020526040902054611c9e888c63ffffffff61395e16565b11155b1515611cf7576040805160e560020a62461bcd02815260206004820152601e60248201527f4552525f4d41585f5354414b45445f42414c414e43455f524541434845440000604482015290519081900360640190fd5b600160a060020a03808c166000908152600d602090815260408083205481517f18160ddd00000000000000000000000000000000000000000000000000000000815291519416995089936318160ddd93600480840194938390030190829087803b158015611d6457600080fd5b505af1158015611d78573d6000803e3d6000fd5b505050506040513d6020811015611d8e57600080fd5b50519450600160a060020a038b166000805160206152f483398151915214611dbc57611dbc8b33308d613bdb565b600160a060020a038b16600090815260086020526040902054611de5908b63ffffffff61395e16565b600160a060020a038c16600090815260086020526040902055611e0e878b63ffffffff61395e16565b600160a060020a038c166000908152600c60205260408120919091559350861580611e37575084155b15611e4457899350611e5b565b611e58876116c38c8863ffffffff6138da16565b93505b88841015611eb3576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f52455455524e5f544f4f5f4c4f570000000000000000000000000000604482015290519081900360640190fd5b600554604080517fc6c3bbe6000000000000000000000000000000000000000000000000000000008152600160a060020a038981166004830152336024830152604482018890529151919092169163c6c3bbe691606480830192600092919082900301818387803b158015611f2757600080fd5b505af1158015611f3b573d6000803e3d6000fd5b50505050611f476137c8565b600160a060020a038b16337f4a1a2a6176e9646d9e3157f7c2ab3c499f18337c0b0828cfb28e0a61de4a11f78c611f848b8263ffffffff61395e16565b611f948a8a63ffffffff61395e16565b60408051938452602084019290925282820152519081900360600190a3611fcb86611fc5878763ffffffff61395e16565b8d613cc3565b61202060076000815481101515611fde57fe5b60009182526020909120015460078054600160a060020a0390921691600190811061200557fe5b6000918252602082200154600160a060020a03169080613d23565b5050600160045550979650505050505050565b600160a060020a039081166000908152600d60205260409020541690565b60095468010000000000000000900463ffffffff1681565b6000612073613a29565b6002600455612080613382565b6120976000805160206152d48339815191526134f0565b600160a060020a0385166000908152600860205260409020600101549091506601000000000000900460ff1615806120d457506120d261154d565b155b806120ec5750600054600160a060020a038281169116145b1515612130576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615314833981519152604482015290519081900360640190fd5b61213b848484613d8f565b600160a060020a0384166000908152600860205260409020600101546601000000000000900460ff16156121725761217284613dc0565b505060016004555050565b600354600160a060020a031681565b612194613382565b6000805160206152d48339815191526121ac81613eb4565b600554604080517ff2fde38b000000000000000000000000000000000000000000000000000000008152600160a060020a0385811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b15801561221357600080fd5b505af1158015612227573d6000803e3d6000fd5b505050505050565b6000806000806000806000806000808b600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561227c57600080fd5b505af1158015612290573d6000803e3d6000fd5b505050506040513d60208110156122a657600080fd5b5051600160a060020a03808e166000908152600e60209081526040808320549093168252600c905220549098509650878b101561237157600a54600160a060020a03166000908152600c602052604090205461230990601463ffffffff6138da16565b600a5490965061232190600160a060020a03166115a1565b9450848610612331578486612334565b85855b909450925061234d886116c38d8a63ffffffff6138da16565b9150612363836116c3848763ffffffff6138da16565b99505088810397508861237b565b9598506000975088955b50505050505050509250929050565b6000612394613a29565b60026004556123a1613382565b6000805160206152f48339815191526123b981613303565b6123d06000805160206152d48339815191526134f0565b91506123da61154d565b15806123f35750600054600160a060020a038381169116145b1515612437576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615314833981519152604482015290519081900360640190fd5b604051600160a060020a03841690303180156108fc02916000818181858888f1935050505015801561246d573d6000803e3d6000fd5b506124856000805160206152f4833981519152613dc0565b5050600160045550565b612497613382565b620186a08111156124f2576040805160e560020a62461bcd02815260206004820152601e60248201527f4552525f494e56414c49445f44594e414d49435f4645455f464143544f520000604482015290519081900360640190fd5b601654604080519182526020820183905280517f382fd3516344712a511dcd464ff8e6ab54139d6a28f64087a3253353ee7a56799281900390910190a1601655565b600261253e612695565b61ffff1610612585576040805160e560020a62461bcd0281526020600482015260196024820152600080516020615334833981519152604482015290519081900360640190fd5b61258f8282613f0a565b5050565b600061157d612695565b600154600160a060020a031633146125ed576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615314833981519152604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a36001805460008054600160a060020a0319908116600160a060020a03841617909155169055565b600254600160a060020a031681565b600054600160a060020a031681565b600954640100000000900463ffffffff1681565b60146020526000908152604090205481565b60075490565b600f5460105482565b6000806000806126b261529d565b6000806000806126c0613a83565b6126c98c613303565b6126d28b613303565b600160a060020a038c8116908c161415612736576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f53414d455f534f555243455f54415247455400000000000000000000604482015290519081900360640190fd5b61273e6137c4565b60115414156127e557600f604080519081016040529081600082015481526020016001820154815250509450600860008d600160a060020a0316600160a060020a0316815260200190815260200160002060010160009054906101000a900463ffffffff169650600860008c600160a060020a0316600160a060020a0316815260200190815260200160002060010160009054906101000a900463ffffffff169550612825565b6127ed61413c565b94506127f885614380565b600a549195509350600160a060020a038d81169116141561281e57839650829550612825565b8296508395505b6128338c8c8989898f6144aa565b919e919d50909b505050505050505050505050565b612850613382565b60035460028054600160a060020a031916600160a060020a03909216919091179055565b600181565b612881613382565b6000805160206152d483398151915261289981613eb4565b826128a381613303565b5050600160a060020a039091166000908152600c6020526040902055565b60115481565b600654600160a060020a031681565b60016128e0612695565b61ffff1611612927576040805160e560020a62461bcd0281526020600482015260196024820152600080516020615334833981519152604482015290519081900360640190fd5b61170a614646565b600780548290811061293d57fe5b600091825260209091200154600160a060020a0316905081565b600190565b600554600160a060020a031681565b600154600160a060020a031681565b6000612984613382565b61299b6000805160206152d48339815191526134f0565b600554909150600090600160a060020a03166129b56117a7565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a46129ee8161325b565b604080517f90f58c96000000000000000000000000000000000000000000000000000000008152602060048201529051600160a060020a038316916390f58c9691602480830192600092919082900301818387803b158015612a4f57600080fd5b505af1158015612a63573d6000803e3d6000fd5b5050505061154a61259d565b601490565b6008602052600090815260409020805460019091015463ffffffff81169060ff640100000000820481169165010000000000810482169166010000000000009091041685565b6000612ac582612aff565b92915050565b600080612ad661529d565b612ade61413c565b80516020909101519094909350915050565b600b54600160a060020a031681565b600081612b0b81613303565b5050600160a060020a031660009081526008602052604090205490565b600080600080600080612b39613a29565b6002600455612b46613a83565b88612b5081614712565b88612b5a81613ae1565b88612b6481613ae1565b612b6c613b39565b8b600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015612baa57600080fd5b505af1158015612bbe573d6000803e3d6000fd5b505050506040513d6020811015612bd457600080fd5b50519750612be28c8c61222f565b50965089871015612c3d576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f52455455524e5f544f4f5f4c4f570000000000000000000000000000604482015290519081900360640190fd5b600e60008d600160a060020a0316600160a060020a0316815260200190815260200160002060009054906101000a9004600160a060020a03169550600560009054906101000a9004600160a060020a0316600160a060020a031663f6b911bc8d338e6040518463ffffffff1660e060020a0281526004018084600160a060020a0316600160a060020a0316815260200183600160a060020a0316600160a060020a031681526020018281526020019350505050600060405180830381600087803b158015612d0a57600080fd5b505af1158015612d1e573d6000803e3d6000fd5b505050600160a060020a038716600090815260086020526040902054612d4b91508863ffffffff613b7b16565b600160a060020a038716600090815260086020908152604080832093909355600c90522054612d80908863ffffffff613b7b16565b600160a060020a0387166000818152600c602052604090208290559095506000805160206152f48339815191521415612de657604051339088156108fc029089906000818181858888f19350505050158015612de0573d6000803e3d6000fd5b50612df1565b612df1863389614783565b612df96137c8565b612e09888c63ffffffff613b7b16565b60408051898152602081018890528082018390529051919550600160a060020a0388169133917fbc7d19d505c7ec4db83f3b51f19fb98c4c8a99922e7839d1ee608dfbee29501b919081900360600190a3612e658c8588613cc3565b612e7860076000815481101515611fde57fe5b50506001600455509298975050505050505050565b60165481565b6000612e9d613a29565b60026004557f536f7672796e537761704e6574776f726b000000000000000000000000000000612ecc81613eb4565b600160a060020a038781169087161415612f30576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f53414d455f534f555243455f54415247455400000000000000000000604482015290519081900360640190fd5b600654600160a060020a031615806130735750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03878116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b158015612fab57600080fd5b505af1158015612fbf573d6000803e3d6000fd5b505050506040513d6020811015612fd557600080fd5b505180156130735750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b15801561304657600080fd5b505af115801561305a573d6000803e3d6000fd5b505050506040513d602081101561307057600080fd5b50515b15156130c9576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f4e4f545f57484954454c495354454400000000000000000000000000604482015290519081900360640190fd5b6130d6878787878761483a565b6001600455979650505050505050565b6000806130f161529d565b6000806130fc61413c565b925061310783614380565b915091506007600081548110151561311b57fe5b600091825260209091200154600a54600160a060020a03908116911614156131505763ffffffff80831695508116935061315f565b63ffffffff8082169550821693505b5050509091565b61316e613382565b60095463ffffffff640100000000909104811690821611156131da576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b6009546040805163ffffffff6801000000000000000090930483168152918316602083015280517f81cd2ffb37dd237c0e4e2a3de5265fcf9deb43d3e7801e80db9f1ccfba7ee6009281900390910190a16009805463ffffffff90921668010000000000000000026bffffffff000000000000000019909216919091179055565b613263613382565b600054600160a060020a03828116911614156132c9576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b60018054600160a060020a031916600160a060020a0392909216919091179055565b60125460135482565b600554600160a060020a031690565b600160a060020a0381166000908152600860205260409020600101546601000000000000900460ff16151561154a576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f5245534552564500000000000000000000000000604482015290519081900360640190fd5b600054600160a060020a0316331461170a576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615314833981519152604482015290519081900360640190fd5b6133da61154d565b1561170a576040805160e560020a62461bcd02815260206004820152600a60248201527f4552525f41435449564500000000000000000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a03811630141561154a576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b600160a060020a038116151561154a576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b600254604080517fbb34534c000000000000000000000000000000000000000000000000000000008152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561355657600080fd5b505af115801561356a573d6000803e3d6000fd5b505050506040513d602081101561358057600080fd5b505192915050565b60006060600080600080600560009054906101000a9004600160a060020a0316955085600160a060020a0316636d3e313e6040518163ffffffff1660e060020a028152600401600060405180830381600087803b1580156135e857600080fd5b505af11580156135fc573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561362557600080fd5b81019080805164010000000081111561363d57600080fd5b8201602081018481111561365057600080fd5b815185602082028301116401000000008211171561366d57600080fd5b505080516007549199501597509550600094505050505b828210156122275783156137035785600160a060020a0316639cbf9e366040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156136d057600080fd5b505af11580156136e4573d6000803e3d6000fd5b505050506040513d60208110156136fa57600080fd5b5051905061371e565b848281518110151561371157fe5b9060200190602002015190505b80600d600060078581548110151561373257fe5b600091825260208083209190910154600160a060020a03908116845290830193909352604090910190208054600160a060020a03191692909116919091179055600780548390811061378057fe5b6000918252602080832090910154600160a060020a038481168452600e90925260409092208054600160a060020a0319169190921617905560019190910190613684565b4290565b60408051808201909152600f548152601054602082015260009081906137ed90614380565b600a54600160a060020a039081166000908152600860205260408082206001908101805463ffffffff97881663ffffffff1991821617909155600b54909416835291200180549290931691161790555050565b600030600160a060020a0316600560009054906101000a9004600160a060020a0316600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561389f57600080fd5b505af11580156138b3573d6000803e3d6000fd5b505050506040513d60208110156138c957600080fd5b5051600160a060020a031614905090565b6000808315156138ed5760009150613957565b508282028284828115156138fd57fe5b0414613953576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b8091505b5092915050565b600082820183811015613953576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b600080808311613a15576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f4449564944455f42595f5a45524f0000000000000000000000000000604482015290519081900360640190fd5b8284811515613a2057fe5b04949350505050565b60045460011461170a576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5245454e5452414e4359000000000000000000000000000000000000604482015290519081900360640190fd5b613a8b61154d565b151561170a576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f494e4143544956450000000000000000000000000000000000000000604482015290519081900360640190fd5b6000811161154a576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5a45524f5f56414c5545000000000000000000000000000000000000604482015290519081900360640190fd5b60075460005b8181101561258f57613b73600782815481101515613b5957fe5b600091825260209091200154600160a060020a0316613dc0565b600101613b3f565b600081831015613bd5576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b604080517f7472616e7366657246726f6d28616464726573732c616464726573732c75696e81527f74323536290000000000000000000000000000000000000000000000000000006020808301919091528251918290036025018220600160a060020a038088166024850152861660448401526064808401869052845180850390910181526084909301909352810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1990931692909217909152613cbd90859061492d565b50505050565b600160a060020a038082166000818152600c6020908152604091829020548251908152908101869052815192938716927f77f29993cf2c084e726f7e802da0719d6a0ade3e204badc7a3ffd57ecb768c24929181900390910190a3505050565b613d2b61529d565b613d37858585856149bb565b805160208083015160408051938452918301528051929350600160a060020a0380881693908916927f77f29993cf2c084e726f7e802da0719d6a0ade3e204badc7a3ffd57ecb768c2492908290030190a35050505050565b613d97613382565b82613da181613490565b82613dab81613490565b83613db58161342f565b612227868686614783565b80613dca81613303565b600160a060020a0382166000805160206152f48339815191521415613e0a57600160a060020a03821660009081526008602052604090203031905561258f565b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051600160a060020a038416916370a082319160248083019260209291908290030181600087803b158015613e6b57600080fd5b505af1158015613e7f573d6000803e3d6000fd5b505050506040513d6020811015613e9557600080fd5b5051600160a060020a0383166000908152600860205260409020555050565b613ebd816134f0565b600160a060020a0316331461154a576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615314833981519152604482015290519081900360640190fd5b6000613f14613382565b613f1c6133d2565b82613f2681613490565b83613f308161342f565b83613f3a81614a83565b600554600160a060020a03878116911614801590613f7e5750600160a060020a0386166000908152600860205260409020600101546601000000000000900460ff16155b1515613fd4576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f5245534552564500000000000000000000000000604482015290519081900360640190fd5b60095463ffffffff908116620f4240038116908616111561403f576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b61ffff61404a612695565b61ffff1610614091576040805160e560020a62461bcd0281526020600482015260196024820152600080516020615334833981519152604482015290519081900360640190fd5b505050600160a060020a0390921660008181526008602052604081208181556001908101805466ff0000000000001963ffffffff80881663ffffffff1993841617919091166601000000000000179092556007805493840181559093527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6889091018054600160a060020a03191690931790925560098054808416909401909216921691909117905550565b61414461529d565b60008060008061415261529d565b61415a61529d565b600954600a54600b54604080517fb1772d7a000000000000000000000000000000000000000000000000000000008152600160a060020a0393841660048201529183166024830152516000938493849384936c010000000000000000000000009093049091169163b1772d7a9160448082019260609290919082900301818787803b1580156141e857600080fd5b505af11580156141fc573d6000803e3d6000fd5b505050506040513d606081101561421257600080fd5b5080516020820151604090920151601154919c50919a5090985088111561424f5760408051908101604052808b81526020018a8152509a50614373565b60115461425a6137c4565b0396508615156142825760408051808201909152600f54815260105460208201529a50614373565b61025887106142a95760408051808201909152601254815260135460208201529a50614373565b604080518082018252600f548152601054602080830191825283518085019094526012548085526013549185019190915290519198509196506142f19163ffffffff6138da16565b6020860151875191955061430b919063ffffffff6138da16565b9250614335614320858963ffffffff6138da16565b6115e3856102588b900363ffffffff6138da16565b9150614364610258614358876020015189602001516138da90919063ffffffff16565b9063ffffffff6138da16565b90506143708282614af8565b9a505b5050505050505050505090565b600a54600160a060020a03166000818152600c60205260408120549091829190829081906143ad906115a1565b600b549092506143c590600160a060020a03166115a1565b90506143f07f536f7672796e53776170466f726d756c610000000000000000000000000000006134f0565b600160a060020a031663a11aa1b461440f85601463ffffffff6138da16565b885160208a01516040805160e060020a63ffffffff87160281526004810194909452602484018890526044840187905260648401929092526084830152805160a4808401938290030181600087803b15801561446a57600080fd5b505af115801561447e573d6000803e3d6000fd5b505050506040513d604081101561449457600080fd5b5080516020909101519095509350505050915091565b60008080808063ffffffff891615156144e257600160a060020a038b1660009081526008602052604090206001015463ffffffff1698505b63ffffffff8816151561451457600160a060020a038a1660009081526008602052604090206001015463ffffffff1697505b61451d8b6115a1565b91506145288a6115a1565b90506145537f536f7672796e53776170466f726d756c610000000000000000000000000000006134f0565b604080517f94491fab0000000000000000000000000000000000000000000000000000000081526004810185905263ffffffff808d166024830152604482018590528b166064820152608481018990529051600160a060020a0392909216916394491fab9160a4808201926020929091908290030181600087803b1580156145da57600080fd5b505af11580156145ee573d6000803e3d6000fd5b505050506040513d602081101561460457600080fd5b5051945061461185614b4d565b9350614624846115e38c8c8c8c8b614b7d565b9250614636858463ffffffff613b7b16565b9450505096509650969350505050565b61464e613382565b6000614658612695565b61ffff161161469f576040805160e560020a62461bcd0281526020600482015260196024820152600080516020615334833981519152604482015290519081900360640190fd5b600560009054906101000a9004600160a060020a0316600160a060020a03166379ba50976040518163ffffffff1660e060020a028152600401600060405180830381600087803b1580156146f257600080fd5b505af1158015614706573d6000803e3d6000fd5b5050505061170a613b39565b600160a060020a038181166000908152600e602052604090205416151561154a576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f494e56414c49445f504f4f4c5f544f4b454e00000000000000000000604482015290519081900360640190fd5b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff199093169290921790915261483590849061492d565b505050565b6000806000614847613a83565b8761485181613303565b8761485b81613303565b6148668a8a8a614c56565b9094509250600160a060020a0389166000805160206152f483398151915214156148c657604051600160a060020a0387169085156108fc029086906000818181858888f193505050501580156148c0573d6000803e3d6000fd5b506148d1565b6148d1898786614783565b6148df8a8a898b8888614f6b565b600160a060020a03808b16600090815260086020526040808220600190810154938d1683529120015461491f918c918c9163ffffffff9081169116614ff0565b509198975050505050505050565b6149356152b4565b602060405190810160405280600181525090506020818351602085016000875af180151561496257600080fd5b5080511515614835576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b6149c361529d565b6000806149cf876115a1565b91506149da866115a1565b905063ffffffff85161515614a0e57600160a060020a03871660009081526008602052604090206001015463ffffffff1694505b63ffffffff84161515614a4057600160a060020a03861660009081526008602052604090206001015463ffffffff1693505b6040805180820190915280614a5e8363ffffffff808a16906138da16565b8152602001614a768463ffffffff808916906138da16565b9052979650505050505050565b60008163ffffffff16118015614aa25750620f424063ffffffff821611155b151561154a576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b614b0061529d565b614b0861529d565b828410614b2057614b198484615081565b9150613957565b614b2a8385615081565b604080518082019091526020808301518252825190820152925090505092915050565b600954600090612ac590620f4240906116c390859068010000000000000000900463ffffffff908116906138da16565b600b546000908190600160a060020a0388811691161415614beb57600a54600160a060020a039081166000908152600c6020908152604080832054600b54909416835290912054865191870151601654614be4949363ffffffff808d1693908c169261513e565b9050614c3a565b600a54600160a060020a039081166000908152600c6020908152604080832054600b54909416835290912054865191870151601654614c37949363ffffffff808c1693908d169261513e565b90505b614c4b620f42406116c385846138da565b979650505050505050565b6000806000614c6361529d565b600080600080614c716151aa565b95509550614c848b8b600080898e6144aa565b91955093509150831515614ce2576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b614ceb8a612aff565b9050808410614d44576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f5441524745545f414d4f554e545f544f4f5f48494748000000000000604482015290519081900360640190fd5b600160a060020a038b166000805160206152f48339815191521415614dbf57348914614dba576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b614ec1565b34158015614e6b575088614e68614dd58d612aff565b8d600160a060020a03166370a08231306040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b158015614e3057600080fd5b505af1158015614e44573d6000803e3d6000fd5b505050506040513d6020811015614e5a57600080fd5b50519063ffffffff613b7b16565b10155b1515614ec1576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b614eca8b613dc0565b614eda818563ffffffff613b7b16565b600160a060020a038b16600090815260086020908152604080832093909355600c90522054614f0f908463ffffffff61395e16565b600160a060020a038b166000908152600c60205260409020558515614f5a57600a54600b54614f4d91600160a060020a0390811691166000806149bb565b8051601255602001516013555b509199919850909650505050505050565b7f80000000000000000000000000000000000000000000000000000000000000008110614f9457fe5b60408051848152602081018490528082018390529051600160a060020a038087169288821692918a16917f276856b36cbc45526a0ba64f44611557a2a8b68662c5388e9fe6d72e86e1c8cb9181900360600190a4505050505050565b600080614fff86868686613d23565b61500885612033565b915081600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561504857600080fd5b505af115801561505c573d6000803e3d6000fd5b505050506040513d602081101561507257600080fd5b50519050612227828287613cc3565b61508961529d565b7314484bfeebc29f863424b06f3529a051a31be5998211156150db57604080518082019091526c0c9f2c9cd04674edea4000000080825260208201908504848115156150d157fe5b0490529050612ac5565b6c0c9f2c9cd04674edea400000008311156151285760408051908101604052806c0c9f2c9cd04674edea400000008152602001846c0c9f2c9cd04674edea4000000085028115156150d157fe5b5060408051808201909152918252602082015290565b60008080615156876143588c8963ffffffff6138da16565b915061516c886143588b8863ffffffff6138da16565b90508181111561519857615191816116c360146143588684038963ffffffff6138da16565b925061519d565b600092505b5050979650505050505050565b60006151b461529d565b60006151be61529d565b6151c661529d565b6151ce6137c4565b92508260115414156151fc5760408051808201909152600f548152601054602082015260009550935061315f565b61520461413c565b60408051808201909152600f5480825260105460208301528251929450909250148015615238575080602001518260200151145b15615249576000829450945061315f565b8151600f55602082015160105560118390556152636137c8565b50600194909350915050565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b604080518082019091526000808252602082015290565b60206040519081016040528060019060208202803883395091929150505600536f7672796e53776170436f6e76657274657255706772616465720000000000000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee4552525f4143434553535f44454e4945440000000000000000000000000000004552525f494e56414c49445f524553455256455f434f554e5400000000000000a165627a7a72305820fdb290fc35b0c0fc6a3850a3599eb08cff14f9d1e59cb6b97bcccb9ab43b34c70029a165627a7a723058202c9bddb1c055b369170123609c3840946dac344927d63f65dffe3c16b12059cb0029 \ No newline at end of file +608060405234801561001057600080fd5b50616109806100206000396000f30060806040526004361061004b5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416631141395881146100505780633e8ff43f146100b6575b600080fd5b34801561005c57600080fd5b5061008d73ffffffffffffffffffffffffffffffffffffffff6004358116906024351663ffffffff604435166100e2565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b3480156100c257600080fd5b506100cb6101d5565b6040805161ffff9092168252519081900360200190f35b6000808484846100f06101da565b73ffffffffffffffffffffffffffffffffffffffff938416815291909216602082015263ffffffff9091166040808301919091525190819003606001906000f080158015610142573d6000803e3d6000fd5b50604080517ff2fde38b000000000000000000000000000000000000000000000000000000008152336004820152905191925073ffffffffffffffffffffffffffffffffffffffff83169163f2fde38b9160248082019260009290919082900301818387803b1580156101b457600080fd5b505af11580156101c8573d6000803e3d6000fd5b5092979650505050505050565b600290565b604051615ef3806101eb833901905600608060405260016004819055600980546001606060020a03191690556017805460ff19169091179055620111706018553480156200003c57600080fd5b5060405160608062005ef383398101604090815281516020830151919092015160008054600160a060020a0319163317905582828282828281806200008a8164010000000062000137810204565b5060028054600160a060020a03909216600160a060020a031992831681179091556003805490921617905582620000ca8164010000000062000137810204565b81620000df81640100000000620001b2810204565b505060058054600160a060020a03909416600160a060020a031990941693909317909255506009805463ffffffff9092166401000000000267ffffffff0000000019909216919091179055506200022b945050505050565b600160a060020a0381161515620001af57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b620f424063ffffffff82161115620001af57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b615cb8806200023b6000396000f3006080604052600436106103335763ffffffff60e060020a6000350416625e319c81146103d1578063024c7ec7146104045780630337e3fb1461041e578063064bda021461044f5780630a55fb3d146104705780630c7d5cd8146104995780630e53aae9146104c7578063119b90cd1461051c57806312c2aca414610549578063164e68de1461055e57806316912f961461057f57806319b64015146105945780631cfab290146105ac5780631e1401f8146105cd57806321e6b53d1461061057806322f3e2d4146106315780632630c12f146106465780632bd3c1071461065b5780632bf0c9851461067c5780632fe8a6ad1461069d5780633341e006146106b257806338a5e016146106d3578063395900d4146106e85780633e8ff43f14610712578063467494681461073e57806349d10b64146107595780634af80f0e1461076e57806354fd4d501461078f57806355776b77146107a45780635768adcf146107be578063579cd3ca146107df5780635e35359e146107f457806361cd756e1461081e57806367b6d57c1461083357806369067d9514610854578063690d83201461087857806369d1354a146108995780636a49d2c4146108b157806371f52bf3146108db57806379ba5097146108f05780637b103999146109055780638da5cb5b1461091a57806394c275ad1461092f57806398a71dcb146109445780639b99a8e214610965578063a32bff441461097a578063af94b8d81461098f578063b4a176d3146109b9578063bf754558146109ce578063bf7da6ba146109e3578063c3321fb014610a07578063c45d3d9214610a1c578063cdc91c6914610a31578063d031370b14610a46578063d260529c14610a5e578063d3fb73b414610a73578063d4ee1d9014610a88578063d55ec69714610a9d578063d64c5a1a14610ab2578063d66bd52414610add578063d895951214610afe578063db2830a414610b1f578063dc75eb9a14610b34578063dc8de37914610b49578063e38192e314610b6a578063e8104af914610b91578063e8dc12ff14610ba6578063ec2240f514610bd0578063ecbca55d14610be5578063f2fde38b14610c03578063f9cddde214610c24578063fc0c546a14610c39575b600080516020615c2d83398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1615156103cf576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f5245534552564500000000000000000000000000604482015290519081900360640190fd5b005b3480156103dd57600080fd5b506103f2600160a060020a0360043516610c4e565b60408051918252519081900360200190f35b34801561041057600080fd5b506103cf6004351515610c77565b34801561042a57600080fd5b50610433610cbf565b60408051600160a060020a039092168252519081900360200190f35b34801561045b57600080fd5b506103f2600160a060020a0360043516610cce565b34801561047c57600080fd5b50610485610ce0565b604080519115158252519081900360200190f35b3480156104a557600080fd5b506104ae610ce9565b6040805163ffffffff9092168252519081900360200190f35b3480156104d357600080fd5b506104e8600160a060020a0360043516610cf5565b6040805195865263ffffffff9094166020860152911515848401521515606084015215156080830152519081900360a00190f35b34801561052857600080fd5b506103cf600160a060020a0360043581169060243581169060443516610d90565b34801561055557600080fd5b506104856114de565b34801561056a57600080fd5b506103f2600160a060020a0360043516611527565b34801561058b57600080fd5b506103cf611b1b565b3480156105a057600080fd5b50610433600435611b2f565b3480156105b857600080fd5b506104ae600160a060020a0360043516611b5b565b3480156105d957600080fd5b506105f7600160a060020a0360043581169060243516604435611b8d565b6040805192835260208301919091528051918290030190f35b34801561061c57600080fd5b506103cf600160a060020a0360043516611ba7565b34801561063d57600080fd5b50610485611bbb565b34801561065257600080fd5b50610433611be0565b34801561066757600080fd5b506103f2600160a060020a0360043516611bef565b34801561068857600080fd5b506103f2600160a060020a0360043516611c44565b3480156106a957600080fd5b50610485611d27565b3480156106be57600080fd5b506103f2600160a060020a0360043516611d48565b3480156106df57600080fd5b506103cf611d63565b3480156106f457600080fd5b506103cf600160a060020a0360043581169060243516604435611d75565b34801561071e57600080fd5b50610727611e10565b6040805161ffff9092168252519081900360200190f35b34801561074a57600080fd5b506103cf600435602435611e15565b34801561076557600080fd5b506103cf611e99565b34801561077a57600080fd5b506103cf600160a060020a03600435166120e3565b34801561079b57600080fd5b50610727612118565b6103f2600160a060020a036004351660243560443561211d565b3480156107ca57600080fd5b50610433600160a060020a0360043516612686565b3480156107eb57600080fd5b506104ae6126a4565b34801561080057600080fd5b506103cf600160a060020a03600435811690602435166044356126bc565b34801561082a57600080fd5b506104336127d0565b34801561083f57600080fd5b506103cf600160a060020a03600435166127df565b34801561086057600080fd5b506105f7600160a060020a0360043516602435612882565b34801561088457600080fd5b506103cf600160a060020a03600435166129dd565b3480156108a557600080fd5b506103cf600435612ae2565b3480156108bd57600080fd5b506103cf600160a060020a036004351663ffffffff60243516612b87565b3480156108e757600080fd5b50610727612be6565b3480156108fc57600080fd5b506103cf612bf0565b34801561091157600080fd5b50610433612ca4565b34801561092657600080fd5b50610433612cb3565b34801561093b57600080fd5b506104ae612cc2565b34801561095057600080fd5b506103f2600160a060020a0360043516612cd6565b34801561097157600080fd5b50610727612ce8565b34801561098657600080fd5b506105f7612cee565b34801561099b57600080fd5b506105f7600160a060020a0360043581169060243516604435612cf7565b3480156109c557600080fd5b506103cf612e9b565b3480156109da57600080fd5b50610485612ec7565b3480156109ef57600080fd5b506103cf600160a060020a0360043516602435612ecc565b348015610a1357600080fd5b506103f2612f14565b348015610a2857600080fd5b50610433612f1a565b348015610a3d57600080fd5b506103cf612f29565b348015610a5257600080fd5b50610433600435612f82565b348015610a6a57600080fd5b50610485612faa565b348015610a7f57600080fd5b50610433612faf565b348015610a9457600080fd5b50610433612fbe565b348015610aa957600080fd5b506103cf612fcd565b348015610abe57600080fd5b50610ac76130c2565b6040805160ff9092168252519081900360200190f35b348015610ae957600080fd5b506104e8600160a060020a03600435166130c7565b348015610b0a57600080fd5b506103f2600160a060020a036004351661310d565b348015610b2b57600080fd5b506105f761311e565b348015610b4057600080fd5b50610433613143565b348015610b5557600080fd5b506103f2600160a060020a0360043516613152565b348015610b7657600080fd5b506103f2600160a060020a036004351660243560443561317b565b348015610b9d57600080fd5b506103f26134e0565b6103f2600160a060020a0360043581169060243581169060443590606435811690608435166134e6565b348015610bdc57600080fd5b506105f7613739565b348015610bf157600080fd5b506103cf63ffffffff600435166137b9565b348015610c0f57600080fd5b506103cf600160a060020a03600435166138ae565b348015610c3057600080fd5b506105f761393e565b348015610c4557600080fd5b50610433613947565b600081610c5a81613956565b5050600160a060020a03166000908152600e602052604090205490565b610c7f6139d5565b60038054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b600c54600160a060020a031681565b600a6020526000908152604090205481565b60175460ff1681565b60095463ffffffff1681565b6000806000806000610d05615ba8565b50505050600160a060020a03929092166000908152600860209081526040808320815160a081018352815480825260019092015463ffffffff811694820185905260ff64010000000082048116151594830194909452650100000000008104841615156060830152660100000000000090049092161515608090920182905295919450919250829190565b6000806000806000610da0613a25565b610da86139d5565b87610db281613956565b87610dbc81613a82565b87610dc681613a82565b89610dd081613ae3565b89610dda81613ae3565b600554604080517f8da5cb5b00000000000000000000000000000000000000000000000000000000815290513092600160a060020a031691638da5cb5b9160048083019260209291908290030181600087803b158015610e3957600080fd5b505af1158015610e4d573d6000803e3d6000fd5b505050506040513d6020811015610e6357600080fd5b5051600160a060020a031614610ec3576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f414e43484f525f4e4f545f4f574e4544000000000000000000000000604482015290519081900360640190fd5b610eec7f436861696e6c696e6b4f7261636c6557686974656c6973740000000000000000613b43565b995089600160a060020a0316633af32abf8d6040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b158015610f4957600080fd5b505af1158015610f5d573d6000803e3d6000fd5b505050506040513d6020811015610f7357600080fd5b50511515610fcb576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f4f5241434c450000000000000000000000000000604482015290519081900360640190fd5b89600160a060020a0316633af32abf8c6040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b15801561102657600080fd5b505af115801561103a573d6000803e3d6000fd5b505050506040513d602081101561105057600080fd5b505115156110a8576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f4f5241434c450000000000000000000000000000604482015290519081900360640190fd5b6110b0613bc5565b600c8054600160a060020a031916600160a060020a038f161790556007805460009081106110da57fe5b600091825260209091200154600160a060020a038e8116911614156111385760078054600190811061110857fe5b600091825260209091200154600d8054600160a060020a031916600160a060020a03909216919091179055611173565b60078054600090811061114757fe5b600091825260209091200154600d8054600160a060020a031916600160a060020a039092169190911790555b61119c7f436f6e766572746572466163746f727900000000000000000000000000000000613b43565b600160a060020a031663c977aed26111b2611e10565b6040518263ffffffff1660e060020a028152600401808261ffff1661ffff168152602001915050602060405180830381600087803b1580156111f357600080fd5b505af1158015611207573d6000803e3d6000fd5b505050506040513d602081101561121d57600080fd5b8101908080519060200190929190505050985088600160a060020a0316631b27444e8e600d60009054906101000a9004600160a060020a03168f8f6040518563ffffffff1660e060020a0281526004018085600160a060020a0316600160a060020a0316815260200184600160a060020a0316600160a060020a0316815260200183600160a060020a0316600160a060020a0316815260200182600160a060020a0316600160a060020a03168152602001945050505050602060405180830381600087803b1580156112ee57600080fd5b505af1158015611302573d6000803e3d6000fd5b505050506040513d602081101561131857600080fd5b5051600b8054600160a060020a031916600160a060020a039283161790819055600c54600d54604080517fae818004000000000000000000000000000000000000000000000000000000008152928516600484015290841660248301528051929093169263ae818004926044808401938290030181600087803b15801561139e57600080fd5b505af11580156113b2573d6000803e3d6000fd5b505050506040513d60408110156113c857600080fd5b508051602090910151601281905560118290556014919091556015556113ec613e01565b601355600c5461140490600160a060020a0316610c4e565b600c5490985061141c90600160a060020a0316613152565b600d5490975061143490600160a060020a0316613152565b95508688141561145f57600088118061144d5750600086115b1561145a5761145a613e05565b611488565b60008811801561146f5750600087115b801561147b5750600086115b1561148857611488613e05565b600554600190600160a060020a031661149f611e10565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a450505050505050505050505050565b600080516020615c2d83398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c43546601000000000000900460ff1690565b600080600080600080600080606061153d613e7d565b600160a060020a0316331461159c576040805160e560020a62461bcd02815260206004820152600c60248201527f756e617574686f72697a65640000000000000000000000000000000000000000604482015290519081900360640190fd5b6115c57f536f7672796e537761704e6574776f726b000000000000000000000000000000613b43565b9450600093505b600754841015611afb5760078054859081106115e457fe5b6000918252602080832090910154600160a060020a0316808352600a90915260408220549099509750871161161857611af0565b600160a060020a0388166000908152600a6020526040812055611639613fa6565b600160a060020a031688600160a060020a031614156117805787600160a060020a031663095ea7b3611669613e7d565b896040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b1580156116bc57600080fd5b505af11580156116d0573d6000803e3d6000fd5b505050506040513d60208110156116e657600080fd5b506116f19050613e7d565b600160a060020a031663abe979e1611707613fa6565b6040805160e060020a63ffffffff8516028152600160a060020a0390921660048301526bffffffffffffffffffffffff8b16602483015251604480830192600092919082900301818387803b15801561175f57600080fd5b505af1158015611773573d6000803e3d6000fd5b5050505060009250611a9e565b61178861409e565b600160a060020a031688600160a060020a031614156117a957869250611a8b565b87600160a060020a031663095ea7b36117e17f536f7672796e537761704e6574776f726b000000000000000000000000000000613b43565b896040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b15801561183457600080fd5b505af1158015611848573d6000803e3d6000fd5b505050506040513d602081101561185e57600080fd5b505191508115156118b9576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f415050524f56414c5f4641494c454400000000000000000000000000604482015290519081900360640190fd5b84600160a060020a031663d734fa19896118d161409e565b6040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182600160a060020a0316600160a060020a0316815260200192505050600060405180830381600087803b15801561193557600080fd5b505af1158015611949573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561197257600080fd5b81019080805164010000000081111561198a57600080fd5b8201602081018481111561199d57600080fd5b81518560208202830111640100000000821117156119ba57600080fd5b5050929190505050905084600160a060020a031663f3898a97828960016040518463ffffffff1660e060020a0281526004018080602001848152602001838152602001828103825285818151815260200191508051906020019060200280838360005b83811015611a35578181015183820152602001611a1d565b50505050905001945050505050602060405180830381600087803b158015611a5c57600080fd5b505af1158015611a70573d6000803e3d6000fd5b505050506040513d6020811015611a8657600080fd5b505192505b611a9b868463ffffffff61419616565b95505b60408051600160a060020a038a81168252602082018a90528183018690529151918c169133917f3953f559f015828db2bd3868682d85a85c6e24c3f05fb4e927797d7c007b3673919081900360600190a35b6001909301926115cc565b611b0d611b0661409e565b8b886141fe565b509398975050505050505050565b611b236139d5565b6017805460ff19169055565b6000600782815481101515611b4057fe5b600091825260209091200154600160a060020a031692915050565b600081611b6781613956565b5050600160a060020a031660009081526008602052604090206001015463ffffffff1690565b600080611b9b858585612cf7565b91509150935093915050565b611baf6139d5565b611bb8816127df565b50565b6000611bc56142b5565b8015611bdb5750600b54600160a060020a031615155b905090565b600b54600160a060020a031681565b600081611bfb81613956565b611c3d611c0784613152565b600160a060020a0385166000908152600e6020526040902054611c3190601363ffffffff61434f16565b9063ffffffff61419616565b9392505050565b600080600080600085600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611c8a57600080fd5b505af1158015611c9e573d6000803e3d6000fd5b505050506040513d6020811015611cb457600080fd5b5051600160a060020a03808816600090815260106020526040902054919550169250611cdf83613152565b600160a060020a0384166000908152600e60205260409020549092509050611d1d81611d11848763ffffffff61434f16565b9063ffffffff6143c816565b9695505050505050565b60035474010000000000000000000000000000000000000000900460ff1681565b600160a060020a03166000908152600a602052604090205490565b611d6b6139d5565b611d73612f29565b565b611d7d6139d5565b600554604080517f5e35359e000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015285811660248301526044820185905291519190921691635e35359e91606480830192600092919082900301818387803b158015611df357600080fd5b505af1158015611e07573d6000803e3d6000fd5b50505050505050565b600290565b611e1d6139d5565b816016600060076000815481101515611e3257fe5b6000918252602080832090910154600160a060020a0316835282019290925260400181209190915560078054839260169290916001908110611e7057fe5b6000918252602080832090910154600160a060020a031683528201929092526040019020555050565b60008054600160a060020a0316331480611ece575060035474010000000000000000000000000000000000000000900460ff16155b1515611f12576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615c4d833981519152604482015290519081900360640190fd5b611f3b7f436f6e7472616374526567697374727900000000000000000000000000000000613b43565b600254909150600160a060020a03808316911614801590611f645750600160a060020a03811615155b1515611fba576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6040805160e260020a632ecd14d30281527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b15801561202857600080fd5b505af115801561203c573d6000803e3d6000fd5b505050506040513d602081101561205257600080fd5b5051600160a060020a031614156120b3576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a03808416600160a060020a0319928316179092559091169216919091179055565b6120eb6139d5565b806120f581613a82565b5060068054600160a060020a031916600160a060020a0392909216919091179055565b602081565b600080600080600061212d614436565b600260045561213a614490565b8761214481613956565b8761214e816144ee565b87612158816144ee565b600160a060020a038b16600080516020615c2d8339815191521461217d573415612181565b8934145b15156121d7576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b6121df614546565b600160a060020a038b16600080516020615c2d833981519152141561228157600080516020615c2d83398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c4254612247903463ffffffff61458816565b600080516020615c2d83398151915260005260086020527f353c2eb9e53a4a4a6d45d72082ff2e9dc829d1125618772a83eb0e7f86632c42555b600160a060020a038b166000908152600e602052604090205460175490975060ff161561234a57600160a060020a038b1660009081526016602052604090205415806122f45750600160a060020a038b166000908152601660205260409020546122f1888c63ffffffff61419616565b11155b151561234a576040805160e560020a62461bcd02815260206004820152601e60248201527f4552525f4d41585f5354414b45445f42414c414e43455f524541434845440000604482015290519081900360640190fd5b600160a060020a03808c166000908152600f602090815260408083205481517f18160ddd00000000000000000000000000000000000000000000000000000000815291519416995089936318160ddd93600480840194938390030190829087803b1580156123b757600080fd5b505af11580156123cb573d6000803e3d6000fd5b505050506040513d60208110156123e157600080fd5b50519450600160a060020a038b16600080516020615c2d8339815191521461240f5761240f8b33308d6145e8565b600160a060020a038b16600090815260086020526040902054612438908b63ffffffff61419616565b600160a060020a038c16600090815260086020526040902055612461878b63ffffffff61419616565b600160a060020a038c166000908152600e6020526040812091909155935086158061248a575084155b15612497578993506124ae565b6124ab87611d118c8863ffffffff61434f16565b93505b88841015612506576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f52455455524e5f544f4f5f4c4f570000000000000000000000000000604482015290519081900360640190fd5b600554604080517fc6c3bbe6000000000000000000000000000000000000000000000000000000008152600160a060020a038981166004830152336024830152604482018890529151919092169163c6c3bbe691606480830192600092919082900301818387803b15801561257a57600080fd5b505af115801561258e573d6000803e3d6000fd5b5050505061259a613e05565b600160a060020a038b16337f4a1a2a6176e9646d9e3157f7c2ab3c499f18337c0b0828cfb28e0a61de4a11f78c6125d78b8263ffffffff61419616565b6125e78a8a63ffffffff61419616565b60408051938452602084019290925282820152519081900360600190a361261e86612618878763ffffffff61419616565b8d6146d0565b6126736007600081548110151561263157fe5b60009182526020909120015460078054600160a060020a0390921691600190811061265857fe5b6000918252602082200154600160a060020a03169080614730565b5050600160045550979650505050505050565b600160a060020a039081166000908152600f60205260409020541690565b60095468010000000000000000900463ffffffff1681565b60006126c6614436565b60026004556126d36139d5565b6126ea600080516020615c0d833981519152613b43565b600160a060020a0385166000908152600860205260409020600101549091506601000000000000900460ff1615806127275750612725611bbb565b155b8061273f5750600054600160a060020a038281169116145b1515612783576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615c4d833981519152604482015290519081900360640190fd5b61278e84848461479c565b600160a060020a0384166000908152600860205260409020600101546601000000000000900460ff16156127c5576127c5846147cd565b505060016004555050565b600354600160a060020a031681565b6127e76139d5565b600080516020615c0d8339815191526127ff816148e3565b600554604080517ff2fde38b000000000000000000000000000000000000000000000000000000008152600160a060020a0385811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b15801561286657600080fd5b505af115801561287a573d6000803e3d6000fd5b505050505050565b6000806000806000806000806000808b600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156128cf57600080fd5b505af11580156128e3573d6000803e3d6000fd5b505050506040513d60208110156128f957600080fd5b5051600160a060020a03808e166000908152601060209081526040808320549093168252600e905220549098509650878b10156129c457600c54600160a060020a03166000908152600e602052604090205461295c90601463ffffffff61434f16565b600c5490965061297490600160a060020a0316611bef565b9450848610612984578486612987565b85855b90945092506129a088611d118d8a63ffffffff61434f16565b91506129b683611d11848763ffffffff61434f16565b9950508881039750886129ce565b9598506000975088955b50505050505050509250929050565b60006129e7614436565b60026004556129f46139d5565b600080516020615c2d833981519152612a0c81613956565b612a23600080516020615c0d833981519152613b43565b9150612a2d611bbb565b1580612a465750600054600160a060020a038381169116145b1515612a8a576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615c4d833981519152604482015290519081900360640190fd5b604051600160a060020a03841690303180156108fc02916000818181858888f19350505050158015612ac0573d6000803e3d6000fd5b50612ad8600080516020615c2d8339815191526147cd565b5050600160045550565b612aea6139d5565b620186a0811115612b45576040805160e560020a62461bcd02815260206004820152601e60248201527f4552525f494e56414c49445f44594e414d49435f4645455f464143544f520000604482015290519081900360640190fd5b601854604080519182526020820183905280517f382fd3516344712a511dcd464ff8e6ab54139d6a28f64087a3253353ee7a56799281900390910190a1601855565b6002612b91612ce8565b61ffff1610612bd8576040805160e560020a62461bcd0281526020600482015260196024820152600080516020615c6d833981519152604482015290519081900360640190fd5b612be28282614939565b5050565b6000611bdb612ce8565b600154600160a060020a03163314612c40576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615c4d833981519152604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a36001805460008054600160a060020a0319908116600160a060020a03841617909155169055565b600254600160a060020a031681565b600054600160a060020a031681565b600954640100000000900463ffffffff1681565b60166020526000908152604090205481565b60075490565b60115460125482565b600080600080612d05615bd6565b600080600080612d13614490565b612d1c8c613956565b612d258b613956565b600160a060020a038c8116908c161415612d89576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f53414d455f534f555243455f54415247455400000000000000000000604482015290519081900360640190fd5b612d91613e01565b6013541415612e38576011604080519081016040529081600082015481526020016001820154815250509450600860008d600160a060020a0316600160a060020a0316815260200190815260200160002060010160009054906101000a900463ffffffff169650600860008c600160a060020a0316600160a060020a0316815260200190815260200160002060010160009054906101000a900463ffffffff169550612e78565b612e40614b6b565b9450612e4b85614d9e565b600c549195509350600160a060020a038d811691161415612e7157839650829550612e78565b8296508395505b612e868c8c8989898f614ec8565b919e919d50909b505050505050505050505050565b612ea36139d5565b60035460028054600160a060020a031916600160a060020a03909216919091179055565b600181565b612ed46139d5565b600080516020615c0d833981519152612eec816148e3565b82612ef681613956565b5050600160a060020a039091166000908152600e6020526040902055565b60135481565b600654600160a060020a031681565b6001612f33612ce8565b61ffff1611612f7a576040805160e560020a62461bcd0281526020600482015260196024820152600080516020615c6d833981519152604482015290519081900360640190fd5b611d73615064565b6007805482908110612f9057fe5b600091825260209091200154600160a060020a0316905081565b600190565b600554600160a060020a031681565b600154600160a060020a031681565b6000612fd76139d5565b612fee600080516020615c0d833981519152613b43565b600554909150600090600160a060020a0316613008611e10565b61ffff167f6b08c2e2c9969e55a647a764db9b554d64dc42f1a704da11a6d5b129ad163f2c60405160405180910390a4613041816138ae565b604080517f90f58c96000000000000000000000000000000000000000000000000000000008152602060048201529051600160a060020a038316916390f58c9691602480830192600092919082900301818387803b1580156130a257600080fd5b505af11580156130b6573d6000803e3d6000fd5b50505050611bb8612bf0565b601490565b6008602052600090815260409020805460019091015463ffffffff81169060ff640100000000820481169165010000000000810482169166010000000000009091041685565b600061311882613152565b92915050565b600080613129615bd6565b613131614b6b565b80516020909101519094909350915050565b600d54600160a060020a031681565b60008161315e81613956565b5050600160a060020a031660009081526008602052604090205490565b60008060008060008061318c614436565b6002600455613199614490565b886131a381615130565b886131ad816144ee565b886131b7816144ee565b6131bf614546565b8b600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156131fd57600080fd5b505af1158015613211573d6000803e3d6000fd5b505050506040513d602081101561322757600080fd5b505197506132358c8c612882565b50965089871015613290576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f52455455524e5f544f4f5f4c4f570000000000000000000000000000604482015290519081900360640190fd5b601060008d600160a060020a0316600160a060020a0316815260200190815260200160002060009054906101000a9004600160a060020a03169550600560009054906101000a9004600160a060020a0316600160a060020a031663f6b911bc8d338e6040518463ffffffff1660e060020a0281526004018084600160a060020a0316600160a060020a0316815260200183600160a060020a0316600160a060020a031681526020018281526020019350505050600060405180830381600087803b15801561335d57600080fd5b505af1158015613371573d6000803e3d6000fd5b505050600160a060020a03871660009081526008602052604090205461339e91508863ffffffff61458816565b600160a060020a038716600090815260086020908152604080832093909355600e905220546133d3908863ffffffff61458816565b600160a060020a0387166000818152600e60205260409020829055909550600080516020615c2d833981519152141561343957604051339088156108fc029089906000818181858888f19350505050158015613433573d6000803e3d6000fd5b50613444565b6134448633896141fe565b61344c613e05565b61345c888c63ffffffff61458816565b60408051898152602081018890528082018390529051919550600160a060020a0388169133917fbc7d19d505c7ec4db83f3b51f19fb98c4c8a99922e7839d1ee608dfbee29501b919081900360600190a36134b88c85886146d0565b6134cb6007600081548110151561263157fe5b50506001600455509298975050505050505050565b60185481565b60006134f0614436565b60026004557f536f7672796e537761704e6574776f726b00000000000000000000000000000061351f816148e3565b600160a060020a038781169087161415613583576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f53414d455f534f555243455f54415247455400000000000000000000604482015290519081900360640190fd5b600654600160a060020a031615806136c65750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03878116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b1580156135fe57600080fd5b505af1158015613612573d6000803e3d6000fd5b505050506040513d602081101561362857600080fd5b505180156136c65750600654604080517f3af32abf000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015291519190921691633af32abf9160248083019260209291908290030181600087803b15801561369957600080fd5b505af11580156136ad573d6000803e3d6000fd5b505050506040513d60208110156136c357600080fd5b50515b151561371c576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f4e4f545f57484954454c495354454400000000000000000000000000604482015290519081900360640190fd5b61372987878787876151a1565b6001600455979650505050505050565b600080613744615bd6565b60008061374f614b6b565b925061375a83614d9e565b915091506007600081548110151561376e57fe5b600091825260209091200154600c54600160a060020a03908116911614156137a35763ffffffff8083169550811693506137b2565b63ffffffff8082169550821693505b5050509091565b6137c16139d5565b60095463ffffffff6401000000009091048116908216111561382d576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f434f4e56455253494f4e5f464545000000000000604482015290519081900360640190fd5b6009546040805163ffffffff6801000000000000000090930483168152918316602083015280517f81cd2ffb37dd237c0e4e2a3de5265fcf9deb43d3e7801e80db9f1ccfba7ee6009281900390910190a16009805463ffffffff90921668010000000000000000026bffffffff000000000000000019909216919091179055565b6138b66139d5565b600054600160a060020a038281169116141561391c576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b60018054600160a060020a031916600160a060020a0392909216919091179055565b60145460155482565b600554600160a060020a031690565b600160a060020a0381166000908152600860205260409020600101546601000000000000900460ff161515611bb8576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f5245534552564500000000000000000000000000604482015290519081900360640190fd5b600054600160a060020a03163314611d73576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615c4d833981519152604482015290519081900360640190fd5b613a2d611bbb565b15611d73576040805160e560020a62461bcd02815260206004820152600a60248201527f4552525f41435449564500000000000000000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a038116301415611bb8576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b600160a060020a0381161515611bb8576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b6002546040805160e260020a632ecd14d3028152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b158015613b9357600080fd5b505af1158015613ba7573d6000803e3d6000fd5b505050506040513d6020811015613bbd57600080fd5b505192915050565b60006060600080600080600560009054906101000a9004600160a060020a0316955085600160a060020a0316636d3e313e6040518163ffffffff1660e060020a028152600401600060405180830381600087803b158015613c2557600080fd5b505af1158015613c39573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015613c6257600080fd5b810190808051640100000000811115613c7a57600080fd5b82016020810184811115613c8d57600080fd5b8151856020820283011164010000000082111715613caa57600080fd5b505080516007549199501597509550600094505050505b8282101561287a578315613d405785600160a060020a0316639cbf9e366040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015613d0d57600080fd5b505af1158015613d21573d6000803e3d6000fd5b505050506040513d6020811015613d3757600080fd5b50519050613d5b565b8482815181101515613d4e57fe5b9060200190602002015190505b80600f6000600785815481101515613d6f57fe5b600091825260208083209190910154600160a060020a03908116845290830193909352604090910190208054600160a060020a031916929091169190911790556007805483908110613dbd57fe5b6000918252602080832090910154600160a060020a038481168452601090925260409092208054600160a060020a0319169190921617905560019190910190613cc1565b4290565b60408051808201909152601154815260125460208201526000908190613e2a90614d9e565b600c54600160a060020a039081166000908152600860205260408082206001908101805463ffffffff97881663ffffffff1991821617909155600d54909416835291200180549290931691161790555050565b6002546040805160e260020a632ecd14d30281527f5377617053657474696e6773000000000000000000000000000000000000000060048201529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b158015613eec57600080fd5b505af1158015613f00573d6000803e3d6000fd5b505050506040513d6020811015613f1657600080fd5b5051604080517fe8f627640000000000000000000000000000000000000000000000000000000081529051600160a060020a039092169163e8f62764916004808201926020929091908290030181600087803b158015613f7557600080fd5b505af1158015613f89573d6000803e3d6000fd5b505050506040513d6020811015613f9f57600080fd5b5051905090565b6002546040805160e260020a632ecd14d30281527f5377617053657474696e6773000000000000000000000000000000000000000060048201529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561401557600080fd5b505af1158015614029573d6000803e3d6000fd5b505050506040513d602081101561403f57600080fd5b5051604080517fb9cffa3e0000000000000000000000000000000000000000000000000000000081529051600160a060020a039092169163b9cffa3e916004808201926020929091908290030181600087803b158015613f7557600080fd5b6002546040805160e260020a632ecd14d30281527f5377617053657474696e6773000000000000000000000000000000000000000060048201529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561410d57600080fd5b505af1158015614121573d6000803e3d6000fd5b505050506040513d602081101561413757600080fd5b5051604080517f99a752b50000000000000000000000000000000000000000000000000000000081529051600160a060020a03909216916399a752b5916004808201926020929091908290030181600087803b158015613f7557600080fd5b6000828201838110156141f3576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b8091505b5092915050565b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19909316929092179091526142b0908490615296565b505050565b600030600160a060020a0316600560009054906101000a9004600160a060020a0316600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561431457600080fd5b505af1158015614328573d6000803e3d6000fd5b505050506040513d602081101561433e57600080fd5b5051600160a060020a031614905090565b60008083151561436257600091506141f7565b5082820282848281151561437257fe5b04146141f3576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b600080808311614422576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f4449564944455f42595f5a45524f0000000000000000000000000000604482015290519081900360640190fd5b828481151561442d57fe5b04949350505050565b600454600114611d73576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5245454e5452414e4359000000000000000000000000000000000000604482015290519081900360640190fd5b614498611bbb565b1515611d73576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f494e4143544956450000000000000000000000000000000000000000604482015290519081900360640190fd5b60008111611bb8576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5a45524f5f56414c5545000000000000000000000000000000000000604482015290519081900360640190fd5b60075460005b81811015612be25761458060078281548110151561456657fe5b600091825260209091200154600160a060020a03166147cd565b60010161454c565b6000818310156145e2576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b604080517f7472616e7366657246726f6d28616464726573732c616464726573732c75696e81527f74323536290000000000000000000000000000000000000000000000000000006020808301919091528251918290036025018220600160a060020a038088166024850152861660448401526064808401869052845180850390910181526084909301909352810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19909316929092179091526146ca908590615296565b50505050565b600160a060020a038082166000818152600e6020908152604091829020548251908152908101869052815192938716927f77f29993cf2c084e726f7e802da0719d6a0ade3e204badc7a3ffd57ecb768c24929181900390910190a3505050565b614738615bd6565b61474485858585615324565b805160208083015160408051938452918301528051929350600160a060020a0380881693908916927f77f29993cf2c084e726f7e802da0719d6a0ade3e204badc7a3ffd57ecb768c2492908290030190a35050505050565b6147a46139d5565b826147ae81613ae3565b826147b881613ae3565b836147c281613a82565b61287a8686866141fe565b806147d781613956565b600160a060020a038216600080516020615c2d833981519152141561481757600160a060020a038216600090815260086020526040902030319055612be2565b600160a060020a0382166000818152600a602090815260408083205481517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015291516148c695919491936370a0823193602480820194929392918390030190829087803b15801561488e57600080fd5b505af11580156148a2573d6000803e3d6000fd5b505050506040513d60208110156148b857600080fd5b50519063ffffffff61458816565b600160a060020a0383166000908152600860205260409020555050565b6148ec81613b43565b600160a060020a03163314611bb8576040805160e560020a62461bcd0281526020600482015260116024820152600080516020615c4d833981519152604482015290519081900360640190fd5b60006149436139d5565b61494b613a25565b8261495581613ae3565b8361495f81613a82565b83614969816153ec565b600554600160a060020a038781169116148015906149ad5750600160a060020a0386166000908152600860205260409020600101546601000000000000900460ff16155b1515614a03576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f5245534552564500000000000000000000000000604482015290519081900360640190fd5b60095463ffffffff908116620f42400381169086161115614a6e576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b61ffff614a79612ce8565b61ffff1610614ac0576040805160e560020a62461bcd0281526020600482015260196024820152600080516020615c6d833981519152604482015290519081900360640190fd5b505050600160a060020a0390921660008181526008602052604081208181556001908101805466ff0000000000001963ffffffff80881663ffffffff1993841617919091166601000000000000179092556007805493840181559093527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6889091018054600160a060020a03191690931790925560098054808416909401909216921691909117905550565b614b73615bd6565b600080600080614b81615bd6565b614b89615bd6565b600b54600c54600d54604080517fb1772d7a000000000000000000000000000000000000000000000000000000008152600160a060020a039384166004820152918316602483015251600093849384938493919092169163b1772d7a91604480830192606092919082900301818787803b158015614c0657600080fd5b505af1158015614c1a573d6000803e3d6000fd5b505050506040513d6060811015614c3057600080fd5b5080516020820151604090920151601354919c50919a50909850881115614c6d5760408051908101604052808b81526020018a8152509a50614d91565b601354614c78613e01565b039650861515614ca05760408051808201909152601154815260125460208201529a50614d91565b6102588710614cc75760408051808201909152601454815260155460208201529a50614d91565b604080518082018252601154815260125460208083019182528351808501909452601454808552601554918501919091529051919850919650614d0f9163ffffffff61434f16565b60208601518751919550614d29919063ffffffff61434f16565b9250614d53614d3e858963ffffffff61434f16565b611c31856102588b900363ffffffff61434f16565b9150614d82610258614d768760200151896020015161434f90919063ffffffff16565b9063ffffffff61434f16565b9050614d8e8282615461565b9a505b5050505050505050505090565b600c54600160a060020a03166000818152600e6020526040812054909182919082908190614dcb90611bef565b600d54909250614de390600160a060020a0316611bef565b9050614e0e7f536f7672796e53776170466f726d756c61000000000000000000000000000000613b43565b600160a060020a031663a11aa1b4614e2d85601463ffffffff61434f16565b885160208a01516040805160e060020a63ffffffff87160281526004810194909452602484018890526044840187905260648401929092526084830152805160a4808401938290030181600087803b158015614e8857600080fd5b505af1158015614e9c573d6000803e3d6000fd5b505050506040513d6040811015614eb257600080fd5b5080516020909101519095509350505050915091565b60008080808063ffffffff89161515614f0057600160a060020a038b1660009081526008602052604090206001015463ffffffff1698505b63ffffffff88161515614f3257600160a060020a038a1660009081526008602052604090206001015463ffffffff1697505b614f3b8b611bef565b9150614f468a611bef565b9050614f717f536f7672796e53776170466f726d756c61000000000000000000000000000000613b43565b604080517f94491fab0000000000000000000000000000000000000000000000000000000081526004810185905263ffffffff808d166024830152604482018590528b166064820152608481018990529051600160a060020a0392909216916394491fab9160a4808201926020929091908290030181600087803b158015614ff857600080fd5b505af115801561500c573d6000803e3d6000fd5b505050506040513d602081101561502257600080fd5b5051945061502f856154b6565b935061504284611c318c8c8c8c8b6154e6565b9250615054858463ffffffff61458816565b9450505096509650969350505050565b61506c6139d5565b6000615076612ce8565b61ffff16116150bd576040805160e560020a62461bcd0281526020600482015260196024820152600080516020615c6d833981519152604482015290519081900360640190fd5b600560009054906101000a9004600160a060020a0316600160a060020a03166379ba50976040518163ffffffff1660e060020a028152600401600060405180830381600087803b15801561511057600080fd5b505af1158015615124573d6000803e3d6000fd5b50505050611d73614546565b600160a060020a03818116600090815260106020526040902054161515611bb8576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f494e56414c49445f504f4f4c5f544f4b454e00000000000000000000604482015290519081900360640190fd5b60008060006151ae614490565b876151b881613956565b876151c281613956565b6151cd8a8a8a6155bf565b9094509250600160a060020a038916600080516020615c2d833981519152141561522d57604051600160a060020a0387169085156108fc029086906000818181858888f19350505050158015615227573d6000803e3d6000fd5b50615238565b6152388987866141fe565b6152488a8a898b8888600061589c565b600160a060020a03808b16600090815260086020526040808220600190810154938d16835291200154615288918c918c9163ffffffff9081169116615929565b509198975050505050505050565b61529e615bed565b602060405190810160405280600181525090506020818351602085016000875af18015156152cb57600080fd5b50805115156142b0576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b61532c615bd6565b60008061533887611bef565b915061534386611bef565b905063ffffffff8516151561537757600160a060020a03871660009081526008602052604090206001015463ffffffff1694505b63ffffffff841615156153a957600160a060020a03861660009081526008602052604090206001015463ffffffff1693505b60408051808201909152806153c78363ffffffff808a169061434f16565b81526020016153df8463ffffffff8089169061434f16565b9052979650505050505050565b60008163ffffffff1611801561540b5750620f424063ffffffff821611155b1515611bb8576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b615469615bd6565b615471615bd6565b8284106154895761548284846159ba565b91506141f7565b61549383856159ba565b604080518082019091526020808301518252825190820152925090505092915050565b60095460009061311890620f424090611d1190859068010000000000000000900463ffffffff9081169061434f16565b600d546000908190600160a060020a038881169116141561555457600c54600160a060020a039081166000908152600e6020908152604080832054600d5490941683529091205486519187015160185461554d949363ffffffff808d1693908c1692615a77565b90506155a3565b600c54600160a060020a039081166000908152600e6020908152604080832054600d549094168352909120548651918701516018546155a0949363ffffffff808c1693908d1692615a77565b90505b6155b4620f4240611d11858461434f565b979650505050505050565b60008060006155cc615bd6565b6000806000806155da615ae3565b955095506155ed8b8b600080898e614ec8565b9195509350915083151561564b576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5a45524f5f5441524745545f414d4f554e5400000000000000000000604482015290519081900360640190fd5b6156548a613152565b90508084106156ad576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f5441524745545f414d4f554e545f544f4f5f48494748000000000000604482015290519081900360640190fd5b600160a060020a038b16600080516020615c2d833981519152141561572857348914615723576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b6157f2565b3415801561579c57508861579961573e8d613152565b8d600160a060020a03166370a08231306040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b15801561488e57600080fd5b10155b15156157f2576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b6157fb8b6147cd565b61580b818563ffffffff61458816565b600160a060020a038b16600090815260086020908152604080832093909355600e90522054615840908463ffffffff61419616565b600160a060020a038b166000908152600e6020526040902055851561588b57600c54600d5461587e91600160a060020a039081169116600080615324565b8051601455602001516015555b509199919850909650505050505050565b7f800000000000000000000000000000000000000000000000000000000000000082106158c557fe5b6040805185815260208101859052808201849052606081018390529051600160a060020a038088169289821692918b16917f82886ccc747026f86399e87d5f3874c5d198ec2498833553651f63a13f5dbd0c9181900360800190a450505050505050565b60008061593886868686614730565b61594185612686565b915081600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561598157600080fd5b505af1158015615995573d6000803e3d6000fd5b505050506040513d60208110156159ab57600080fd5b5051905061287a8282876146d0565b6159c2615bd6565b7314484bfeebc29f863424b06f3529a051a31be599821115615a1457604080518082019091526c0c9f2c9cd04674edea400000008082526020820190850484811515615a0a57fe5b0490529050613118565b6c0c9f2c9cd04674edea40000000831115615a615760408051908101604052806c0c9f2c9cd04674edea400000008152602001846c0c9f2c9cd04674edea400000008502811515615a0a57fe5b5060408051808201909152918252602082015290565b60008080615a8f87614d768c8963ffffffff61434f16565b9150615aa588614d768b8863ffffffff61434f16565b905081811115615ad157615aca81611d116014614d768684038963ffffffff61434f16565b9250615ad6565b600092505b5050979650505050505050565b6000615aed615bd6565b6000615af7615bd6565b615aff615bd6565b615b07613e01565b9250826013541415615b355760408051808201909152601154815260125460208201526000955093506137b2565b615b3d614b6b565b6040805180820190915260115480825260125460208301528251929450909250148015615b71575080602001518260200151145b15615b8257600082945094506137b2565b815160115560208201516012556013839055615b9c613e05565b50600194909350915050565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b604080518082019091526000808252602082015290565b60206040519081016040528060019060208202803883395091929150505600536f7672796e53776170436f6e76657274657255706772616465720000000000000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee4552525f4143434553535f44454e4945440000000000000000000000000000004552525f494e56414c49445f524553455256455f434f554e5400000000000000a165627a7a723058201181ee02996552a31334ccf382cd6acecf1cbd8594a097439ae7f82d05518a6c0029a165627a7a7230582006c0d0e811f883ebbab9137cbb5f034cc545b1f97efbd1433b7d5aebfa8f8cc00029 \ No newline at end of file diff --git a/solidity/build/MoCMedianizerMock.abi b/solidity/build/MoCMedianizerMock.abi index d078a5c..f0e93ab 100644 --- a/solidity/build/MoCMedianizerMock.abi +++ b/solidity/build/MoCMedianizerMock.abi @@ -1 +1 @@ -[{"constant":true,"inputs":[],"name":"value","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"setValue","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"peek","outputs":[{"name":"","type":"bytes32"},{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_has","type":"bool"}],"name":"setHas","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"has","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file +[{"constant":true,"inputs":[],"name":"value","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"has","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"peek","outputs":[{"name":"","type":"bytes32"},{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"setValue","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_has","type":"bool"}],"name":"setHas","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/MoCMedianizerMock.bin b/solidity/build/MoCMedianizerMock.bin index a09b62c..df726fb 100644 --- a/solidity/build/MoCMedianizerMock.bin +++ b/solidity/build/MoCMedianizerMock.bin @@ -1 +1 @@ -608060405234801561001057600080fd5b50610183806100206000396000f30060806040526004361061006c5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416633fa4f2458114610071578063552410771461009857806359e02dd7146100b257806361da0693146100e0578063b689d5ac146100fa575b600080fd5b34801561007d57600080fd5b50610086610123565b60408051918252519081900360200190f35b3480156100a457600080fd5b506100b0600435610129565b005b3480156100be57600080fd5b506100c761012e565b6040805192835290151560208301528051918290030190f35b3480156100ec57600080fd5b506100b0600435151561013b565b34801561010657600080fd5b5061010f61014e565b604080519115158252519081900360200190f35b60005481565b600055565b60005460015460ff169091565b6001805460ff1916911515919091179055565b60015460ff16815600a165627a7a723058207a3d8eeed219391adfd90dc96cf258457189758b7e1cd571ee3e38c5b740f84e0029 \ No newline at end of file +608060405234801561001057600080fd5b50610183806100206000396000f30060806040526004361061006c5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416633fa4f2458114610071578063552410771461009857806359e02dd7146100b257806361da0693146100e0578063b689d5ac146100fa575b600080fd5b34801561007d57600080fd5b50610086610123565b60408051918252519081900360200190f35b3480156100a457600080fd5b506100b0600435610129565b005b3480156100be57600080fd5b506100c761012e565b6040805192835290151560208301528051918290030190f35b3480156100ec57600080fd5b506100b0600435151561013b565b34801561010657600080fd5b5061010f61014e565b604080519115158252519081900360200190f35b60005481565b600055565b60005460015460ff169091565b6001805460ff1916911515919091179055565b60015460ff16815600a165627a7a7230582097bd5a2903faa2c8b392b90cc8717d3d33b116ad9781eb4d5ff180aa0bf508a70029 \ No newline at end of file diff --git a/solidity/build/MoCOracleMock.abi b/solidity/build/MoCOracleMock.abi deleted file mode 100644 index d078a5c..0000000 --- a/solidity/build/MoCOracleMock.abi +++ /dev/null @@ -1 +0,0 @@ -[{"constant":true,"inputs":[],"name":"value","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"setValue","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"peek","outputs":[{"name":"","type":"bytes32"},{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_has","type":"bool"}],"name":"setHas","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"has","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/solidity/build/MoCOracleMock.bin b/solidity/build/MoCOracleMock.bin deleted file mode 100644 index bb887de..0000000 --- a/solidity/build/MoCOracleMock.bin +++ /dev/null @@ -1 +0,0 @@ -608060405234801561001057600080fd5b50610183806100206000396000f30060806040526004361061006c5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416633fa4f2458114610071578063552410771461009857806359e02dd7146100b257806361da0693146100e0578063b689d5ac146100fa575b600080fd5b34801561007d57600080fd5b50610086610123565b60408051918252519081900360200190f35b3480156100a457600080fd5b506100b0600435610129565b005b3480156100be57600080fd5b506100c761012e565b6040805192835290151560208301528051918290030190f35b3480156100ec57600080fd5b506100b0600435151561013b565b34801561010657600080fd5b5061010f61014e565b604080519115158252519081900360200190f35b60005481565b600055565b60005460015460ff169091565b6001805460ff1916911515919091179055565b60015460ff16815600a165627a7a723058201fd2397fae142a9adf13c199df0469efb27b869419f259ec53441812017473d70029 \ No newline at end of file diff --git a/solidity/build/MoCStateMock.abi b/solidity/build/MoCStateMock.abi index cb5f1d3..d0393c9 100644 --- a/solidity/build/MoCStateMock.abi +++ b/solidity/build/MoCStateMock.abi @@ -1 +1 @@ -[{"constant":true,"inputs":[],"name":"value","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"setValue","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"bproUsdPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file +[{"constant":true,"inputs":[],"name":"value","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"bproUsdPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"setValue","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/MoCStateMock.bin b/solidity/build/MoCStateMock.bin index 4231c98..99d6483 100644 --- a/solidity/build/MoCStateMock.bin +++ b/solidity/build/MoCStateMock.bin @@ -1 +1 @@ -608060405234801561001057600080fd5b5060e18061001f6000396000f30060806040526004361060525763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416633fa4f245811460575780635524107714607b578063747a5663146092575b600080fd5b348015606257600080fd5b50606960a4565b60408051918252519081900360200190f35b348015608657600080fd5b50609060043560aa565b005b348015609d57600080fd5b50606960af565b60005481565b600055565b600054905600a165627a7a72305820df1a80460a5af553166dddbe52c68c72e45920769dc6596db0f54461e06af95f0029 \ No newline at end of file +608060405234801561001057600080fd5b5060e18061001f6000396000f30060806040526004361060525763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416633fa4f245811460575780635524107714607b578063747a5663146092575b600080fd5b348015606257600080fd5b50606960a4565b60408051918252519081900360200190f35b348015608657600080fd5b50609060043560aa565b005b348015609d57600080fd5b50606960af565b60005481565b600055565b600054905600a165627a7a723058200e4fd55092477af4c0c69e05815056ed87cbfa75dbd9de0864582351e790a5380029 \ No newline at end of file diff --git a/solidity/build/MocBTCToBTCOracle.bin b/solidity/build/MocBTCToBTCOracle.bin index 0e1ce35..4aa1c6f 100644 --- a/solidity/build/MocBTCToBTCOracle.bin +++ b/solidity/build/MocBTCToBTCOracle.bin @@ -1 +1 @@ -608060405234801561001057600080fd5b5060b88061001f6000396000f30060806040526004361060485763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166350d25bcd8114604d5780638205bf6a146071575b600080fd5b348015605857600080fd5b50605f6083565b60408051918252519081900360200190f35b348015607c57600080fd5b50605f6088565b600190565b42905600a165627a7a72305820a7b5c901fb478d4cb504eb15ecc2ff6d2937604ee43dacd9779f8089c2083c9e0029 \ No newline at end of file +608060405234801561001057600080fd5b5060b88061001f6000396000f30060806040526004361060485763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166350d25bcd8114604d5780638205bf6a146071575b600080fd5b348015605857600080fd5b50605f6083565b60408051918252519081900360200190f35b348015607c57600080fd5b50605f6088565b600190565b42905600a165627a7a72305820dd9b2c185bdd5a670bab636c148ef81906f0f603865f97817be64704272c88a10029 \ No newline at end of file diff --git a/solidity/build/MocBTCToUSDOracle.abi b/solidity/build/MocBTCToUSDOracle.abi index 15d39d4..8eb20cc 100644 --- a/solidity/build/MocBTCToUSDOracle.abi +++ b/solidity/build/MocBTCToUSDOracle.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_mocOracleAddress","type":"address"}],"name":"setMoCOracleAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"latestAnswer","outputs":[{"name":"","type":"int256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"latestTimestamp","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"mocOracleAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_mocOracleAddress","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"mocOracleAddress","type":"address"},{"indexed":false,"name":"changerAddress","type":"address"}],"name":"SetMoCOracleAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}] \ No newline at end of file +[{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"mocOracleAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_mocOracleAddress","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"mocOracleAddress","type":"address"},{"indexed":false,"name":"changerAddress","type":"address"}],"name":"SetMoCOracleAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":true,"inputs":[],"name":"latestAnswer","outputs":[{"name":"","type":"int256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"latestTimestamp","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_mocOracleAddress","type":"address"}],"name":"setMoCOracleAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/MocBTCToUSDOracle.bin b/solidity/build/MocBTCToUSDOracle.bin index 1d60c67..9c3fced 100644 --- a/solidity/build/MocBTCToUSDOracle.bin +++ b/solidity/build/MocBTCToUSDOracle.bin @@ -1 +1 @@ -608060405234801561001057600080fd5b50604051602080610791833981016040525160008054600160a060020a031916331790556100468164010000000061004c810204565b506101d2565b61005d640100000000610157810204565b600160a060020a03811615156100fa57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f5f6d6f634f7261636c6541646472657373207368616c6c206e6f74206265207a60448201527f65726f2061646472657373000000000000000000000000000000000000000000606482015290519081900360840190fd5b60028054600160a060020a031916600160a060020a03838116919091179182905560408051338152905192909116917f1275deefe41e3273f2a99545002cc8369a04b2dbd04b2557e428a712cb2d5117916020908290030190a250565b600054600160a060020a031633146101d057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b6105b0806101e16000396000f30060806040526004361061008d5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416634541b2e3811461009257806350d25bcd146100b557806379ba5097146100dc5780638205bf6a146100f15780638da5cb5b14610106578063d4ee1d9014610137578063f106b5f41461014c578063f2fde38b14610161575b600080fd5b34801561009e57600080fd5b506100b3600160a060020a0360043516610182565b005b3480156100c157600080fd5b506100ca61027a565b60408051918252519081900360200190f35b3480156100e857600080fd5b506100b361037f565b3480156100fd57600080fd5b506100ca610452565b34801561011257600080fd5b5061011b610456565b60408051600160a060020a039092168252519081900360200190f35b34801561014357600080fd5b5061011b610465565b34801561015857600080fd5b5061011b610474565b34801561016d57600080fd5b506100b3600160a060020a0360043516610483565b61018a610520565b600160a060020a0381161515610210576040805160e560020a62461bcd02815260206004820152602b60248201527f5f6d6f634f7261636c6541646472657373207368616c6c206e6f74206265207a60448201527f65726f2061646472657373000000000000000000000000000000000000000000606482015290519081900360840190fd5b6002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03838116919091179182905560408051338152905192909116917f1275deefe41e3273f2a99545002cc8369a04b2dbd04b2557e428a712cb2d5117916020908290030190a250565b6000806000600260009054906101000a9004600160a060020a0316600160a060020a03166359e02dd76040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004016040805180830381600087803b1580156102ea57600080fd5b505af11580156102fe573d6000803e3d6000fd5b505050506040513d604081101561031457600080fd5b5080516020909101519092509050801515610379576040805160e560020a62461bcd02815260206004820152601160248201527f446f65736e2774206861732076616c7565000000000000000000000000000000604482015290519081900360640190fd5b50919050565b600154600160a060020a031633146103e1576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b4290565b600054600160a060020a031681565b600154600160a060020a031681565b600254600160a060020a031681565b61048b610520565b600054600160a060020a03828116911614156104f1576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a03163314610582576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b5600a165627a7a723058206e9951e2ebc5b0f9a943debbd31a57b463f92ee32cc9c886ed58bcf112bc56380029 \ No newline at end of file +608060405234801561001057600080fd5b50604051602080610791833981016040525160008054600160a060020a031916331790556100468164010000000061004c810204565b506101d2565b61005d640100000000610157810204565b600160a060020a03811615156100fa57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f5f6d6f634f7261636c6541646472657373207368616c6c206e6f74206265207a60448201527f65726f2061646472657373000000000000000000000000000000000000000000606482015290519081900360840190fd5b60028054600160a060020a031916600160a060020a03838116919091179182905560408051338152905192909116917f1275deefe41e3273f2a99545002cc8369a04b2dbd04b2557e428a712cb2d5117916020908290030190a250565b600054600160a060020a031633146101d057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b6105b0806101e16000396000f30060806040526004361061008d5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416634541b2e3811461009257806350d25bcd146100b557806379ba5097146100dc5780638205bf6a146100f15780638da5cb5b14610106578063d4ee1d9014610137578063f106b5f41461014c578063f2fde38b14610161575b600080fd5b34801561009e57600080fd5b506100b3600160a060020a0360043516610182565b005b3480156100c157600080fd5b506100ca61027a565b60408051918252519081900360200190f35b3480156100e857600080fd5b506100b361037f565b3480156100fd57600080fd5b506100ca610452565b34801561011257600080fd5b5061011b610456565b60408051600160a060020a039092168252519081900360200190f35b34801561014357600080fd5b5061011b610465565b34801561015857600080fd5b5061011b610474565b34801561016d57600080fd5b506100b3600160a060020a0360043516610483565b61018a610520565b600160a060020a0381161515610210576040805160e560020a62461bcd02815260206004820152602b60248201527f5f6d6f634f7261636c6541646472657373207368616c6c206e6f74206265207a60448201527f65726f2061646472657373000000000000000000000000000000000000000000606482015290519081900360840190fd5b6002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03838116919091179182905560408051338152905192909116917f1275deefe41e3273f2a99545002cc8369a04b2dbd04b2557e428a712cb2d5117916020908290030190a250565b6000806000600260009054906101000a9004600160a060020a0316600160a060020a03166359e02dd76040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004016040805180830381600087803b1580156102ea57600080fd5b505af11580156102fe573d6000803e3d6000fd5b505050506040513d604081101561031457600080fd5b5080516020909101519092509050801515610379576040805160e560020a62461bcd02815260206004820152601160248201527f446f65736e2774206861732076616c7565000000000000000000000000000000604482015290519081900360640190fd5b50919050565b600154600160a060020a031633146103e1576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b4290565b600054600160a060020a031681565b600154600160a060020a031681565b600254600160a060020a031681565b61048b610520565b600054600160a060020a03828116911614156104f1576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a03163314610582576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b5600a165627a7a72305820bde075c1e898e66cb035e522511db950060f0048bebec56868a005c49ddfe12d0029 \ No newline at end of file diff --git a/solidity/build/MocUSDToBTCOracle.abi b/solidity/build/MocUSDToBTCOracle.abi index ab772e3..a87178f 100644 --- a/solidity/build/MocUSDToBTCOracle.abi +++ b/solidity/build/MocUSDToBTCOracle.abi @@ -1 +1 @@ -[{"constant":true,"inputs":[],"name":"DECIMALS","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_mocOracleAddress","type":"address"}],"name":"setMoCOracleAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"latestAnswer","outputs":[{"name":"","type":"int256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"latestTimestamp","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"mocOracleAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_mocOracleAddress","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"mocOracleAddress","type":"address"},{"indexed":false,"name":"changerAddress","type":"address"}],"name":"SetMoCOracleAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}] \ No newline at end of file +[{"constant":true,"inputs":[],"name":"DECIMALS","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"mocOracleAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_mocOracleAddress","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"mocOracleAddress","type":"address"},{"indexed":false,"name":"changerAddress","type":"address"}],"name":"SetMoCOracleAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":true,"inputs":[],"name":"latestAnswer","outputs":[{"name":"","type":"int256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"latestTimestamp","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_mocOracleAddress","type":"address"}],"name":"setMoCOracleAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/MocUSDToBTCOracle.bin b/solidity/build/MocUSDToBTCOracle.bin index a73a787..ca272b6 100644 --- a/solidity/build/MocUSDToBTCOracle.bin +++ b/solidity/build/MocUSDToBTCOracle.bin @@ -1 +1 @@ -608060405234801561001057600080fd5b506040516020806108d9833981016040525160008054600160a060020a031916331790556100468164010000000061004c810204565b506101d2565b61005d640100000000610157810204565b600160a060020a03811615156100fa57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f5f6d6f634f7261636c6541646472657373207368616c6c206e6f74206265207a60448201527f65726f2061646472657373000000000000000000000000000000000000000000606482015290519081900360840190fd5b60028054600160a060020a031916600160a060020a03838116919091179182905560408051338152905192909116917f1275deefe41e3273f2a99545002cc8369a04b2dbd04b2557e428a712cb2d5117916020908290030190a250565b600054600160a060020a031633146101d057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b6106f8806101e16000396000f3006080604052600436106100985763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416632e0f2625811461009d5780634541b2e3146100c457806350d25bcd146100e757806379ba5097146100fc5780638205bf6a146101115780638da5cb5b14610126578063d4ee1d9014610157578063f106b5f41461016c578063f2fde38b14610181575b600080fd5b3480156100a957600080fd5b506100b26101a2565b60408051918252519081900360200190f35b3480156100d057600080fd5b506100e5600160a060020a03600435166101ae565b005b3480156100f357600080fd5b506100b26102a6565b34801561010857600080fd5b506100e56103d4565b34801561011d57600080fd5b506100b26104a7565b34801561013257600080fd5b5061013b6104ab565b60408051600160a060020a039092168252519081900360200190f35b34801561016357600080fd5b5061013b6104ba565b34801561017857600080fd5b5061013b6104c9565b34801561018d57600080fd5b506100e5600160a060020a03600435166104d8565b670de0b6b3a764000081565b6101b6610575565b600160a060020a038116151561023c576040805160e560020a62461bcd02815260206004820152602b60248201527f5f6d6f634f7261636c6541646472657373207368616c6c206e6f74206265207a60448201527f65726f2061646472657373000000000000000000000000000000000000000000606482015290519081900360840190fd5b6002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03838116919091179182905560408051338152905192909116917f1275deefe41e3273f2a99545002cc8369a04b2dbd04b2557e428a712cb2d5117916020908290030190a250565b6000806000600260009054906101000a9004600160a060020a0316600160a060020a03166359e02dd76040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004016040805180830381600087803b15801561031657600080fd5b505af115801561032a573d6000803e3d6000fd5b505050506040513d604081101561034057600080fd5b50805160209091015190925090508015156103a5576040805160e560020a62461bcd02815260206004820152601160248201527f446f65736e2774206861732076616c7565000000000000000000000000000000604482015290519081900360640190fd5b6103cd670de0b6b3a76400006103c1818563ffffffff6105d916565b9063ffffffff61064c16565b9250505090565b600154600160a060020a03163314610436576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b4290565b600054600160a060020a031681565b600154600160a060020a031681565b600254600160a060020a031681565b6104e0610575565b600054600160a060020a0382811691161415610546576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a031633146105d7576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b600080808311610633576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f4449564944455f42595f5a45524f0000000000000000000000000000604482015290519081900360640190fd5b828481151561063e57fe5b0490508091505b5092915050565b60008083151561065f5760009150610645565b5082820282848281151561066f57fe5b04146106c5576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b93925050505600a165627a7a723058202b06f3daa2624a45603be3eefe468e6492d8448e10b851b09ef6c5f8634b99da0029 \ No newline at end of file +608060405234801561001057600080fd5b506040516020806108d9833981016040525160008054600160a060020a031916331790556100468164010000000061004c810204565b506101d2565b61005d640100000000610157810204565b600160a060020a03811615156100fa57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f5f6d6f634f7261636c6541646472657373207368616c6c206e6f74206265207a60448201527f65726f2061646472657373000000000000000000000000000000000000000000606482015290519081900360840190fd5b60028054600160a060020a031916600160a060020a03838116919091179182905560408051338152905192909116917f1275deefe41e3273f2a99545002cc8369a04b2dbd04b2557e428a712cb2d5117916020908290030190a250565b600054600160a060020a031633146101d057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b6106f8806101e16000396000f3006080604052600436106100985763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416632e0f2625811461009d5780634541b2e3146100c457806350d25bcd146100e757806379ba5097146100fc5780638205bf6a146101115780638da5cb5b14610126578063d4ee1d9014610157578063f106b5f41461016c578063f2fde38b14610181575b600080fd5b3480156100a957600080fd5b506100b26101a2565b60408051918252519081900360200190f35b3480156100d057600080fd5b506100e5600160a060020a03600435166101ae565b005b3480156100f357600080fd5b506100b26102a6565b34801561010857600080fd5b506100e56103d4565b34801561011d57600080fd5b506100b26104a7565b34801561013257600080fd5b5061013b6104ab565b60408051600160a060020a039092168252519081900360200190f35b34801561016357600080fd5b5061013b6104ba565b34801561017857600080fd5b5061013b6104c9565b34801561018d57600080fd5b506100e5600160a060020a03600435166104d8565b670de0b6b3a764000081565b6101b6610575565b600160a060020a038116151561023c576040805160e560020a62461bcd02815260206004820152602b60248201527f5f6d6f634f7261636c6541646472657373207368616c6c206e6f74206265207a60448201527f65726f2061646472657373000000000000000000000000000000000000000000606482015290519081900360840190fd5b6002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03838116919091179182905560408051338152905192909116917f1275deefe41e3273f2a99545002cc8369a04b2dbd04b2557e428a712cb2d5117916020908290030190a250565b6000806000600260009054906101000a9004600160a060020a0316600160a060020a03166359e02dd76040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004016040805180830381600087803b15801561031657600080fd5b505af115801561032a573d6000803e3d6000fd5b505050506040513d604081101561034057600080fd5b50805160209091015190925090508015156103a5576040805160e560020a62461bcd02815260206004820152601160248201527f446f65736e2774206861732076616c7565000000000000000000000000000000604482015290519081900360640190fd5b6103cd670de0b6b3a76400006103c1818563ffffffff6105d916565b9063ffffffff61064c16565b9250505090565b600154600160a060020a03163314610436576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b4290565b600054600160a060020a031681565b600154600160a060020a031681565b600254600160a060020a031681565b6104e0610575565b600054600160a060020a0382811691161415610546576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a031633146105d7576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b600080808311610633576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f4449564944455f42595f5a45524f0000000000000000000000000000604482015290519081900360640190fd5b828481151561063e57fe5b0490508091505b5092915050565b60008083151561065f5760009150610645565b5082820282848281151561066f57fe5b04146106c5576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b93925050505600a165627a7a72305820e3d61b5712b0bf6bc4ad9a1681cd3cbaf744051a6f83869f147bc78613bb85990029 \ No newline at end of file diff --git a/solidity/build/MultiSigWallet.abi b/solidity/build/MultiSigWallet.abi new file mode 100644 index 0000000..f3e316f --- /dev/null +++ b/solidity/build/MultiSigWallet.abi @@ -0,0 +1 @@ +[{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"owners","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"isOwner","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"},{"name":"","type":"address"}],"name":"confirmations","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"transactions","outputs":[{"name":"destination","type":"address"},{"name":"value","type":"uint256"},{"name":"data","type":"bytes"},{"name":"executed","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"transactionCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"MAX_OWNER_COUNT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"required","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_owners","type":"address[]"},{"name":"_required","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"sender","type":"address"},{"indexed":true,"name":"transactionId","type":"uint256"}],"name":"Confirmation","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"sender","type":"address"},{"indexed":true,"name":"transactionId","type":"uint256"}],"name":"Revocation","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"transactionId","type":"uint256"}],"name":"Submission","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"transactionId","type":"uint256"}],"name":"Execution","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"transactionId","type":"uint256"}],"name":"ExecutionFailure","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Deposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"}],"name":"OwnerAddition","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"}],"name":"OwnerRemoval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"required","type":"uint256"}],"name":"RequirementChange","type":"event"},{"constant":false,"inputs":[{"name":"owner","type":"address"}],"name":"addOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"owner","type":"address"}],"name":"removeOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"owner","type":"address"},{"name":"newOwner","type":"address"}],"name":"replaceOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_required","type":"uint256"}],"name":"changeRequirement","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"destination","type":"address"},{"name":"value","type":"uint256"},{"name":"data","type":"bytes"}],"name":"submitTransaction","outputs":[{"name":"transactionId","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"transactionId","type":"uint256"}],"name":"confirmTransaction","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"transactionId","type":"uint256"}],"name":"revokeConfirmation","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"transactionId","type":"uint256"}],"name":"executeTransaction","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"transactionId","type":"uint256"}],"name":"isConfirmed","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"transactionId","type":"uint256"}],"name":"getConfirmationCount","outputs":[{"name":"count","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"pending","type":"bool"},{"name":"executed","type":"bool"}],"name":"getTransactionCount","outputs":[{"name":"count","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getOwners","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"transactionId","type":"uint256"}],"name":"getConfirmations","outputs":[{"name":"_confirmations","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"from","type":"uint256"},{"name":"to","type":"uint256"},{"name":"pending","type":"bool"},{"name":"executed","type":"bool"}],"name":"getTransactionIds","outputs":[{"name":"_transactionIds","type":"uint256[]"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/solidity/build/MultiSigWallet.bin b/solidity/build/MultiSigWallet.bin new file mode 100644 index 0000000..5e8dd2e --- /dev/null +++ b/solidity/build/MultiSigWallet.bin @@ -0,0 +1 @@ +60806040523480156200001157600080fd5b50604051620016db380380620016db83398101604052805160208201519101805190919060009082603282118015906200004b5750818111155b80156200005757508015155b80156200006357508115155b15156200006f57600080fd5b600092505b845183101562000148576002600086858151811015156200009157fe5b6020908102909101810151600160a060020a031682528101919091526040016000205460ff16158015620000e857508451600090869085908110620000d257fe5b90602001906020020151600160a060020a031614155b1515620000f457600080fd5b60016002600087868151811015156200010957fe5b602090810291909101810151600160a060020a03168252810191909152604001600020805460ff19169115159190911790556001929092019162000074565b84516200015d9060039060208801906200016f565b50505060049190915550620002039050565b828054828255906000526020600020908101928215620001c7579160200282015b82811115620001c75782518254600160a060020a031916600160a060020a0390911617825560209092019160019091019062000190565b50620001d5929150620001d9565b5090565b6200020091905b80821115620001d5578054600160a060020a0319168155600101620001e0565b90565b6114c880620002136000396000f30060806040526004361061011c5763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663025e7c27811461015e578063173825d91461019257806320ea8d86146101b35780632f54bf6e146101cb5780633411c81c1461020057806354741525146102245780637065cb4814610255578063784547a7146102765780638b51d13f1461028e5780639ace38c2146102a6578063a0e67e2b14610361578063a8abe69a146103c6578063b5dc40c3146103eb578063b77bf60014610403578063ba51a6df14610418578063c01a8c8414610430578063c642747414610448578063d74f8edd146104b1578063dc8452cd146104c6578063e20056e6146104db578063ee22610b14610502575b600034111561015c5760408051348152905133917fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c919081900360200190a25b005b34801561016a57600080fd5b5061017660043561051a565b60408051600160a060020a039092168252519081900360200190f35b34801561019e57600080fd5b5061015c600160a060020a0360043516610542565b3480156101bf57600080fd5b5061015c6004356106b9565b3480156101d757600080fd5b506101ec600160a060020a0360043516610773565b604080519115158252519081900360200190f35b34801561020c57600080fd5b506101ec600435600160a060020a0360243516610788565b34801561023057600080fd5b50610243600435151560243515156107a8565b60408051918252519081900360200190f35b34801561026157600080fd5b5061015c600160a060020a0360043516610814565b34801561028257600080fd5b506101ec600435610939565b34801561029a57600080fd5b506102436004356109c2565b3480156102b257600080fd5b506102be600435610a31565b6040518085600160a060020a0316600160a060020a031681526020018481526020018060200183151515158152602001828103825284818151815260200191508051906020019080838360005b8381101561032357818101518382015260200161030b565b50505050905090810190601f1680156103505780820380516001836020036101000a031916815260200191505b509550505050505060405180910390f35b34801561036d57600080fd5b50610376610aef565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156103b257818101518382015260200161039a565b505050509050019250505060405180910390f35b3480156103d257600080fd5b5061037660043560243560443515156064351515610b52565b3480156103f757600080fd5b50610376600435610c8b565b34801561040f57600080fd5b50610243610e04565b34801561042457600080fd5b5061015c600435610e0a565b34801561043c57600080fd5b5061015c600435610e89565b34801561045457600080fd5b50604080516020600460443581810135601f8101849004840285018401909552848452610243948235600160a060020a0316946024803595369594606494920191908190840183828082843750949750610f549650505050505050565b3480156104bd57600080fd5b50610243610f73565b3480156104d257600080fd5b50610243610f78565b3480156104e757600080fd5b5061015c600160a060020a0360043581169060243516610f7e565b34801561050e57600080fd5b5061015c600435611108565b600380548290811061052857fe5b600091825260209091200154600160a060020a0316905081565b600033301461055057600080fd5b600160a060020a038216600090815260026020526040902054829060ff16151561057957600080fd5b600160a060020a0383166000908152600260205260408120805460ff1916905591505b600354600019018210156106545782600160a060020a03166003838154811015156105c357fe5b600091825260209091200154600160a060020a03161415610649576003805460001981019081106105f057fe5b60009182526020909120015460038054600160a060020a03909216918490811061061657fe5b9060005260206000200160006101000a815481600160a060020a030219169083600160a060020a03160217905550610654565b60019091019061059c565b60038054600019019061066790826113db565b5060035460045411156106805760035461068090610e0a565b604051600160a060020a038416907f8001553a916ef2f495d26a907cc54d96ed840d7bda71e73194bf5a9df7a76b9090600090a2505050565b3360008181526002602052604090205460ff1615156106d757600080fd5b60008281526001602090815260408083203380855292529091205483919060ff16151561070357600080fd5b600084815260208190526040902060030154849060ff161561072457600080fd5b6000858152600160209081526040808320338085529252808320805460ff191690555187927ff6a317157440607f36269043eb55f1287a5a19ba2216afeab88cd46cbcfb88e991a35050505050565b60026020526000908152604090205460ff1681565b600160209081526000928352604080842090915290825290205460ff1681565b6000805b60055481101561080d578380156107d5575060008181526020819052604090206003015460ff16155b806107f957508280156107f9575060008181526020819052604090206003015460ff165b15610805576001820191505b6001016107ac565b5092915050565b33301461082057600080fd5b600160a060020a038116600090815260026020526040902054819060ff161561084857600080fd5b81600160a060020a038116151561085e57600080fd5b6003805490506001016004546032821115801561087b5750818111155b801561088657508015155b801561089157508115155b151561089c57600080fd5b600160a060020a038516600081815260026020526040808220805460ff1916600190811790915560038054918201815583527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b01805473ffffffffffffffffffffffffffffffffffffffff191684179055517ff39e6e1eb0edcf53c221607b54b00cd28f3196fed0a24994dc308b8f611b682d9190a25050505050565b600080805b6003548110156109b6576000848152600160205260408120600380549192918490811061096757fe5b6000918252602080832090910154600160a060020a0316835282019290925260400190205460ff161561099b576001820191505b6004548214156109ae57600192506109bb565b60010161093e565b600092505b5050919050565b6000805b600354811015610a2b57600083815260016020526040812060038054919291849081106109ef57fe5b6000918252602080832090910154600160a060020a0316835282019290925260400190205460ff1615610a23576001820191505b6001016109c6565b50919050565b6000602081815291815260409081902080546001808301546002808501805487516101009582161595909502600019011691909104601f8101889004880284018801909652858352600160a060020a0390931695909491929190830182828015610adc5780601f10610ab157610100808354040283529160200191610adc565b820191906000526020600020905b815481529060010190602001808311610abf57829003601f168201915b5050506003909301549192505060ff1684565b60606003805480602002602001604051908101604052809291908181526020018280548015610b4757602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311610b29575b505050505090505b90565b606080600080600554604051908082528060200260200182016040528015610b84578160200160208202803883390190505b50925060009150600090505b600554811015610c0b57858015610bb9575060008181526020819052604090206003015460ff16155b80610bdd5750848015610bdd575060008181526020819052604090206003015460ff165b15610c0357808383815181101515610bf157fe5b60209081029091010152600191909101905b600101610b90565b878703604051908082528060200260200182016040528015610c37578160200160208202803883390190505b5093508790505b86811015610c80578281815181101515610c5457fe5b9060200190602002015184898303815181101515610c6e57fe5b60209081029091010152600101610c3e565b505050949350505050565b606080600080600380549050604051908082528060200260200182016040528015610cc0578160200160208202803883390190505b50925060009150600090505b600354811015610d7d5760008581526001602052604081206003805491929184908110610cf557fe5b6000918252602080832090910154600160a060020a0316835282019290925260400190205460ff1615610d75576003805482908110610d3057fe5b6000918252602090912001548351600160a060020a0390911690849084908110610d5657fe5b600160a060020a03909216602092830290910190910152600191909101905b600101610ccc565b81604051908082528060200260200182016040528015610da7578160200160208202803883390190505b509350600090505b81811015610dfc578281815181101515610dc557fe5b906020019060200201518482815181101515610ddd57fe5b600160a060020a03909216602092830290910190910152600101610daf565b505050919050565b60055481565b333014610e1657600080fd5b6003548160328211801590610e2b5750818111155b8015610e3657508015155b8015610e4157508115155b1515610e4c57600080fd5b60048390556040805184815290517fa3f1ee9126a074d9326c682f561767f710e927faa811f7a99829d49dc421797a9181900360200190a1505050565b3360008181526002602052604090205460ff161515610ea757600080fd5b6000828152602081905260409020548290600160a060020a03161515610ecc57600080fd5b60008381526001602090815260408083203380855292529091205484919060ff1615610ef757600080fd5b6000858152600160208181526040808420338086529252808420805460ff1916909317909255905187927f4a504a94899432a9846e1aa406dceb1bcfd538bb839071d49d1e5e23f5be30ef91a3610f4d85611108565b5050505050565b6000610f618484846112c8565b9050610f6c81610e89565b9392505050565b603281565b60045481565b6000333014610f8c57600080fd5b600160a060020a038316600090815260026020526040902054839060ff161515610fb557600080fd5b600160a060020a038316600090815260026020526040902054839060ff1615610fdd57600080fd5b600092505b60035483101561106e5784600160a060020a031660038481548110151561100557fe5b600091825260209091200154600160a060020a03161415611063578360038481548110151561103057fe5b9060005260206000200160006101000a815481600160a060020a030219169083600160a060020a0316021790555061106e565b600190920191610fe2565b600160a060020a03808616600081815260026020526040808220805460ff1990811690915593881682528082208054909416600117909355915190917f8001553a916ef2f495d26a907cc54d96ed840d7bda71e73194bf5a9df7a76b9091a2604051600160a060020a038516907ff39e6e1eb0edcf53c221607b54b00cd28f3196fed0a24994dc308b8f611b682d90600090a25050505050565b3360008181526002602052604081205490919060ff16151561112957600080fd5b60008381526001602090815260408083203380855292529091205484919060ff16151561115557600080fd5b600085815260208190526040902060030154859060ff161561117657600080fd5b61117f86610939565b156112c0576000868152602081815260409182902060038101805460ff19166001908117909155815481830154600280850180548851601f60001997831615610100029790970190911692909204948501879004870282018701909752838152939a5061125395600160a060020a03909216949093919083908301828280156112495780601f1061121e57610100808354040283529160200191611249565b820191906000526020600020905b81548152906001019060200180831161122c57829003601f168201915b50505050506113b8565b156112885760405186907f33e13ecb54c3076d8e8bb8c2881800a4d972b792045ffae98fdf46df365fed7590600090a26112c0565b60405186907f526441bb6c1aba3c9a4a6ca1d6545da9c2333c8c48343ef398eb858d72b7923690600090a260038501805460ff191690555b505050505050565b600083600160a060020a03811615156112e057600080fd5b60055460408051608081018252600160a060020a0388811682526020808301898152838501898152600060608601819052878152808452959095208451815473ffffffffffffffffffffffffffffffffffffffff191694169390931783555160018301559251805194965091939092611360926002850192910190611404565b50606091909101516003909101805460ff191691151591909117905560058054600101905560405182907fc0ba8fe4b176c1714197d43b9cc6bcf797a4a7461c5fe8d0ef6e184ae7601e5190600090a2509392505050565b6000806040516020840160008287838a8c6187965a03f198975050505050505050565b8154818355818111156113ff576000838152602090206113ff918101908301611482565b505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061144557805160ff1916838001178555611472565b82800160010185558215611472579182015b82811115611472578251825591602001919060010190611457565b5061147e929150611482565b5090565b610b4f91905b8082111561147e57600081556001016114885600a165627a7a7230582042fb18e6e5499f2aed0beea4e9781169e9861c82e3ebff4f8581b25d9edf64d10029 \ No newline at end of file diff --git a/solidity/build/Oracle.abi b/solidity/build/Oracle.abi new file mode 100644 index 0000000..40302c7 --- /dev/null +++ b/solidity/build/Oracle.abi @@ -0,0 +1 @@ +[{"constant":true,"inputs":[],"name":"lastCumulativePrice0","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"lastCumulativePrice1","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"blockNumber","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"liquidityPool","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ema1","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ema0","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"k","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"timestamp","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"btcAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_liquidityPool","type":"address"},{"name":"_btcAddress","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"ema0","type":"uint256"},{"indexed":false,"name":"ema1","type":"uint256"},{"indexed":false,"name":"blockNumber","type":"uint256"},{"indexed":false,"name":"timestamp","type":"uint256"},{"indexed":false,"name":"lastCumulativePrice0","type":"uint256"},{"indexed":false,"name":"lastCumulativePrice1","type":"uint256"}],"name":"ObservationsUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_k","type":"uint256"}],"name":"KValueUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"sender","type":"address"},{"indexed":false,"name":"oldLiquidityPool","type":"address"},{"indexed":false,"name":"newLiquidityPool","type":"address"}],"name":"LiquidityPoolUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":false,"inputs":[{"name":"_k","type":"uint256"}],"name":"setK","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_price0","type":"uint256"},{"name":"_price1","type":"uint256"}],"name":"write","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"read","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"latestAnswer","outputs":[{"name":"answer","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_baseToken","type":"address"}],"name":"latestPrice","outputs":[{"name":"answer","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newLiquidityPool","type":"address"}],"name":"setLiquidityPool","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/Oracle.bin b/solidity/build/Oracle.bin new file mode 100644 index 0000000..f8245b8 --- /dev/null +++ b/solidity/build/Oracle.bin @@ -0,0 +1 @@ +608060405234801561001057600080fd5b50604051604080610e2783398101604052805160209091015160008054600160a060020a03191633179055600160a060020a03821615156100b257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f4552525f5a45524f5f504f4f4c5f414444524553530000000000000000000000604482015290519081900360640190fd5b60098054600160a060020a03938416600160a060020a031991821617909155600a8054929093169116179055610d3a806100ed6000396000f3006080604052600436106101065763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166301877020811461010b5780632e31b5a31461012e5780634bbc224f1461015557806350d25bcd1461016a57806353084eff1461017f57806357de26a4146101a057806357e871e7146101e8578063665a11ca146101fd57806367de8be91461022e57806379ba5097146102465780638da5cb5b1461025b5780639ad61d99146102705780639c0e3f7a14610285578063a0631a60146102a0578063b4f40c61146102b5578063b80777ea146102ca578063d4ee1d90146102df578063f2fde38b146102f4578063f7d76ae514610315575b600080fd5b34801561011757600080fd5b5061012c600160a060020a036004351661032a565b005b34801561013a57600080fd5b50610143610405565b60408051918252519081900360200190f35b34801561016157600080fd5b5061014361040b565b34801561017657600080fd5b50610143610411565b34801561018b57600080fd5b50610143600160a060020a0360043516610549565b3480156101ac57600080fd5b506101b561067a565b604080519687526020870195909552858501939093526060850191909152608084015260a0830152519081900360c00190f35b3480156101f457600080fd5b50610143610694565b34801561020957600080fd5b5061021261069a565b60408051600160a060020a039092168252519081900360200190f35b34801561023a57600080fd5b5061012c6004356106a9565b34801561025257600080fd5b5061012c610753565b34801561026757600080fd5b50610212610826565b34801561027c57600080fd5b50610143610835565b34801561029157600080fd5b5061012c60043560243561083b565b3480156102ac57600080fd5b50610143610a2e565b3480156102c157600080fd5b50610143610a34565b3480156102d657600080fd5b50610143610a3a565b3480156102eb57600080fd5b50610212610a40565b34801561030057600080fd5b5061012c600160a060020a0360043516610a4f565b34801561032157600080fd5b50610212610aec565b6000610334610afb565b600160a060020a0382161515610394576040805160e560020a62461bcd02815260206004820152601560248201527f4552525f5a45524f5f504f4f4c5f414444524553530000000000000000000000604482015290519081900360640190fd5b5060098054600160a060020a0383811673ffffffffffffffffffffffffffffffffffffffff198316179283905560408051928216808452939091166020830152805133927f48c275961f122494c4fd1cde0f64deb133cd4f50de01a7129509d38e43dc04e392908290030190a25050565b60065481565b60075481565b600a546009546040805160e060020a63d031370b02815260006004820181905291519193600160a060020a0390811693169163d031370b9160248082019260209290919082900301818887803b15801561046a57600080fd5b505af115801561047e573d6000803e3d6000fd5b505050506040513d602081101561049457600080fd5b5051600160a060020a031614156104ae5750600454610546565b600a546009546040805160e060020a63d031370b028152600160048201529051600160a060020a03938416939092169163d031370b916024808201926020929091908290030181600087803b15801561050657600080fd5b505af115801561051a573d6000803e3d6000fd5b505050506040513d602081101561053057600080fd5b5051600160a060020a0316141561054657506005545b90565b6009546040805160e060020a63d031370b02815260006004820181905291519192600160a060020a038086169391169163d031370b91602480830192602092919082900301818887803b15801561059f57600080fd5b505af11580156105b3573d6000803e3d6000fd5b505050506040513d60208110156105c957600080fd5b5051600160a060020a031614156105e35750600454610675565b6009546040805160e060020a63d031370b028152600160048201529051600160a060020a0380861693169163d031370b9160248083019260209291908290030181600087803b15801561063557600080fd5b505af1158015610649573d6000803e3d6000fd5b505050506040513d602081101561065f57600080fd5b5051600160a060020a0316141561067557506005545b919050565b600454600554600254600354600654600754909192939495565b60025481565b600954600160a060020a031681565b6106b1610afb565b80158015906106c257506127108111155b1515610718576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4b5f56414c554500000000000000000000000000604482015290519081900360640190fd5b60088190556040805182815290517fcb3a8e019a23a56c754740dc9d7fa5bc0b2003bb8b6a476622d5e95e33dd5fd99181900360200190a150565b600154600160a060020a031633146107b5576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600054600160a060020a031681565b60055481565b600954600090600160a060020a031633146108a0576040805160e560020a62461bcd02815260206004820152601860248201527f4552525f494e56414c49445f504f4f4c5f414444524553530000000000000000604482015290519081900360640190fd5b4360025414156108af57610a29565b60035415156108ca575060048290556005819055600161096d565b61091961271061090d6108ee60045460085461271003610b5f90919063ffffffff16565b600854610901908863ffffffff610b5f16565b9063ffffffff610be316565b9063ffffffff610c4016565b600455600554600854610953916127109161090d916109409184039063ffffffff610b5f16565b600854610901908763ffffffff610b5f16565b60055560035461096a90429063ffffffff610cae16565b90505b61098f610980848363ffffffff610b5f16565b6006549063ffffffff610be316565b6006556109b46109a5838363ffffffff610b5f16565b6007549063ffffffff610be316565b6007819055436002819055426003819055600454600554600654604080519384526020840192909252828201949094526060820192909252608081019290925260a082019290925290517fc2b6c6efe20ca0bd2084352507ac2365a79ab0ff280b979f4e2bfc037a7596549181900360c00190a15b505050565b60045481565b60085481565b60035481565b600154600160a060020a031681565b610a57610afb565b600054600160a060020a0382811691161415610abd576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600a54600160a060020a031681565b600054600160a060020a03163314610b5d576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b600080831515610b725760009150610bdc565b50828202828482811515610b8257fe5b0414610bd8576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b8091505b5092915050565b600082820183811015610bd8576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b600080808311610c9a576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f4449564944455f42595f5a45524f0000000000000000000000000000604482015290519081900360640190fd5b8284811515610ca557fe5b04949350505050565b600081831015610d08576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b509003905600a165627a7a7230582016e51d27edc2b44b1bd9389f8152c3bfde06661f447e679baafceda622ae4ece0029 \ No newline at end of file diff --git a/solidity/build/Owned.abi b/solidity/build/Owned.abi index 75b508e..1f52894 100644 --- a/solidity/build/Owned.abi +++ b/solidity/build/Owned.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}] \ No newline at end of file +[{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/Owned.bin b/solidity/build/Owned.bin index a1bd84d..6dee515 100644 --- a/solidity/build/Owned.bin +++ b/solidity/build/Owned.bin @@ -1 +1 @@ -608060405234801561001057600080fd5b5060008054600160a060020a03191633179055610347806100326000396000f3006080604052600436106100615763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166379ba509781146100665780638da5cb5b1461007d578063d4ee1d90146100ae578063f2fde38b146100c3575b600080fd5b34801561007257600080fd5b5061007b6100e4565b005b34801561008957600080fd5b506100926101ce565b60408051600160a060020a039092168252519081900360200190f35b3480156100ba57600080fd5b506100926101dd565b3480156100cf57600080fd5b5061007b600160a060020a03600435166101ec565b600154600160a060020a0316331461015d57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600054600160a060020a031681565b600154600160a060020a031681565b6101f46102a0565b600054600160a060020a038281169116141561027157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a0316331461031957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b5600a165627a7a72305820e3bd1149ed2a006a4539caeb68e5a1920479c0d8936c193cb3179761d9bb7d0c0029 \ No newline at end of file +608060405234801561001057600080fd5b5060008054600160a060020a03191633179055610347806100326000396000f3006080604052600436106100615763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166379ba509781146100665780638da5cb5b1461007d578063d4ee1d90146100ae578063f2fde38b146100c3575b600080fd5b34801561007257600080fd5b5061007b6100e4565b005b34801561008957600080fd5b506100926101ce565b60408051600160a060020a039092168252519081900360200190f35b3480156100ba57600080fd5b506100926101dd565b3480156100cf57600080fd5b5061007b600160a060020a03600435166101ec565b600154600160a060020a0316331461015d57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600054600160a060020a031681565b600154600160a060020a031681565b6101f46102a0565b600054600160a060020a038281169116141561027157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a0316331461031957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b5600a165627a7a7230582027b068ead102d2bc145b5f888896989fdfb6b6e48699ecd412ceb3419c1e517b0029 \ No newline at end of file diff --git a/solidity/build/PoolTokensContainer.abi b/solidity/build/PoolTokensContainer.abi index 7ece7a2..af21357 100644 --- a/solidity/build/PoolTokensContainer.abi +++ b/solidity/build/PoolTokensContainer.abi @@ -1 +1 @@ -[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"poolTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"createToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_from","type":"address"},{"name":"_amount","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_decimals","type":"uint8"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}] \ No newline at end of file +[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_decimals","type":"uint8"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":true,"inputs":[],"name":"poolTokens","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"createToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_from","type":"address"},{"name":"_amount","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/PoolTokensContainer.bin b/solidity/build/PoolTokensContainer.bin index d40f8f9..e4a0e90 100644 --- a/solidity/build/PoolTokensContainer.bin +++ b/solidity/build/PoolTokensContainer.bin @@ -1 +1 @@ -60806040523480156200001157600080fd5b506040516200224038038062002240833981016040908152815160208301519183015160008054600160a060020a03191633178155918401805190949390930192909110620000c157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4552525f494e56414c49445f4e414d4500000000000000000000000000000000604482015290519081900360640190fd5b81516000106200013257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4552525f494e56414c49445f53594d424f4c0000000000000000000000000000604482015290519081900360640190fd5b8251620001479060029060208601906200017b565b5081516200015d9060039060208501906200017b565b506004805460ff191660ff9290921691909117905550620002209050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001be57805160ff1916838001178555620001ee565b82800160010185558215620001ee579182015b82811115620001ee578251825591602001919060010190620001d1565b50620001fc92915062000200565b5090565b6200021d91905b80821115620001fc576000815560010162000207565b90565b61201080620002306000396000f300608060405260043610620000ad5763ffffffff60e060020a60003504166306fdde038114620000b2578063313ce56714620001425780635e35359e14620001705780636d3e313e146200019f57806379ba509714620002095780638da5cb5b146200022157806395d89b4114620002555780639cbf9e36146200026d578063c6c3bbe61462000285578063d4ee1d9014620002b2578063f2fde38b14620002ca578063f6b911bc14620002ee575b600080fd5b348015620000bf57600080fd5b50620000ca6200031b565b6040805160208082528351818301528351919283929083019185019080838360005b8381101562000106578181015183820152602001620000ec565b50505050905090810190601f168015620001345780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156200014f57600080fd5b506200015a620003aa565b6040805160ff9092168252519081900360200190f35b3480156200017d57600080fd5b506200019d600160a060020a0360043581169060243516604435620003b3565b005b348015620001ac57600080fd5b50620001b7620003f6565b60408051602080825283518183015283519192839290830191858101910280838360005b83811015620001f5578181015183820152602001620001db565b505050509050019250505060405180910390f35b3480156200021657600080fd5b506200019d6200045a565b3480156200022e57600080fd5b50620002396200052e565b60408051600160a060020a039092168252519081900360200190f35b3480156200026257600080fd5b50620000ca6200053d565b3480156200027a57600080fd5b50620002396200059b565b3480156200029257600080fd5b506200019d600160a060020a036004358116906024351660443562000882565b348015620002bf57600080fd5b50620002396200090e565b348015620002d757600080fd5b506200019d600160a060020a03600435166200091d565b348015620002fb57600080fd5b506200019d600160a060020a0360043581169060243516604435620009bd565b6002805460408051602060018416156101000260001901909316849004601f81018490048402820184019092528181529291830182828015620003a25780601f106200037657610100808354040283529160200191620003a2565b820191906000526020600020905b8154815290600101906020018083116200038457829003601f168201915b505050505081565b60045460ff1681565b620003bd62000a2b565b82620003c98162000a90565b82620003d58162000a90565b83620003e18162000af4565b620003ee86868662000b56565b505050505050565b606060058054806020026020016040519081016040528092919081815260200182805480156200045057602002820191906000526020600020905b8154600160a060020a0316815260019091019060200180831162000431575b5050505050905090565b600154600160a060020a03163314620004bd576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600054600160a060020a031681565b6003805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015620003a25780601f106200037657610100808354040283529160200191620003a2565b60006060806000620005ac62000a2b565b600580541062000606576040805160e560020a62461bcd02815260206004820152601560248201527f4552525f4d41585f4c494d49545f524541434845440000000000000000000000604482015290519081900360640190fd5b60028054604080516020601f60001961010060018716150201909416859004938401819004810282018101909252828152620006a89390929091830182828015620006955780601f10620006695761010080835404028352916020019162000695565b820191906000526020600020905b8154815290600101906020018083116200067757829003601f168201915b5050600554600101925062000c12915050565b6003805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529396506200070e939291830182828015620006955780601f10620006695761010080835404028352916020019162000695565b6004549092508390839060ff166200072562000d8c565b60ff82166040820152606080825284519082015283518190602080830191608084019188019080838360005b838110156200076b57818101518382015260200162000751565b50505050905090810190601f168015620007995780820380516001836020036101000a031916815260200191505b50838103825285518152855160209182019187019080838360005b83811015620007ce578181015183820152602001620007b4565b50505050905090810190601f168015620007fc5780820380516001836020036101000a031916815260200191505b5095505050505050604051809103906000f08015801562000821573d6000803e3d6000fd5b50600580546001810182556000919091527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a038316179055949350505050565b6200088c62000a2b565b82600160a060020a031663867904b483836040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050600060405180830381600087803b158015620008f057600080fd5b505af115801562000905573d6000803e3d6000fd5b50505050505050565b600154600160a060020a031681565b6200092762000a2b565b600054600160a060020a03828116911614156200098e576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b620009c762000a2b565b82600160a060020a031663a24835d183836040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050600060405180830381600087803b158015620008f057600080fd5b600054600160a060020a0316331462000a8e576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b600160a060020a038116151562000af1576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b600160a060020a03811630141562000af1576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009093169290921790915262000c0d90849062000cfa565b505050565b606082827f30000000000000000000000000000000000000000000000000000000000000007f01000000000000000000000000000000000000000000000000000000000000009004016040516020018083805190602001908083835b6020831062000c8f5780518252601f19909201916020918201910162000c6e565b6001836020036101000a0380198251168184511680821785525050505050509050018260ff1660ff167f010000000000000000000000000000000000000000000000000000000000000002815260010192505050604051602081830303815290604052905092915050565b62000d0462000d9d565b602060405190810160405280600181525090506020818351602085016000875af180151562000d3257600080fd5b508051151562000c0d576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b6040516112288062000dbd83390190565b6020604051908101604052806001906020820280388339509192915050560060806040526008805460ff191660011790553480156200001e57600080fd5b506040516200122838038062001228833981016040908152815160208301519183015160008054600160a060020a0319163317815591840180519094939093019290918491849184918110620000d557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4552525f494e56414c49445f4e414d4500000000000000000000000000000000604482015290519081900360640190fd5b82516000106200014657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4552525f494e56414c49445f53594d424f4c0000000000000000000000000000604482015290519081900360640190fd5b83516200015b906002906020870190620001a8565b50825162000171906003906020860190620001a8565b506004805460ff191660ff9390931692909217909155600581905533600090815260066020526040902055506200024d9350505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001eb57805160ff19168380011785556200021b565b828001600101855582156200021b579182015b828111156200021b578251825591602001919060010190620001fe565b50620002299291506200022d565b5090565b6200024a91905b8082111562000229576000815560010162000234565b90565b610fcb806200025d6000396000f3006080604052600436106101065763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461010b578063095ea7b3146101955780631608f18f146101cd57806318160ddd146101e957806323b872dd14610210578063313ce5671461023a57806354fd4d50146102655780635e35359e1461029157806370a08231146102bb57806379ba5097146102dc578063867904b4146102f15780638da5cb5b1461031557806395d89b4114610346578063a24835d11461035b578063a9059cbb1461037f578063bef97c87146103a3578063d4ee1d90146103b8578063dd62ed3e146103cd578063f2fde38b146103f4575b600080fd5b34801561011757600080fd5b50610120610415565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015a578181015183820152602001610142565b50505050905090810190601f1680156101875780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101a157600080fd5b506101b9600160a060020a03600435166024356104a0565b604080519115158252519081900360200190f35b3480156101d957600080fd5b506101e76004351515610598565b005b3480156101f557600080fd5b506101fe6105b2565b60408051918252519081900360200190f35b34801561021c57600080fd5b506101b9600160a060020a03600435811690602435166044356105b8565b34801561024657600080fd5b5061024f6105df565b6040805160ff9092168252519081900360200190f35b34801561027157600080fd5b5061027a6105e8565b6040805161ffff9092168252519081900360200190f35b34801561029d57600080fd5b506101e7600160a060020a03600435811690602435166044356105ed565b3480156102c757600080fd5b506101fe600160a060020a0360043516610626565b3480156102e857600080fd5b506101e7610638565b3480156102fd57600080fd5b506101e7600160a060020a036004351660243561070b565b34801561032157600080fd5b5061032a6107ed565b60408051600160a060020a039092168252519081900360200190f35b34801561035257600080fd5b506101206107fc565b34801561036757600080fd5b506101e7600160a060020a0360043516602435610857565b34801561038b57600080fd5b506101b9600160a060020a036004351660243561091d565b3480156103af57600080fd5b506101b9610942565b3480156103c457600080fd5b5061032a61094b565b3480156103d957600080fd5b506101fe600160a060020a036004358116906024351661095a565b34801561040057600080fd5b506101e7600160a060020a0360043516610977565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156104985780601f1061046d57610100808354040283529160200191610498565b820191906000526020600020905b81548152906001019060200180831161047b57829003601f168201915b505050505081565b6000826104ac81610a14565b8215806104da5750336000908152600760209081526040808320600160a060020a0388168452909152902054155b1515610530576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b336000818152600760209081526040808320600160a060020a03891680855290835292819020879055805187815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b6105a0610a77565b6008805460ff19169115919091179055565b60055481565b60006105c2610adb565b6105cd848484610b37565b15156105d557fe5b5060019392505050565b60045460ff1681565b600481565b6105f5610a77565b826105ff81610a14565b8261060981610a14565b8361061381610c48565b61061e868686610ca9565b505050505050565b60066020526000908152604090205481565b600154600160a060020a0316331461069a576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b610713610a77565b8161071d81610a14565b8261072781610c48565b60055461073a908463ffffffff610d6316565b600555600160a060020a038416600090815260066020526040902054610766908463ffffffff610d6316565b600160a060020a03851660009081526006602090815260409182902092909255805185815290517f9386c90217c323f58030f9dadcbc938f807a940f4ff41cd4cead9562f5da7dc3929181900390910190a1604080518481529051600160a060020a03861691600091600080516020610f808339815191529181900360200190a350505050565b600054600160a060020a031681565b6003805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104985780601f1061046d57610100808354040283529160200191610498565b61085f610a77565b600160a060020a038216600090815260066020526040902054610888908263ffffffff610dc716565b600160a060020a0383166000908152600660205260409020556005546108b4908263ffffffff610dc716565b600555604080518281529051600091600160a060020a03851691600080516020610f808339815191529181900360200190a36040805182815290517f9a1b418bc061a5d80270261562e6986a35d995f8051145f277be16103abd34539181900360200190a15050565b6000610927610adb565b6109318383610e27565b151561093957fe5b50600192915050565b60085460ff1681565b600154600160a060020a031681565b600760209081526000928352604080842090915290825290205481565b61097f610a77565b600054600160a060020a03828116911614156109e5576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600160a060020a0381161515610a74576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b600054600160a060020a03163314610ad9576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b60085460ff161515610ad9576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5452414e53464552535f44495341424c454400000000000000000000604482015290519081900360640190fd5b600083610b4381610a14565b83610b4d81610a14565b600160a060020a0386166000908152600760209081526040808320338452909152902054610b81908563ffffffff610dc716565b600160a060020a038716600081815260076020908152604080832033845282528083209490945591815260069091522054610bc2908563ffffffff610dc716565b600160a060020a038088166000908152600660205260408082209390935590871681522054610bf7908563ffffffff610d6316565b600160a060020a0380871660008181526006602090815260409182902094909455805188815290519193928a1692600080516020610f8083398151915292918290030190a350600195945050505050565b600160a060020a038116301415610a74576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090931692909217909152610d5e908490610ed2565b505050565b600082820183811015610dc0576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b9392505050565b600081831015610e21576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b600082610e3381610a14565b33600090815260066020526040902054610e53908463ffffffff610dc716565b3360009081526006602052604080822092909255600160a060020a03861681522054610e85908463ffffffff610d6316565b600160a060020a038516600081815260066020908152604091829020939093558051868152905191923392600080516020610f808339815191529281900390910190a35060019392505050565b610eda610f60565b602060405190810160405280600181525090506020818351602085016000875af1801515610f0757600080fd5b5080511515610d5e576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b60206040519081016040528060019060208202803883395091929150505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820deacababea352373a412cdf1cc7a9cce57f1406f5d9d4e2e52f9ad7258ae10260029a165627a7a7230582013ca9425340763bc7bea18fbee2602a91994a81c00dc98d118ac2c3574b78db00029 \ No newline at end of file +60806040523480156200001157600080fd5b506040516200224038038062002240833981016040908152815160208301519183015160008054600160a060020a03191633178155918401805190949390930192909110620000c157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4552525f494e56414c49445f4e414d4500000000000000000000000000000000604482015290519081900360640190fd5b81516000106200013257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4552525f494e56414c49445f53594d424f4c0000000000000000000000000000604482015290519081900360640190fd5b8251620001479060029060208601906200017b565b5081516200015d9060039060208501906200017b565b506004805460ff191660ff9290921691909117905550620002209050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001be57805160ff1916838001178555620001ee565b82800160010185558215620001ee579182015b82811115620001ee578251825591602001919060010190620001d1565b50620001fc92915062000200565b5090565b6200021d91905b80821115620001fc576000815560010162000207565b90565b61201080620002306000396000f300608060405260043610620000ad5763ffffffff60e060020a60003504166306fdde038114620000b2578063313ce56714620001425780635e35359e14620001705780636d3e313e146200019f57806379ba509714620002095780638da5cb5b146200022157806395d89b4114620002555780639cbf9e36146200026d578063c6c3bbe61462000285578063d4ee1d9014620002b2578063f2fde38b14620002ca578063f6b911bc14620002ee575b600080fd5b348015620000bf57600080fd5b50620000ca6200031b565b6040805160208082528351818301528351919283929083019185019080838360005b8381101562000106578181015183820152602001620000ec565b50505050905090810190601f168015620001345780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156200014f57600080fd5b506200015a620003aa565b6040805160ff9092168252519081900360200190f35b3480156200017d57600080fd5b506200019d600160a060020a0360043581169060243516604435620003b3565b005b348015620001ac57600080fd5b50620001b7620003f6565b60408051602080825283518183015283519192839290830191858101910280838360005b83811015620001f5578181015183820152602001620001db565b505050509050019250505060405180910390f35b3480156200021657600080fd5b506200019d6200045a565b3480156200022e57600080fd5b50620002396200052e565b60408051600160a060020a039092168252519081900360200190f35b3480156200026257600080fd5b50620000ca6200053d565b3480156200027a57600080fd5b50620002396200059b565b3480156200029257600080fd5b506200019d600160a060020a036004358116906024351660443562000882565b348015620002bf57600080fd5b50620002396200090e565b348015620002d757600080fd5b506200019d600160a060020a03600435166200091d565b348015620002fb57600080fd5b506200019d600160a060020a0360043581169060243516604435620009bd565b6002805460408051602060018416156101000260001901909316849004601f81018490048402820184019092528181529291830182828015620003a25780601f106200037657610100808354040283529160200191620003a2565b820191906000526020600020905b8154815290600101906020018083116200038457829003601f168201915b505050505081565b60045460ff1681565b620003bd62000a2b565b82620003c98162000a90565b82620003d58162000a90565b83620003e18162000af4565b620003ee86868662000b56565b505050505050565b606060058054806020026020016040519081016040528092919081815260200182805480156200045057602002820191906000526020600020905b8154600160a060020a0316815260019091019060200180831162000431575b5050505050905090565b600154600160a060020a03163314620004bd576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600054600160a060020a031681565b6003805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015620003a25780601f106200037657610100808354040283529160200191620003a2565b60006060806000620005ac62000a2b565b600580541062000606576040805160e560020a62461bcd02815260206004820152601560248201527f4552525f4d41585f4c494d49545f524541434845440000000000000000000000604482015290519081900360640190fd5b60028054604080516020601f60001961010060018716150201909416859004938401819004810282018101909252828152620006a89390929091830182828015620006955780601f10620006695761010080835404028352916020019162000695565b820191906000526020600020905b8154815290600101906020018083116200067757829003601f168201915b5050600554600101925062000c12915050565b6003805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529396506200070e939291830182828015620006955780601f10620006695761010080835404028352916020019162000695565b6004549092508390839060ff166200072562000d8c565b60ff82166040820152606080825284519082015283518190602080830191608084019188019080838360005b838110156200076b57818101518382015260200162000751565b50505050905090810190601f168015620007995780820380516001836020036101000a031916815260200191505b50838103825285518152855160209182019187019080838360005b83811015620007ce578181015183820152602001620007b4565b50505050905090810190601f168015620007fc5780820380516001836020036101000a031916815260200191505b5095505050505050604051809103906000f08015801562000821573d6000803e3d6000fd5b50600580546001810182556000919091527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a038316179055949350505050565b6200088c62000a2b565b82600160a060020a031663867904b483836040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050600060405180830381600087803b158015620008f057600080fd5b505af115801562000905573d6000803e3d6000fd5b50505050505050565b600154600160a060020a031681565b6200092762000a2b565b600054600160a060020a03828116911614156200098e576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b620009c762000a2b565b82600160a060020a031663a24835d183836040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050600060405180830381600087803b158015620008f057600080fd5b600054600160a060020a0316331462000a8e576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b600160a060020a038116151562000af1576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b600160a060020a03811630141562000af1576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009093169290921790915262000c0d90849062000cfa565b505050565b606082827f30000000000000000000000000000000000000000000000000000000000000007f01000000000000000000000000000000000000000000000000000000000000009004016040516020018083805190602001908083835b6020831062000c8f5780518252601f19909201916020918201910162000c6e565b6001836020036101000a0380198251168184511680821785525050505050509050018260ff1660ff167f010000000000000000000000000000000000000000000000000000000000000002815260010192505050604051602081830303815290604052905092915050565b62000d0462000d9d565b602060405190810160405280600181525090506020818351602085016000875af180151562000d3257600080fd5b508051151562000c0d576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b6040516112288062000dbd83390190565b6020604051908101604052806001906020820280388339509192915050560060806040526008805460ff191660011790553480156200001e57600080fd5b506040516200122838038062001228833981016040908152815160208301519183015160008054600160a060020a0319163317815591840180519094939093019290918491849184918110620000d557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4552525f494e56414c49445f4e414d4500000000000000000000000000000000604482015290519081900360640190fd5b82516000106200014657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4552525f494e56414c49445f53594d424f4c0000000000000000000000000000604482015290519081900360640190fd5b83516200015b906002906020870190620001a8565b50825162000171906003906020860190620001a8565b506004805460ff191660ff9390931692909217909155600581905533600090815260066020526040902055506200024d9350505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001eb57805160ff19168380011785556200021b565b828001600101855582156200021b579182015b828111156200021b578251825591602001919060010190620001fe565b50620002299291506200022d565b5090565b6200024a91905b8082111562000229576000815560010162000234565b90565b610fcb806200025d6000396000f3006080604052600436106101065763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461010b578063095ea7b3146101955780631608f18f146101cd57806318160ddd146101e957806323b872dd14610210578063313ce5671461023a57806354fd4d50146102655780635e35359e1461029157806370a08231146102bb57806379ba5097146102dc578063867904b4146102f15780638da5cb5b1461031557806395d89b4114610346578063a24835d11461035b578063a9059cbb1461037f578063bef97c87146103a3578063d4ee1d90146103b8578063dd62ed3e146103cd578063f2fde38b146103f4575b600080fd5b34801561011757600080fd5b50610120610415565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015a578181015183820152602001610142565b50505050905090810190601f1680156101875780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101a157600080fd5b506101b9600160a060020a03600435166024356104a0565b604080519115158252519081900360200190f35b3480156101d957600080fd5b506101e76004351515610598565b005b3480156101f557600080fd5b506101fe6105b2565b60408051918252519081900360200190f35b34801561021c57600080fd5b506101b9600160a060020a03600435811690602435166044356105b8565b34801561024657600080fd5b5061024f6105df565b6040805160ff9092168252519081900360200190f35b34801561027157600080fd5b5061027a6105e8565b6040805161ffff9092168252519081900360200190f35b34801561029d57600080fd5b506101e7600160a060020a03600435811690602435166044356105ed565b3480156102c757600080fd5b506101fe600160a060020a0360043516610626565b3480156102e857600080fd5b506101e7610638565b3480156102fd57600080fd5b506101e7600160a060020a036004351660243561070b565b34801561032157600080fd5b5061032a6107ed565b60408051600160a060020a039092168252519081900360200190f35b34801561035257600080fd5b506101206107fc565b34801561036757600080fd5b506101e7600160a060020a0360043516602435610857565b34801561038b57600080fd5b506101b9600160a060020a036004351660243561091d565b3480156103af57600080fd5b506101b9610942565b3480156103c457600080fd5b5061032a61094b565b3480156103d957600080fd5b506101fe600160a060020a036004358116906024351661095a565b34801561040057600080fd5b506101e7600160a060020a0360043516610977565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156104985780601f1061046d57610100808354040283529160200191610498565b820191906000526020600020905b81548152906001019060200180831161047b57829003601f168201915b505050505081565b6000826104ac81610a14565b8215806104da5750336000908152600760209081526040808320600160a060020a0388168452909152902054155b1515610530576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b336000818152600760209081526040808320600160a060020a03891680855290835292819020879055805187815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b6105a0610a77565b6008805460ff19169115919091179055565b60055481565b60006105c2610adb565b6105cd848484610b37565b15156105d557fe5b5060019392505050565b60045460ff1681565b600481565b6105f5610a77565b826105ff81610a14565b8261060981610a14565b8361061381610c48565b61061e868686610ca9565b505050505050565b60066020526000908152604090205481565b600154600160a060020a0316331461069a576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b610713610a77565b8161071d81610a14565b8261072781610c48565b60055461073a908463ffffffff610d6316565b600555600160a060020a038416600090815260066020526040902054610766908463ffffffff610d6316565b600160a060020a03851660009081526006602090815260409182902092909255805185815290517f9386c90217c323f58030f9dadcbc938f807a940f4ff41cd4cead9562f5da7dc3929181900390910190a1604080518481529051600160a060020a03861691600091600080516020610f808339815191529181900360200190a350505050565b600054600160a060020a031681565b6003805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104985780601f1061046d57610100808354040283529160200191610498565b61085f610a77565b600160a060020a038216600090815260066020526040902054610888908263ffffffff610dc716565b600160a060020a0383166000908152600660205260409020556005546108b4908263ffffffff610dc716565b600555604080518281529051600091600160a060020a03851691600080516020610f808339815191529181900360200190a36040805182815290517f9a1b418bc061a5d80270261562e6986a35d995f8051145f277be16103abd34539181900360200190a15050565b6000610927610adb565b6109318383610e27565b151561093957fe5b50600192915050565b60085460ff1681565b600154600160a060020a031681565b600760209081526000928352604080842090915290825290205481565b61097f610a77565b600054600160a060020a03828116911614156109e5576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600160a060020a0381161515610a74576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b600054600160a060020a03163314610ad9576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b60085460ff161515610ad9576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5452414e53464552535f44495341424c454400000000000000000000604482015290519081900360640190fd5b600083610b4381610a14565b83610b4d81610a14565b600160a060020a0386166000908152600760209081526040808320338452909152902054610b81908563ffffffff610dc716565b600160a060020a038716600081815260076020908152604080832033845282528083209490945591815260069091522054610bc2908563ffffffff610dc716565b600160a060020a038088166000908152600660205260408082209390935590871681522054610bf7908563ffffffff610d6316565b600160a060020a0380871660008181526006602090815260409182902094909455805188815290519193928a1692600080516020610f8083398151915292918290030190a350600195945050505050565b600160a060020a038116301415610a74576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090931692909217909152610d5e908490610ed2565b505050565b600082820183811015610dc0576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b9392505050565b600081831015610e21576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b600082610e3381610a14565b33600090815260066020526040902054610e53908463ffffffff610dc716565b3360009081526006602052604080822092909255600160a060020a03861681522054610e85908463ffffffff610d6316565b600160a060020a038516600081815260066020908152604091829020939093558051868152905191923392600080516020610f808339815191529281900390910190a35060019392505050565b610eda610f60565b602060405190810160405280600181525090506020818351602085016000875af1801515610f0757600080fd5b5080511515610d5e576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b60206040519081016040528060019060208202803883395091929150505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820ab924832ddea261f0e3fbf4d24ac3b4778f7be5a9bbf5bfa6e40bc49f56017d30029a165627a7a72305820b74c13a0f72eb82dcda2e38d4ca2f2ca5b7798b153ec77e86b2f1e519009cf7d0029 \ No newline at end of file diff --git a/solidity/build/PriceOracle.abi b/solidity/build/PriceOracle.abi index f7dc8f1..fdad75a 100644 --- a/solidity/build/PriceOracle.abi +++ b/solidity/build/PriceOracle.abi @@ -1 +1 @@ -[{"constant":true,"inputs":[],"name":"tokenA","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokenB","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"tokenDecimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_tokenA","type":"address"},{"name":"_tokenB","type":"address"}],"name":"latestRate","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_tokenA","type":"address"},{"name":"_tokenB","type":"address"}],"name":"latestRateAndUpdateTime","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokenAOracle","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"lastUpdateTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"tokensToOracles","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokenBOracle","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_tokenA","type":"address"},{"name":"_tokenB","type":"address"},{"name":"_tokenAOracle","type":"address"},{"name":"_tokenBOracle","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"}] \ No newline at end of file +[{"constant":true,"inputs":[],"name":"tokenA","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokenB","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"tokenDecimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokenAOracle","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"tokensToOracles","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokenBOracle","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_tokenA","type":"address"},{"name":"_tokenB","type":"address"},{"name":"_tokenAOracle","type":"address"},{"name":"_tokenBOracle","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"constant":true,"inputs":[{"name":"_tokenA","type":"address"},{"name":"_tokenB","type":"address"}],"name":"latestRate","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"lastUpdateTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_tokenA","type":"address"},{"name":"_tokenB","type":"address"}],"name":"latestRateAndUpdateTime","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/solidity/build/PriceOracle.bin b/solidity/build/PriceOracle.bin index 37d9fab..9199b20 100644 --- a/solidity/build/PriceOracle.bin +++ b/solidity/build/PriceOracle.bin @@ -1 +1 @@ -608060405234801561001057600080fd5b50604051608080610b408339810160409081528151602083015191830151606090930151909290838361004c8282640100000000610168810204565b83836100618282640100000000610168810204565b60008054600160a060020a03808b16600160a060020a03199283161790925560018054928a16929091169190911790556100a38864010000000061020b810204565b600160a060020a0389166000908152600260205260409020805460ff191660ff929092169190911790556100df8764010000000061020b810204565b600160a060020a039788166000818152600260209081526040808320805460ff9690961660ff1990961695909517909455600380549a8c16600160a060020a03199b8c168117909155600480549a8d169a8c168b1790559b909a168152600590995281892080548916909a1790995597875250505093909220805490911690911790555061033f565b61017a826401000000006102c5810204565b61018c816401000000006102c5810204565b600160a060020a03828116908216141561020757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4552525f53414d455f4144445245535300000000000000000000000000000000604482015290519081900360640190fd5b5050565b6000600160a060020a03821673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee141561023a575060126102c0565b81600160a060020a031663313ce5676040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b15801561029157600080fd5b505af11580156102a5573d6000803e3d6000fd5b505050506040513d60208110156102bb57600080fd5b505190505b919050565b600160a060020a038116151561033c57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b6107f28061034e6000396000f3006080604052600436106100985763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630fc63d10811461009d5780635f64b55b146100ce5780638ee573ac146100e3578063ae8180041461011a578063b1772d7a1461015a578063b9e1715b1461019f578063c8f33c91146101b4578063cbd962d1146101db578063f997fda7146101fc575b600080fd5b3480156100a957600080fd5b506100b2610211565b60408051600160a060020a039092168252519081900360200190f35b3480156100da57600080fd5b506100b2610220565b3480156100ef57600080fd5b50610104600160a060020a036004351661022f565b6040805160ff9092168252519081900360200190f35b34801561012657600080fd5b50610141600160a060020a0360043581169060243516610244565b6040805192835260208301919091528051918290030190f35b34801561016657600080fd5b50610181600160a060020a0360043581169060243516610419565b60408051938452602084019290925282820152519081900360600190f35b3480156101ab57600080fd5b506100b2610448565b3480156101c057600080fd5b506101c9610457565b60408051918252519081900360200190f35b3480156101e757600080fd5b506100b2600160a060020a0360043516610599565b34801561020857600080fd5b506100b26105b4565b600054600160a060020a031681565b600154600160a060020a031681565b60026020526000908152604090205460ff1681565b600080600080600080878761025982826105c3565b600160a060020a03808b1660009081526005602090815260408083205481517f50d25bcd00000000000000000000000000000000000000000000000000000000815291519416936350d25bcd93600480840194938390030190829087803b1580156102c357600080fd5b505af11580156102d7573d6000803e3d6000fd5b505050506040513d60208110156102ed57600080fd5b5051600160a060020a03808b1660009081526005602090815260408083205481517f50d25bcd0000000000000000000000000000000000000000000000000000000081529151959b50909316936350d25bcd93600480820194918390030190829087803b15801561035d57600080fd5b505af1158015610371573d6000803e3d6000fd5b505050506040513d602081101561038757600080fd5b5051600160a060020a03808c1660009081526002602052604080822054928d16825290205491965060ff9081169550169250828411156103e0576103d98560ff85870316600a0a63ffffffff61066916565b9450610409565b8260ff168460ff161015610409576104068660ff86860316600a0a63ffffffff61066916565b95505b5093989297509195505050505050565b600080600080600061042b8787610244565b915091508181610439610457565b94509450945050509250925092565b600354600160a060020a031681565b6000806000600360009054906101000a9004600160a060020a0316600160a060020a0316638205bf6a6040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1580156104c857600080fd5b505af11580156104dc573d6000803e3d6000fd5b505050506040513d60208110156104f257600080fd5b505160048054604080517f8205bf6a0000000000000000000000000000000000000000000000000000000081529051939550600160a060020a0390911692638205bf6a928281019260209291908290030181600087803b15801561055557600080fd5b505af1158015610569573d6000803e3d6000fd5b505050506040513d602081101561057f57600080fd5b505190508082116105905780610592565b815b9250505090565b600560205260009081526040902054600160a060020a031681565b600454600160a060020a031681565b6105cd82826106ed565b600160a060020a03828116600090815260056020526040902054161580159061060f5750600160a060020a038181166000908152600560205260409020541615155b1515610665576040805160e560020a62461bcd02815260206004820152601560248201527f4552525f554e535550504f525445445f544f4b454e0000000000000000000000604482015290519081900360640190fd5b5050565b60008083151561067c57600091506106e6565b5082820282848281151561068c57fe5b04146106e2576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b8091505b5092915050565b6106f682610763565b6106ff81610763565b600160a060020a038281169082161415610665576040805160e560020a62461bcd02815260206004820152601060248201527f4552525f53414d455f4144445245535300000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a03811615156107c3576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b505600a165627a7a72305820c4f23a7a93a999db628045fcad1e1c8d52d59b91b3c559958bf0c8724d5a0df50029 \ No newline at end of file +608060405234801561001057600080fd5b50604051608080610b408339810160409081528151602083015191830151606090930151909290838361004c8282640100000000610168810204565b83836100618282640100000000610168810204565b60008054600160a060020a03808b16600160a060020a03199283161790925560018054928a16929091169190911790556100a38864010000000061020b810204565b600160a060020a0389166000908152600260205260409020805460ff191660ff929092169190911790556100df8764010000000061020b810204565b600160a060020a039788166000818152600260209081526040808320805460ff9690961660ff1990961695909517909455600380549a8c16600160a060020a03199b8c168117909155600480549a8d169a8c168b1790559b909a168152600590995281892080548916909a1790995597875250505093909220805490911690911790555061033f565b61017a826401000000006102c5810204565b61018c816401000000006102c5810204565b600160a060020a03828116908216141561020757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4552525f53414d455f4144445245535300000000000000000000000000000000604482015290519081900360640190fd5b5050565b6000600160a060020a03821673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee141561023a575060126102c0565b81600160a060020a031663313ce5676040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b15801561029157600080fd5b505af11580156102a5573d6000803e3d6000fd5b505050506040513d60208110156102bb57600080fd5b505190505b919050565b600160a060020a038116151561033c57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b6107f28061034e6000396000f3006080604052600436106100985763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630fc63d10811461009d5780635f64b55b146100ce5780638ee573ac146100e3578063ae8180041461011a578063b1772d7a1461015a578063b9e1715b1461019f578063c8f33c91146101b4578063cbd962d1146101db578063f997fda7146101fc575b600080fd5b3480156100a957600080fd5b506100b2610211565b60408051600160a060020a039092168252519081900360200190f35b3480156100da57600080fd5b506100b2610220565b3480156100ef57600080fd5b50610104600160a060020a036004351661022f565b6040805160ff9092168252519081900360200190f35b34801561012657600080fd5b50610141600160a060020a0360043581169060243516610244565b6040805192835260208301919091528051918290030190f35b34801561016657600080fd5b50610181600160a060020a0360043581169060243516610419565b60408051938452602084019290925282820152519081900360600190f35b3480156101ab57600080fd5b506100b2610448565b3480156101c057600080fd5b506101c9610457565b60408051918252519081900360200190f35b3480156101e757600080fd5b506100b2600160a060020a0360043516610599565b34801561020857600080fd5b506100b26105b4565b600054600160a060020a031681565b600154600160a060020a031681565b60026020526000908152604090205460ff1681565b600080600080600080878761025982826105c3565b600160a060020a03808b1660009081526005602090815260408083205481517f50d25bcd00000000000000000000000000000000000000000000000000000000815291519416936350d25bcd93600480840194938390030190829087803b1580156102c357600080fd5b505af11580156102d7573d6000803e3d6000fd5b505050506040513d60208110156102ed57600080fd5b5051600160a060020a03808b1660009081526005602090815260408083205481517f50d25bcd0000000000000000000000000000000000000000000000000000000081529151959b50909316936350d25bcd93600480820194918390030190829087803b15801561035d57600080fd5b505af1158015610371573d6000803e3d6000fd5b505050506040513d602081101561038757600080fd5b5051600160a060020a03808c1660009081526002602052604080822054928d16825290205491965060ff9081169550169250828411156103e0576103d98560ff85870316600a0a63ffffffff61066916565b9450610409565b8260ff168460ff161015610409576104068660ff86860316600a0a63ffffffff61066916565b95505b5093989297509195505050505050565b600080600080600061042b8787610244565b915091508181610439610457565b94509450945050509250925092565b600354600160a060020a031681565b6000806000600360009054906101000a9004600160a060020a0316600160a060020a0316638205bf6a6040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1580156104c857600080fd5b505af11580156104dc573d6000803e3d6000fd5b505050506040513d60208110156104f257600080fd5b505160048054604080517f8205bf6a0000000000000000000000000000000000000000000000000000000081529051939550600160a060020a0390911692638205bf6a928281019260209291908290030181600087803b15801561055557600080fd5b505af1158015610569573d6000803e3d6000fd5b505050506040513d602081101561057f57600080fd5b505190508082116105905780610592565b815b9250505090565b600560205260009081526040902054600160a060020a031681565b600454600160a060020a031681565b6105cd82826106ed565b600160a060020a03828116600090815260056020526040902054161580159061060f5750600160a060020a038181166000908152600560205260409020541615155b1515610665576040805160e560020a62461bcd02815260206004820152601560248201527f4552525f554e535550504f525445445f544f4b454e0000000000000000000000604482015290519081900360640190fd5b5050565b60008083151561067c57600091506106e6565b5082820282848281151561068c57fe5b04146106e2576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b8091505b5092915050565b6106f682610763565b6106ff81610763565b600160a060020a038281169082161415610665576040805160e560020a62461bcd02815260206004820152601060248201527f4552525f53414d455f4144445245535300000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a03811615156107c3576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b505600a165627a7a72305820b8da0461f4103d30aefe325151627d56503293d6e32bdd8a35a31eff9b7091160029 \ No newline at end of file diff --git a/solidity/build/SafeMath.bin b/solidity/build/SafeMath.bin index 9128a67..328e424 100644 --- a/solidity/build/SafeMath.bin +++ b/solidity/build/SafeMath.bin @@ -1 +1 @@ -604c602c600b82828239805160001a60731460008114601c57601e565bfe5b5030600052607381538281f30073000000000000000000000000000000000000000030146080604052600080fd00a165627a7a72305820d54c512e211758a0a48db59eafa952083401bb0530c0d09aa380ebd065150ebc0029 \ No newline at end of file +604c602c600b82828239805160001a60731460008114601c57601e565bfe5b5030600052607381538281f30073000000000000000000000000000000000000000030146080604052600080fd00a165627a7a723058208545f3d661ba507bb0f260c0bac92f145a75c861a75b31814fdc5be2926f88280029 \ No newline at end of file diff --git a/solidity/build/SmartToken.abi b/solidity/build/SmartToken.abi index f1f082e..3b94085 100644 --- a/solidity/build/SmartToken.abi +++ b/solidity/build/SmartToken.abi @@ -1 +1 @@ -[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_disable","type":"bool"}],"name":"disableTransfers","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"version","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"issue","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_amount","type":"uint256"}],"name":"destroy","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"transfersEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_decimals","type":"uint8"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_amount","type":"uint256"}],"name":"Issuance","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_amount","type":"uint256"}],"name":"Destruction","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_spender","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}] \ No newline at end of file +[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"version","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"transfersEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_decimals","type":"uint8"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_amount","type":"uint256"}],"name":"Issuance","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_amount","type":"uint256"}],"name":"Destruction","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_spender","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":false,"inputs":[{"name":"_disable","type":"bool"}],"name":"disableTransfers","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"issue","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_amount","type":"uint256"}],"name":"destroy","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/SmartToken.bin b/solidity/build/SmartToken.bin index 45bb7bf..dd0428f 100644 --- a/solidity/build/SmartToken.bin +++ b/solidity/build/SmartToken.bin @@ -1 +1 @@ -60806040526008805460ff191660011790553480156200001e57600080fd5b506040516200122838038062001228833981016040908152815160208301519183015160008054600160a060020a0319163317815591840180519094939093019290918491849184918110620000d557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4552525f494e56414c49445f4e414d4500000000000000000000000000000000604482015290519081900360640190fd5b82516000106200014657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4552525f494e56414c49445f53594d424f4c0000000000000000000000000000604482015290519081900360640190fd5b83516200015b906002906020870190620001a8565b50825162000171906003906020860190620001a8565b506004805460ff191660ff9390931692909217909155600581905533600090815260066020526040902055506200024d9350505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001eb57805160ff19168380011785556200021b565b828001600101855582156200021b579182015b828111156200021b578251825591602001919060010190620001fe565b50620002299291506200022d565b5090565b6200024a91905b8082111562000229576000815560010162000234565b90565b610fcb806200025d6000396000f3006080604052600436106101065763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461010b578063095ea7b3146101955780631608f18f146101cd57806318160ddd146101e957806323b872dd14610210578063313ce5671461023a57806354fd4d50146102655780635e35359e1461029157806370a08231146102bb57806379ba5097146102dc578063867904b4146102f15780638da5cb5b1461031557806395d89b4114610346578063a24835d11461035b578063a9059cbb1461037f578063bef97c87146103a3578063d4ee1d90146103b8578063dd62ed3e146103cd578063f2fde38b146103f4575b600080fd5b34801561011757600080fd5b50610120610415565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015a578181015183820152602001610142565b50505050905090810190601f1680156101875780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101a157600080fd5b506101b9600160a060020a03600435166024356104a0565b604080519115158252519081900360200190f35b3480156101d957600080fd5b506101e76004351515610598565b005b3480156101f557600080fd5b506101fe6105b2565b60408051918252519081900360200190f35b34801561021c57600080fd5b506101b9600160a060020a03600435811690602435166044356105b8565b34801561024657600080fd5b5061024f6105df565b6040805160ff9092168252519081900360200190f35b34801561027157600080fd5b5061027a6105e8565b6040805161ffff9092168252519081900360200190f35b34801561029d57600080fd5b506101e7600160a060020a03600435811690602435166044356105ed565b3480156102c757600080fd5b506101fe600160a060020a0360043516610626565b3480156102e857600080fd5b506101e7610638565b3480156102fd57600080fd5b506101e7600160a060020a036004351660243561070b565b34801561032157600080fd5b5061032a6107ed565b60408051600160a060020a039092168252519081900360200190f35b34801561035257600080fd5b506101206107fc565b34801561036757600080fd5b506101e7600160a060020a0360043516602435610857565b34801561038b57600080fd5b506101b9600160a060020a036004351660243561091d565b3480156103af57600080fd5b506101b9610942565b3480156103c457600080fd5b5061032a61094b565b3480156103d957600080fd5b506101fe600160a060020a036004358116906024351661095a565b34801561040057600080fd5b506101e7600160a060020a0360043516610977565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156104985780601f1061046d57610100808354040283529160200191610498565b820191906000526020600020905b81548152906001019060200180831161047b57829003601f168201915b505050505081565b6000826104ac81610a14565b8215806104da5750336000908152600760209081526040808320600160a060020a0388168452909152902054155b1515610530576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b336000818152600760209081526040808320600160a060020a03891680855290835292819020879055805187815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b6105a0610a77565b6008805460ff19169115919091179055565b60055481565b60006105c2610adb565b6105cd848484610b37565b15156105d557fe5b5060019392505050565b60045460ff1681565b600481565b6105f5610a77565b826105ff81610a14565b8261060981610a14565b8361061381610c48565b61061e868686610ca9565b505050505050565b60066020526000908152604090205481565b600154600160a060020a0316331461069a576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b610713610a77565b8161071d81610a14565b8261072781610c48565b60055461073a908463ffffffff610d6316565b600555600160a060020a038416600090815260066020526040902054610766908463ffffffff610d6316565b600160a060020a03851660009081526006602090815260409182902092909255805185815290517f9386c90217c323f58030f9dadcbc938f807a940f4ff41cd4cead9562f5da7dc3929181900390910190a1604080518481529051600160a060020a03861691600091600080516020610f808339815191529181900360200190a350505050565b600054600160a060020a031681565b6003805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104985780601f1061046d57610100808354040283529160200191610498565b61085f610a77565b600160a060020a038216600090815260066020526040902054610888908263ffffffff610dc716565b600160a060020a0383166000908152600660205260409020556005546108b4908263ffffffff610dc716565b600555604080518281529051600091600160a060020a03851691600080516020610f808339815191529181900360200190a36040805182815290517f9a1b418bc061a5d80270261562e6986a35d995f8051145f277be16103abd34539181900360200190a15050565b6000610927610adb565b6109318383610e27565b151561093957fe5b50600192915050565b60085460ff1681565b600154600160a060020a031681565b600760209081526000928352604080842090915290825290205481565b61097f610a77565b600054600160a060020a03828116911614156109e5576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600160a060020a0381161515610a74576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b600054600160a060020a03163314610ad9576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b60085460ff161515610ad9576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5452414e53464552535f44495341424c454400000000000000000000604482015290519081900360640190fd5b600083610b4381610a14565b83610b4d81610a14565b600160a060020a0386166000908152600760209081526040808320338452909152902054610b81908563ffffffff610dc716565b600160a060020a038716600081815260076020908152604080832033845282528083209490945591815260069091522054610bc2908563ffffffff610dc716565b600160a060020a038088166000908152600660205260408082209390935590871681522054610bf7908563ffffffff610d6316565b600160a060020a0380871660008181526006602090815260409182902094909455805188815290519193928a1692600080516020610f8083398151915292918290030190a350600195945050505050565b600160a060020a038116301415610a74576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090931692909217909152610d5e908490610ed2565b505050565b600082820183811015610dc0576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b9392505050565b600081831015610e21576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b600082610e3381610a14565b33600090815260066020526040902054610e53908463ffffffff610dc716565b3360009081526006602052604080822092909255600160a060020a03861681522054610e85908463ffffffff610d6316565b600160a060020a038516600081815260066020908152604091829020939093558051868152905191923392600080516020610f808339815191529281900390910190a35060019392505050565b610eda610f60565b602060405190810160405280600181525090506020818351602085016000875af1801515610f0757600080fd5b5080511515610d5e576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b60206040519081016040528060019060208202803883395091929150505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820deacababea352373a412cdf1cc7a9cce57f1406f5d9d4e2e52f9ad7258ae10260029 \ No newline at end of file +60806040526008805460ff191660011790553480156200001e57600080fd5b506040516200122838038062001228833981016040908152815160208301519183015160008054600160a060020a0319163317815591840180519094939093019290918491849184918110620000d557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4552525f494e56414c49445f4e414d4500000000000000000000000000000000604482015290519081900360640190fd5b82516000106200014657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4552525f494e56414c49445f53594d424f4c0000000000000000000000000000604482015290519081900360640190fd5b83516200015b906002906020870190620001a8565b50825162000171906003906020860190620001a8565b506004805460ff191660ff9390931692909217909155600581905533600090815260066020526040902055506200024d9350505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001eb57805160ff19168380011785556200021b565b828001600101855582156200021b579182015b828111156200021b578251825591602001919060010190620001fe565b50620002299291506200022d565b5090565b6200024a91905b8082111562000229576000815560010162000234565b90565b610fcb806200025d6000396000f3006080604052600436106101065763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461010b578063095ea7b3146101955780631608f18f146101cd57806318160ddd146101e957806323b872dd14610210578063313ce5671461023a57806354fd4d50146102655780635e35359e1461029157806370a08231146102bb57806379ba5097146102dc578063867904b4146102f15780638da5cb5b1461031557806395d89b4114610346578063a24835d11461035b578063a9059cbb1461037f578063bef97c87146103a3578063d4ee1d90146103b8578063dd62ed3e146103cd578063f2fde38b146103f4575b600080fd5b34801561011757600080fd5b50610120610415565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015a578181015183820152602001610142565b50505050905090810190601f1680156101875780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101a157600080fd5b506101b9600160a060020a03600435166024356104a0565b604080519115158252519081900360200190f35b3480156101d957600080fd5b506101e76004351515610598565b005b3480156101f557600080fd5b506101fe6105b2565b60408051918252519081900360200190f35b34801561021c57600080fd5b506101b9600160a060020a03600435811690602435166044356105b8565b34801561024657600080fd5b5061024f6105df565b6040805160ff9092168252519081900360200190f35b34801561027157600080fd5b5061027a6105e8565b6040805161ffff9092168252519081900360200190f35b34801561029d57600080fd5b506101e7600160a060020a03600435811690602435166044356105ed565b3480156102c757600080fd5b506101fe600160a060020a0360043516610626565b3480156102e857600080fd5b506101e7610638565b3480156102fd57600080fd5b506101e7600160a060020a036004351660243561070b565b34801561032157600080fd5b5061032a6107ed565b60408051600160a060020a039092168252519081900360200190f35b34801561035257600080fd5b506101206107fc565b34801561036757600080fd5b506101e7600160a060020a0360043516602435610857565b34801561038b57600080fd5b506101b9600160a060020a036004351660243561091d565b3480156103af57600080fd5b506101b9610942565b3480156103c457600080fd5b5061032a61094b565b3480156103d957600080fd5b506101fe600160a060020a036004358116906024351661095a565b34801561040057600080fd5b506101e7600160a060020a0360043516610977565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156104985780601f1061046d57610100808354040283529160200191610498565b820191906000526020600020905b81548152906001019060200180831161047b57829003601f168201915b505050505081565b6000826104ac81610a14565b8215806104da5750336000908152600760209081526040808320600160a060020a0388168452909152902054155b1515610530576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b336000818152600760209081526040808320600160a060020a03891680855290835292819020879055805187815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b6105a0610a77565b6008805460ff19169115919091179055565b60055481565b60006105c2610adb565b6105cd848484610b37565b15156105d557fe5b5060019392505050565b60045460ff1681565b600481565b6105f5610a77565b826105ff81610a14565b8261060981610a14565b8361061381610c48565b61061e868686610ca9565b505050505050565b60066020526000908152604090205481565b600154600160a060020a0316331461069a576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b610713610a77565b8161071d81610a14565b8261072781610c48565b60055461073a908463ffffffff610d6316565b600555600160a060020a038416600090815260066020526040902054610766908463ffffffff610d6316565b600160a060020a03851660009081526006602090815260409182902092909255805185815290517f9386c90217c323f58030f9dadcbc938f807a940f4ff41cd4cead9562f5da7dc3929181900390910190a1604080518481529051600160a060020a03861691600091600080516020610f808339815191529181900360200190a350505050565b600054600160a060020a031681565b6003805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104985780601f1061046d57610100808354040283529160200191610498565b61085f610a77565b600160a060020a038216600090815260066020526040902054610888908263ffffffff610dc716565b600160a060020a0383166000908152600660205260409020556005546108b4908263ffffffff610dc716565b600555604080518281529051600091600160a060020a03851691600080516020610f808339815191529181900360200190a36040805182815290517f9a1b418bc061a5d80270261562e6986a35d995f8051145f277be16103abd34539181900360200190a15050565b6000610927610adb565b6109318383610e27565b151561093957fe5b50600192915050565b60085460ff1681565b600154600160a060020a031681565b600760209081526000928352604080842090915290825290205481565b61097f610a77565b600054600160a060020a03828116911614156109e5576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600160a060020a0381161515610a74576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b600054600160a060020a03163314610ad9576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b60085460ff161515610ad9576040805160e560020a62461bcd02815260206004820152601660248201527f4552525f5452414e53464552535f44495341424c454400000000000000000000604482015290519081900360640190fd5b600083610b4381610a14565b83610b4d81610a14565b600160a060020a0386166000908152600760209081526040808320338452909152902054610b81908563ffffffff610dc716565b600160a060020a038716600081815260076020908152604080832033845282528083209490945591815260069091522054610bc2908563ffffffff610dc716565b600160a060020a038088166000908152600660205260408082209390935590871681522054610bf7908563ffffffff610d6316565b600160a060020a0380871660008181526006602090815260409182902094909455805188815290519193928a1692600080516020610f8083398151915292918290030190a350600195945050505050565b600160a060020a038116301415610a74576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090931692909217909152610d5e908490610ed2565b505050565b600082820183811015610dc0576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b9392505050565b600081831015610e21576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b600082610e3381610a14565b33600090815260066020526040902054610e53908463ffffffff610dc716565b3360009081526006602052604080822092909255600160a060020a03861681522054610e85908463ffffffff610d6316565b600160a060020a038516600081815260066020908152604091829020939093558051868152905191923392600080516020610f808339815191529281900390910190a35060019392505050565b610eda610f60565b602060405190810160405280600181525090506020818351602085016000875af1801515610f0757600080fd5b5080511515610d5e576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b60206040519081016040528060019060208202803883395091929150505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820ab924832ddea261f0e3fbf4d24ac3b4778f7be5a9bbf5bfa6e40bc49f56017d30029 \ No newline at end of file diff --git a/solidity/build/SovrynSwapFormula.abi b/solidity/build/SovrynSwapFormula.abi index 04543c1..8885c62 100644 --- a/solidity/build/SovrynSwapFormula.abi +++ b/solidity/build/SovrynSwapFormula.abi @@ -1 +1 @@ -[{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveRatio","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"calculateFundCost","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"calculatePurchaseReturn","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveRatio","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"fundSupplyAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveRatio","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"liquidateRate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"purchaseRate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"calculateSaleReturn","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"version","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceReserveBalance","type":"uint256"},{"name":"_sourceReserveWeight","type":"uint32"},{"name":"_targetReserveBalance","type":"uint256"},{"name":"_targetReserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"calculateCrossConnectorReturn","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"saleTargetAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceReserveBalance","type":"uint256"},{"name":"_sourceReserveWeight","type":"uint32"},{"name":"_targetReserveBalance","type":"uint256"},{"name":"_targetReserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"calculateCrossReserveReturn","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveRatio","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"liquidateReserveAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceReserveBalance","type":"uint256"},{"name":"_sourceReserveWeight","type":"uint32"},{"name":"_targetReserveBalance","type":"uint256"},{"name":"_targetReserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"crossReserveTargetAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceReserveBalance","type":"uint256"},{"name":"_sourceReserveWeight","type":"uint32"},{"name":"_targetReserveBalance","type":"uint256"},{"name":"_targetReserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"crossReserveRate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_primaryReserveStakedBalance","type":"uint256"},{"name":"_primaryReserveBalance","type":"uint256"},{"name":"_secondaryReserveBalance","type":"uint256"},{"name":"_reserveRateNumerator","type":"uint256"},{"name":"_reserveRateDenominator","type":"uint256"}],"name":"balancedWeights","outputs":[{"name":"","type":"uint32"},{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveRatio","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"calculateLiquidateReturn","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"init","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveRatio","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"fundCost","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"purchaseTargetAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"saleRate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file +[{"constant":true,"inputs":[],"name":"version","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"init","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"purchaseTargetAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"saleTargetAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceReserveBalance","type":"uint256"},{"name":"_sourceReserveWeight","type":"uint32"},{"name":"_targetReserveBalance","type":"uint256"},{"name":"_targetReserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"crossReserveTargetAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveRatio","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"fundCost","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveRatio","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"fundSupplyAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveRatio","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"liquidateReserveAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_primaryReserveStakedBalance","type":"uint256"},{"name":"_primaryReserveBalance","type":"uint256"},{"name":"_secondaryReserveBalance","type":"uint256"},{"name":"_reserveRateNumerator","type":"uint256"},{"name":"_reserveRateDenominator","type":"uint256"}],"name":"balancedWeights","outputs":[{"name":"","type":"uint32"},{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"calculatePurchaseReturn","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"calculateSaleReturn","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceReserveBalance","type":"uint256"},{"name":"_sourceReserveWeight","type":"uint32"},{"name":"_targetReserveBalance","type":"uint256"},{"name":"_targetReserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"calculateCrossReserveReturn","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceReserveBalance","type":"uint256"},{"name":"_sourceReserveWeight","type":"uint32"},{"name":"_targetReserveBalance","type":"uint256"},{"name":"_targetReserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"calculateCrossConnectorReturn","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveRatio","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"calculateFundCost","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveRatio","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"calculateLiquidateReturn","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"purchaseRate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"saleRate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceReserveBalance","type":"uint256"},{"name":"_sourceReserveWeight","type":"uint32"},{"name":"_targetReserveBalance","type":"uint256"},{"name":"_targetReserveWeight","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"crossReserveRate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_supply","type":"uint256"},{"name":"_reserveBalance","type":"uint256"},{"name":"_reserveRatio","type":"uint32"},{"name":"_amount","type":"uint256"}],"name":"liquidateRate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/solidity/build/SovrynSwapFormula.bin b/solidity/build/SovrynSwapFormula.bin index 837ff86..a0a7442 100644 --- a/solidity/build/SovrynSwapFormula.bin +++ b/solidity/build/SovrynSwapFormula.bin @@ -1 +1 @@ -608060405234801561001057600080fd5b5061477e806100206000396000f3006080604052600436106101065763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416631da6bbfb811461010b57806329a00e7c146101445780632f55bdb51461016b57806335b49af41461019257806348d73fed1461014457806349f9b0f7146101b957806354fd4d50146101e057806365098bb31461020c57806376cf0b561461023a57806379c1b4501461020c5780638074590a1461026157806394491fab146102885780639d1141081461020c578063a11aa1b4146102b6578063abfd231d14610192578063e1c7392a146102fd578063ebbb215814610314578063f3250fe21461033b578063f732f1c9146101b9575b600080fd5b34801561011757600080fd5b5061013260043560243563ffffffff60443516606435610362565b60408051918252519081900360200190f35b34801561015057600080fd5b5061013260043560243563ffffffff60443516606435610379565b34801561017757600080fd5b5061013260043560243563ffffffff60443516606435610387565b34801561019e57600080fd5b5061013260043560243563ffffffff6044351660643561058d565b3480156101c557600080fd5b5061013260043560243563ffffffff6044351660643561059b565b3480156101ec57600080fd5b506101f56105a9565b6040805161ffff9092168252519081900360200190f35b34801561021857600080fd5b5061013260043563ffffffff60243581169060443590606435166084356105ae565b34801561024657600080fd5b5061013260043560243563ffffffff604435166064356105c7565b34801561026d57600080fd5b5061013260043560243563ffffffff6044351660643561084c565b34801561029457600080fd5b5061013260043563ffffffff6024358116906044359060643516608435610a6d565b3480156102c257600080fd5b506102da600435602435604435606435608435610c49565b6040805163ffffffff938416815291909216602082015281519081900390910190f35b34801561030957600080fd5b50610312610e52565b005b34801561032057600080fd5b5061013260043560243563ffffffff60443516606435610e64565b34801561034757600080fd5b5061013260043560243563ffffffff60443516606435611074565b600061037085858585610e64565b95945050505050565b600061037085858585611074565b6000808080808089116103fb57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4552525f494e56414c49445f535550504c590000000000000000000000000000604482015290519081900360640190fd5b6000881161046a57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4552525f494e56414c49445f524553455256455f42414c414e43450000000000604482015290519081900360640190fd5b60018763ffffffff161180156104895750621e848063ffffffff881611155b15156104f657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f524154494f00000000000000604482015290519081900360640190fd5b8515156105065760009450610581565b63ffffffff8716620f424014156105395787610528878b63ffffffff61122516565b81151561053157fe5b049450610581565b610549888763ffffffff6112c016565b915061055a828989620f4240611334565b909450925060ff83166105738a8663ffffffff61122516565b9060020a9004905088810394505b50505050949350505050565b60006103708585858561084c565b6000610370858585856105c7565b600881565b60006105bd8686868686610a6d565b9695505050505050565b60008080808080808a1161063c57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4552525f494e56414c49445f535550504c590000000000000000000000000000604482015290519081900360640190fd5b600089116106ab57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4552525f494e56414c49445f524553455256455f42414c414e43450000000000604482015290519081900360640190fd5b60008863ffffffff161180156106ca5750620f424063ffffffff891611155b151561073757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b898711156107a657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b8615156107b6576000955061083f565b898714156107c65788955061083f565b63ffffffff8816620f424014156107f957896107e88a8963ffffffff61122516565b8115156107f157fe5b04955061083f565b868a03925061080d8a84620f42408b611334565b9095509350610822898663ffffffff61122516565b91505060ff831660020a88028481830381151561083b57fe5b0495505b5050505050949350505050565b60008080808080808a116108c157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4552525f494e56414c49445f535550504c590000000000000000000000000000604482015290519081900360640190fd5b6000891161093057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4552525f494e56414c49445f524553455256455f42414c414e43450000000000604482015290519081900360640190fd5b60018863ffffffff1611801561094f5750621e848063ffffffff891611155b15156109bc57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f524154494f00000000000000604482015290519081900360640190fd5b89871115610a2b57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b861515610a3b576000955061083f565b89871415610a4b5788955061083f565b63ffffffff8816620f424014156107f957896107e8888b63ffffffff61122516565b60008060008060008060008b118015610a865750600089115b1515610af357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4552525f494e56414c49445f524553455256455f42414c414e43450000000000604482015290519081900360640190fd5b60008a63ffffffff16118015610b125750620f424063ffffffff8b1611155b8015610b24575060008863ffffffff16115b8015610b395750620f424063ffffffff891611155b1515610ba657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b8763ffffffff168a63ffffffff161415610beb57610bca8b8863ffffffff6112c016565b610bda8a8963ffffffff61122516565b811515610be357fe5b049550610c3b565b610bfb8b8863ffffffff6112c016565b9250610c09838c8c8b611334565b9095509350610c1e898663ffffffff61122516565b91505060ff831660020a880284818303811515610c3757fe5b0495505b505050505095945050505050565b60008060008087891415610cd8576000891180610c665750600087115b1515610cd357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4552525f494e56414c49445f524553455256455f42414c414e43450000000000604482015290519081900360640190fd5b610d61565b600089118015610ce85750600088115b8015610cf45750600087115b1515610d6157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4552525f494e56414c49445f524553455256455f42414c414e43450000000000604482015290519081900360640190fd5b600086118015610d715750600085115b1515610dde57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f4552525f494e56414c49445f524553455256455f524154450000000000000000604482015290519081900360640190fd5b610dee898763ffffffff61122516565b9150610e00878663ffffffff61122516565b905087891015610e2157610e18888a8484600161142a565b93509350610e46565b87891115610e3757610e1889898484600061142a565b610e418282611525565b935093505b50509550959350505050565b610e5a611562565b610e62611d38565b565b600080808080808911610ed857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4552525f494e56414c49445f535550504c590000000000000000000000000000604482015290519081900360640190fd5b60008811610f4757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4552525f494e56414c49445f524553455256455f42414c414e43450000000000604482015290519081900360640190fd5b60018763ffffffff16118015610f665750621e848063ffffffff881611155b1515610fd357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f524154494f00000000000000604482015290519081900360640190fd5b851515610fe35760009450610581565b63ffffffff8716620f4240141561101c57886001611007888b63ffffffff61122516565b0381151561101157fe5b046001019450610581565b61102c898763ffffffff6112c016565b915061103d828a620f42408a611334565b909450925060ff831660016110588a8763ffffffff61122516565b60029290920a9103049790970360010198975050505050505050565b6000808080808089116110e857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4552525f494e56414c49445f535550504c590000000000000000000000000000604482015290519081900360640190fd5b6000881161115757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4552525f494e56414c49445f524553455256455f42414c414e43450000000000604482015290519081900360640190fd5b60008763ffffffff161180156111765750620f424063ffffffff881611155b15156111e357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b8515156111f35760009450610581565b63ffffffff8716620f4240141561121557876105288a8863ffffffff61122516565b610549868963ffffffff6112c016565b60008083151561123857600091506112b9565b5082820282848281151561124857fe5b04146112b557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b8091505b5092915050565b6000828201838110156112b557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b600080808080807002000000000000000000000000000000008a1061135857600080fd5b886f800000000000000000000000000000008b0281151561137557fe5b04925070015bf0a8b1457695355fb8ac404e7a79e38310156113a15761139a8361273f565b93506113ad565b6113aa83612c33565b93505b8663ffffffff168863ffffffff1685028115156113c657fe5b0491507008000000000000000000000000000000008210156113f6576113eb82612d73565b607f9550955061141d565b6113ff82613258565b905061141760ff607f8390031660020a8304826132e5565b81955095505b5050505094509492505050565b60008060008060008061143d8989613708565b9099509750896114638c6f8000000000000000000000000000000063ffffffff61122516565b81151561146c57fe5b04935070015bf0a8b1457695355fb8ac404e7a79e384106114955761149084612c33565b61149e565b61149e8461273f565b9250876114b1848b63ffffffff61122516565b8115156114ba57fe5b049150866114d0576114cb82613838565b6114d9565b6114d982613895565b90506115136114ee828b63ffffffff61122516565b61150e8a6f8000000000000000000000000000000063ffffffff61122516565b611525565b95509550505050509550959350505050565b60008080808486116115445761153b86866138f9565b93509350611559565b61154e85876138f9565b915091508082935093505b50509250929050565b701c35fedd14ffffffffffffffffffffffff602055701b0ce43b323fffffffffffffffffffffff6021557019f0028ec1ffffffffffffffffffffffff6022557018ded91f0e7fffffffffffffffffffffff6023557017d8ec7f0417ffffffffffffffffffffff6024557016ddc6556cdbffffffffffffffffffffff6025557015ecf52776a1ffffffffffffffffffffff6026557015060c256cb2ffffffffffffffffffffff602755701428a2f98d72ffffffffffffffffffffff6028557013545598e5c23fffffffffffffffffffff602955701288c4161ce1dfffffffffffffffffffff602a557011c592761c666fffffffffffffffffffff602b5570110a688680a757ffffffffffffffffffff602c55701056f1b5bedf77ffffffffffffffffffff602d55700faadceceeff8bffffffffffffffffffff602e55700f05dc6b27edadffffffffffffffffffff602f55700e67a5a25da4107fffffffffffffffffff603055700dcff115b14eedffffffffffffffffffff603155700d3e7a392431239fffffffffffffffffff603255700cb2ff529eb71e4fffffffffffffffffff603355700c2d415c3db974afffffffffffffffffff603455700bad03e7d883f69bffffffffffffffffff603555700b320d03b2c343d5ffffffffffffffffff603655700abc25204e02828dffffffffffffffffff603755700a4b16f74ee4bb207fffffffffffffffff6038557009deaf736ac1f569ffffffffffffffffff603955700976bd9952c7aa957fffffffffffffffff603a557009131271922eaa606fffffffffffffffff603b557008b380f3558668c46fffffffffffffffff603c55700857ddf0117efa215bffffffffffffffff603d557007ffffffffffffffffffffffffffffffff603e557007abbf6f6abb9d087fffffffffffffffff603f5570075af62cbac95f7dfa7fffffffffffffff60405570070d7fb7452e187ac13fffffffffffffff6041557006c3390ecc8af379295fffffffffffffff60425570067c00a3b07ffc01fd6fffffffffffffff604355700637b647c39cbb9d3d27ffffffffffffff6044557005f63b1fc104dbd39587ffffffffffffff6045557005b771955b36e12f7235ffffffffffffff60465570057b3d49dda84556d6f6ffffffffffffff60475570054183095b2c8ececf30ffffffffffffff60485570050a28be635ca2b888f77fffffffffffff6049557004d5156639708c9db33c3fffffffffffff604a557004a23105873875bd52dfdfffffffffffff604b55700471649d87199aa990756fffffffffffff604c557004429a21a029d4c1457cfbffffffffffff604d55700415bc6d6fb7dd71af2cb3ffffffffffff604e557003eab73b3bbfe282243ce1ffffffffffff604f557003c1771ac9fb6b4c18e229ffffffffffff605055700399e96897690418f785257fffffffffff605155700373fc456c53bb779bf0ea9fffffffffff60525570034f9e8e490c48e67e6ab8bfffffffffff60535570032cbfd4a7adc790560b3337ffffffffff60545570030b50570f6e5d2acca94613ffffffffff6055557002eb40f9f620fda6b56c2861ffffffffff6056557002cc8340ecb0d0f520a6af58ffffffffff6057557002af09481380a0a35cf1ba02ffffffffff605855700292c5bdd3b92ec810287b1b3fffffffff605955700277abdcdab07d5a77ac6d6b9fffffffff605a5570025daf6654b1eaa55fd64df5efffffffff605b55700244c49c648baa98192dce88b7ffffffff605c5570022ce03cd5619a311b2471268bffffffff605d55700215f77c045fbe885654a44a0fffffffff605e557001ffffffffffffffffffffffffffffffff605f557001eaefdbdaaee7421fc4d3ede5ffffffff6060557001d6bd8b2eb257df7e8ca57b09bfffffff6061557001c35fedd14b861eb0443f7f133fffffff6062557001b0ce43b322bcde4a56e8ada5afffffff60635570019f0028ec1fff007f5a195a39dfffffff60645570018ded91f0e72ee74f49b15ba527ffffff60655570017d8ec7f04136f4e5615fd41a63ffffff60665570016ddc6556cdb84bdc8d12d22e6fffffff60675570015ecf52776a1155b5bd8395814f7fffff60685570015060c256cb23b3b3cc3754cf40ffffff6069557001428a2f98d728ae223ddab715be3fffff606a5570013545598e5c23276ccf0ede68034fffff606b557001288c4161ce1d6f54b7f61081194fffff606c5570011c592761c666aa641d5a01a40f17ffff606d55700110a688680a7530515f3e6e6cfdcdffff606e557001056f1b5bedf75c6bcb2ce8aed428ffff606f556ffaadceceeff8a0890f3875f008277fff6070556ff05dc6b27edad306388a600f6ba0bfff6071556fe67a5a25da41063de1495d5b18cdbfff6072556fdcff115b14eedde6fc3aa5353f2e4fff6073556fd3e7a3924312399f9aae2e0f868f8fff6074556fcb2ff529eb71e41582cccd5a1ee26fff6075556fc2d415c3db974ab32a51840c0b67edff6076556fbad03e7d883f69ad5b0a186184e06bff6077556fb320d03b2c343d4829abd6075f0cc5ff6078556fabc25204e02828d73c6e80bcdb1a95bf6079556fa4b16f74ee4bb2040a1ec6c15fbbf2df607a556f9deaf736ac1f569deb1b5ae3f36c130f607b556f976bd9952c7aa957f5937d790ef65037607c556f9131271922eaa6064b73a22d0bd4f2bf607d556f8b380f3558668c46c91c49a2f8e967b9607e556f857ddf0117efa215952912839f6473e66000607f5b0155565b6f60e393c68d20b1bd09deaabc0373b9c560809081556f5f8f46e4854120989ed94719fb4c20116081556f5e479ebb9129fb1b7e72a648f992b6066082556f5d0bd23fe42dfedde2e9586be12b85fe6083556f5bdb29ddee979308ddfca81aeeb8095a6084556f5ab4fd8a260d2c7e2c0d2afcf0009dad6085556f5998b31359a55d48724c65cf090012216086556f5885bcad2b322dfc43e8860f9c018cf56087556f577b97aa1fe222bb452fdf111b1f0be26088556f5679cb5e3575632e5baa27e2b949f7046089556f557fe8241b3a31c83c732f1cdff4a1c5608a556f548d868026504875d6e59bbe95fc2a6b608b556f53a2465ce347cf34d05a867c17dd3088608c556f52bdce5dcd4faed59c7f5511cf8f8acc608d556f51dfcb453c07f8da817606e7885f7c3e608e556f5107ef6b0a5a2be8f8ff15590daa3cce608f556f5035f241d6eae0cd7bacba119993de7b6090556f4f698fe90d5b53d532171e1210164c666091556f4ea288ca297a0e6a09a0eee240e16c856092556f4de0a13fdcf5d4213fc398ba6e3becde6093556f4d23a145eef91fec06b06140804c48086094556f4c6b5430d4c1ee5526473db4ae0f11de6095556f4bb7886c240562eba11f4963a53b42406096556f4b080f3f1cb491d2d521e0ea4583521e6097556f4a5cbc96a05589cb4d86be1db31683646098556f49b566d40243517658d78c33162d6ece6099556f4911e6a02e5507a30f947383fd9a3276609a556f487216c2b31be4adc41db8a8d5cc0c88609b556f47d5d3fc4a7a1b188cd3d788b5c5e9fc609c556f473cfce4871a2c40bc4f9e1c32b955d0609d556f46a771ca578ab878485810e285e31c67609e556f4615149718aed4c258c373dc676aa72d609f556f4585c8b3f8fe489c6e1833ca4787138460a0556f44f972f174e41e5efb7e9d63c29ce73560a1556f446ff970ba86d8b00beb05ecebf3c4dc60a2556f43e9438ec88971812d6f198b5ccaad9660a3556f436539d11ff7bea657aeddb394e809ef60a4556f42e3c5d3e5a913401d86f66db5d81c2c60a5556f4264d2395303070ea726cbe98df6217460a6556f41e84a9a593bb7194c3a6349ecae4eea60a7556f416e1b785d13eba07a08f3f18876a5ab60a8556f40f6322ff389d423ba9dd7e7e7b7e80960a9556f40807cec8a466880ecf4184545d240a460aa556f400cea9ce88a8d3ae668e8ea0d9bf07f60ab556f3f9b6ae8772d4c55091e0ed7dfea0ac160ac556f3f2bee253fd84594f54bcaafac383a1360ad556f3ebe654e95208bb9210c575c081c595860ae556f3e52c1fc5665635b78ce1f05ad53c08660af556f3de8f65ac388101ddf718a6f5c1eff6560b0556f3d80f522d59bd0b328ca012df4cd2d4960b1556f3d1ab193129ea72b23648a161163a85a60b2556f3cb61f68d32576c135b95cfb53f76d7560b3556f3c5332d9f1aae851a3619e77e4cc847360b4556f3bf1e08edbe2aa109e1525f65759ef7360b5556f3b921d9cff13fa2c197746a3dfc4918f60b6556f3b33df818910bfc1a5aefb8f63ae2ac460b7556f3ad71c1c77e34fa32a9f184967eccbf660b8556f3a7bc9abf2c5bb53e2f7384a8a16521a60b9556f3a21dec7e76369783a68a0c6385a1c5760ba556f39c9525de6c9cdf7c1c157ca4a7a6ee360bb556f39721bad3dc85d1240ff0190e0adaac360bc556f391c324344d3248f0469eb28dd3d77e060bd556f38c78df7e3c796279fb4ff84394ab3da60be556f387426ea4638ae9aae08049d3554c20a60bf556f3821f57dbd2763256c1a99bbd205137860c0556f37d0f256cb46a8c92ff62fbbef28969860c1556f37811658591ffc7abdd1feaf3cef9b7360c2556f37325aa10e9e82f7df0f380f7997154b60c3556f36e4b888cfb408d873b9a80d439311c660c4556f3698299e59f4bb9de645fc9b08c64cca60c5556f364ca7a5012cb603023b57dd3ebfd50d60c6556f36022c928915b778ab1b06aaee7e61d460c7556f35b8b28d1a73dc27500ffe35559cc02860c8556f357033e951fe250ec5eb4e60955132d760c9556f3528ab2867934e3a21b5412e4c4f888160ca556f34e212f66c55057f9676c80094a61d5960cb556f349c66289e5b3c4b540c24f42fa4b9bb60cc556f34579fbbd0c733a9c8d6af6b0f7d00f760cd556f3413bad2e712288b924b5882b5b369bf60ce556f33d0b2b56286510ef730e213f71f12e960cf556f338e82ce00e2496262c64457535ba1a160d0556f334d26a96b373bb7c2f8ea1827f27a9260d1556f330c99f4f4211469e00b3e18c31475ea60d2556f32ccd87d6486094999c7d5e6f33237d860d3556f328dde2dd617b6665a2e8556f250c1af60d4556f324fa70e9adc270f8262755af5a99af960d5556f32122f443110611ca51040f41fa6e1e360d6556f31d5730e42c0831482f0f1485c4263d860d7556f31996ec6b07b4a83421b5ebc4ab4e1f160d8556f315e1ee0a68ff46bb43ec2b85032e87660d9556f31237fe7bc4deacf6775b9efa1a145f860da556f30e98e7f1cc5a356e44627a6972ea2ff60db556f30b04760b8917ec74205a3002650ec0560dc556f3077a75c803468e9132ce0cf3224241d60dd556f303fab57a6a275c36f19cda9bace667a60de556f3008504beb8dcbd2cf3bc1f6d5a064f060df556f2fd19346ed17dac61219ce0c2c5ac4b060e0556f2f9b7169808c324b5852fd3d54ba971460e1556f2f65e7e711cf4b064eea9c08cbdad57460e2556f2f30f405093042ddff8a251b6bf6d10360e3556f2efc931a3750f2e8bfe323edfe03757460e4556f2ec8c28e46dbe56d98685278339400cb60e5556f2e957fd933c3926d8a599b602379b85160e6556f2e62c882c7c9ed4473412702f08ba0e560e7556f2e309a221c12ba361e3ed695167feee260e8556f2dfef25d1f865ae18dd07cfea4bcea1060e9556f2dcdcee821cdc80decc02c44344aeb3160ea556f2d9d2d8562b34944d0b201bb87260c8360eb556f2d6d0c04a5b62a2c42636308669b729a60ec556f2d3d6842c9a235517fc5a0332691528f60ed556f2d0e402963fe1ea2834abc408c437c1060ee556f2cdf91ae602647908aff975e4d6a2a8c60ef556f2cb15ad3a1eb65f6d74a75da09a1b6c560f0556f2c8399a6ab8e9774d6fcff373d21072760f1556f2c564c4046f64edba6883ca06bbc453560f2556f2c2970c431f952641e05cb493e23eed360f3556f2bfd0560cd9eb14563bc7c0732856c1860f4556f2bd1084ed0332f7ff4150f9d0ef41a2c60f5556f2ba577d0fa1628b76d040b12a82492fb60f6556f2b7a5233cd21581e855e89dc2f1e8a9260f7556f2b4f95cd46904d05d72bdcde337d9cc760f8556f2b2540fc9b4d9abba3faca669191467560f9556f2afb5229f68d0830d8be8adb0a0db70f60fa556f2ad1c7c63a9b294c5bc73a3ba3ab7a2b60fb556f2aa8a04ac3cbe1ee1c9c86361465dbb860fc556f2a7fda392d725a44a2c8aeb9ab35430d60fd556f2a57741b18cde618717792b4faa216db60fe556f2a2f6c81f5d84dd950a35626d6d5503a90607f611d34565b6000808080806fd3094c70f034de4b96ff7d5b6f99fcd8861061279a576f4000000000000000000000000000000093909301926fd3094c70f034de4b96ff7d5b6f99fcd86f8000000000000000000000000000000087020495505b6fa45af1e1f40c333b3de1db4dd55f29a786106127ef576f2000000000000000000000000000000093909301926fa45af1e1f40c333b3de1db4dd55f29a76f8000000000000000000000000000000087020495505b6f910b022db7ae67ce76b441c27035c6a18610612844576f1000000000000000000000000000000093909301926f910b022db7ae67ce76b441c27035c6a16f8000000000000000000000000000000087020495505b6f88415abbe9a76bead8d00cf112e4d4a88610612899576f0800000000000000000000000000000093909301926f88415abbe9a76bead8d00cf112e4d4a86f8000000000000000000000000000000087020495505b6f84102b00893f64c705e841d5d4064bd386106128ee576f0400000000000000000000000000000093909301926f84102b00893f64c705e841d5d4064bd36f8000000000000000000000000000000087020495505b6f8204055aaef1c8bd5c3259f4822735a28610612943576f0200000000000000000000000000000093909301926f8204055aaef1c8bd5c3259f4822735a26f8000000000000000000000000000000087020495505b6f810100ab00222d861931c15e39b44e998610612998576f0100000000000000000000000000000093909301926f810100ab00222d861931c15e39b44e996f8000000000000000000000000000000087020495505b6f808040155aabbbe9451521693554f73386106129ec576e80000000000000000000000000000093909301926f808040155aabbbe9451521693554f7336f8000000000000000000000000000000087020495505b7fffffffffffffffffffffffffffffffff80000000000000000000000000000000860192508291506f8000000000000000000000000000000082800204905070010000000000000000000000000000000083810383020493909301926f800000000000000000000000000000008282020491507002000000000000000000000000000000006faaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa84900383020493909301926f800000000000000000000000000000008282020491507003000000000000000000000000000000006f9999999999999999999999999999999984900383020493909301926f800000000000000000000000000000008282020491507004000000000000000000000000000000006f9249249249249249249249249249249284900383020493909301926f800000000000000000000000000000008282020491507005000000000000000000000000000000006f8e38e38e38e38e38e38e38e38e38e38e84900383020493909301926f800000000000000000000000000000008282020491507006000000000000000000000000000000006f8ba2e8ba2e8ba2e8ba2e8ba2e8ba2e8b84900383020493909301926f800000000000000000000000000000008282020491507007000000000000000000000000000000006f89d89d89d89d89d89d89d89d89d89d8984900383020493909301926f800000000000000000000000000000008282020491507008000000000000000000000000000000006f888888888888888888888888888888888490038302049390930195945050505050565b60008080807001000000000000000000000000000000008510612c9057612c6c6f80000000000000000000000000000000865b04613995565b60ff8116600281900a909604956f8000000000000000000000000000000002935091505b6f80000000000000000000000000000000851115612d435750607f5b60008160ff161115612d43576f800000000000000000000000000000008580020494507001000000000000000000000000000000008510612d1c576002948590049460ff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff830116900a92909201915b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01612cac565b6f05b9de1d10bf4103d647b0955897ba806f03f80fe03f80fe03f80fe03f80fe03f884020493505b505050919050565b6000670168244fdac780006f800000000000000000000000000000006f0fffffffffffffffffffffffffffffff84168080028290048082028390048083028490049485026710e1b3be415a00009092026705a0913f6b1e000091909102010192909181830204905080664807432bc1800002830192506f80000000000000000000000000000000828202811515612e0657fe5b04905080660c0135dca0400002830192506f80000000000000000000000000000000828202811515612e3457fe5b049050806601b707b1cdc00002830192506f80000000000000000000000000000000828202811515612e6257fe5b049050806536e0f639b80002830192506f80000000000000000000000000000000828202811515612e8f57fe5b04905080650618fee9f80002830192506f80000000000000000000000000000000828202811515612ebc57fe5b04905080649c197dcc0002830192506f80000000000000000000000000000000828202811515612ee857fe5b04905080640e30dce40002830192506f80000000000000000000000000000000828202811515612f1457fe5b0490508064012ebd130002830192506f80000000000000000000000000000000828202811515612f4057fe5b049050806317499f0002830192506f80000000000000000000000000000000828202811515612f6b57fe5b049050806301a9d48002830192506f80000000000000000000000000000000828202811515612f9657fe5b04905080621c638002830192506f80000000000000000000000000000000828202811515612fc057fe5b049050806201c63802830192506f80000000000000000000000000000000828202811515612fea57fe5b04905080611ab802830192506f8000000000000000000000000000000082820281151561301357fe5b0490508061017c02830192506f8000000000000000000000000000000082820281151561303c57fe5b04905080601402830192506f8000000000000000000000000000000082820281151561306457fe5b6721c3677c82b400009190049384010482016f80000000000000000000000000000000019290506f100000000000000000000000000000008516156130cd5770018ebef9eac820ae8682b9793ac6d1e7767001c3d6a24ed82218787d624d3e5eba95f984020492505b6f2000000000000000000000000000000085161561310f577001368b2fc6f9609fe7aceb46aa619baed470018ebef9eac820ae8682b9793ac6d1e77884020492505b6f40000000000000000000000000000000851615613150576fbc5ab1b16779be3575bd8f0520a9f21f7001368b2fc6f9609fe7aceb46aa619baed584020492505b6f80000000000000000000000000000000851615613190576f454aaa8efe072e7f6ddbab84b40a55c96fbc5ab1b16779be3575bd8f0520a9f21e84020492505b7001000000000000000000000000000000008516156131d1576f0960aadc109e7a3bf4578099615711ea6f454aaa8efe072e7f6ddbab84b40a55c584020492505b700200000000000000000000000000000000851615613211576e2bf84208204f5977f9a8cf01fdce3d6f0960aadc109e7a3bf4578099615711d784020492505b70040000000000000000000000000000000085161561324f576d03c6ab775dd0b95b4cbee7e65d116e2bf84208204f5977f9a8cf01fdc30784020492505b50909392505050565b60006020607f825b8160ff168360010160ff1610156132a557600260ff8484011604905084600060ff83166080811061328d57fe5b01541061329c578092506132a0565b8091505b613260565b84600060ff8416608081106132b657fe5b0154106132c557819350612d6b565b84600060ff8516608081106132d657fe5b01541061010657829350612d6b565b6000806000849150600090508360ff168583029060020a90049150816f03442c4e6074a82f1797f72ac000000002810190508360ff168583029060020a90049150816f0116b96f757c380fb287fd0e4000000002810190508360ff168583029060020a90049150816e45ae5bdd5f0e03eca1ff439000000002810190508360ff168583029060020a90049150816e0defabf91302cd95b9ffda5000000002810190508360ff168583029060020a90049150816e02529ca9832b22439efff9b800000002810190508360ff168583029060020a90049150816d54f1cf12bd04e516b6da8800000002810190508360ff168583029060020a90049150816d0a9e39e257a09ca2d6db5100000002810190508360ff168583029060020a90049150816d012e066e7b839fa050c30900000002810190508360ff168583029060020a90049150816c1e33d7d926c329a1ad1a80000002810190508360ff168583029060020a90049150816c02bee513bdb4a6b19b5f80000002810190508360ff168583029060020a90049150816b3a9316fa79b88eccf2a0000002810190508360ff168583029060020a90049150816b048177ebe1fa81237520000002810190508360ff168583029060020a90049150816a5263fe90242dcbacf0000002810190508360ff168583029060020a90049150816a057e22099c030d9410000002810190508360ff168583029060020a90049150816957e22099c030d941000002810190508360ff168583029060020a900491508169052b6b5456997631000002810190508360ff168583029060020a9004915081684985f67696bf74800002810190508360ff168583029060020a90049150816803dea12ea99e49800002810190508360ff168583029060020a90049150816731880f2214b6e00002810190508360ff168583029060020a900491508167025bcff56eb3600002810190508360ff168583029060020a9004915081661b722e10ab100002810190508360ff168583029060020a90049150816601317c7007700002810190508360ff168583029060020a9004915081650cba84aafa0002810190508360ff168583029060020a90049150816482573a0a0002810190508360ff168583029060020a90049150816405035ad90002810190508360ff168583029060020a9004915081632f881b0002810190508360ff168583029060020a90049150816301b2934002810190508360ff168583029060020a9004915081620efc4002810190508360ff168583029060020a9004915081617fe002810190508360ff168583029060020a900491508161042002810190508360ff168583029060020a9004915081602102810190508360ff168583029060020a9004915081600102810190508360ff1660019060020a02856f0688589cc0e9505e2f2fee5580000000838115156136fc57fe5b04010195945050505050565b600080600080700100000000000000000000000000000000861115801561374057507001000000000000000000000000000000008511155b1561375057858593509350611559565b7001000000000000000000000000000000008610156137a35784700100000000000000000000000000000000870281151561378757fe5b0470010000000000000000000000000000000093509350611559565b7001000000000000000000000000000000008510156137f6577001000000000000000000000000000000008670010000000000000000000000000000000087028115156137ec57fe5b0493509350611559565b8486116138035784613805565b855b91506138216f8000000000000000000000000000000083612c66565b60ff1660020a958690049695909404949350505050565b60006f2f16ac6c59de6f8d5d6f63c1482a7c8682116138615761385a826139fe565b9050613890565b817f400000000000000000000000000000000000000000000000000000000000000081151561388c57fe5b0490505b919050565b60006f2f16ac6c59de6f8d5d6f63c1482a7c8682116138b75761385a82613fed565b7001af16ac6c59de6f8d5d6f63c1482a7c8082116138d85761385a826145ee565b706b22d43e72c326539cceeef8bb48f255ff82116101065761385a8261467b565b60008060008060007d10c6f7a0b5ed8d36b4c7f34938583621fafc8b0079a2834d26fa3fcc9ea987111561396a577d10c6f7a0b5ed8d36b4c7f34938583621fafc8b0079a2834d26fa3fcc9eaa87046001019250828781151561395857fe5b049650828681151561396657fe5b0495505b613982620f4240880261397d89896112c0565b614720565b97620f4240899003975095505050505050565b600080806101008410156139c4575b60018411156139bf57600290930492600191909101906139a4565b6112b9565b5060805b60008160ff1611156112b95760ff811660020a84106139f15760ff811660020a90930492908117905b600260ff909116046139c8565b600081816f8000000000000000000000000000000082800204915070014d29a73a6e7b02c3668c7b08800000008202016f800000000000000000000000000000008483020491507002504a0cd9a7f7215b60f9be48000000008202016f80000000000000000000000000000000848302049150700484d0a1191c0ead267967c7a4a00000008202016f8000000000000000000000000000000084830204915070095ec580d7e8427a4baf26a90a000000008202016f80000000000000000000000000000000848302049150701440b0be1615a47dba6e5b3b1f100000008202016f80000000000000000000000000000000848302049150702d207601f46a99b41124184000000000008202016f800000000000000000000000000000008483020491507066ebaac4c37c622dd8288a7eb1b20000008202016f8000000000000000000000000000000084830204915070ef17240135f7dbd43a1ba10cf2000000008202016f80000000000000000000000000000000848302049150710233c33c676a5eb2416094a87b36570000008202016f80000000000000000000000000000000848302049150710541cde48bc0254bed49a9f87000000000008202016f80000000000000000000000000000000848302049150710cae1fad2cdd4d4cb8d73abca0d19a4000008202016f80000000000000000000000000000000848302049150711edb2aa2f760d15c41ceedba9564000000008202016f80000000000000000000000000000000848302049150714ba8d20d2dabd386c9529659841a2e2000008202016f8000000000000000000000000000000084830204915071bac08546b867cdaa200000000000000000008202016f800000000000000000000000000000008483020491507201cfa8e70c03625b9db76c8ebf5bbf248200008202016f800000000000000000000000000000008483020491507204851d99f82060df265f3309b26f82000000008202016f80000000000000000000000000000000848302049150720b550d19b129d270c44f6f55f027723cbb00008202016f80000000000000000000000000000000848302049150721c877dadc761dc272deb65d4b00000000000008202016f800000000000000000000000000000008483020491507248178ece97479f33a77f2ad22a81b64406c0008202016f8000000000000000000000000000000084830204915072b6ca8268b9d810fedf6695ef2f8a6c000000008202016f800000000000000000000000000000008483020491507301d0e76631a5b05d007b8cb72a7c7f11ec36e0008202016f800000000000000000000000000000008483020491507304a1c37bd9f85fd9c6c7800000000000000000008202016f80000000000000000000000000000000848302049150730bd8369f1b702bf491e2ebfcee08250313b654008202016f80000000000000000000000000000000848302049150731e5c7c32a9f6c70ab2cb59d9225764d4000000008202016f80000000000000000000000000000000848302049150734dff5820e165e910f95120a708e742496221e6008202016f8000000000000000000000000000000084830204915073c8c8f66db1fced378ee50e5360000000000000008202016f80000000000000000000000000000000848302049150740205db8dffff45bfa2938f128f599dbf16eb11d8808202016f8000000000000000000000000000000084830204915074053a044ebd984351493e1786af38d39a08000000008202016f80000000000000000000000000000000848302049150740d86dae2a4cc0f47633a544479735869b487b59c408202016f80000000000000000000000000000000848302049150742310000000000000000000000000000000000000008202016f80000000000000000000000000000000848302049150745b0485a76f6646c2039db1507cdd51b086496808228202016f8000000000000000000000000000000084830204915074ec983c46c49545bc17efa6b5b0055e2422000000008202016f80000000000000000000000000000000846fde1bc4d19efcac82445da75b0000000083040101949350505050565b6000816f800000000000000000000000000000008181036fde1bc4d19efcac82445da75b00000000029082800204915070014d29a73a6e7b02c3668c7b08800000008202016f800000000000000000000000000000008483020491507002504a0cd9a7f7215b60f9be4800000000820290036f80000000000000000000000000000000848302049150700484d0a1191c0ead267967c7a4a00000008202016f8000000000000000000000000000000084830204915070095ec580d7e8427a4baf26a90a00000000820290036f80000000000000000000000000000000848302049150701440b0be1615a47dba6e5b3b1f100000008202016f80000000000000000000000000000000848302049150702d207601f46a99b4112418400000000000820290036f800000000000000000000000000000008483020491507066ebaac4c37c622dd8288a7eb1b20000008202016f8000000000000000000000000000000084830204915070ef17240135f7dbd43a1ba10cf200000000820290036f80000000000000000000000000000000848302049150710233c33c676a5eb2416094a87b36570000008202016f80000000000000000000000000000000848302049150710541cde48bc0254bed49a9f8700000000000820290036f80000000000000000000000000000000848302049150710cae1fad2cdd4d4cb8d73abca0d19a4000008202016f80000000000000000000000000000000848302049150711edb2aa2f760d15c41ceedba956400000000820290036f80000000000000000000000000000000848302049150714ba8d20d2dabd386c9529659841a2e2000008202016f8000000000000000000000000000000084830204915071bac08546b867cdaa20000000000000000000820290036f800000000000000000000000000000008483020491507201cfa8e70c03625b9db76c8ebf5bbf248200008202016f800000000000000000000000000000008483020491507204851d99f82060df265f3309b26f8200000000820290036f80000000000000000000000000000000848302049150720b550d19b129d270c44f6f55f027723cbb00008202016f80000000000000000000000000000000848302049150721c877dadc761dc272deb65d4b0000000000000820290036f800000000000000000000000000000008483020491507248178ece97479f33a77f2ad22a81b64406c0008202016f8000000000000000000000000000000084830204915072b6ca8268b9d810fedf6695ef2f8a6c00000000820290036f800000000000000000000000000000008483020491507301d0e76631a5b05d007b8cb72a7c7f11ec36e0008202016f800000000000000000000000000000008483020491507304a1c37bd9f85fd9c6c780000000000000000000820290036f80000000000000000000000000000000848302049150730bd8369f1b702bf491e2ebfcee08250313b654008202016f80000000000000000000000000000000848302049150731e5c7c32a9f6c70ab2cb59d9225764d400000000820290036f80000000000000000000000000000000848302049150734dff5820e165e910f95120a708e742496221e6008202016f8000000000000000000000000000000084830204915073c8c8f66db1fced378ee50e536000000000000000820290036f80000000000000000000000000000000848302049150740205db8dffff45bfa2938f128f599dbf16eb11d8808202016f8000000000000000000000000000000084830204915074053a044ebd984351493e1786af38d39a0800000000820290036f80000000000000000000000000000000848302049150740d86dae2a4cc0f47633a544479735869b487b59c408202016f8000000000000000000000000000000084830204915074231000000000000000000000000000000000000000820290036f80000000000000000000000000000000848302049150745b0485a76f6646c2039db1507cdd51b086496808228202016f8000000000000000000000000000000084830204915074ec983c46c49545bc17efa6b5b0055e242200000000820290036fde1bc4d19efcac82445da75b00000000815b04949350505050565b60007fffffffffffffffffffffffffffffffffd0e95393a6219072a2909c3eb7d5837982016f03060c183060c183060c183060c1830680820490818102906001830102848060808581811061463f57fe5b0154915060806001860181811061465257fe5b01546f03060c183060c183060c183060c183069487030295909203029390930104949350505050565b600080600070015bf0a8b1457695355fb8ac404e7a79e384106146a6576146a184612c33565b6146af565b6146af8461273f565b915070015bf0a8b1457695355fb8ac404e7a79e382106146d7576146d282612c33565b6146e0565b6146e08261273f565b9050836f80000000000000000000000000000000836f80000000000000000000000000000000840281151561471157fe5b0483850301028115156145e557fe5b6000600282048203828481151561473357fe5b0681151561473d57fe5b04828481151561474957fe5b040193925050505600a165627a7a72305820bb20aafd85cab7e3afa5d962b958ac061e3a42890934541d9b41e355fdb31d290029 \ No newline at end of file +608060405234801561001057600080fd5b50613e9a806100206000396000f3006080604052600436106101065763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416631da6bbfb811461010b57806329a00e7c146101445780632f55bdb51461016b57806335b49af41461019257806348d73fed1461014457806349f9b0f7146101b957806354fd4d50146101e057806365098bb31461020c57806376cf0b561461023a57806379c1b4501461020c5780638074590a1461026157806394491fab146102885780639d1141081461020c578063a11aa1b4146102b6578063abfd231d14610192578063e1c7392a146102fd578063ebbb215814610314578063f3250fe21461033b578063f732f1c9146101b9575b600080fd5b34801561011757600080fd5b5061013260043560243563ffffffff60443516606435610362565b60408051918252519081900360200190f35b34801561015057600080fd5b5061013260043560243563ffffffff60443516606435610379565b34801561017757600080fd5b5061013260043560243563ffffffff60443516606435610387565b34801561019e57600080fd5b5061013260043560243563ffffffff60443516606435610524565b3480156101c557600080fd5b5061013260043560243563ffffffff60443516606435610532565b3480156101ec57600080fd5b506101f5610540565b6040805161ffff9092168252519081900360200190f35b34801561021857600080fd5b5061013260043563ffffffff6024358116906044359060643516608435610545565b34801561024657600080fd5b5061013260043560243563ffffffff6044351660643561055e565b34801561026d57600080fd5b5061013260043560243563ffffffff60443516606435610763565b34801561029457600080fd5b5061013260043563ffffffff6024358116906044359060643516608435610904565b3480156102c257600080fd5b506102da600435602435604435606435608435610aa0565b6040805163ffffffff938416815291909216602082015281519081900390910190f35b34801561030957600080fd5b50610312610c40565b005b34801561032057600080fd5b5061013260043560243563ffffffff60443516606435610c52565b34801561034757600080fd5b5061013260043560243563ffffffff60443516606435610df9565b600061037085858585610c52565b95945050505050565b600061037085858585610df9565b6000808080808089116103d2576040805160e560020a62461bcd0281526020600482015260126024820152600080516020613e2f833981519152604482015290519081900360640190fd5b60008811610418576040805160e560020a62461bcd02815260206004820152601b6024820152600080516020613e4f833981519152604482015290519081900360640190fd5b60018763ffffffff161180156104375750621e848063ffffffff881611155b151561048d576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f524154494f00000000000000604482015290519081900360640190fd5b85151561049d5760009450610518565b63ffffffff8716620f424014156104d057876104bf878b63ffffffff610f4116565b8115156104c857fe5b049450610518565b6104e0888763ffffffff610fc516565b91506104f1828989620f4240611022565b909450925060ff831661050a8a8663ffffffff610f4116565b9060020a9004905088810394505b50505050949350505050565b600061037085858585610763565b60006103708585858561055e565b600881565b60006105548686868686610904565b9695505050505050565b60008080808080808a116105aa576040805160e560020a62461bcd0281526020600482015260126024820152600080516020613e2f833981519152604482015290519081900360640190fd5b600089116105f0576040805160e560020a62461bcd02815260206004820152601b6024820152600080516020613e4f833981519152604482015290519081900360640190fd5b60008863ffffffff1611801561060f5750620f424063ffffffff891611155b1515610665576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b898711156106bd576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b8615156106cd5760009550610756565b898714156106dd57889550610756565b63ffffffff8816620f4240141561071057896106ff8a8963ffffffff610f4116565b81151561070857fe5b049550610756565b868a0392506107248a84620f42408b611022565b9095509350610739898663ffffffff610f4116565b91505060ff831660020a88028481830381151561075257fe5b0495505b5050505050949350505050565b60008080808080808a116107af576040805160e560020a62461bcd0281526020600482015260126024820152600080516020613e2f833981519152604482015290519081900360640190fd5b600089116107f5576040805160e560020a62461bcd02815260206004820152601b6024820152600080516020613e4f833981519152604482015290519081900360640190fd5b60018863ffffffff161180156108145750621e848063ffffffff891611155b151561086a576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f524154494f00000000000000604482015290519081900360640190fd5b898711156108c2576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f494e56414c49445f414d4f554e540000000000000000000000000000604482015290519081900360640190fd5b8615156108d25760009550610756565b898714156108e257889550610756565b63ffffffff8816620f4240141561071057896106ff888b63ffffffff610f4116565b60008060008060008060008b11801561091d5750600089115b1515610961576040805160e560020a62461bcd02815260206004820152601b6024820152600080516020613e4f833981519152604482015290519081900360640190fd5b60008a63ffffffff161180156109805750620f424063ffffffff8b1611155b8015610992575060008863ffffffff16115b80156109a75750620f424063ffffffff891611155b15156109fd576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b8763ffffffff168a63ffffffff161415610a4257610a218b8863ffffffff610fc516565b610a318a8963ffffffff610f4116565b811515610a3a57fe5b049550610a92565b610a528b8863ffffffff610fc516565b9250610a60838c8c8b611022565b9095509350610a75898663ffffffff610f4116565b91505060ff831660020a880284818303811515610a8e57fe5b0495505b505050505095945050505050565b60008060008087891415610b06576000891180610abd5750600087115b1515610b01576040805160e560020a62461bcd02815260206004820152601b6024820152600080516020613e4f833981519152604482015290519081900360640190fd5b610b66565b600089118015610b165750600088115b8015610b225750600087115b1515610b66576040805160e560020a62461bcd02815260206004820152601b6024820152600080516020613e4f833981519152604482015290519081900360640190fd5b600086118015610b765750600085115b1515610bcc576040805160e560020a62461bcd02815260206004820152601860248201527f4552525f494e56414c49445f524553455256455f524154450000000000000000604482015290519081900360640190fd5b610bdc898763ffffffff610f4116565b9150610bee878663ffffffff610f4116565b905087891015610c0f57610c06888a8484600161110c565b93509350610c34565b87891115610c2557610c0689898484600061110c565b610c2f82826111ef565b935093505b50509550959350505050565b610c4861122c565b610c50611a02565b565b600080808080808911610c9d576040805160e560020a62461bcd0281526020600482015260126024820152600080516020613e2f833981519152604482015290519081900360640190fd5b60008811610ce3576040805160e560020a62461bcd02815260206004820152601b6024820152600080516020613e4f833981519152604482015290519081900360640190fd5b60018763ffffffff16118015610d025750621e848063ffffffff881611155b1515610d58576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f524553455256455f524154494f00000000000000604482015290519081900360640190fd5b851515610d685760009450610518565b63ffffffff8716620f42401415610da157886001610d8c888b63ffffffff610f4116565b03811515610d9657fe5b046001019450610518565b610db1898763ffffffff610fc516565b9150610dc2828a620f42408a611022565b909450925060ff83166001610ddd8a8763ffffffff610f4116565b60029290920a9103049790970360010198975050505050505050565b600080808080808911610e44576040805160e560020a62461bcd0281526020600482015260126024820152600080516020613e2f833981519152604482015290519081900360640190fd5b60008811610e8a576040805160e560020a62461bcd02815260206004820152601b6024820152600080516020613e4f833981519152604482015290519081900360640190fd5b60008763ffffffff16118015610ea95750620f424063ffffffff881611155b1515610eff576040805160e560020a62461bcd02815260206004820152601a60248201527f4552525f494e56414c49445f524553455256455f574549474854000000000000604482015290519081900360640190fd5b851515610f0f5760009450610518565b63ffffffff8716620f42401415610f3157876104bf8a8863ffffffff610f4116565b6104e0868963ffffffff610fc516565b600080831515610f545760009150610fbe565b50828202828482811515610f6457fe5b0414610fba576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b8091505b5092915050565b600082820183811015610fba576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b600080808080807002000000000000000000000000000000008a1061104657600080fd5b88607f60020a8b0281151561105757fe5b04925070015bf0a8b1457695355fb8ac404e7a79e38310156110835761107c83612409565b935061108f565b61108c83612821565b93505b8663ffffffff168863ffffffff1685028115156110a857fe5b0491507008000000000000000000000000000000008210156110d8576110cd826128db565b607f955095506110ff565b6110e182612cdb565b90506110f960ff607f8390031660020a830482612d68565b81955095505b5050505094509492505050565b60008060008060008061111f898961318b565b9099509750896111398c607f60020a63ffffffff610f4116565b81151561114257fe5b04935070015bf0a8b1457695355fb8ac404e7a79e3841061116b5761116684612821565b611174565b61117484612409565b925087611187848b63ffffffff610f4116565b81151561119057fe5b049150866111a6576111a182613247565b6111af565b6111af826132a4565b90506111dd6111c4828b63ffffffff610f4116565b6111d88a607f60020a63ffffffff610f4116565b6111ef565b95509550505050509550959350505050565b600080808084861161120e576112058686613308565b93509350611223565b6112188587613308565b915091508082935093505b50509250929050565b701c35fedd14ffffffffffffffffffffffff602055701b0ce43b323fffffffffffffffffffffff6021557019f0028ec1ffffffffffffffffffffffff6022557018ded91f0e7fffffffffffffffffffffff6023557017d8ec7f0417ffffffffffffffffffffff6024557016ddc6556cdbffffffffffffffffffffff6025557015ecf52776a1ffffffffffffffffffffff6026557015060c256cb2ffffffffffffffffffffff602755701428a2f98d72ffffffffffffffffffffff6028557013545598e5c23fffffffffffffffffffff602955701288c4161ce1dfffffffffffffffffffff602a557011c592761c666fffffffffffffffffffff602b5570110a688680a757ffffffffffffffffffff602c55701056f1b5bedf77ffffffffffffffffffff602d55700faadceceeff8bffffffffffffffffffff602e55700f05dc6b27edadffffffffffffffffffff602f55700e67a5a25da4107fffffffffffffffffff603055700dcff115b14eedffffffffffffffffffff603155700d3e7a392431239fffffffffffffffffff603255700cb2ff529eb71e4fffffffffffffffffff603355700c2d415c3db974afffffffffffffffffff603455700bad03e7d883f69bffffffffffffffffff603555700b320d03b2c343d5ffffffffffffffffff603655700abc25204e02828dffffffffffffffffff603755700a4b16f74ee4bb207fffffffffffffffff6038557009deaf736ac1f569ffffffffffffffffff603955700976bd9952c7aa957fffffffffffffffff603a557009131271922eaa606fffffffffffffffff603b557008b380f3558668c46fffffffffffffffff603c55700857ddf0117efa215bffffffffffffffff603d557007ffffffffffffffffffffffffffffffff603e557007abbf6f6abb9d087fffffffffffffffff603f5570075af62cbac95f7dfa7fffffffffffffff60405570070d7fb7452e187ac13fffffffffffffff6041557006c3390ecc8af379295fffffffffffffff60425570067c00a3b07ffc01fd6fffffffffffffff604355700637b647c39cbb9d3d27ffffffffffffff6044557005f63b1fc104dbd39587ffffffffffffff6045557005b771955b36e12f7235ffffffffffffff60465570057b3d49dda84556d6f6ffffffffffffff60475570054183095b2c8ececf30ffffffffffffff60485570050a28be635ca2b888f77fffffffffffff6049557004d5156639708c9db33c3fffffffffffff604a557004a23105873875bd52dfdfffffffffffff604b55700471649d87199aa990756fffffffffffff604c557004429a21a029d4c1457cfbffffffffffff604d55700415bc6d6fb7dd71af2cb3ffffffffffff604e557003eab73b3bbfe282243ce1ffffffffffff604f557003c1771ac9fb6b4c18e229ffffffffffff605055700399e96897690418f785257fffffffffff605155700373fc456c53bb779bf0ea9fffffffffff60525570034f9e8e490c48e67e6ab8bfffffffffff60535570032cbfd4a7adc790560b3337ffffffffff60545570030b50570f6e5d2acca94613ffffffffff6055557002eb40f9f620fda6b56c2861ffffffffff6056557002cc8340ecb0d0f520a6af58ffffffffff6057557002af09481380a0a35cf1ba02ffffffffff605855700292c5bdd3b92ec810287b1b3fffffffff605955700277abdcdab07d5a77ac6d6b9fffffffff605a5570025daf6654b1eaa55fd64df5efffffffff605b55700244c49c648baa98192dce88b7ffffffff605c5570022ce03cd5619a311b2471268bffffffff605d55700215f77c045fbe885654a44a0fffffffff605e557001ffffffffffffffffffffffffffffffff605f557001eaefdbdaaee7421fc4d3ede5ffffffff6060557001d6bd8b2eb257df7e8ca57b09bfffffff6061557001c35fedd14b861eb0443f7f133fffffff6062557001b0ce43b322bcde4a56e8ada5afffffff60635570019f0028ec1fff007f5a195a39dfffffff60645570018ded91f0e72ee74f49b15ba527ffffff60655570017d8ec7f04136f4e5615fd41a63ffffff60665570016ddc6556cdb84bdc8d12d22e6fffffff60675570015ecf52776a1155b5bd8395814f7fffff60685570015060c256cb23b3b3cc3754cf40ffffff6069557001428a2f98d728ae223ddab715be3fffff606a5570013545598e5c23276ccf0ede68034fffff606b557001288c4161ce1d6f54b7f61081194fffff606c5570011c592761c666aa641d5a01a40f17ffff606d55700110a688680a7530515f3e6e6cfdcdffff606e557001056f1b5bedf75c6bcb2ce8aed428ffff606f556ffaadceceeff8a0890f3875f008277fff6070556ff05dc6b27edad306388a600f6ba0bfff6071556fe67a5a25da41063de1495d5b18cdbfff6072556fdcff115b14eedde6fc3aa5353f2e4fff6073556fd3e7a3924312399f9aae2e0f868f8fff6074556fcb2ff529eb71e41582cccd5a1ee26fff6075556fc2d415c3db974ab32a51840c0b67edff6076556fbad03e7d883f69ad5b0a186184e06bff6077556fb320d03b2c343d4829abd6075f0cc5ff6078556fabc25204e02828d73c6e80bcdb1a95bf6079556fa4b16f74ee4bb2040a1ec6c15fbbf2df607a556f9deaf736ac1f569deb1b5ae3f36c130f607b556f976bd9952c7aa957f5937d790ef65037607c556f9131271922eaa6064b73a22d0bd4f2bf607d556f8b380f3558668c46c91c49a2f8e967b9607e556f857ddf0117efa215952912839f6473e66000607f5b0155565b6f60e393c68d20b1bd09deaabc0373b9c560809081556f5f8f46e4854120989ed94719fb4c20116081556f5e479ebb9129fb1b7e72a648f992b6066082556f5d0bd23fe42dfedde2e9586be12b85fe6083556f5bdb29ddee979308ddfca81aeeb8095a6084556f5ab4fd8a260d2c7e2c0d2afcf0009dad6085556f5998b31359a55d48724c65cf090012216086556f5885bcad2b322dfc43e8860f9c018cf56087556f577b97aa1fe222bb452fdf111b1f0be26088556f5679cb5e3575632e5baa27e2b949f7046089556f557fe8241b3a31c83c732f1cdff4a1c5608a556f548d868026504875d6e59bbe95fc2a6b608b556f53a2465ce347cf34d05a867c17dd3088608c556f52bdce5dcd4faed59c7f5511cf8f8acc608d556f51dfcb453c07f8da817606e7885f7c3e608e556f5107ef6b0a5a2be8f8ff15590daa3cce608f556f5035f241d6eae0cd7bacba119993de7b6090556f4f698fe90d5b53d532171e1210164c666091556f4ea288ca297a0e6a09a0eee240e16c856092556f4de0a13fdcf5d4213fc398ba6e3becde6093556f4d23a145eef91fec06b06140804c48086094556f4c6b5430d4c1ee5526473db4ae0f11de6095556f4bb7886c240562eba11f4963a53b42406096556f4b080f3f1cb491d2d521e0ea4583521e6097556f4a5cbc96a05589cb4d86be1db31683646098556f49b566d40243517658d78c33162d6ece6099556f4911e6a02e5507a30f947383fd9a3276609a556f487216c2b31be4adc41db8a8d5cc0c88609b556f47d5d3fc4a7a1b188cd3d788b5c5e9fc609c556f473cfce4871a2c40bc4f9e1c32b955d0609d556f46a771ca578ab878485810e285e31c67609e556f4615149718aed4c258c373dc676aa72d609f556f4585c8b3f8fe489c6e1833ca4787138460a0556f44f972f174e41e5efb7e9d63c29ce73560a1556f446ff970ba86d8b00beb05ecebf3c4dc60a2556f43e9438ec88971812d6f198b5ccaad9660a3556f436539d11ff7bea657aeddb394e809ef60a4556f42e3c5d3e5a913401d86f66db5d81c2c60a5556f4264d2395303070ea726cbe98df6217460a6556f41e84a9a593bb7194c3a6349ecae4eea60a7556f416e1b785d13eba07a08f3f18876a5ab60a8556f40f6322ff389d423ba9dd7e7e7b7e80960a9556f40807cec8a466880ecf4184545d240a460aa556f400cea9ce88a8d3ae668e8ea0d9bf07f60ab556f3f9b6ae8772d4c55091e0ed7dfea0ac160ac556f3f2bee253fd84594f54bcaafac383a1360ad556f3ebe654e95208bb9210c575c081c595860ae556f3e52c1fc5665635b78ce1f05ad53c08660af556f3de8f65ac388101ddf718a6f5c1eff6560b0556f3d80f522d59bd0b328ca012df4cd2d4960b1556f3d1ab193129ea72b23648a161163a85a60b2556f3cb61f68d32576c135b95cfb53f76d7560b3556f3c5332d9f1aae851a3619e77e4cc847360b4556f3bf1e08edbe2aa109e1525f65759ef7360b5556f3b921d9cff13fa2c197746a3dfc4918f60b6556f3b33df818910bfc1a5aefb8f63ae2ac460b7556f3ad71c1c77e34fa32a9f184967eccbf660b8556f3a7bc9abf2c5bb53e2f7384a8a16521a60b9556f3a21dec7e76369783a68a0c6385a1c5760ba556f39c9525de6c9cdf7c1c157ca4a7a6ee360bb556f39721bad3dc85d1240ff0190e0adaac360bc556f391c324344d3248f0469eb28dd3d77e060bd556f38c78df7e3c796279fb4ff84394ab3da60be556f387426ea4638ae9aae08049d3554c20a60bf556f3821f57dbd2763256c1a99bbd205137860c0556f37d0f256cb46a8c92ff62fbbef28969860c1556f37811658591ffc7abdd1feaf3cef9b7360c2556f37325aa10e9e82f7df0f380f7997154b60c3556f36e4b888cfb408d873b9a80d439311c660c4556f3698299e59f4bb9de645fc9b08c64cca60c5556f364ca7a5012cb603023b57dd3ebfd50d60c6556f36022c928915b778ab1b06aaee7e61d460c7556f35b8b28d1a73dc27500ffe35559cc02860c8556f357033e951fe250ec5eb4e60955132d760c9556f3528ab2867934e3a21b5412e4c4f888160ca556f34e212f66c55057f9676c80094a61d5960cb556f349c66289e5b3c4b540c24f42fa4b9bb60cc556f34579fbbd0c733a9c8d6af6b0f7d00f760cd556f3413bad2e712288b924b5882b5b369bf60ce556f33d0b2b56286510ef730e213f71f12e960cf556f338e82ce00e2496262c64457535ba1a160d0556f334d26a96b373bb7c2f8ea1827f27a9260d1556f330c99f4f4211469e00b3e18c31475ea60d2556f32ccd87d6486094999c7d5e6f33237d860d3556f328dde2dd617b6665a2e8556f250c1af60d4556f324fa70e9adc270f8262755af5a99af960d5556f32122f443110611ca51040f41fa6e1e360d6556f31d5730e42c0831482f0f1485c4263d860d7556f31996ec6b07b4a83421b5ebc4ab4e1f160d8556f315e1ee0a68ff46bb43ec2b85032e87660d9556f31237fe7bc4deacf6775b9efa1a145f860da556f30e98e7f1cc5a356e44627a6972ea2ff60db556f30b04760b8917ec74205a3002650ec0560dc556f3077a75c803468e9132ce0cf3224241d60dd556f303fab57a6a275c36f19cda9bace667a60de556f3008504beb8dcbd2cf3bc1f6d5a064f060df556f2fd19346ed17dac61219ce0c2c5ac4b060e0556f2f9b7169808c324b5852fd3d54ba971460e1556f2f65e7e711cf4b064eea9c08cbdad57460e2556f2f30f405093042ddff8a251b6bf6d10360e3556f2efc931a3750f2e8bfe323edfe03757460e4556f2ec8c28e46dbe56d98685278339400cb60e5556f2e957fd933c3926d8a599b602379b85160e6556f2e62c882c7c9ed4473412702f08ba0e560e7556f2e309a221c12ba361e3ed695167feee260e8556f2dfef25d1f865ae18dd07cfea4bcea1060e9556f2dcdcee821cdc80decc02c44344aeb3160ea556f2d9d2d8562b34944d0b201bb87260c8360eb556f2d6d0c04a5b62a2c42636308669b729a60ec556f2d3d6842c9a235517fc5a0332691528f60ed556f2d0e402963fe1ea2834abc408c437c1060ee556f2cdf91ae602647908aff975e4d6a2a8c60ef556f2cb15ad3a1eb65f6d74a75da09a1b6c560f0556f2c8399a6ab8e9774d6fcff373d21072760f1556f2c564c4046f64edba6883ca06bbc453560f2556f2c2970c431f952641e05cb493e23eed360f3556f2bfd0560cd9eb14563bc7c0732856c1860f4556f2bd1084ed0332f7ff4150f9d0ef41a2c60f5556f2ba577d0fa1628b76d040b12a82492fb60f6556f2b7a5233cd21581e855e89dc2f1e8a9260f7556f2b4f95cd46904d05d72bdcde337d9cc760f8556f2b2540fc9b4d9abba3faca669191467560f9556f2afb5229f68d0830d8be8adb0a0db70f60fa556f2ad1c7c63a9b294c5bc73a3ba3ab7a2b60fb556f2aa8a04ac3cbe1ee1c9c86361465dbb860fc556f2a7fda392d725a44a2c8aeb9ab35430d60fd556f2a57741b18cde618717792b4faa216db60fe556f2a2f6c81f5d84dd950a35626d6d5503a90607f6119fe565b6000808080806fd3094c70f034de4b96ff7d5b6f99fcd88610612458576f4000000000000000000000000000000093909301926fd3094c70f034de4b96ff7d5b6f99fcd8607f60020a87020495505b6fa45af1e1f40c333b3de1db4dd55f29a786106124a1576f2000000000000000000000000000000093909301926fa45af1e1f40c333b3de1db4dd55f29a7607f60020a87020495505b6f910b022db7ae67ce76b441c27035c6a186106124ea576f1000000000000000000000000000000093909301926f910b022db7ae67ce76b441c27035c6a1607f60020a87020495505b6f88415abbe9a76bead8d00cf112e4d4a88610612533576f0800000000000000000000000000000093909301926f88415abbe9a76bead8d00cf112e4d4a8607f60020a87020495505b6f84102b00893f64c705e841d5d4064bd3861061257c576f0400000000000000000000000000000093909301926f84102b00893f64c705e841d5d4064bd3607f60020a87020495505b6f8204055aaef1c8bd5c3259f4822735a286106125c5576f0200000000000000000000000000000093909301926f8204055aaef1c8bd5c3259f4822735a2607f60020a87020495505b6f810100ab00222d861931c15e39b44e99861061260e576f0100000000000000000000000000000093909301926f810100ab00222d861931c15e39b44e99607f60020a87020495505b6f808040155aabbbe9451521693554f7338610612656576e80000000000000000000000000000093909301926f808040155aabbbe9451521693554f733607f60020a87020495505b6f7fffffffffffffffffffffffffffffff1986019250829150607f60020a828002049050608060020a8381038302049390930192607f60020a8282020491507002000000000000000000000000000000006faaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa8490038302049390930192607f60020a8282020491507003000000000000000000000000000000006f999999999999999999999999999999998490038302049390930192607f60020a8282020491507004000000000000000000000000000000006f924924924924924924924924924924928490038302049390930192607f60020a8282020491507005000000000000000000000000000000006f8e38e38e38e38e38e38e38e38e38e38e8490038302049390930192607f60020a8282020491507006000000000000000000000000000000006f8ba2e8ba2e8ba2e8ba2e8ba2e8ba2e8b8490038302049390930192607f60020a8282020491507007000000000000000000000000000000006f89d89d89d89d89d89d89d89d89d89d898490038302049390930192607f60020a8282020491507008000000000000000000000000000000006f888888888888888888888888888888888490038302049390930195945050505050565b6000808080608060020a851061285957612841607f60020a865b046133a4565b60ff8116600281900a90960495607f60020a02935091505b607f60020a8511156128ab5750607f5b60008160ff1611156128ab57607f60020a858002049450608060020a85106128a2576002948590049460ff600019830116900a92909201915b60001901612869565b6f05b9de1d10bf4103d647b0955897ba806f03f80fe03f80fe03f80fe03f80fe03f884020493505b505050919050565b6000670168244fdac78000607f60020a6f0fffffffffffffffffffffffffffffff84168080028290048082028390048083028490049485026710e1b3be415a00009092026705a0913f6b1e000091909102010192909181830204905080664807432bc180000283019250607f60020a82820281151561295657fe5b04905080660c0135dca040000283019250607f60020a82820281151561297857fe5b049050806601b707b1cdc0000283019250607f60020a82820281151561299a57fe5b049050806536e0f639b8000283019250607f60020a8282028115156129bb57fe5b04905080650618fee9f8000283019250607f60020a8282028115156129dc57fe5b04905080649c197dcc000283019250607f60020a8282028115156129fc57fe5b04905080640e30dce4000283019250607f60020a828202811515612a1c57fe5b0490508064012ebd13000283019250607f60020a828202811515612a3c57fe5b049050806317499f000283019250607f60020a828202811515612a5b57fe5b049050806301a9d4800283019250607f60020a828202811515612a7a57fe5b04905080621c63800283019250607f60020a828202811515612a9857fe5b049050806201c6380283019250607f60020a828202811515612ab657fe5b04905080611ab80283019250607f60020a828202811515612ad357fe5b0490508061017c0283019250607f60020a828202811515612af057fe5b0490508060140283019250607f60020a828202811515612b0c57fe5b6721c3677c82b40000919004938401048201607f60020a019290506f10000000000000000000000000000000851615612b695770018ebef9eac820ae8682b9793ac6d1e7767001c3d6a24ed82218787d624d3e5eba95f984020492505b6f20000000000000000000000000000000851615612bab577001368b2fc6f9609fe7aceb46aa619baed470018ebef9eac820ae8682b9793ac6d1e77884020492505b6f40000000000000000000000000000000851615612bec576fbc5ab1b16779be3575bd8f0520a9f21f7001368b2fc6f9609fe7aceb46aa619baed584020492505b607f60020a851615612c20576f454aaa8efe072e7f6ddbab84b40a55c96fbc5ab1b16779be3575bd8f0520a9f21e84020492505b608060020a851615612c54576f0960aadc109e7a3bf4578099615711ea6f454aaa8efe072e7f6ddbab84b40a55c584020492505b700200000000000000000000000000000000851615612c94576e2bf84208204f5977f9a8cf01fdce3d6f0960aadc109e7a3bf4578099615711d784020492505b700400000000000000000000000000000000851615612cd2576d03c6ab775dd0b95b4cbee7e65d116e2bf84208204f5977f9a8cf01fdc30784020492505b50909392505050565b60006020607f825b8160ff168360010160ff161015612d2857600260ff8484011604905084600060ff831660808110612d1057fe5b015410612d1f57809250612d23565b8091505b612ce3565b84600060ff841660808110612d3957fe5b015410612d48578193506128d3565b84600060ff851660808110612d5957fe5b015410610106578293506128d3565b6000806000849150600090508360ff168583029060020a90049150816f03442c4e6074a82f1797f72ac000000002810190508360ff168583029060020a90049150816f0116b96f757c380fb287fd0e4000000002810190508360ff168583029060020a90049150816e45ae5bdd5f0e03eca1ff439000000002810190508360ff168583029060020a90049150816e0defabf91302cd95b9ffda5000000002810190508360ff168583029060020a90049150816e02529ca9832b22439efff9b800000002810190508360ff168583029060020a90049150816d54f1cf12bd04e516b6da8800000002810190508360ff168583029060020a90049150816d0a9e39e257a09ca2d6db5100000002810190508360ff168583029060020a90049150816d012e066e7b839fa050c30900000002810190508360ff168583029060020a90049150816c1e33d7d926c329a1ad1a80000002810190508360ff168583029060020a90049150816c02bee513bdb4a6b19b5f80000002810190508360ff168583029060020a90049150816b3a9316fa79b88eccf2a0000002810190508360ff168583029060020a90049150816b048177ebe1fa81237520000002810190508360ff168583029060020a90049150816a5263fe90242dcbacf0000002810190508360ff168583029060020a90049150816a057e22099c030d9410000002810190508360ff168583029060020a90049150816957e22099c030d941000002810190508360ff168583029060020a900491508169052b6b5456997631000002810190508360ff168583029060020a9004915081684985f67696bf74800002810190508360ff168583029060020a90049150816803dea12ea99e49800002810190508360ff168583029060020a90049150816731880f2214b6e00002810190508360ff168583029060020a900491508167025bcff56eb3600002810190508360ff168583029060020a9004915081661b722e10ab100002810190508360ff168583029060020a90049150816601317c7007700002810190508360ff168583029060020a9004915081650cba84aafa0002810190508360ff168583029060020a90049150816482573a0a0002810190508360ff168583029060020a90049150816405035ad90002810190508360ff168583029060020a9004915081632f881b0002810190508360ff168583029060020a90049150816301b2934002810190508360ff168583029060020a9004915081620efc4002810190508360ff168583029060020a9004915081617fe002810190508360ff168583029060020a900491508161042002810190508360ff168583029060020a9004915081602102810190508360ff168583029060020a9004915081600102810190508360ff1660019060020a02856f0688589cc0e9505e2f2fee55800000008381151561317f57fe5b04010195945050505050565b600080600080608060020a86111580156131a95750608060020a8511155b156131b957858593509350611223565b608060020a8610156131e55784608060020a87028115156131d657fe5b04608060020a93509350611223565b608060020a85101561321157608060020a86608060020a870281151561320757fe5b0493509350611223565b84861161321e5784613220565b855b9150613230607f60020a8361283b565b60ff1660020a958690049695909404949350505050565b60006f2f16ac6c59de6f8d5d6f63c1482a7c868211613270576132698261340d565b905061329f565b817f400000000000000000000000000000000000000000000000000000000000000081151561329b57fe5b0490505b919050565b60006f2f16ac6c59de6f8d5d6f63c1482a7c8682116132c65761326982613870565b7001af16ac6c59de6f8d5d6f63c1482a7c8082116132e75761326982613cf1565b706b22d43e72c326539cceeef8bb48f255ff82116101065761326982613d6f565b60008060008060007d10c6f7a0b5ed8d36b4c7f34938583621fafc8b0079a2834d26fa3fcc9ea9871115613379577d10c6f7a0b5ed8d36b4c7f34938583621fafc8b0079a2834d26fa3fcc9eaa87046001019250828781151561336757fe5b049650828681151561337557fe5b0495505b613391620f4240880261338c8989610fc5565b613dfc565b97620f4240899003975095505050505050565b600080806101008410156133d3575b60018411156133ce57600290930492600191909101906133b3565b610fbe565b5060805b60008160ff161115610fbe5760ff811660020a84106134005760ff811660020a90930492908117905b600260ff909116046133d7565b60008181607f60020a82800204915070014d29a73a6e7b02c3668c7b0880000000820201607f60020a8483020491507002504a0cd9a7f7215b60f9be4800000000820201607f60020a848302049150700484d0a1191c0ead267967c7a4a0000000820201607f60020a84830204915070095ec580d7e8427a4baf26a90a00000000820201607f60020a848302049150701440b0be1615a47dba6e5b3b1f10000000820201607f60020a848302049150702d207601f46a99b4112418400000000000820201607f60020a8483020491507066ebaac4c37c622dd8288a7eb1b2000000820201607f60020a84830204915070ef17240135f7dbd43a1ba10cf200000000820201607f60020a848302049150710233c33c676a5eb2416094a87b3657000000820201607f60020a848302049150710541cde48bc0254bed49a9f8700000000000820201607f60020a848302049150710cae1fad2cdd4d4cb8d73abca0d19a400000820201607f60020a848302049150711edb2aa2f760d15c41ceedba956400000000820201607f60020a848302049150714ba8d20d2dabd386c9529659841a2e200000820201607f60020a84830204915071bac08546b867cdaa20000000000000000000820201607f60020a8483020491507201cfa8e70c03625b9db76c8ebf5bbf24820000820201607f60020a8483020491507204851d99f82060df265f3309b26f8200000000820201607f60020a848302049150720b550d19b129d270c44f6f55f027723cbb0000820201607f60020a848302049150721c877dadc761dc272deb65d4b0000000000000820201607f60020a8483020491507248178ece97479f33a77f2ad22a81b64406c000820201607f60020a84830204915072b6ca8268b9d810fedf6695ef2f8a6c00000000820201607f60020a8483020491507301d0e76631a5b05d007b8cb72a7c7f11ec36e000820201607f60020a8483020491507304a1c37bd9f85fd9c6c780000000000000000000820201607f60020a848302049150730bd8369f1b702bf491e2ebfcee08250313b65400820201607f60020a848302049150731e5c7c32a9f6c70ab2cb59d9225764d400000000820201607f60020a848302049150734dff5820e165e910f95120a708e742496221e600820201607f60020a84830204915073c8c8f66db1fced378ee50e536000000000000000820201607f60020a848302049150740205db8dffff45bfa2938f128f599dbf16eb11d880820201607f60020a84830204915074053a044ebd984351493e1786af38d39a0800000000820201607f60020a848302049150740d86dae2a4cc0f47633a544479735869b487b59c40820201607f60020a84830204915074231000000000000000000000000000000000000000820201607f60020a848302049150745b0485a76f6646c2039db1507cdd51b08649680822820201607f60020a84830204915074ec983c46c49545bc17efa6b5b0055e242200000000820201607f60020a846fde1bc4d19efcac82445da75b0000000083040101949350505050565b600081607f60020a8181036fde1bc4d19efcac82445da75b00000000029082800204915070014d29a73a6e7b02c3668c7b0880000000820201607f60020a8483020491507002504a0cd9a7f7215b60f9be480000000082029003607f60020a848302049150700484d0a1191c0ead267967c7a4a0000000820201607f60020a84830204915070095ec580d7e8427a4baf26a90a0000000082029003607f60020a848302049150701440b0be1615a47dba6e5b3b1f10000000820201607f60020a848302049150702d207601f46a99b411241840000000000082029003607f60020a8483020491507066ebaac4c37c622dd8288a7eb1b2000000820201607f60020a84830204915070ef17240135f7dbd43a1ba10cf20000000082029003607f60020a848302049150710233c33c676a5eb2416094a87b3657000000820201607f60020a848302049150710541cde48bc0254bed49a9f870000000000082029003607f60020a848302049150710cae1fad2cdd4d4cb8d73abca0d19a400000820201607f60020a848302049150711edb2aa2f760d15c41ceedba95640000000082029003607f60020a848302049150714ba8d20d2dabd386c9529659841a2e200000820201607f60020a84830204915071bac08546b867cdaa2000000000000000000082029003607f60020a8483020491507201cfa8e70c03625b9db76c8ebf5bbf24820000820201607f60020a8483020491507204851d99f82060df265f3309b26f820000000082029003607f60020a848302049150720b550d19b129d270c44f6f55f027723cbb0000820201607f60020a848302049150721c877dadc761dc272deb65d4b000000000000082029003607f60020a8483020491507248178ece97479f33a77f2ad22a81b64406c000820201607f60020a84830204915072b6ca8268b9d810fedf6695ef2f8a6c0000000082029003607f60020a8483020491507301d0e76631a5b05d007b8cb72a7c7f11ec36e000820201607f60020a8483020491507304a1c37bd9f85fd9c6c78000000000000000000082029003607f60020a848302049150730bd8369f1b702bf491e2ebfcee08250313b65400820201607f60020a848302049150731e5c7c32a9f6c70ab2cb59d9225764d40000000082029003607f60020a848302049150734dff5820e165e910f95120a708e742496221e600820201607f60020a84830204915073c8c8f66db1fced378ee50e53600000000000000082029003607f60020a848302049150740205db8dffff45bfa2938f128f599dbf16eb11d880820201607f60020a84830204915074053a044ebd984351493e1786af38d39a080000000082029003607f60020a848302049150740d86dae2a4cc0f47633a544479735869b487b59c40820201607f60020a8483020491507423100000000000000000000000000000000000000082029003607f60020a848302049150745b0485a76f6646c2039db1507cdd51b08649680822820201607f60020a84830204915074ec983c46c49545bc17efa6b5b0055e242200000000820290036fde1bc4d19efcac82445da75b00000000815b04949350505050565b60006f2f16ac6c59de6f8d5d6f63c1482a7c861982016f03060c183060c183060c183060c18306808204908181029060018301028480608085818110613d3357fe5b01549150608060018601818110613d4657fe5b01546f03060c183060c183060c183060c183069487030295909203029390930104949350505050565b600080600070015bf0a8b1457695355fb8ac404e7a79e38410613d9a57613d9584612821565b613da3565b613da384612409565b915070015bf0a8b1457695355fb8ac404e7a79e38210613dcb57613dc682612821565b613dd4565b613dd482612409565b905083607f60020a83607f60020a8402811515613ded57fe5b048385030102811515613ce857fe5b60006002820482038284811515613e0f57fe5b06811515613e1957fe5b048284811515613e2557fe5b0401939250505056004552525f494e56414c49445f535550504c5900000000000000000000000000004552525f494e56414c49445f524553455256455f42414c414e43450000000000a165627a7a723058203989ee5b9c58340f46c3e78ab1edcd1160ebcf14223a0aa8f0099564d19e81ad0029 \ No newline at end of file diff --git a/solidity/build/SovrynSwapNetwork.abi b/solidity/build/SovrynSwapNetwork.abi index 6cf6bad..68c937a 100644 --- a/solidity/build/SovrynSwapNetwork.abi +++ b/solidity/build/SovrynSwapNetwork.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_register","type":"bool"}],"name":"registerEtherToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"}],"name":"getReturnByPath","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_beneficiary","type":"address"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"claimAndConvertFor2","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"convert2","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"maxAffiliateFee","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"}],"name":"rateByPath","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"etherTokens","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_sovrynSwapX","type":"address"},{"name":"_conversionId","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_beneficiary","type":"address"}],"name":"completeXConversion","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_beneficiary","type":"address"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"convertFor2","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_beneficiary","type":"address"}],"name":"claimAndConvertFor","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_beneficiary","type":"address"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"convertByPath","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_targetBlockchain","type":"bytes32"},{"name":"_targetAccount","type":"bytes32"},{"name":"_conversionId","type":"uint256"}],"name":"xConvert","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"}],"name":"claimAndConvert","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_beneficiary","type":"address"}],"name":"convertFor","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_targetBlockchain","type":"bytes32"},{"name":"_targetAccount","type":"bytes32"},{"name":"_conversionId","type":"uint256"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"xConvert2","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"}],"name":"conversionPath","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"claimAndConvert2","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"}],"name":"convert","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_maxAffiliateFee","type":"uint256"}],"name":"setMaxAffiliateFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_smartToken","type":"address"},{"indexed":true,"name":"_fromToken","type":"address"},{"indexed":true,"name":"_toToken","type":"address"},{"indexed":false,"name":"_fromAmount","type":"uint256"},{"indexed":false,"name":"_toAmount","type":"uint256"},{"indexed":false,"name":"_trader","type":"address"}],"name":"Conversion","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}] \ No newline at end of file +[{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"maxAffiliateFee","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"etherTokens","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_smartToken","type":"address"},{"indexed":true,"name":"_fromToken","type":"address"},{"indexed":true,"name":"_toToken","type":"address"},{"indexed":false,"name":"_fromAmount","type":"uint256"},{"indexed":false,"name":"_toAmount","type":"uint256"},{"indexed":false,"name":"_trader","type":"address"}],"name":"Conversion","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":false,"inputs":[{"name":"_maxAffiliateFee","type":"uint256"}],"name":"setMaxAffiliateFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_register","type":"bool"}],"name":"registerEtherToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"}],"name":"conversionPath","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"}],"name":"rateByPath","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_beneficiary","type":"address"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"convertByPath","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_targetBlockchain","type":"bytes32"},{"name":"_targetAccount","type":"bytes32"},{"name":"_conversionId","type":"uint256"}],"name":"xConvert","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_targetBlockchain","type":"bytes32"},{"name":"_targetAccount","type":"bytes32"},{"name":"_conversionId","type":"uint256"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"xConvert2","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_sovrynSwapX","type":"address"},{"name":"_conversionId","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_beneficiary","type":"address"}],"name":"completeXConversion","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"}],"name":"getReturnByPath","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"}],"name":"convert","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"convert2","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_beneficiary","type":"address"}],"name":"convertFor","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_beneficiary","type":"address"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"convertFor2","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"}],"name":"claimAndConvert","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"claimAndConvert2","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_beneficiary","type":"address"}],"name":"claimAndConvertFor","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_beneficiary","type":"address"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"claimAndConvertFor2","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/SovrynSwapNetwork.bin b/solidity/build/SovrynSwapNetwork.bin index 50eb947..d280ab3 100644 --- a/solidity/build/SovrynSwapNetwork.bin +++ b/solidity/build/SovrynSwapNetwork.bin @@ -1 +1 @@ -608060405260016004556175306005553480156200001c57600080fd5b5060405160208062003720833981016040525160008054600160a060020a0319163317905580806200005781640100000000620000d2810204565b5060028054600160a060020a03909216600160a060020a03199283168117909155600380549092161790555073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee60005260066020527fa2e5aefc6e2cbe2917a296f0fd89c5f915c487c803db1d98eccb43f14012d711805460ff191660011790556200014d565b600160a060020a03811615156200014a57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b6135c3806200015d6000396000f3006080604052600436106101665763ffffffff60e060020a600035041663024c7ec7811461016b57806302ef521e146101875780630c8496cc146101ad5780632978c10e1461021d5780632fe8a6ad146102a657806349d10b64146102cf578063569706eb146102e45780635d732ff2146103475780635e35359e1461035c57806361cd756e1461038657806379ba5097146103b75780637b103999146103cc5780637f9c0ecd146103e15780638077ccf71461043857806389f9cc61146104595780638da5cb5b146104cc578063ab6214ce146104e1578063b1e9932b1461054b578063b4a176d3146105b6578063b77d239b146105cb578063c52173de14610635578063c7ba24bc14610694578063c98fefed146106f2578063cb32564e14610750578063d4ee1d90146107c4578063d734fa19146107d9578063e57738e514610850578063f2fde38b146108c0578063f3898a97146108e1578063f3bc7d2a14610932575b600080fd5b34801561017757600080fd5b50610185600435151561094a565b005b34801561019357600080fd5b50610185600160a060020a03600435166024351515610992565b3480156101b957600080fd5b50604080516020600480358082013583810280860185019096528085526102049536959394602494938501929182918501908490808284375094975050933594506109db9350505050565b6040805192835260208301919091528051918290030190f35b34801561022957600080fd5b50604080516020600480358082013583810280860185019096528085526102949536959394602494938501929182918501908490808284375094975050843595505050602083013592600160a060020a036040820135811693506060820135169150608001356109f3565b60408051918252519081900360200190f35b3480156102b257600080fd5b506102bb610a0e565b604080519115158252519081900360200190f35b3480156102db57600080fd5b50610185610a2f565b604080516020600480358082013583810280860185019096528085526102949536959394602494938501929182918501908490808284375094975050843595505050602083013592600160a060020a036040820135169250606001359050610cae565b34801561035357600080fd5b50610294610cc9565b34801561036857600080fd5b50610185600160a060020a0360043581169060243516604435610ccf565b34801561039257600080fd5b5061039b610d08565b60408051600160a060020a039092168252519081900360200190f35b3480156103c357600080fd5b50610185610d17565b3480156103d857600080fd5b5061039b610dea565b3480156103ed57600080fd5b5060408051602060048035808201358381028086018501909652808552610294953695939460249493850192918291850190849080828437509497505093359450610df99350505050565b34801561044457600080fd5b506102bb600160a060020a0360043516611628565b34801561046557600080fd5b50604080516020600480358082013583810280860185019096528085526102949536959394602494938501929182918501908490808284375094975050600160a060020a03853581169650602086013595604081013595506060013516925061163d915050565b3480156104d857600080fd5b5061039b6117d2565b604080516020600480358082013583810280860185019096528085526102949536959394602494938501929182918501908490808284375094975050843595505050602083013592600160a060020a036040820135811693506060820135169150608001356117e1565b34801561055757600080fd5b5060408051602060048035808201358381028086018501909652808552610294953695939460249493850192918291850190849080828437509497505084359550505060208301359260400135600160a060020a031691506118079050565b3480156105c257600080fd5b50610185611821565b604080516020600480358082013583810280860185019096528085526102949536959394602494938501929182918501908490808284375094975050843595505050602083013592600160a060020a0360408201358116935060608201351691506080013561185a565b604080516020600480358082013583810280860185019096528085526102949536959394602494938501929182918501908490808284375094975050843595505050602083013592604081013592506060810135915060800135611a4e565b3480156106a057600080fd5b506040805160206004803580820135838102808601850190965280855261029495369593946024949385019291829185019084908082843750949750508435955050506020909201359150611a619050565b60408051602060048035808201358381028086018501909652808552610294953695939460249493850192918291850190849080828437509497505084359550505060208301359260400135600160a060020a031691506118079050565b6040805160206004803580820135838102808601850190965280855261029495369593946024949385019291829185019084908082843750949750508435955050506020830135926040810135925060608101359150608081013590600160a060020a0360a0820135169060c00135611a7b565b3480156107d057600080fd5b5061039b611c19565b3480156107e557600080fd5b50610800600160a060020a0360043581169060243516611c28565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561083c578181015183820152602001610824565b505050509050019250505060405180910390f35b34801561085c57600080fd5b50604080516020600480358082013583810280860185019096528085526102949536959394602494938501929182918501908490808284375094975050843595505050602083013592600160a060020a036040820135169250606001359050610cae565b3480156108cc57600080fd5b50610185600160a060020a0360043516611d59565b6040805160206004803580820135838102808601850190965280855261029495369593946024949385019291829185019084908082843750949750508435955050506020909201359150611a619050565b34801561093e57600080fd5b50610185600435611df6565b610952611e5e565b60038054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b61099a611e5e565b816109a481611ec2565b826109ae81611f25565b5050600160a060020a03919091166000908152600660205260409020805460ff1916911515919091179055565b6000806109e88484610df9565b946000945092505050565b6000610a0387878787878761185a565b979650505050505050565b60035474010000000000000000000000000000000000000000900460ff1681565b60008054600160a060020a0316331480610a64575060035474010000000000000000000000000000000000000000900460ff16155b1515610aba576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b610ae37f436f6e7472616374526567697374727900000000000000000000000000000000611f86565b600254909150600160a060020a03808316911614801590610b0c5750600160a060020a03811615155b1515610b62576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b604080517fbb34534c0000000000000000000000000000000000000000000000000000000081527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b158015610be657600080fd5b505af1158015610bfa573d6000803e3d6000fd5b505050506040513d6020811015610c1057600080fd5b5051600160a060020a03161415610c71576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a0380841673ffffffffffffffffffffffffffffffffffffffff19928316179092559091169216919091179055565b6000610cbf8686866000878761185a565b9695505050505050565b60055481565b610cd7611e5e565b82610ce181611ec2565b82610ceb81611ec2565b83610cf581611f25565b610d0086868661201e565b505050505050565b600354600160a060020a031681565b600154600160a060020a03163314610d79576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600254600160a060020a031681565b600080600080600080600080600080600080610e347f536f7672796e53776170466f726d756c61000000000000000000000000000000611f86565b94508c9a5060028e51118015610e4f57508d51600290066001145b1515610ea5576040805160e560020a62461bcd02815260206004820152601060248201527f4552525f494e56414c49445f5041544800000000000000000000000000000000604482015290519081900360640190fd5b600293505b8d51841015611616578d60028503815181101515610ec457fe5b9060200190602002015192508d60018503815181101515610ee157fe5b9060200190602002015191508d84815181101515610efb57fe5b90602001906020020151905081600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015610f4557600080fd5b505af1158015610f59573d6000803e3d6000fd5b505050506040513d6020811015610f6f57600080fd5b50519550610f7d86846120ab565b9250610f8986826120ab565b905081600160a060020a031681600160a060020a031614156112ea576003841080610fe057508d60038503815181101515610fc057fe5b90602001906020020151600160a060020a031682600160a060020a031614155b156110525781600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561102357600080fd5b505af1158015611037573d6000803e3d6000fd5b505050506040513d602081101561104d57600080fd5b505198505b85600160a060020a031663d8959512846040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b1580156110ad57600080fd5b505af11580156110c1573d6000803e3d6000fd5b505050506040513d60208110156110d757600080fd5b5051604080517f0e53aae9000000000000000000000000000000000000000000000000000000008152600160a060020a0386811660048301529151929a5090881691630e53aae99160248082019260a0929091908290030181600087803b15801561114157600080fd5b505af1158015611155573d6000803e3d6000fd5b505050506040513d60a081101561116b57600080fd5b50602090810151604080517ff3250fe2000000000000000000000000000000000000000000000000000000008152600481018d9052602481018c905263ffffffff83166044820152606481018f90529051919950600160a060020a0388169263f3250fe2926084808401938290030181600087803b1580156111ec57600080fd5b505af1158015611200573d6000803e3d6000fd5b505050506040513d602081101561121657600080fd5b5051604080517f579cd3ca0000000000000000000000000000000000000000000000000000000081529051919c506112cc91620f4240916112c091600160a060020a038b169163579cd3ca9160048083019260209291908290030181600087803b15801561128357600080fd5b505af1158015611297573d6000803e3d6000fd5b505050506040513d60208110156112ad57600080fd5b50518e9063ffffffff9081169061210f16565b9063ffffffff61218f16565b9a8b90039a99506112e3898c63ffffffff6121fd16565b985061160b565b81600160a060020a031683600160a060020a031614156115f957600384108061133f57508d6003850381518110151561131f57fe5b90602001906020020151600160a060020a031682600160a060020a031614155b156113b15781600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561138257600080fd5b505af1158015611396573d6000803e3d6000fd5b505050506040513d60208110156113ac57600080fd5b505198505b85600160a060020a031663d8959512826040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b15801561140c57600080fd5b505af1158015611420573d6000803e3d6000fd5b505050506040513d602081101561143657600080fd5b5051604080517f0e53aae9000000000000000000000000000000000000000000000000000000008152600160a060020a0384811660048301529151929a5090881691630e53aae99160248082019260a0929091908290030181600087803b1580156114a057600080fd5b505af11580156114b4573d6000803e3d6000fd5b505050506040513d60a08110156114ca57600080fd5b50602090810151604080517f76cf0b56000000000000000000000000000000000000000000000000000000008152600481018d9052602481018c905263ffffffff83166044820152606481018f90529051919950600160a060020a038816926376cf0b56926084808401938290030181600087803b15801561154b57600080fd5b505af115801561155f573d6000803e3d6000fd5b505050506040513d602081101561157557600080fd5b5051604080517f579cd3ca0000000000000000000000000000000000000000000000000000000081529051919c506115e291620f4240916112c091600160a060020a038b169163579cd3ca9160048083019260209291908290030181600087803b15801561128357600080fd5b9a8b90039a99506112e3898c63ffffffff61225a16565b6116058684838e6122ba565b909b5099505b600284019350610eaa565b50989c9b505050505050505050505050565b60066020526000908152604090205460ff1681565b60008085600160a060020a031663fc0c546a6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561167e57600080fd5b505af1158015611692573d6000803e3d6000fd5b505050506040513d60208110156116a857600080fd5b50518751600160a060020a0390911690889060009081106116c557fe5b60209081029091010151600160a060020a03161461172d576040805160e560020a62461bcd02815260206004820152601860248201527f4552525f494e56414c49445f534f555243455f544f4b454e0000000000000000604482015290519081900360640190fd5b604080517faafd6b76000000000000000000000000000000000000000000000000000000008152600481018790523360248201529051600160a060020a0388169163aafd6b769160448083019260209291908290030181600087803b15801561179557600080fd5b505af11580156117a9573d6000803e3d6000fd5b505050506040513d60208110156117bf57600080fd5b50519050610a038782868660008061185a565b600054600160a060020a031681565b6000846117ed8161239e565b6117fb88888888888861185a565b98975050505050505050565b60006118188585858560008061185a565b95945050505050565b611829611e5e565b6003546002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03909216919091179055565b60008060006060600061186b6123f6565b60026004558861187a8161239e565b60028c5111801561189057508b51600290066001145b15156118e6576040805160e560020a62461bcd02815260206004820152601060248201527f4552525f494e56414c49445f5041544800000000000000000000000000000000604482015290519081900360640190fd5b6119218c60008151811015156118f857fe5b906020019060200201518d600181518110151561191157fe5b906020019060200201518d612450565b60009450600160a060020a038816151561199057861561198b576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f414646494c494154455f46454500000000000000604482015290519081900360640190fd5b6119fd565b8660001080156119a257506005548711155b15156119f8576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f414646494c494154455f46454500000000000000604482015290519081900360640190fd5b600194505b339350600160a060020a03891615611a13578893505b611a1e8c8587612654565b9250611a2d838c8c8b8b612a6b565b9150611a3a838386612fcb565b5060016004559a9950505050505050505050565b6000610a03878787878787600080611a7b565b6000611a73848484600080600061185a565b949350505050565b60008060008089611a8b8161239e565b8c518d906000198101908110611a9d57fe5b906020019060200201519350611ad27f536f7672796e5377617058000000000000000000000000000000000000000000611f86565b9250611afd7f424e54546f6b656e000000000000000000000000000000000000000000000000611f86565b600160a060020a03858116911614611b5f576040805160e560020a62461bcd02815260206004820152601860248201527f4552525f494e56414c49445f5441524745545f544f4b454e0000000000000000604482015290519081900360640190fd5b611b6d8d8d8d308b8b61185a565b9150611b7a8484846130ae565b604080517f427c0374000000000000000000000000000000000000000000000000000000008152600481018c9052602481018b905260448101849052606481018a90529051600160a060020a0385169163427c037491608480830192600092919082900301818387803b158015611bf057600080fd5b505af1158015611c04573d6000803e3d6000fd5b50939f9e505050505050505050505050505050565b600154600160a060020a031681565b60606000611c557f436f6e76657273696f6e5061746846696e646572000000000000000000000000611f86565b604080517fa1c421cd000000000000000000000000000000000000000000000000000000008152600160a060020a038781166004830152868116602483015291519293509083169163a1c421cd9160448082019260009290919082900301818387803b158015611cc457600080fd5b505af1158015611cd8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015611d0157600080fd5b810190808051640100000000811115611d1957600080fd5b82016020810184811115611d2c57600080fd5b8151856020820283011164010000000082111715611d4957600080fd5b50909550505050505b5092915050565b611d61611e5e565b600054600160a060020a0382811691161415611dc7576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b611dfe611e5e565b620f4240811115611e59576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f414646494c494154455f46454500000000000000604482015290519081900360640190fd5b600555565b600054600160a060020a03163314611ec0576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b600160a060020a0381161515611f22576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b600160a060020a038116301415611f22576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b600254604080517fbb34534c000000000000000000000000000000000000000000000000000000008152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b158015611fec57600080fd5b505af1158015612000573d6000803e3d6000fd5b505050506040513d602081101561201657600080fd5b505192915050565b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a03851660248301526044808301859052835180840390910181526064909201909252602081018051600160e060020a0316600160e060020a0319909316929092179091526120a6908490613175565b505050565b600160a060020a03811660009081526006602052604081205460ff1615156120d4575080612109565b6120dd83613203565b156120fd575073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee612109565b61210683613294565b90505b92915050565b6000808315156121225760009150611d52565b5082820282848281151561213257fe5b0414612188576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b9392505050565b6000808083116121e9576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f4449564944455f42595f5a45524f0000000000000000000000000000604482015290519081900360640190fd5b82848115156121f457fe5b04949350505050565b600082820183811015612188576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b6000818310156122b4576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b6000806122c5613521565b604080517f67657452657475726e28616464726573732c616464726573732c75696e74323581527f36290000000000000000000000000000000000000000000000000000000000006020808301919091528251918290036022018220600160a060020a03808b16602485015289166044840152606480840189905284518085039091018152608490930184529082018051600160e060020a0316600160e060020a0319909216919091178152815191929184918b5afa80151561238757600080fd5b505080516020909101519097909650945050505050565b60008111611f22576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5a45524f5f56414c5545000000000000000000000000000000000000604482015290519081900360640190fd5b600454600114611ec0576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5245454e5452414e4359000000000000000000000000000000000000604482015290519081900360640190fd5b60008083600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561249157600080fd5b505af11580156124a5573d6000803e3d6000fd5b505050506040513d60208110156124bb57600080fd5b505191506124c882613203565b905060003411156125965734831461252a576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b8015156125915761253a82613294565b600160a060020a031663d0e30db0346040518263ffffffff1660e060020a0281526004016000604051808303818588803b15801561257757600080fd5b505af115801561258b573d6000803e3d6000fd5b50505050505b61264d565b600160a060020a03851660009081526006602052604090205460ff161561262f576125c3853330866133e1565b80156125915784600160a060020a0316632e1a7d4d846040518263ffffffff1660e060020a02815260040180828152602001915050600060405180830381600087803b15801561261257600080fd5b505af1158015612626573d6000803e3d6000fd5b5050505061264d565b801561264157612591853384866133e1565b61264d853330866133e1565b5050505050565b606080600080600080600080600061266a61353c565b8c51600290046040519080825280602002602001820160405280156126a957816020015b61269661353c565b81526020019060019003908161268e5790505b509850600097506126d97f424e54546f6b656e000000000000000000000000000000000000000000000000611f86565b9650600095505b60018d5103861015612874578c866001018151811015156126fd57fe5b90602001906020020151945084600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561274757600080fd5b505af115801561275b573d6000803e3d6000fd5b505050506040513d602081101561277157600080fd5b50518d519094508d906002880190811061278757fe5b9060200190602002015192508a801561279e575087155b80156127bb575086600160a060020a031683600160a060020a0316145b915081156127c857600197505b60e06040519081016040528085600160a060020a0316815260200186600160a060020a031681526020018e8881518110151561280057fe5b90602001906020020151600160a060020a0316815260200184600160a060020a031681526020016000600160a060020a0316815260200161284086613203565b15158152831515602090910152896002880481518110151561285e57fe5b60209081029091010152600295909501946126e0565b88600081518110151561288357fe5b6020908102909101810151604080820151600160a060020a0316600090815260069093529091205490915060ff16156128f9578060a00151156128df5773eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee60408201526128f9565b80516128ea90613294565b600160a060020a031660408201525b88518990600019810190811061290b57fe5b60209081029091018101516060810151600160a060020a03166000908152600690925260409091205490915060ff1615612982578060a00151156129685773eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6060820152612982565b805161297390613294565b600160a060020a031660608201525b600095505b8851861015612a5a57888681518110151561299e57fe5b9060200190602002015190508060a0015115612a48578060c00151156129c957306080820152612a43565b60018951038614156129e957600160a060020a038c166080820152612a43565b88866001018151811015156129fa57fe5b9060200190602002015160a0015115612a3c578886600101815181101515612a1e57fe5b6020908102909101015151600160a060020a03166080820152612a43565b3060808201525b612a4f565b3060808201525b600190950194612987565b50969b9a5050505050505050505050565b600080600080612a7961353c565b6000899350600092505b8a51831015612f64578a83815181101515612a9a57fe5b9060200190602002015191508160a0015115612b2b578215801590612ae757508a5130908c906000198601908110612ace57fe5b9060200190602002015160800151600160a060020a0316145b8015612b0e5750604080830151600160a060020a031660009081526006602052205460ff16155b15612b2657612b26826040015183600001518661201e565b612b61565b8160200151600160a060020a03168260400151600160a060020a0316141515612b6157612b6182604001518360000151866130ae565b8160a001511515612c24578151604080840151606085015182517f5e5144eb000000000000000000000000000000000000000000000000000000008152600160a060020a039283166004820152908216602482015260448101889052600160648201529151921691635e5144eb916084808201926020929091908290030181600087803b158015612bf157600080fd5b505af1158015612c05573d6000803e3d6000fd5b505050506040513d6020811015612c1b57600080fd5b50519450612dc1565b604080830151600160a060020a031660009081526006602052205460ff1615612d025781516040808401516060850151608086015183517fe8dc12ff000000000000000000000000000000000000000000000000000000008152600160a060020a03938416600482015291831660248301526044820189905233606483015282166084820152915192169163e8dc12ff91349160a480830192602092919082900301818588803b158015612cd757600080fd5b505af1158015612ceb573d6000803e3d6000fd5b50505050506040513d6020811015612c1b57600080fd5b81516040808401516060850151608086015183517fe8dc12ff000000000000000000000000000000000000000000000000000000008152600160a060020a03938416600482015291831660248301526044820189905233606483015282166084820152915192169163e8dc12ff9160a4808201926020929091908290030181600087803b158015612d9257600080fd5b505af1158015612da6573d6000803e3d6000fd5b505050506040513d6020811015612dbc57600080fd5b505194505b8160c0015115612ed357612de2620f42406112c0878a63ffffffff61210f16565b90508160600151600160a060020a031663a9059cbb89836040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b158015612e4b57600080fd5b505af1158015612e5f573d6000803e3d6000fd5b505050506040513d6020811015612e7557600080fd5b50511515612ecd576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4645455f5452414e534645525f4641494c4544000000000000000000604482015290519081900360640190fd5b80850394505b8160600151600160a060020a03168260400151600160a060020a03168360200151600160a060020a03167f7154b38b5dd31bb3122436a96d4e09aba5b323ae1fd580025fab55074334c0958789336040518084815260200183815260200182600160a060020a0316600160a060020a03168152602001935050505060405180910390a4849350600190920191612a83565b88851015612fbc576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f52455455524e5f544f4f5f4c4f570000000000000000000000000000604482015290519081900360640190fd5b50929998505050505050505050565b612fd361353c565b6000846001865103815181101515612fe757fe5b602090810290910101516080810151909250600160a060020a0316301461300d5761264d565b506060810151600160a060020a03811660009081526006602052604090205460ff16156130a35760a08201511561304057fe5b80600160a060020a031663205c287884866040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050600060405180830381600087803b15801561261257600080fd5b61264d81848661201e565b604080517fdd62ed3e000000000000000000000000000000000000000000000000000000008152306004820152600160a060020a038481166024830152915160009286169163dd62ed3e91604480830192602092919082900301818787803b15801561311957600080fd5b505af115801561312d573d6000803e3d6000fd5b505050506040513d602081101561314357600080fd5b505190508181101561316f5760008111156131645761316484846000613499565b61316f848484613499565b50505050565b61317d613578565b602060405190810160405280600181525090506020818351602085016000875af18015156131aa57600080fd5b50805115156120a6576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b60008061320e613578565b604080517f69735632384f72486967686572282900000000000000000000000000000000008152815190819003600f018120600482526024820190925260208082018051600160e060020a0316600160e060020a0319909416939093178352815191929091849188611388fa92508280156132895750815115155b93505b505050919050565b60008060008084600160a060020a03166371f52bf36040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156132d857600080fd5b505af11580156132ec573d6000803e3d6000fd5b505050506040513d602081101561330257600080fd5b505161ffff169250600091505b828210156133c35784600160a060020a03166319b64015836040518263ffffffff1660e060020a02815260040180828152602001915050602060405180830381600087803b15801561336057600080fd5b505af1158015613374573d6000803e3d6000fd5b505050506040513d602081101561338a57600080fd5b5051600160a060020a03811660009081526006602052604090205490915060ff16156133b85780935061328c565b60019091019061330f565b5073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee949350505050565b604080517f7472616e7366657246726f6d28616464726573732c616464726573732c75696e81527f74323536290000000000000000000000000000000000000000000000000000006020808301919091528251918290036025018220600160a060020a03808816602485015286166044840152606480840186905284518085039091018152608490930190935281018051600160e060020a0316600160e060020a03199093169290921790915261316f908590613175565b604080517f617070726f766528616464726573732c75696e7432353629000000000000000081528151908190036018018120600160a060020a03851660248301526044808301859052835180840390910181526064909201909252602081018051600160e060020a0316600160e060020a0319909316929092179091526120a6908490613175565b60408051808201825290600290829080388339509192915050565b6040805160e081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c081019190915290565b60206040519081016040528060019060208202803883395091929150505600a165627a7a723058207bcbb7d7c66fd585d67263c7bf5ee98af58b78d89aa91f8e637cdbba359a56cb0029 \ No newline at end of file +608060405260016004556175306005553480156200001c57600080fd5b5060405160208062003720833981016040525160008054600160a060020a0319163317905580806200005781640100000000620000d2810204565b5060028054600160a060020a03909216600160a060020a03199283168117909155600380549092161790555073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee60005260066020527fa2e5aefc6e2cbe2917a296f0fd89c5f915c487c803db1d98eccb43f14012d711805460ff191660011790556200014d565b600160a060020a03811615156200014a57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b6135c3806200015d6000396000f3006080604052600436106101665763ffffffff60e060020a600035041663024c7ec7811461016b57806302ef521e146101875780630c8496cc146101ad5780632978c10e1461021d5780632fe8a6ad146102a657806349d10b64146102cf578063569706eb146102e45780635d732ff2146103475780635e35359e1461035c57806361cd756e1461038657806379ba5097146103b75780637b103999146103cc5780637f9c0ecd146103e15780638077ccf71461043857806389f9cc61146104595780638da5cb5b146104cc578063ab6214ce146104e1578063b1e9932b1461054b578063b4a176d3146105b6578063b77d239b146105cb578063c52173de14610635578063c7ba24bc14610694578063c98fefed146106f2578063cb32564e14610750578063d4ee1d90146107c4578063d734fa19146107d9578063e57738e514610850578063f2fde38b146108c0578063f3898a97146108e1578063f3bc7d2a14610932575b600080fd5b34801561017757600080fd5b50610185600435151561094a565b005b34801561019357600080fd5b50610185600160a060020a03600435166024351515610992565b3480156101b957600080fd5b50604080516020600480358082013583810280860185019096528085526102049536959394602494938501929182918501908490808284375094975050933594506109db9350505050565b6040805192835260208301919091528051918290030190f35b34801561022957600080fd5b50604080516020600480358082013583810280860185019096528085526102949536959394602494938501929182918501908490808284375094975050843595505050602083013592600160a060020a036040820135811693506060820135169150608001356109f3565b60408051918252519081900360200190f35b3480156102b257600080fd5b506102bb610a0e565b604080519115158252519081900360200190f35b3480156102db57600080fd5b50610185610a2f565b604080516020600480358082013583810280860185019096528085526102949536959394602494938501929182918501908490808284375094975050843595505050602083013592600160a060020a036040820135169250606001359050610cae565b34801561035357600080fd5b50610294610cc9565b34801561036857600080fd5b50610185600160a060020a0360043581169060243516604435610ccf565b34801561039257600080fd5b5061039b610d08565b60408051600160a060020a039092168252519081900360200190f35b3480156103c357600080fd5b50610185610d17565b3480156103d857600080fd5b5061039b610dea565b3480156103ed57600080fd5b5060408051602060048035808201358381028086018501909652808552610294953695939460249493850192918291850190849080828437509497505093359450610df99350505050565b34801561044457600080fd5b506102bb600160a060020a0360043516611628565b34801561046557600080fd5b50604080516020600480358082013583810280860185019096528085526102949536959394602494938501929182918501908490808284375094975050600160a060020a03853581169650602086013595604081013595506060013516925061163d915050565b3480156104d857600080fd5b5061039b6117d2565b604080516020600480358082013583810280860185019096528085526102949536959394602494938501929182918501908490808284375094975050843595505050602083013592600160a060020a036040820135811693506060820135169150608001356117e1565b34801561055757600080fd5b5060408051602060048035808201358381028086018501909652808552610294953695939460249493850192918291850190849080828437509497505084359550505060208301359260400135600160a060020a031691506118079050565b3480156105c257600080fd5b50610185611821565b604080516020600480358082013583810280860185019096528085526102949536959394602494938501929182918501908490808284375094975050843595505050602083013592600160a060020a0360408201358116935060608201351691506080013561185a565b604080516020600480358082013583810280860185019096528085526102949536959394602494938501929182918501908490808284375094975050843595505050602083013592604081013592506060810135915060800135611a4e565b3480156106a057600080fd5b506040805160206004803580820135838102808601850190965280855261029495369593946024949385019291829185019084908082843750949750508435955050506020909201359150611a619050565b60408051602060048035808201358381028086018501909652808552610294953695939460249493850192918291850190849080828437509497505084359550505060208301359260400135600160a060020a031691506118079050565b6040805160206004803580820135838102808601850190965280855261029495369593946024949385019291829185019084908082843750949750508435955050506020830135926040810135925060608101359150608081013590600160a060020a0360a0820135169060c00135611a7b565b3480156107d057600080fd5b5061039b611c19565b3480156107e557600080fd5b50610800600160a060020a0360043581169060243516611c28565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561083c578181015183820152602001610824565b505050509050019250505060405180910390f35b34801561085c57600080fd5b50604080516020600480358082013583810280860185019096528085526102949536959394602494938501929182918501908490808284375094975050843595505050602083013592600160a060020a036040820135169250606001359050610cae565b3480156108cc57600080fd5b50610185600160a060020a0360043516611d59565b6040805160206004803580820135838102808601850190965280855261029495369593946024949385019291829185019084908082843750949750508435955050506020909201359150611a619050565b34801561093e57600080fd5b50610185600435611df6565b610952611e5e565b60038054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b61099a611e5e565b816109a481611ec2565b826109ae81611f25565b5050600160a060020a03919091166000908152600660205260409020805460ff1916911515919091179055565b6000806109e88484610df9565b946000945092505050565b6000610a0387878787878761185a565b979650505050505050565b60035474010000000000000000000000000000000000000000900460ff1681565b60008054600160a060020a0316331480610a64575060035474010000000000000000000000000000000000000000900460ff16155b1515610aba576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b610ae37f436f6e7472616374526567697374727900000000000000000000000000000000611f86565b600254909150600160a060020a03808316911614801590610b0c5750600160a060020a03811615155b1515610b62576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b604080517fbb34534c0000000000000000000000000000000000000000000000000000000081527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b158015610be657600080fd5b505af1158015610bfa573d6000803e3d6000fd5b505050506040513d6020811015610c1057600080fd5b5051600160a060020a03161415610c71576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a0380841673ffffffffffffffffffffffffffffffffffffffff19928316179092559091169216919091179055565b6000610cbf8686866000878761185a565b9695505050505050565b60055481565b610cd7611e5e565b82610ce181611ec2565b82610ceb81611ec2565b83610cf581611f25565b610d0086868661201e565b505050505050565b600354600160a060020a031681565b600154600160a060020a03163314610d79576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600254600160a060020a031681565b600080600080600080600080600080600080610e347f536f7672796e53776170466f726d756c61000000000000000000000000000000611f86565b94508c9a5060028e51118015610e4f57508d51600290066001145b1515610ea5576040805160e560020a62461bcd02815260206004820152601060248201527f4552525f494e56414c49445f5041544800000000000000000000000000000000604482015290519081900360640190fd5b600293505b8d51841015611616578d60028503815181101515610ec457fe5b9060200190602002015192508d60018503815181101515610ee157fe5b9060200190602002015191508d84815181101515610efb57fe5b90602001906020020151905081600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015610f4557600080fd5b505af1158015610f59573d6000803e3d6000fd5b505050506040513d6020811015610f6f57600080fd5b50519550610f7d86846120ab565b9250610f8986826120ab565b905081600160a060020a031681600160a060020a031614156112ea576003841080610fe057508d60038503815181101515610fc057fe5b90602001906020020151600160a060020a031682600160a060020a031614155b156110525781600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561102357600080fd5b505af1158015611037573d6000803e3d6000fd5b505050506040513d602081101561104d57600080fd5b505198505b85600160a060020a031663d8959512846040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b1580156110ad57600080fd5b505af11580156110c1573d6000803e3d6000fd5b505050506040513d60208110156110d757600080fd5b5051604080517f0e53aae9000000000000000000000000000000000000000000000000000000008152600160a060020a0386811660048301529151929a5090881691630e53aae99160248082019260a0929091908290030181600087803b15801561114157600080fd5b505af1158015611155573d6000803e3d6000fd5b505050506040513d60a081101561116b57600080fd5b50602090810151604080517ff3250fe2000000000000000000000000000000000000000000000000000000008152600481018d9052602481018c905263ffffffff83166044820152606481018f90529051919950600160a060020a0388169263f3250fe2926084808401938290030181600087803b1580156111ec57600080fd5b505af1158015611200573d6000803e3d6000fd5b505050506040513d602081101561121657600080fd5b5051604080517f579cd3ca0000000000000000000000000000000000000000000000000000000081529051919c506112cc91620f4240916112c091600160a060020a038b169163579cd3ca9160048083019260209291908290030181600087803b15801561128357600080fd5b505af1158015611297573d6000803e3d6000fd5b505050506040513d60208110156112ad57600080fd5b50518e9063ffffffff9081169061210f16565b9063ffffffff61218f16565b9a8b90039a99506112e3898c63ffffffff6121fd16565b985061160b565b81600160a060020a031683600160a060020a031614156115f957600384108061133f57508d6003850381518110151561131f57fe5b90602001906020020151600160a060020a031682600160a060020a031614155b156113b15781600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561138257600080fd5b505af1158015611396573d6000803e3d6000fd5b505050506040513d60208110156113ac57600080fd5b505198505b85600160a060020a031663d8959512826040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b15801561140c57600080fd5b505af1158015611420573d6000803e3d6000fd5b505050506040513d602081101561143657600080fd5b5051604080517f0e53aae9000000000000000000000000000000000000000000000000000000008152600160a060020a0384811660048301529151929a5090881691630e53aae99160248082019260a0929091908290030181600087803b1580156114a057600080fd5b505af11580156114b4573d6000803e3d6000fd5b505050506040513d60a08110156114ca57600080fd5b50602090810151604080517f76cf0b56000000000000000000000000000000000000000000000000000000008152600481018d9052602481018c905263ffffffff83166044820152606481018f90529051919950600160a060020a038816926376cf0b56926084808401938290030181600087803b15801561154b57600080fd5b505af115801561155f573d6000803e3d6000fd5b505050506040513d602081101561157557600080fd5b5051604080517f579cd3ca0000000000000000000000000000000000000000000000000000000081529051919c506115e291620f4240916112c091600160a060020a038b169163579cd3ca9160048083019260209291908290030181600087803b15801561128357600080fd5b9a8b90039a99506112e3898c63ffffffff61225a16565b6116058684838e6122ba565b909b5099505b600284019350610eaa565b50989c9b505050505050505050505050565b60066020526000908152604090205460ff1681565b60008085600160a060020a031663fc0c546a6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561167e57600080fd5b505af1158015611692573d6000803e3d6000fd5b505050506040513d60208110156116a857600080fd5b50518751600160a060020a0390911690889060009081106116c557fe5b60209081029091010151600160a060020a03161461172d576040805160e560020a62461bcd02815260206004820152601860248201527f4552525f494e56414c49445f534f555243455f544f4b454e0000000000000000604482015290519081900360640190fd5b604080517faafd6b76000000000000000000000000000000000000000000000000000000008152600481018790523360248201529051600160a060020a0388169163aafd6b769160448083019260209291908290030181600087803b15801561179557600080fd5b505af11580156117a9573d6000803e3d6000fd5b505050506040513d60208110156117bf57600080fd5b50519050610a038782868660008061185a565b600054600160a060020a031681565b6000846117ed8161239e565b6117fb88888888888861185a565b98975050505050505050565b60006118188585858560008061185a565b95945050505050565b611829611e5e565b6003546002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03909216919091179055565b60008060006060600061186b6123f6565b60026004558861187a8161239e565b60028c5111801561189057508b51600290066001145b15156118e6576040805160e560020a62461bcd02815260206004820152601060248201527f4552525f494e56414c49445f5041544800000000000000000000000000000000604482015290519081900360640190fd5b6119218c60008151811015156118f857fe5b906020019060200201518d600181518110151561191157fe5b906020019060200201518d612450565b60009450600160a060020a038816151561199057861561198b576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f414646494c494154455f46454500000000000000604482015290519081900360640190fd5b6119fd565b8660001080156119a257506005548711155b15156119f8576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f414646494c494154455f46454500000000000000604482015290519081900360640190fd5b600194505b339350600160a060020a03891615611a13578893505b611a1e8c8587612654565b9250611a2d838c8c8b8b612a6b565b9150611a3a838386612fcb565b5060016004559a9950505050505050505050565b6000610a03878787878787600080611a7b565b6000611a73848484600080600061185a565b949350505050565b60008060008089611a8b8161239e565b8c518d906000198101908110611a9d57fe5b906020019060200201519350611ad27f536f7672796e5377617058000000000000000000000000000000000000000000611f86565b9250611afd7f424e54546f6b656e000000000000000000000000000000000000000000000000611f86565b600160a060020a03858116911614611b5f576040805160e560020a62461bcd02815260206004820152601860248201527f4552525f494e56414c49445f5441524745545f544f4b454e0000000000000000604482015290519081900360640190fd5b611b6d8d8d8d308b8b61185a565b9150611b7a8484846130ae565b604080517f427c0374000000000000000000000000000000000000000000000000000000008152600481018c9052602481018b905260448101849052606481018a90529051600160a060020a0385169163427c037491608480830192600092919082900301818387803b158015611bf057600080fd5b505af1158015611c04573d6000803e3d6000fd5b50939f9e505050505050505050505050505050565b600154600160a060020a031681565b60606000611c557f436f6e76657273696f6e5061746846696e646572000000000000000000000000611f86565b604080517fa1c421cd000000000000000000000000000000000000000000000000000000008152600160a060020a038781166004830152868116602483015291519293509083169163a1c421cd9160448082019260009290919082900301818387803b158015611cc457600080fd5b505af1158015611cd8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015611d0157600080fd5b810190808051640100000000811115611d1957600080fd5b82016020810184811115611d2c57600080fd5b8151856020820283011164010000000082111715611d4957600080fd5b50909550505050505b5092915050565b611d61611e5e565b600054600160a060020a0382811691161415611dc7576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b611dfe611e5e565b620f4240811115611e59576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f414646494c494154455f46454500000000000000604482015290519081900360640190fd5b600555565b600054600160a060020a03163314611ec0576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b600160a060020a0381161515611f22576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b600160a060020a038116301415611f22576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b600254604080517fbb34534c000000000000000000000000000000000000000000000000000000008152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b158015611fec57600080fd5b505af1158015612000573d6000803e3d6000fd5b505050506040513d602081101561201657600080fd5b505192915050565b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a03851660248301526044808301859052835180840390910181526064909201909252602081018051600160e060020a0316600160e060020a0319909316929092179091526120a6908490613175565b505050565b600160a060020a03811660009081526006602052604081205460ff1615156120d4575080612109565b6120dd83613203565b156120fd575073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee612109565b61210683613294565b90505b92915050565b6000808315156121225760009150611d52565b5082820282848281151561213257fe5b0414612188576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b9392505050565b6000808083116121e9576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f4449564944455f42595f5a45524f0000000000000000000000000000604482015290519081900360640190fd5b82848115156121f457fe5b04949350505050565b600082820183811015612188576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b6000818310156122b4576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b6000806122c5613521565b604080517f67657452657475726e28616464726573732c616464726573732c75696e74323581527f36290000000000000000000000000000000000000000000000000000000000006020808301919091528251918290036022018220600160a060020a03808b16602485015289166044840152606480840189905284518085039091018152608490930184529082018051600160e060020a0316600160e060020a0319909216919091178152815191929184918b5afa80151561238757600080fd5b505080516020909101519097909650945050505050565b60008111611f22576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5a45524f5f56414c5545000000000000000000000000000000000000604482015290519081900360640190fd5b600454600114611ec0576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5245454e5452414e4359000000000000000000000000000000000000604482015290519081900360640190fd5b60008083600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561249157600080fd5b505af11580156124a5573d6000803e3d6000fd5b505050506040513d60208110156124bb57600080fd5b505191506124c882613203565b905060003411156125965734831461252a576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b8015156125915761253a82613294565b600160a060020a031663d0e30db0346040518263ffffffff1660e060020a0281526004016000604051808303818588803b15801561257757600080fd5b505af115801561258b573d6000803e3d6000fd5b50505050505b61264d565b600160a060020a03851660009081526006602052604090205460ff161561262f576125c3853330866133e1565b80156125915784600160a060020a0316632e1a7d4d846040518263ffffffff1660e060020a02815260040180828152602001915050600060405180830381600087803b15801561261257600080fd5b505af1158015612626573d6000803e3d6000fd5b5050505061264d565b801561264157612591853384866133e1565b61264d853330866133e1565b5050505050565b606080600080600080600080600061266a61353c565b8c51600290046040519080825280602002602001820160405280156126a957816020015b61269661353c565b81526020019060019003908161268e5790505b509850600097506126d97f424e54546f6b656e000000000000000000000000000000000000000000000000611f86565b9650600095505b60018d5103861015612874578c866001018151811015156126fd57fe5b90602001906020020151945084600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561274757600080fd5b505af115801561275b573d6000803e3d6000fd5b505050506040513d602081101561277157600080fd5b50518d519094508d906002880190811061278757fe5b9060200190602002015192508a801561279e575087155b80156127bb575086600160a060020a031683600160a060020a0316145b915081156127c857600197505b60e06040519081016040528085600160a060020a0316815260200186600160a060020a031681526020018e8881518110151561280057fe5b90602001906020020151600160a060020a0316815260200184600160a060020a031681526020016000600160a060020a0316815260200161284086613203565b15158152831515602090910152896002880481518110151561285e57fe5b60209081029091010152600295909501946126e0565b88600081518110151561288357fe5b6020908102909101810151604080820151600160a060020a0316600090815260069093529091205490915060ff16156128f9578060a00151156128df5773eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee60408201526128f9565b80516128ea90613294565b600160a060020a031660408201525b88518990600019810190811061290b57fe5b60209081029091018101516060810151600160a060020a03166000908152600690925260409091205490915060ff1615612982578060a00151156129685773eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6060820152612982565b805161297390613294565b600160a060020a031660608201525b600095505b8851861015612a5a57888681518110151561299e57fe5b9060200190602002015190508060a0015115612a48578060c00151156129c957306080820152612a43565b60018951038614156129e957600160a060020a038c166080820152612a43565b88866001018151811015156129fa57fe5b9060200190602002015160a0015115612a3c578886600101815181101515612a1e57fe5b6020908102909101015151600160a060020a03166080820152612a43565b3060808201525b612a4f565b3060808201525b600190950194612987565b50969b9a5050505050505050505050565b600080600080612a7961353c565b6000899350600092505b8a51831015612f64578a83815181101515612a9a57fe5b9060200190602002015191508160a0015115612b2b578215801590612ae757508a5130908c906000198601908110612ace57fe5b9060200190602002015160800151600160a060020a0316145b8015612b0e5750604080830151600160a060020a031660009081526006602052205460ff16155b15612b2657612b26826040015183600001518661201e565b612b61565b8160200151600160a060020a03168260400151600160a060020a0316141515612b6157612b6182604001518360000151866130ae565b8160a001511515612c24578151604080840151606085015182517f5e5144eb000000000000000000000000000000000000000000000000000000008152600160a060020a039283166004820152908216602482015260448101889052600160648201529151921691635e5144eb916084808201926020929091908290030181600087803b158015612bf157600080fd5b505af1158015612c05573d6000803e3d6000fd5b505050506040513d6020811015612c1b57600080fd5b50519450612dc1565b604080830151600160a060020a031660009081526006602052205460ff1615612d025781516040808401516060850151608086015183517fe8dc12ff000000000000000000000000000000000000000000000000000000008152600160a060020a03938416600482015291831660248301526044820189905233606483015282166084820152915192169163e8dc12ff91349160a480830192602092919082900301818588803b158015612cd757600080fd5b505af1158015612ceb573d6000803e3d6000fd5b50505050506040513d6020811015612c1b57600080fd5b81516040808401516060850151608086015183517fe8dc12ff000000000000000000000000000000000000000000000000000000008152600160a060020a03938416600482015291831660248301526044820189905233606483015282166084820152915192169163e8dc12ff9160a4808201926020929091908290030181600087803b158015612d9257600080fd5b505af1158015612da6573d6000803e3d6000fd5b505050506040513d6020811015612dbc57600080fd5b505194505b8160c0015115612ed357612de2620f42406112c0878a63ffffffff61210f16565b90508160600151600160a060020a031663a9059cbb89836040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b158015612e4b57600080fd5b505af1158015612e5f573d6000803e3d6000fd5b505050506040513d6020811015612e7557600080fd5b50511515612ecd576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4645455f5452414e534645525f4641494c4544000000000000000000604482015290519081900360640190fd5b80850394505b8160600151600160a060020a03168260400151600160a060020a03168360200151600160a060020a03167f7154b38b5dd31bb3122436a96d4e09aba5b323ae1fd580025fab55074334c0958789336040518084815260200183815260200182600160a060020a0316600160a060020a03168152602001935050505060405180910390a4849350600190920191612a83565b88851015612fbc576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f52455455524e5f544f4f5f4c4f570000000000000000000000000000604482015290519081900360640190fd5b50929998505050505050505050565b612fd361353c565b6000846001865103815181101515612fe757fe5b602090810290910101516080810151909250600160a060020a0316301461300d5761264d565b506060810151600160a060020a03811660009081526006602052604090205460ff16156130a35760a08201511561304057fe5b80600160a060020a031663205c287884866040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050600060405180830381600087803b15801561261257600080fd5b61264d81848661201e565b604080517fdd62ed3e000000000000000000000000000000000000000000000000000000008152306004820152600160a060020a038481166024830152915160009286169163dd62ed3e91604480830192602092919082900301818787803b15801561311957600080fd5b505af115801561312d573d6000803e3d6000fd5b505050506040513d602081101561314357600080fd5b505190508181101561316f5760008111156131645761316484846000613499565b61316f848484613499565b50505050565b61317d613578565b602060405190810160405280600181525090506020818351602085016000875af18015156131aa57600080fd5b50805115156120a6576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b60008061320e613578565b604080517f69735632384f72486967686572282900000000000000000000000000000000008152815190819003600f018120600482526024820190925260208082018051600160e060020a0316600160e060020a0319909416939093178352815191929091849188611388fa92508280156132895750815115155b93505b505050919050565b60008060008084600160a060020a03166371f52bf36040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156132d857600080fd5b505af11580156132ec573d6000803e3d6000fd5b505050506040513d602081101561330257600080fd5b505161ffff169250600091505b828210156133c35784600160a060020a03166319b64015836040518263ffffffff1660e060020a02815260040180828152602001915050602060405180830381600087803b15801561336057600080fd5b505af1158015613374573d6000803e3d6000fd5b505050506040513d602081101561338a57600080fd5b5051600160a060020a03811660009081526006602052604090205490915060ff16156133b85780935061328c565b60019091019061330f565b5073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee949350505050565b604080517f7472616e7366657246726f6d28616464726573732c616464726573732c75696e81527f74323536290000000000000000000000000000000000000000000000000000006020808301919091528251918290036025018220600160a060020a03808816602485015286166044840152606480840186905284518085039091018152608490930190935281018051600160e060020a0316600160e060020a03199093169290921790915261316f908590613175565b604080517f617070726f766528616464726573732c75696e7432353629000000000000000081528151908190036018018120600160a060020a03851660248301526044808301859052835180840390910181526064909201909252602081018051600160e060020a0316600160e060020a0319909316929092179091526120a6908490613175565b60408051808201825290600290829080388339509192915050565b6040805160e081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c081019190915290565b60206040519081016040528060019060208202803883395091929150505600a165627a7a723058205a826b5f113fcfbfa441256ef29bffee3a3723366819526c51337617dc912a400029 \ No newline at end of file diff --git a/solidity/build/SovrynSwapNetworkMockup.abi b/solidity/build/SovrynSwapNetworkMockup.abi new file mode 100644 index 0000000..c7999fe --- /dev/null +++ b/solidity/build/SovrynSwapNetworkMockup.abi @@ -0,0 +1 @@ +[{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_register","type":"bool"}],"name":"registerEtherToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"}],"name":"getReturnByPath","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_beneficiary","type":"address"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"claimAndConvertFor2","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"convert2","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"maxAffiliateFee","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"etherTokens","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_sovrynSwapX","type":"address"},{"name":"_conversionId","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_beneficiary","type":"address"}],"name":"completeXConversion","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_beneficiary","type":"address"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"convertFor2","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_beneficiary","type":"address"}],"name":"claimAndConvertFor","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_beneficiary","type":"address"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"convertByPath","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_targetBlockchain","type":"bytes32"},{"name":"_targetAccount","type":"bytes32"},{"name":"_conversionId","type":"uint256"}],"name":"xConvert","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"}],"name":"claimAndConvert","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_beneficiary","type":"address"}],"name":"convertFor","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_targetBlockchain","type":"bytes32"},{"name":"_targetAccount","type":"bytes32"},{"name":"_conversionId","type":"uint256"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"xConvert2","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"},{"name":"_affiliateAccount","type":"address"},{"name":"_affiliateFee","type":"uint256"}],"name":"claimAndConvert2","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_maxAffiliateFee","type":"uint256"}],"name":"setMaxAffiliateFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"mockConversionValue","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_registry","type":"address"},{"name":"_mockConversionValue","type":"uint256"},{"name":"_wrbtcToken","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_smartToken","type":"address"},{"indexed":true,"name":"_fromToken","type":"address"},{"indexed":true,"name":"_toToken","type":"address"},{"indexed":false,"name":"_fromAmount","type":"uint256"},{"indexed":false,"name":"_toAmount","type":"uint256"},{"indexed":false,"name":"_trader","type":"address"}],"name":"Conversion","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":true,"inputs":[{"name":"_sourceToken","type":"address"},{"name":"_targetToken","type":"address"}],"name":"conversionPath","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"}],"name":"rateByPath","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_path","type":"address[]"},{"name":"_amount","type":"uint256"},{"name":"_minReturn","type":"uint256"}],"name":"convert","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_conversionValue","type":"uint256"}],"name":"setMockConversionValue","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/SovrynSwapNetworkMockup.bin b/solidity/build/SovrynSwapNetworkMockup.bin new file mode 100644 index 0000000..56927b0 --- /dev/null +++ b/solidity/build/SovrynSwapNetworkMockup.bin @@ -0,0 +1 @@ +608060405260016004556175306005553480156200001c57600080fd5b5060405160608062002cdc83398101604090815281516020830151919092015160008054600160a060020a031916331790558280806200006581640100000000620000fb810204565b5060028054600160a060020a0319908116600160a060020a0393841690811790925560038054821690921790915573eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee60005260066020527fa2e5aefc6e2cbe2917a296f0fd89c5f915c487c803db1d98eccb43f14012d711805460ff191660011790556007949094556008805490941692169190911790915550620001769050565b600160a060020a03811615156200017357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b612b5680620001866000396000f30060806040526004361061017c5763ffffffff60e060020a600035041663024c7ec7811461018157806302ef521e1461019d5780630c8496cc146101c35780632978c10e146102335780632fe8a6ad146102bc57806349d10b64146102e5578063569706eb146102fa5780635d732ff21461035d5780635e35359e1461037257806361cd756e1461039c57806379ba5097146103cd5780637b103999146103e25780637f9c0ecd146103f75780638077ccf71461044e57806389f9cc611461046f5780638da5cb5b146104e2578063a3c2853c146104f7578063ab6214ce1461050f578063b1e9932b14610579578063b4a176d3146105e4578063b77d239b146105f9578063c52173de14610663578063c7ba24bc146106c2578063c98fefed14610720578063cb32564e1461077e578063d4ee1d90146107f2578063d734fa1914610807578063e57738e51461087e578063f2fde38b146108ee578063f3898a971461090f578063f3bc7d2a14610960578063f9c2cd4714610978575b600080fd5b34801561018d57600080fd5b5061019b600435151561098d565b005b3480156101a957600080fd5b5061019b600160a060020a036004351660243515156109d5565b3480156101cf57600080fd5b506040805160206004803580820135838102808601850190965280855261021a953695939460249493850192918291850190849080828437509497505093359450610a1e9350505050565b6040805192835260208301919091528051918290030190f35b34801561023f57600080fd5b50604080516020600480358082013583810280860185019096528085526102aa9536959394602494938501929182918501908490808284375094975050843595505050602083013592600160a060020a03604082013581169350606082013516915060800135610a36565b60408051918252519081900360200190f35b3480156102c857600080fd5b506102d1610a51565b604080519115158252519081900360200190f35b3480156102f157600080fd5b5061019b610a72565b604080516020600480358082013583810280860185019096528085526102aa9536959394602494938501929182918501908490808284375094975050843595505050602083013592600160a060020a036040820135169250606001359050610cf1565b34801561036957600080fd5b506102aa610d0c565b34801561037e57600080fd5b5061019b600160a060020a0360043581169060243516604435610d12565b3480156103a857600080fd5b506103b1610d4b565b60408051600160a060020a039092168252519081900360200190f35b3480156103d957600080fd5b5061019b610d5a565b3480156103ee57600080fd5b506103b1610e2d565b34801561040357600080fd5b50604080516020600480358082013583810280860185019096528085526102aa953695939460249493850192918291850190849080828437509497505093359450610e3c9350505050565b34801561045a57600080fd5b506102d1600160a060020a0360043516610e44565b34801561047b57600080fd5b50604080516020600480358082013583810280860185019096528085526102aa9536959394602494938501929182918501908490808284375094975050600160a060020a038535811696506020860135956040810135955060600135169250610e59915050565b3480156104ee57600080fd5b506103b1610fee565b34801561050357600080fd5b5061019b600435610ffd565b604080516020600480358082013583810280860185019096528085526102aa9536959394602494938501929182918501908490808284375094975050843595505050602083013592600160a060020a03604082013581169350606082013516915060800135611002565b34801561058557600080fd5b50604080516020600480358082013583810280860185019096528085526102aa953695939460249493850192918291850190849080828437509497505084359550505060208301359260400135600160a060020a031691506110289050565b3480156105f057600080fd5b5061019b611042565b604080516020600480358082013583810280860185019096528085526102aa9536959394602494938501929182918501908490808284375094975050843595505050602083013592600160a060020a0360408201358116935060608201351691506080013561107b565b604080516020600480358082013583810280860185019096528085526102aa953695939460249493850192918291850190849080828437509497505084359550505060208301359260408101359250606081013591506080013561126f565b3480156106ce57600080fd5b50604080516020600480358082013583810280860185019096528085526102aa953695939460249493850192918291850190849080828437509497505084359550505060209092013591506112829050565b604080516020600480358082013583810280860185019096528085526102aa953695939460249493850192918291850190849080828437509497505084359550505060208301359260400135600160a060020a031691506110289050565b604080516020600480358082013583810280860185019096528085526102aa95369593946024949385019291829185019084908082843750949750508435955050506020830135926040810135925060608101359150608081013590600160a060020a0360a0820135169060c0013561129c565b3480156107fe57600080fd5b506103b161143a565b34801561081357600080fd5b5061082e600160a060020a0360043581169060243516611449565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561086a578181015183820152602001610852565b505050509050019250505060405180910390f35b34801561088a57600080fd5b50604080516020600480358082013583810280860185019096528085526102aa9536959394602494938501929182918501908490808284375094975050843595505050602083013592600160a060020a036040820135169250606001359050610cf1565b3480156108fa57600080fd5b5061019b600160a060020a0360043516611454565b604080516020600480358082013583810280860185019096528085526102aa953695939460249493850192918291850190849080828437509497505084359550505060209092013591506114f19050565b34801561096c57600080fd5b5061019b600435611597565b34801561098457600080fd5b506102aa6115ff565b610995611605565b60038054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b6109dd611605565b816109e781611669565b826109f1816116cc565b5050600160a060020a03919091166000908152600660205260409020805460ff1916911515919091179055565b600080610a2b8484610e3c565b946000945092505050565b6000610a4687878787878761107b565b979650505050505050565b60035474010000000000000000000000000000000000000000900460ff1681565b60008054600160a060020a0316331480610aa7575060035474010000000000000000000000000000000000000000900460ff16155b1515610afd576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b610b267f436f6e747261637452656769737472790000000000000000000000000000000061172d565b600254909150600160a060020a03808316911614801590610b4f5750600160a060020a03811615155b1515610ba5576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b604080517fbb34534c0000000000000000000000000000000000000000000000000000000081527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b158015610c2957600080fd5b505af1158015610c3d573d6000803e3d6000fd5b505050506040513d6020811015610c5357600080fd5b5051600160a060020a03161415610cb4576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a0380841673ffffffffffffffffffffffffffffffffffffffff19928316179092559091169216919091179055565b6000610d028686866000878761107b565b9695505050505050565b60055481565b610d1a611605565b82610d2481611669565b82610d2e81611669565b83610d38816116cc565b610d438686866117c5565b505050505050565b600354600160a060020a031681565b600154600160a060020a03163314610dbc576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600254600160a060020a031681565b505060075490565b60066020526000908152604090205460ff1681565b60008085600160a060020a031663fc0c546a6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015610e9a57600080fd5b505af1158015610eae573d6000803e3d6000fd5b505050506040513d6020811015610ec457600080fd5b50518751600160a060020a039091169088906000908110610ee157fe5b60209081029091010151600160a060020a031614610f49576040805160e560020a62461bcd02815260206004820152601860248201527f4552525f494e56414c49445f534f555243455f544f4b454e0000000000000000604482015290519081900360640190fd5b604080517faafd6b76000000000000000000000000000000000000000000000000000000008152600481018790523360248201529051600160a060020a0388169163aafd6b769160448083019260209291908290030181600087803b158015610fb157600080fd5b505af1158015610fc5573d6000803e3d6000fd5b505050506040513d6020811015610fdb57600080fd5b50519050610a468782868660008061107b565b600054600160a060020a031681565b600755565b60008461100e81611852565b61101c88888888888861107b565b98975050505050505050565b60006110398585858560008061107b565b95945050505050565b61104a611605565b6003546002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03909216919091179055565b60008060006060600061108c6118aa565b60026004558861109b81611852565b60028c511180156110b157508b51600290066001145b1515611107576040805160e560020a62461bcd02815260206004820152601060248201527f4552525f494e56414c49445f5041544800000000000000000000000000000000604482015290519081900360640190fd5b6111428c600081518110151561111957fe5b906020019060200201518d600181518110151561113257fe5b906020019060200201518d611904565b60009450600160a060020a03881615156111b15786156111ac576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f414646494c494154455f46454500000000000000604482015290519081900360640190fd5b61121e565b8660001080156111c357506005548711155b1515611219576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f414646494c494154455f46454500000000000000604482015290519081900360640190fd5b600194505b339350600160a060020a03891615611234578893505b61123f8c8587611b08565b925061124e838c8c8b8b611f1f565b915061125b83838661248b565b5060016004559a9950505050505050505050565b6000610a4687878787878760008061129c565b6000611294848484600080600061107b565b949350505050565b600080600080896112ac81611852565b8c518d9060001981019081106112be57fe5b9060200190602002015193506112f37f536f7672796e537761705800000000000000000000000000000000000000000061172d565b925061131e7f424e54546f6b656e00000000000000000000000000000000000000000000000061172d565b600160a060020a03858116911614611380576040805160e560020a62461bcd02815260206004820152601860248201527f4552525f494e56414c49445f5441524745545f544f4b454e0000000000000000604482015290519081900360640190fd5b61138e8d8d8d308b8b61107b565b915061139b84848461256e565b604080517f427c0374000000000000000000000000000000000000000000000000000000008152600481018c9052602481018b905260448101849052606481018a90529051600160a060020a0385169163427c037491608480830192600092919082900301818387803b15801561141157600080fd5b505af1158015611425573d6000803e3d6000fd5b50939f9e505050505050505050505050505050565b600154600160a060020a031681565b6060805b5092915050565b61145c611605565b600054600160a060020a03828116911614156114c2576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600854600754604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152336004820152602481019290925251600092600160a060020a03169163a9059cbb91604480830192602092919082900301818787803b15801561156057600080fd5b505af1158015611574573d6000803e3d6000fd5b505050506040513d602081101561158a57600080fd5b5050600754949350505050565b61159f611605565b620f42408111156115fa576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f494e56414c49445f414646494c494154455f46454500000000000000604482015290519081900360640190fd5b600555565b60075481565b600054600160a060020a03163314611667576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b600160a060020a03811615156116c9576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b600160a060020a0381163014156116c9576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b600254604080517fbb34534c000000000000000000000000000000000000000000000000000000008152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b15801561179357600080fd5b505af11580156117a7573d6000803e3d6000fd5b505050506040513d60208110156117bd57600080fd5b505192915050565b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a03851660248301526044808301859052835180840390910181526064909201909252602081018051600160e060020a0316600160e060020a03199093169290921790915261184d908490612635565b505050565b600081116116c9576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5a45524f5f56414c5545000000000000000000000000000000000000604482015290519081900360640190fd5b600454600114611667576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5245454e5452414e4359000000000000000000000000000000000000604482015290519081900360640190fd5b60008083600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561194557600080fd5b505af1158015611959573d6000803e3d6000fd5b505050506040513d602081101561196f57600080fd5b5051915061197c826126c3565b90506000341115611a4a573483146119de576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4554485f414d4f554e545f4d49534d41544348000000000000000000604482015290519081900360640190fd5b801515611a45576119ee82612754565b600160a060020a031663d0e30db0346040518263ffffffff1660e060020a0281526004016000604051808303818588803b158015611a2b57600080fd5b505af1158015611a3f573d6000803e3d6000fd5b50505050505b611b01565b600160a060020a03851660009081526006602052604090205460ff1615611ae357611a77853330866128a1565b8015611a455784600160a060020a0316632e1a7d4d846040518263ffffffff1660e060020a02815260040180828152602001915050600060405180830381600087803b158015611ac657600080fd5b505af1158015611ada573d6000803e3d6000fd5b50505050611b01565b8015611af557611a45853384866128a1565b611b01853330866128a1565b5050505050565b6060806000806000806000806000611b1e612acf565b8c5160029004604051908082528060200260200182016040528015611b5d57816020015b611b4a612acf565b815260200190600190039081611b425790505b50985060009750611b8d7f424e54546f6b656e00000000000000000000000000000000000000000000000061172d565b9650600095505b60018d5103861015611d28578c86600101815181101515611bb157fe5b90602001906020020151945084600160a060020a0316638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015611bfb57600080fd5b505af1158015611c0f573d6000803e3d6000fd5b505050506040513d6020811015611c2557600080fd5b50518d519094508d9060028801908110611c3b57fe5b9060200190602002015192508a8015611c52575087155b8015611c6f575086600160a060020a031683600160a060020a0316145b91508115611c7c57600197505b60e06040519081016040528085600160a060020a0316815260200186600160a060020a031681526020018e88815181101515611cb457fe5b90602001906020020151600160a060020a0316815260200184600160a060020a031681526020016000600160a060020a03168152602001611cf4866126c3565b151581528315156020909101528960028804815181101515611d1257fe5b6020908102909101015260029590950194611b94565b886000815181101515611d3757fe5b6020908102909101810151604080820151600160a060020a0316600090815260069093529091205490915060ff1615611dad578060a0015115611d935773eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6040820152611dad565b8051611d9e90612754565b600160a060020a031660408201525b885189906000198101908110611dbf57fe5b60209081029091018101516060810151600160a060020a03166000908152600690925260409091205490915060ff1615611e36578060a0015115611e1c5773eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6060820152611e36565b8051611e2790612754565b600160a060020a031660608201525b600095505b8851861015611f0e578886815181101515611e5257fe5b9060200190602002015190508060a0015115611efc578060c0015115611e7d57306080820152611ef7565b6001895103861415611e9d57600160a060020a038c166080820152611ef7565b8886600101815181101515611eae57fe5b9060200190602002015160a0015115611ef0578886600101815181101515611ed257fe5b6020908102909101015151600160a060020a03166080820152611ef7565b3060808201525b611f03565b3060808201525b600190950194611e3b565b50969b9a5050505050505050505050565b600080600080611f2d612acf565b6000899350600092505b8a51831015612424578a83815181101515611f4e57fe5b9060200190602002015191508160a0015115611fdf578215801590611f9b57508a5130908c906000198601908110611f8257fe5b9060200190602002015160800151600160a060020a0316145b8015611fc25750604080830151600160a060020a031660009081526006602052205460ff16155b15611fda57611fda82604001518360000151866117c5565b612015565b8160200151600160a060020a03168260400151600160a060020a031614151561201557612015826040015183600001518661256e565b8160a0015115156120d8578151604080840151606085015182517f5e5144eb000000000000000000000000000000000000000000000000000000008152600160a060020a039283166004820152908216602482015260448101889052600160648201529151921691635e5144eb916084808201926020929091908290030181600087803b1580156120a557600080fd5b505af11580156120b9573d6000803e3d6000fd5b505050506040513d60208110156120cf57600080fd5b50519450612275565b604080830151600160a060020a031660009081526006602052205460ff16156121b65781516040808401516060850151608086015183517fe8dc12ff000000000000000000000000000000000000000000000000000000008152600160a060020a03938416600482015291831660248301526044820189905233606483015282166084820152915192169163e8dc12ff91349160a480830192602092919082900301818588803b15801561218b57600080fd5b505af115801561219f573d6000803e3d6000fd5b50505050506040513d60208110156120cf57600080fd5b81516040808401516060850151608086015183517fe8dc12ff000000000000000000000000000000000000000000000000000000008152600160a060020a03938416600482015291831660248301526044820189905233606483015282166084820152915192169163e8dc12ff9160a4808201926020929091908290030181600087803b15801561224657600080fd5b505af115801561225a573d6000803e3d6000fd5b505050506040513d602081101561227057600080fd5b505194505b8160c0015115612393576122a2620f4240612296878a63ffffffff61295916565b9063ffffffff6129d916565b90508160600151600160a060020a031663a9059cbb89836040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b15801561230b57600080fd5b505af115801561231f573d6000803e3d6000fd5b505050506040513d602081101561233557600080fd5b5051151561238d576040805160e560020a62461bcd02815260206004820152601760248201527f4552525f4645455f5452414e534645525f4641494c4544000000000000000000604482015290519081900360640190fd5b80850394505b8160600151600160a060020a03168260400151600160a060020a03168360200151600160a060020a03167f7154b38b5dd31bb3122436a96d4e09aba5b323ae1fd580025fab55074334c0958789336040518084815260200183815260200182600160a060020a0316600160a060020a03168152602001935050505060405180910390a4849350600190920191611f37565b8885101561247c576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f52455455524e5f544f4f5f4c4f570000000000000000000000000000604482015290519081900360640190fd5b50929998505050505050505050565b612493612acf565b60008460018651038151811015156124a757fe5b602090810290910101516080810151909250600160a060020a031630146124cd57611b01565b506060810151600160a060020a03811660009081526006602052604090205460ff16156125635760a08201511561250057fe5b80600160a060020a031663205c287884866040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050600060405180830381600087803b158015611ac657600080fd5b611b018184866117c5565b604080517fdd62ed3e000000000000000000000000000000000000000000000000000000008152306004820152600160a060020a038481166024830152915160009286169163dd62ed3e91604480830192602092919082900301818787803b1580156125d957600080fd5b505af11580156125ed573d6000803e3d6000fd5b505050506040513d602081101561260357600080fd5b505190508181101561262f5760008111156126245761262484846000612a47565b61262f848484612a47565b50505050565b61263d612b0b565b602060405190810160405280600181525090506020818351602085016000875af180151561266a57600080fd5b508051151561184d576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b6000806126ce612b0b565b604080517f69735632384f72486967686572282900000000000000000000000000000000008152815190819003600f018120600482526024820190925260208082018051600160e060020a0316600160e060020a0319909416939093178352815191929091849188611388fa92508280156127495750815115155b93505b505050919050565b60008060008084600160a060020a03166371f52bf36040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561279857600080fd5b505af11580156127ac573d6000803e3d6000fd5b505050506040513d60208110156127c257600080fd5b505161ffff169250600091505b828210156128835784600160a060020a03166319b64015836040518263ffffffff1660e060020a02815260040180828152602001915050602060405180830381600087803b15801561282057600080fd5b505af1158015612834573d6000803e3d6000fd5b505050506040513d602081101561284a57600080fd5b5051600160a060020a03811660009081526006602052604090205490915060ff16156128785780935061274c565b6001909101906127cf565b5073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee949350505050565b604080517f7472616e7366657246726f6d28616464726573732c616464726573732c75696e81527f74323536290000000000000000000000000000000000000000000000000000006020808301919091528251918290036025018220600160a060020a03808816602485015286166044840152606480840186905284518085039091018152608490930190935281018051600160e060020a0316600160e060020a03199093169290921790915261262f908590612635565b60008083151561296c576000915061144d565b5082820282848281151561297c57fe5b04146129d2576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b9392505050565b600080808311612a33576040805160e560020a62461bcd02815260206004820152601260248201527f4552525f4449564944455f42595f5a45524f0000000000000000000000000000604482015290519081900360640190fd5b8284811515612a3e57fe5b04949350505050565b604080517f617070726f766528616464726573732c75696e7432353629000000000000000081528151908190036018018120600160a060020a03851660248301526044808301859052835180840390910181526064909201909252602081018051600160e060020a0316600160e060020a03199093169290921790915261184d908490612635565b6040805160e081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c081019190915290565b60206040519081016040528060019060208202803883395091929150505600a165627a7a72305820c41778b983f28e4398e5a244138fe83ee0d6d448cbdba44c80d1e1065c5c9ca40029 \ No newline at end of file diff --git a/solidity/build/SovrynSwapX.abi b/solidity/build/SovrynSwapX.abi index c974c5b..e4913d2 100644 --- a/solidity/build/SovrynSwapX.abi +++ b/solidity/build/SovrynSwapX.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_reporters","type":"address[]"}],"name":"upgrade","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevLockLimit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getCurrentLockLimit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"prevLockBlockNumber","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getCurrentReleaseLimit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"minLimit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"reporters","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_toBlockchain","type":"bytes32"},{"name":"_to","type":"bytes32"},{"name":"_amount","type":"uint256"},{"name":"_id","type":"uint256"}],"name":"xTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_toBlockchain","type":"bytes32"},{"name":"_to","type":"bytes32"},{"name":"_amount","type":"uint256"}],"name":"xTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevReleaseBlockNumber","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxReleaseLimit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"version","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_fromBlockchain","type":"bytes32"},{"name":"_txId","type":"uint256"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_xTransferId","type":"uint256"}],"name":"reportTx","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_minLimit","type":"uint256"}],"name":"setMinLimit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"limitIncPerBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_minRequiredReports","type":"uint8"}],"name":"setMinRequiredReports","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"},{"name":"","type":"address"}],"name":"reportedTxs","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reportingEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"transactions","outputs":[{"name":"amount","type":"uint256"},{"name":"fromBlockchain","type":"bytes32"},{"name":"to","type":"address"},{"name":"numOfReports","type":"uint8"},{"name":"completed","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_limitIncPerBlock","type":"uint256"}],"name":"setLimitIncPerBlock","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_enable","type":"bool"}],"name":"enableXTransfers","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"maxLockLimit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_xTransferId","type":"uint256"},{"name":"_for","type":"address"}],"name":"getXTransferAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_maxLockLimit","type":"uint256"}],"name":"setMaxLockLimit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_maxReleaseLimit","type":"uint256"}],"name":"setMaxReleaseLimit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"minRequiredReports","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_reporter","type":"address"},{"name":"_active","type":"bool"}],"name":"setReporter","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"transactionIds","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_enable","type":"bool"}],"name":"enableReporting","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevReleaseLimit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"xTransfersEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_maxLockLimit","type":"uint256"},{"name":"_maxReleaseLimit","type":"uint256"},{"name":"_minLimit","type":"uint256"},{"name":"_limitIncPerBlock","type":"uint256"},{"name":"_minRequiredReports","type":"uint8"},{"name":"_registry","type":"address"},{"name":"_token","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"}],"name":"TokensLock","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"}],"name":"TokensRelease","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":false,"name":"_toBlockchain","type":"bytes32"},{"indexed":true,"name":"_to","type":"bytes32"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_id","type":"uint256"}],"name":"XTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_reporter","type":"address"},{"indexed":false,"name":"_fromBlockchain","type":"bytes32"},{"indexed":false,"name":"_txId","type":"uint256"},{"indexed":false,"name":"_to","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_xTransferId","type":"uint256"}],"name":"TxReport","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_to","type":"address"},{"indexed":false,"name":"_id","type":"uint256"}],"name":"XTransferComplete","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}] \ No newline at end of file +[{"constant":false,"inputs":[{"name":"_onlyOwnerCanUpdateRegistry","type":"bool"}],"name":"restrictRegistryUpdate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevLockLimit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"prevLockBlockNumber","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"minLimit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"reporters","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"onlyOwnerCanUpdateRegistry","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"updateRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevReleaseBlockNumber","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxReleaseLimit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"version","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"limitIncPerBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"},{"name":"","type":"address"}],"name":"reportedTxs","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reportingEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"transactions","outputs":[{"name":"amount","type":"uint256"},{"name":"fromBlockchain","type":"bytes32"},{"name":"to","type":"address"},{"name":"numOfReports","type":"uint8"},{"name":"completed","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxLockLimit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"restoreRegistry","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"minRequiredReports","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"transactionIds","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"prevReleaseLimit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"xTransfersEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_maxLockLimit","type":"uint256"},{"name":"_maxReleaseLimit","type":"uint256"},{"name":"_minLimit","type":"uint256"},{"name":"_limitIncPerBlock","type":"uint256"},{"name":"_minRequiredReports","type":"uint8"},{"name":"_registry","type":"address"},{"name":"_token","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"}],"name":"TokensLock","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"}],"name":"TokensRelease","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":false,"name":"_toBlockchain","type":"bytes32"},{"indexed":true,"name":"_to","type":"bytes32"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_id","type":"uint256"}],"name":"XTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_reporter","type":"address"},{"indexed":false,"name":"_fromBlockchain","type":"bytes32"},{"indexed":false,"name":"_txId","type":"uint256"},{"indexed":false,"name":"_to","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_xTransferId","type":"uint256"}],"name":"TxReport","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_to","type":"address"},{"indexed":false,"name":"_id","type":"uint256"}],"name":"XTransferComplete","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":false,"inputs":[{"name":"_maxLockLimit","type":"uint256"}],"name":"setMaxLockLimit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_maxReleaseLimit","type":"uint256"}],"name":"setMaxReleaseLimit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_minLimit","type":"uint256"}],"name":"setMinLimit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_limitIncPerBlock","type":"uint256"}],"name":"setLimitIncPerBlock","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_minRequiredReports","type":"uint8"}],"name":"setMinRequiredReports","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_reporter","type":"address"},{"name":"_active","type":"bool"}],"name":"setReporter","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_enable","type":"bool"}],"name":"enableXTransfers","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_enable","type":"bool"}],"name":"enableReporting","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_reporters","type":"address[]"}],"name":"upgrade","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_toBlockchain","type":"bytes32"},{"name":"_to","type":"bytes32"},{"name":"_amount","type":"uint256"},{"name":"_id","type":"uint256"}],"name":"xTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_toBlockchain","type":"bytes32"},{"name":"_to","type":"bytes32"},{"name":"_amount","type":"uint256"}],"name":"xTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_fromBlockchain","type":"bytes32"},{"name":"_txId","type":"uint256"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_xTransferId","type":"uint256"}],"name":"reportTx","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_xTransferId","type":"uint256"},{"name":"_for","type":"address"}],"name":"getXTransferAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getCurrentLockLimit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getCurrentReleaseLimit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/solidity/build/SovrynSwapX.bin b/solidity/build/SovrynSwapX.bin index 6750da3..a0e6232 100644 --- a/solidity/build/SovrynSwapX.bin +++ b/solidity/build/SovrynSwapX.bin @@ -1 +1 @@ -6080604052600c805460b060020a60ff021960a860020a60ff0219909116750100000000000000000000000000000000000000000017167601000000000000000000000000000000000000000000001790553480156200005e57600080fd5b5060405160e0806200237383398101604090815281516020830151918301516060840151608085015160a086015160c09096015160008054600160a060020a0319163317905593959293919290918180620000c2816401000000006200026e810204565b5060028054600160a060020a03909216600160a060020a0319928316811790915560038054909216179055866200010281640100000000620002e9810204565b866200011781640100000000620002e9810204565b866200012c81640100000000620002e9810204565b866200014181640100000000620002e9810204565b60ff87166200015981640100000000620002e9810204565b856200016e816401000000006200026e810204565b86620001838164010000000062000359810204565b8d8c111580156200019457508c8c11155b15156200020257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f4552525f494e56414c49445f4d494e5f4c494d49540000000000000000000000604482015290519081900360640190fd5b50505060048b905550505060058790555060069490945550600991909155600c805460079590955560089390935543600a819055600b55600160a060020a039091166101000261010060a860020a031960ff90921660ff199094169390931716919091179055620003d2565b600160a060020a0381161515620002e657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b60008111620002e657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f4552525f5a45524f5f56414c5545000000000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a038116301415620002e657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b611f9180620003e26000396000f30060806040526004361061020e5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630183592b8114610213578063024c7ec71461026a57806316c76c271461028457806319967439146102ab5780631aff29eb146102c05780631e04a593146102d55780631fd8088d146102ea5780632cc1cd9e146102ff5780632fe8a6ad14610334578063427c037414610349578063492825381461036a57806349d10b64146103885780634b3e475c1461039d57806352e94ce3146103b257806354fd4d50146103c75780635e35359e146103f357806361cd756e1461041d5780636dc6a01b1461044e5780636ec6d4a61461047b57806372f43d191461049357806379ba5097146104a85780637b103999146104bd5780637b15879c146104d25780638544c52d146104ed5780638da5cb5b146105115780639390701c146105265780639ace38c21461053b578063a50c326c1461058b578063a5c670ca146105a3578063a8c36a90146105bd578063aafd6b76146105d2578063af2b9618146105f6578063b4a176d31461060e578063bf28ece414610623578063ca27e0111461063b578063d4ee1d9014610666578063e1bb51331461067b578063e36f8dc5146106a1578063ed1d73a6146106b9578063f2fde38b146106d3578063f7385f76146106f4578063fbb2469214610709578063fc0c546a1461071e575b600080fd5b34801561021f57600080fd5b5060408051602060048035808201358381028086018501909652808552610268953695939460249493850192918291850190849080828437509497506107339650505050505050565b005b34801561027657600080fd5b506102686004351515610839565b34801561029057600080fd5b50610299610870565b60408051918252519081900360200190f35b3480156102b757600080fd5b50610299610876565b3480156102cc57600080fd5b506102996108d0565b3480156102e157600080fd5b506102996108d6565b3480156102f657600080fd5b5061029961091c565b34801561030b57600080fd5b50610320600160a060020a0360043516610922565b604080519115158252519081900360200190f35b34801561034057600080fd5b50610320610937565b34801561035557600080fd5b50610268600435602435604435606435610947565b34801561037657600080fd5b50610268600435602435604435610a2e565b34801561039457600080fd5b50610268610b14565b3480156103a957600080fd5b50610299610d70565b3480156103be57600080fd5b50610299610d76565b3480156103d357600080fd5b506103dc610d7c565b6040805161ffff9092168252519081900360200190f35b3480156103ff57600080fd5b50610268600160a060020a0360043581169060243516604435610d81565b34801561042957600080fd5b50610432610dba565b60408051600160a060020a039092168252519081900360200190f35b34801561045a57600080fd5b50610268600435602435600160a060020a0360443516606435608435610dc9565b34801561048757600080fd5b506102686004356111f6565b34801561049f57600080fd5b50610299611278565b3480156104b457600080fd5b5061026861127e565b3480156104c957600080fd5b5061043261133f565b3480156104de57600080fd5b5061026860ff6004351661134e565b3480156104f957600080fd5b50610320600435600160a060020a036024351661137a565b34801561051d57600080fd5b5061043261139a565b34801561053257600080fd5b506103206113a9565b34801561054757600080fd5b506105536004356113cc565b604080519586526020860194909452600160a060020a039092168484015260ff16606084015215156080830152519081900360a00190f35b34801561059757600080fd5b5061026860043561140c565b3480156105af57600080fd5b506102686004351515611424565b3480156105c957600080fd5b5061029961145c565b3480156105de57600080fd5b50610299600435600160a060020a0360243516611462565b34801561060257600080fd5b5061026860043561153e565b34801561061a57600080fd5b50610268611556565b34801561062f57600080fd5b5061026860043561158f565b34801561064757600080fd5b506106506115a7565b6040805160ff9092168252519081900360200190f35b34801561067257600080fd5b506104326115b0565b34801561068757600080fd5b50610268600160a060020a036004351660243515156115bf565b3480156106ad57600080fd5b506102996004356115f2565b3480156106c557600080fd5b506102686004351515611604565b3480156106df57600080fd5b50610268600160a060020a0360043516611650565b34801561070057600080fd5b506102996116ed565b34801561071557600080fd5b506103206116f3565b34801561072a57600080fd5b50610432611703565b600061073d611717565b6107667f536f7672796e5377617058557067726164657200000000000000000000000000611769565b905061077181611650565b604080517f546872cc000000000000000000000000000000000000000000000000000000008152600481810181815260248301938452855160448401528551600160a060020a0386169463546872cc948893926064909101906020808601910280838360005b838110156107ef5781810151838201526020016107d7565b505050509050019350505050600060405180830381600087803b15801561081557600080fd5b505af1158015610829573d6000803e3d6000fd5b5050505061083561127e565b5050565b610841611717565b6003805491151560a060020a0274ff000000000000000000000000000000000000000019909216919091179055565b60075481565b6000806108b26108a3600954610897600a544361180190919063ffffffff16565b9063ffffffff61186116565b6007549063ffffffff6118e116565b90506004548111156108c85760045491506108cc565b8091505b5090565b600a5481565b6000806109066108f7600954610897600b544361180190919063ffffffff16565b6008549063ffffffff6118e116565b90506005548111156108c85760055491506108cc565b60065481565b60106020526000908152604090205460ff1681565b60035460a060020a900460ff1681565b600061095161193e565b610959610876565b9050600654831015801561096d5750808311155b15156109c3576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414d4f554e545f544f4f5f4849474800000000000000000000000000604482015290519081900360640190fd5b6109cc836119a1565b6109dc818463ffffffff61180116565b60075543600a5560408051868152602081018590528082018490529051859133917f4780f3edc9124597ede658e04ed3d8887b58c86943b2a805dc961cf512570b629181900360600190a35050505050565b6000610a3861193e565b610a40610876565b90506006548210158015610a545750808211155b1515610aaa576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414d4f554e545f544f4f5f4849474800000000000000000000000000604482015290519081900360640190fd5b610ab3826119a1565b610ac3818363ffffffff61180116565b60075543600a5560408051858152602081018490526000818301529051849133917f4780f3edc9124597ede658e04ed3d8887b58c86943b2a805dc961cf512570b629181900360600190a350505050565b60008054600160a060020a0316331480610b38575060035460a060020a900460ff16155b1515610b7c576040805160e560020a62461bcd0281526020600482015260116024820152600080516020611f46833981519152604482015290519081900360640190fd5b610ba57f436f6e7472616374526567697374727900000000000000000000000000000000611769565b600254909150600160a060020a03808316911614801590610bce5750600160a060020a03811615155b1515610c24576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b604080517fbb34534c0000000000000000000000000000000000000000000000000000000081527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b158015610ca857600080fd5b505af1158015610cbc573d6000803e3d6000fd5b505050506040513d6020811015610cd257600080fd5b5051600160a060020a03161415610d33576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a0380841673ffffffffffffffffffffffffffffffffffffffff19928316179092559091169216919091179055565b600b5481565b60055481565b600481565b610d89611717565b82610d93816119f7565b82610d9d816119f7565b83610da781611a5a565b610db2868686611abb565b505050505050565b600354600160a060020a031681565b6000610dd3611b72565b610ddb611bc9565b83610de5816119f7565b83610def81611c3f565b6000878152600f6020908152604080832033845290915290205460ff1615610e61576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f414c52454144595f5245504f52544544000000000000000000000000604482015290519081900360640190fd5b6000878152600f602090815260408083203384528252808320805460ff19166001179055898352600d9091529020600281015490935060a060020a900460ff161515610f5c5760028301805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a038816179055848355600183018890558315610f57576000848152600e602052604090205415610f45576040805160e560020a62461bcd02815260206004820152601560248201527f4552525f54585f414c52454144595f4558495354530000000000000000000000604482015290519081900360640190fd5b6000848152600e602052604090208790555b61104b565b6002830154600160a060020a038781169116148015610f7b5750825485145b8015610f8a5750600183015488145b1515610fe0576040805160e560020a62461bcd02815260206004820152600f60248201527f4552525f54585f4d49534d415443480000000000000000000000000000000000604482015290519081900360640190fd5b831561104b576000848152600e6020526040902054871461104b576040805160e560020a62461bcd02815260206004820152601560248201527f4552525f54585f414c52454144595f4558495354530000000000000000000000604482015290519081900360640190fd5b600283018054600160ff60a060020a808404821692909201160274ff0000000000000000000000000000000000000000199091161790556040805189815260208101899052600160a060020a038816818301526060810187905260808101869052905133917f5e77831e701760f7f4a1e61a8e9834d773b52c45d91ba9006b7d2afb7a144739919081900360a00190a2600c54600284015460ff91821660a060020a909104909116106111ec576000878152600d602052604090206002015460a860020a900460ff1615611169576040805160e560020a62461bcd02815260206004820152601860248201527f4552525f54585f414c52454144595f434f4d504c455445440000000000000000604482015290519081900360640190fd5b6000878152600d6020908152604091829020600201805475ff000000000000000000000000000000000000000000191660a860020a1790558151600160a060020a038916815290810186905281517fd87906b7fce534fc5e6dde30064e777d92d0aaf3a28c72315de8ef2e4134dfef929181900390910190a16111ec8686611c97565b5050505050505050565b6111fe611717565b8061120881611c3f565b600454821115801561121c57506005548211155b1515611272576040805160e560020a62461bcd02815260206004820152601560248201527f4552525f494e56414c49445f4d494e5f4c494d49540000000000000000000000604482015290519081900360640190fd5b50600655565b60095481565b600154600160a060020a031633146112ce576040805160e560020a62461bcd0281526020600482015260116024820152600080516020611f46833981519152604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600254600160a060020a031681565b611356611717565b8060ff1661136381611c3f565b50600c805460ff191660ff92909216919091179055565b600f60209081526000928352604080842090915290825290205460ff1681565b600054600160a060020a031681565b600c54760100000000000000000000000000000000000000000000900460ff1681565b600d60205260009081526040902080546001820154600290920154909190600160a060020a0381169060ff60a060020a820481169160a860020a90041685565b611414611717565b8061141e81611c3f565b50600955565b61142c611717565b600c805491151560a860020a0275ff00000000000000000000000000000000000000000019909216919091179055565b60045481565b600061146c611ef8565b506000838152600e60209081526040808320548352600d825291829020825160a0810184528154815260018201549281019290925260020154600160a060020a0380821693830184905260ff60a060020a83048116606085015260a860020a90920490911615156080830152909190841614611532576040805160e560020a62461bcd02815260206004820152600f60248201527f4552525f54585f4d49534d415443480000000000000000000000000000000000604482015290519081900360640190fd5b805191505b5092915050565b611546611717565b8061155081611c3f565b50600455565b61155e611717565b6003546002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03909216919091179055565b611597611717565b806115a181611c3f565b50600555565b600c5460ff1681565b600154600160a060020a031681565b6115c7611717565b600160a060020a03919091166000908152601060205260409020805460ff1916911515919091179055565b600e6020526000908152604090205481565b61160c611717565b600c80549115157601000000000000000000000000000000000000000000000276ff0000000000000000000000000000000000000000000019909216919091179055565b611658611717565b600054600160a060020a03828116911614156116be576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60085481565b600c5460a860020a900460ff1681565b600c546101009004600160a060020a031681565b600054600160a060020a03163314611767576040805160e560020a62461bcd0281526020600482015260116024820152600080516020611f46833981519152604482015290519081900360640190fd5b565b600254604080517fbb34534c000000000000000000000000000000000000000000000000000000008152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b1580156117cf57600080fd5b505af11580156117e3573d6000803e3d6000fd5b505050506040513d60208110156117f957600080fd5b505192915050565b60008183101561185b576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b6000808315156118745760009150611537565b5082820282848281151561188457fe5b04146118da576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b9392505050565b6000828201838110156118da576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b600c5460a860020a900460ff161515611767576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f44495341424c45440000000000000000000000000000000000000000604482015290519081900360640190fd5b600c546119be906101009004600160a060020a0316333084611d82565b60408051828152905133917ff5d7535a395393675f56d066384113754ca9cf4abd37298469934e2e9c2ec902919081900360200190a250565b600160a060020a0381161515611a57576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b600160a060020a038116301415611a57576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1990931692909217909152611b6d908490611e6a565b505050565b3360009081526010602052604090205460ff161515611767576040805160e560020a62461bcd0281526020600482015260116024820152600080516020611f46833981519152604482015290519081900360640190fd5b600c54760100000000000000000000000000000000000000000000900460ff161515611767576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f44495341424c45440000000000000000000000000000000000000000604482015290519081900360640190fd5b60008111611a57576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5a45524f5f56414c5545000000000000000000000000000000000000604482015290519081900360640190fd5b6000611ca16108d6565b90506006548210158015611cb55750808211155b1515611d0b576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414d4f554e545f544f4f5f4849474800000000000000000000000000604482015290519081900360640190fd5b611d1b818363ffffffff61180116565b60085543600b55600c54611d3e906101009004600160a060020a03168484611abb565b604080518381529051600160a060020a038516917fbfdc1f3c02b4715077e0be4a262f967d53d4d0fcd76c6987fa2ad6e2257d7c8f919081900360200190a2505050565b604080517f7472616e7366657246726f6d28616464726573732c616464726573732c75696e81527f74323536290000000000000000000000000000000000000000000000000000006020808301919091528251918290036025018220600160a060020a038088166024850152861660448401526064808401869052845180850390910181526084909301909352810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1990931692909217909152611e64908590611e6a565b50505050565b611e72611f26565b602060405190810160405280600181525090506020818351602085016000875af1801515611e9f57600080fd5b5080511515611b6d576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b602060405190810160405280600190602082028038833950919291505056004552525f4143434553535f44454e494544000000000000000000000000000000a165627a7a72305820a057abf13fcc836d70b2eac45352a559af161a8992926079c7f6c0b0386299b80029 \ No newline at end of file +6080604052600c805460b060020a60ff021960a860020a60ff0219909116750100000000000000000000000000000000000000000017167601000000000000000000000000000000000000000000001790553480156200005e57600080fd5b5060405160e0806200237383398101604090815281516020830151918301516060840151608085015160a086015160c09096015160008054600160a060020a0319163317905593959293919290918180620000c2816401000000006200026e810204565b5060028054600160a060020a03909216600160a060020a0319928316811790915560038054909216179055866200010281640100000000620002e9810204565b866200011781640100000000620002e9810204565b866200012c81640100000000620002e9810204565b866200014181640100000000620002e9810204565b60ff87166200015981640100000000620002e9810204565b856200016e816401000000006200026e810204565b86620001838164010000000062000359810204565b8d8c111580156200019457508c8c11155b15156200020257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f4552525f494e56414c49445f4d494e5f4c494d49540000000000000000000000604482015290519081900360640190fd5b50505060048b905550505060058790555060069490945550600991909155600c805460079590955560089390935543600a819055600b55600160a060020a039091166101000261010060a860020a031960ff90921660ff199094169390931716919091179055620003d2565b600160a060020a0381161515620002e657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b60008111620002e657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f4552525f5a45524f5f56414c5545000000000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a038116301415620002e657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b611f9180620003e26000396000f30060806040526004361061020e5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630183592b8114610213578063024c7ec71461026a57806316c76c271461028457806319967439146102ab5780631aff29eb146102c05780631e04a593146102d55780631fd8088d146102ea5780632cc1cd9e146102ff5780632fe8a6ad14610334578063427c037414610349578063492825381461036a57806349d10b64146103885780634b3e475c1461039d57806352e94ce3146103b257806354fd4d50146103c75780635e35359e146103f357806361cd756e1461041d5780636dc6a01b1461044e5780636ec6d4a61461047b57806372f43d191461049357806379ba5097146104a85780637b103999146104bd5780637b15879c146104d25780638544c52d146104ed5780638da5cb5b146105115780639390701c146105265780639ace38c21461053b578063a50c326c1461058b578063a5c670ca146105a3578063a8c36a90146105bd578063aafd6b76146105d2578063af2b9618146105f6578063b4a176d31461060e578063bf28ece414610623578063ca27e0111461063b578063d4ee1d9014610666578063e1bb51331461067b578063e36f8dc5146106a1578063ed1d73a6146106b9578063f2fde38b146106d3578063f7385f76146106f4578063fbb2469214610709578063fc0c546a1461071e575b600080fd5b34801561021f57600080fd5b5060408051602060048035808201358381028086018501909652808552610268953695939460249493850192918291850190849080828437509497506107339650505050505050565b005b34801561027657600080fd5b506102686004351515610839565b34801561029057600080fd5b50610299610870565b60408051918252519081900360200190f35b3480156102b757600080fd5b50610299610876565b3480156102cc57600080fd5b506102996108d0565b3480156102e157600080fd5b506102996108d6565b3480156102f657600080fd5b5061029961091c565b34801561030b57600080fd5b50610320600160a060020a0360043516610922565b604080519115158252519081900360200190f35b34801561034057600080fd5b50610320610937565b34801561035557600080fd5b50610268600435602435604435606435610947565b34801561037657600080fd5b50610268600435602435604435610a2e565b34801561039457600080fd5b50610268610b14565b3480156103a957600080fd5b50610299610d70565b3480156103be57600080fd5b50610299610d76565b3480156103d357600080fd5b506103dc610d7c565b6040805161ffff9092168252519081900360200190f35b3480156103ff57600080fd5b50610268600160a060020a0360043581169060243516604435610d81565b34801561042957600080fd5b50610432610dba565b60408051600160a060020a039092168252519081900360200190f35b34801561045a57600080fd5b50610268600435602435600160a060020a0360443516606435608435610dc9565b34801561048757600080fd5b506102686004356111f6565b34801561049f57600080fd5b50610299611278565b3480156104b457600080fd5b5061026861127e565b3480156104c957600080fd5b5061043261133f565b3480156104de57600080fd5b5061026860ff6004351661134e565b3480156104f957600080fd5b50610320600435600160a060020a036024351661137a565b34801561051d57600080fd5b5061043261139a565b34801561053257600080fd5b506103206113a9565b34801561054757600080fd5b506105536004356113cc565b604080519586526020860194909452600160a060020a039092168484015260ff16606084015215156080830152519081900360a00190f35b34801561059757600080fd5b5061026860043561140c565b3480156105af57600080fd5b506102686004351515611424565b3480156105c957600080fd5b5061029961145c565b3480156105de57600080fd5b50610299600435600160a060020a0360243516611462565b34801561060257600080fd5b5061026860043561153e565b34801561061a57600080fd5b50610268611556565b34801561062f57600080fd5b5061026860043561158f565b34801561064757600080fd5b506106506115a7565b6040805160ff9092168252519081900360200190f35b34801561067257600080fd5b506104326115b0565b34801561068757600080fd5b50610268600160a060020a036004351660243515156115bf565b3480156106ad57600080fd5b506102996004356115f2565b3480156106c557600080fd5b506102686004351515611604565b3480156106df57600080fd5b50610268600160a060020a0360043516611650565b34801561070057600080fd5b506102996116ed565b34801561071557600080fd5b506103206116f3565b34801561072a57600080fd5b50610432611703565b600061073d611717565b6107667f536f7672796e5377617058557067726164657200000000000000000000000000611769565b905061077181611650565b604080517f546872cc000000000000000000000000000000000000000000000000000000008152600481810181815260248301938452855160448401528551600160a060020a0386169463546872cc948893926064909101906020808601910280838360005b838110156107ef5781810151838201526020016107d7565b505050509050019350505050600060405180830381600087803b15801561081557600080fd5b505af1158015610829573d6000803e3d6000fd5b5050505061083561127e565b5050565b610841611717565b6003805491151560a060020a0274ff000000000000000000000000000000000000000019909216919091179055565b60075481565b6000806108b26108a3600954610897600a544361180190919063ffffffff16565b9063ffffffff61186116565b6007549063ffffffff6118e116565b90506004548111156108c85760045491506108cc565b8091505b5090565b600a5481565b6000806109066108f7600954610897600b544361180190919063ffffffff16565b6008549063ffffffff6118e116565b90506005548111156108c85760055491506108cc565b60065481565b60106020526000908152604090205460ff1681565b60035460a060020a900460ff1681565b600061095161193e565b610959610876565b9050600654831015801561096d5750808311155b15156109c3576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414d4f554e545f544f4f5f4849474800000000000000000000000000604482015290519081900360640190fd5b6109cc836119a1565b6109dc818463ffffffff61180116565b60075543600a5560408051868152602081018590528082018490529051859133917f4780f3edc9124597ede658e04ed3d8887b58c86943b2a805dc961cf512570b629181900360600190a35050505050565b6000610a3861193e565b610a40610876565b90506006548210158015610a545750808211155b1515610aaa576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414d4f554e545f544f4f5f4849474800000000000000000000000000604482015290519081900360640190fd5b610ab3826119a1565b610ac3818363ffffffff61180116565b60075543600a5560408051858152602081018490526000818301529051849133917f4780f3edc9124597ede658e04ed3d8887b58c86943b2a805dc961cf512570b629181900360600190a350505050565b60008054600160a060020a0316331480610b38575060035460a060020a900460ff16155b1515610b7c576040805160e560020a62461bcd0281526020600482015260116024820152600080516020611f46833981519152604482015290519081900360640190fd5b610ba57f436f6e7472616374526567697374727900000000000000000000000000000000611769565b600254909150600160a060020a03808316911614801590610bce5750600160a060020a03811615155b1515610c24576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b604080517fbb34534c0000000000000000000000000000000000000000000000000000000081527f436f6e747261637452656769737472790000000000000000000000000000000060048201529051600091600160a060020a0384169163bb34534c9160248082019260209290919082900301818787803b158015610ca857600080fd5b505af1158015610cbc573d6000803e3d6000fd5b505050506040513d6020811015610cd257600080fd5b5051600160a060020a03161415610d33576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f494e56414c49445f5245474953545259000000000000000000000000604482015290519081900360640190fd5b6002805460038054600160a060020a0380841673ffffffffffffffffffffffffffffffffffffffff19928316179092559091169216919091179055565b600b5481565b60055481565b600481565b610d89611717565b82610d93816119f7565b82610d9d816119f7565b83610da781611a5a565b610db2868686611abb565b505050505050565b600354600160a060020a031681565b6000610dd3611b72565b610ddb611bc9565b83610de5816119f7565b83610def81611c3f565b6000878152600f6020908152604080832033845290915290205460ff1615610e61576040805160e560020a62461bcd02815260206004820152601460248201527f4552525f414c52454144595f5245504f52544544000000000000000000000000604482015290519081900360640190fd5b6000878152600f602090815260408083203384528252808320805460ff19166001179055898352600d9091529020600281015490935060a060020a900460ff161515610f5c5760028301805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a038816179055848355600183018890558315610f57576000848152600e602052604090205415610f45576040805160e560020a62461bcd02815260206004820152601560248201527f4552525f54585f414c52454144595f4558495354530000000000000000000000604482015290519081900360640190fd5b6000848152600e602052604090208790555b61104b565b6002830154600160a060020a038781169116148015610f7b5750825485145b8015610f8a5750600183015488145b1515610fe0576040805160e560020a62461bcd02815260206004820152600f60248201527f4552525f54585f4d49534d415443480000000000000000000000000000000000604482015290519081900360640190fd5b831561104b576000848152600e6020526040902054871461104b576040805160e560020a62461bcd02815260206004820152601560248201527f4552525f54585f414c52454144595f4558495354530000000000000000000000604482015290519081900360640190fd5b600283018054600160ff60a060020a808404821692909201160274ff0000000000000000000000000000000000000000199091161790556040805189815260208101899052600160a060020a038816818301526060810187905260808101869052905133917f5e77831e701760f7f4a1e61a8e9834d773b52c45d91ba9006b7d2afb7a144739919081900360a00190a2600c54600284015460ff91821660a060020a909104909116106111ec576000878152600d602052604090206002015460a860020a900460ff1615611169576040805160e560020a62461bcd02815260206004820152601860248201527f4552525f54585f414c52454144595f434f4d504c455445440000000000000000604482015290519081900360640190fd5b6000878152600d6020908152604091829020600201805475ff000000000000000000000000000000000000000000191660a860020a1790558151600160a060020a038916815290810186905281517fd87906b7fce534fc5e6dde30064e777d92d0aaf3a28c72315de8ef2e4134dfef929181900390910190a16111ec8686611c97565b5050505050505050565b6111fe611717565b8061120881611c3f565b600454821115801561121c57506005548211155b1515611272576040805160e560020a62461bcd02815260206004820152601560248201527f4552525f494e56414c49445f4d494e5f4c494d49540000000000000000000000604482015290519081900360640190fd5b50600655565b60095481565b600154600160a060020a031633146112ce576040805160e560020a62461bcd0281526020600482015260116024820152600080516020611f46833981519152604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600254600160a060020a031681565b611356611717565b8060ff1661136381611c3f565b50600c805460ff191660ff92909216919091179055565b600f60209081526000928352604080842090915290825290205460ff1681565b600054600160a060020a031681565b600c54760100000000000000000000000000000000000000000000900460ff1681565b600d60205260009081526040902080546001820154600290920154909190600160a060020a0381169060ff60a060020a820481169160a860020a90041685565b611414611717565b8061141e81611c3f565b50600955565b61142c611717565b600c805491151560a860020a0275ff00000000000000000000000000000000000000000019909216919091179055565b60045481565b600061146c611ef8565b506000838152600e60209081526040808320548352600d825291829020825160a0810184528154815260018201549281019290925260020154600160a060020a0380821693830184905260ff60a060020a83048116606085015260a860020a90920490911615156080830152909190841614611532576040805160e560020a62461bcd02815260206004820152600f60248201527f4552525f54585f4d49534d415443480000000000000000000000000000000000604482015290519081900360640190fd5b805191505b5092915050565b611546611717565b8061155081611c3f565b50600455565b61155e611717565b6003546002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03909216919091179055565b611597611717565b806115a181611c3f565b50600555565b600c5460ff1681565b600154600160a060020a031681565b6115c7611717565b600160a060020a03919091166000908152601060205260409020805460ff1916911515919091179055565b600e6020526000908152604090205481565b61160c611717565b600c80549115157601000000000000000000000000000000000000000000000276ff0000000000000000000000000000000000000000000019909216919091179055565b611658611717565b600054600160a060020a03828116911614156116be576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60085481565b600c5460a860020a900460ff1681565b600c546101009004600160a060020a031681565b600054600160a060020a03163314611767576040805160e560020a62461bcd0281526020600482015260116024820152600080516020611f46833981519152604482015290519081900360640190fd5b565b600254604080517fbb34534c000000000000000000000000000000000000000000000000000000008152600481018490529051600092600160a060020a03169163bb34534c91602480830192602092919082900301818787803b1580156117cf57600080fd5b505af11580156117e3573d6000803e3d6000fd5b505050506040513d60208110156117f957600080fd5b505192915050565b60008183101561185b576040805160e560020a62461bcd02815260206004820152600d60248201527f4552525f554e444552464c4f5700000000000000000000000000000000000000604482015290519081900360640190fd5b50900390565b6000808315156118745760009150611537565b5082820282848281151561188457fe5b04146118da576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b9392505050565b6000828201838110156118da576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f4f564552464c4f570000000000000000000000000000000000000000604482015290519081900360640190fd5b600c5460a860020a900460ff161515611767576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f44495341424c45440000000000000000000000000000000000000000604482015290519081900360640190fd5b600c546119be906101009004600160a060020a0316333084611d82565b60408051828152905133917ff5d7535a395393675f56d066384113754ca9cf4abd37298469934e2e9c2ec902919081900360200190a250565b600160a060020a0381161515611a57576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b600160a060020a038116301415611a57576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1990931692909217909152611b6d908490611e6a565b505050565b3360009081526010602052604090205460ff161515611767576040805160e560020a62461bcd0281526020600482015260116024820152600080516020611f46833981519152604482015290519081900360640190fd5b600c54760100000000000000000000000000000000000000000000900460ff161515611767576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f44495341424c45440000000000000000000000000000000000000000604482015290519081900360640190fd5b60008111611a57576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f5a45524f5f56414c5545000000000000000000000000000000000000604482015290519081900360640190fd5b6000611ca16108d6565b90506006548210158015611cb55750808211155b1515611d0b576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414d4f554e545f544f4f5f4849474800000000000000000000000000604482015290519081900360640190fd5b611d1b818363ffffffff61180116565b60085543600b55600c54611d3e906101009004600160a060020a03168484611abb565b604080518381529051600160a060020a038516917fbfdc1f3c02b4715077e0be4a262f967d53d4d0fcd76c6987fa2ad6e2257d7c8f919081900360200190a2505050565b604080517f7472616e7366657246726f6d28616464726573732c616464726573732c75696e81527f74323536290000000000000000000000000000000000000000000000000000006020808301919091528251918290036025018220600160a060020a038088166024850152861660448401526064808401869052845180850390910181526084909301909352810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1990931692909217909152611e64908590611e6a565b50505050565b611e72611f26565b602060405190810160405280600181525090506020818351602085016000875af1801515611e9f57600080fd5b5080511515611b6d576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b602060405190810160405280600190602082028038833950919291505056004552525f4143434553535f44454e494544000000000000000000000000000000a165627a7a72305820b415d861b6620e921fe3719f9eee98dd0d096b2bf57122b38cf19aa0d63b49370029 \ No newline at end of file diff --git a/solidity/build/SwapSettings.abi b/solidity/build/SwapSettings.abi new file mode 100644 index 0000000..168400e --- /dev/null +++ b/solidity/build/SwapSettings.abi @@ -0,0 +1 @@ +[{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"wrbtcAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"protocolFee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"sovTokenAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"feesController","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_feesController","type":"address"},{"name":"_wrbtcAddress","type":"address"},{"name":"_sovTokenAddress","type":"address"},{"name":"_protocolFee","type":"uint32"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_prevProtocolFee","type":"uint32"},{"indexed":false,"name":"_newProtocolFee","type":"uint32"}],"name":"ProtocolFeeUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"sender","type":"address"},{"indexed":true,"name":"oldController","type":"address"},{"indexed":true,"name":"newController","type":"address"}],"name":"SetFeesController","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"sender","type":"address"},{"indexed":true,"name":"oldWrbtcAddress","type":"address"},{"indexed":true,"name":"newWrbtcAddress","type":"address"}],"name":"SetWrbtcAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"sender","type":"address"},{"indexed":true,"name":"oldSOVTokenAddress","type":"address"},{"indexed":true,"name":"newSOVTokenAddress","type":"address"}],"name":"SetSOVTokenAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":false,"inputs":[{"name":"newController","type":"address"}],"name":"setFeesController","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newWrbtcAddress","type":"address"}],"name":"setWrbtcAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newSOVTokenAddress","type":"address"}],"name":"setSOVTokenAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_protocolFee","type":"uint32"}],"name":"setProtocolFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/SwapSettings.bin b/solidity/build/SwapSettings.bin new file mode 100644 index 0000000..c8b5cbb --- /dev/null +++ b/solidity/build/SwapSettings.bin @@ -0,0 +1 @@ +608060405234801561001057600080fd5b50604051608080610b8c833981016040908152815160208301519183015160609093015160008054600160a060020a03191633179055909290600160a060020a03841615156100c057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4552525f5a45524f5f4144445245535300000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a038316151561013757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4552525f5a45524f5f4144445245535300000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a03821615156101ae57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4552525f5a45524f5f4144445245535300000000000000000000000000000000604482015290519081900360640190fd5b620f424063ffffffff8216111561022657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f4552525f50524f544f434f4c5f4645455f544f4f5f4849474800000000000000604482015290519081900360640190fd5b6004805460028054600160a060020a0319908116600160a060020a038881169190911790925560038054821687841617905590911690861690811760a060020a63ffffffff0219167401000000000000000000000000000000000000000063ffffffff8516021790915560405160009033907f83e92cb95ec836f94e25e0a7b31c39f750833a8ce24eaa227a7050aafea08a84908390a4604051600160a060020a0384169060009033907f9cfbc11c8556fd711c6b62fe6f06bdee9e8093a594721856bad3b8eb587dcba9908390a4604051600160a060020a0383169060009033907f6105cbfb5494a79f89745763767914b7b60b00defac5e94c7eb28cc5e44c479f908390a4604080516000815263ffffffff8316602082015281517f0f69dacc36033129765b2990e14931ea8afda523e1f531241c9ad296d770ec2c929181900390910190a15050505061080b806103816000396000f3006080604052600436106100b95763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636fbae33b81146100be57806379ba5097146100e15780638da5cb5b146100f657806399a752b514610127578063aa9f76281461013c578063b0e21e8a1461015a578063b9cffa3e14610188578063d4ee1d901461019d578063da557d5a146101b2578063e8997dbd146101d3578063e8f62764146101f4578063f2fde38b14610209575b600080fd5b3480156100ca57600080fd5b506100df600160a060020a036004351661022a565b005b3480156100ed57600080fd5b506100df6102f6565b34801561010257600080fd5b5061010b6103c9565b60408051600160a060020a039092168252519081900360200190f35b34801561013357600080fd5b5061010b6103d8565b34801561014857600080fd5b506100df63ffffffff600435166103e7565b34801561016657600080fd5b5061016f6104f5565b6040805163ffffffff9092168252519081900360200190f35b34801561019457600080fd5b5061010b610519565b3480156101a957600080fd5b5061010b610528565b3480156101be57600080fd5b506100df600160a060020a0360043516610537565b3480156101df57600080fd5b506100df600160a060020a0360043516610603565b34801561020057600080fd5b5061010b6106cf565b34801561021557600080fd5b506100df600160a060020a03600435166106de565b600061023461077b565b600160a060020a0382161515610294576040805160e560020a62461bcd02815260206004820152601060248201527f4552525f5a45524f5f4144445245535300000000000000000000000000000000604482015290519081900360640190fd5b5060038054600160a060020a0383811673ffffffffffffffffffffffffffffffffffffffff198316811790935560405191169190829033907f6105cbfb5494a79f89745763767914b7b60b00defac5e94c7eb28cc5e44c479f90600090a45050565b600154600160a060020a03163314610358576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600054600160a060020a031681565b600254600160a060020a031681565b6103ef61077b565b620f424063ffffffff82161115610450576040805160e560020a62461bcd02815260206004820152601960248201527f4552525f50524f544f434f4c5f4645455f544f4f5f4849474800000000000000604482015290519081900360640190fd5b6004546040805163ffffffff7401000000000000000000000000000000000000000090930483168152918316602083015280517f0f69dacc36033129765b2990e14931ea8afda523e1f531241c9ad296d770ec2c9281900390910190a16004805463ffffffff909216740100000000000000000000000000000000000000000277ffffffff000000000000000000000000000000000000000019909216919091179055565b60045474010000000000000000000000000000000000000000900463ffffffff1681565b600354600160a060020a031681565b600154600160a060020a031681565b600061054161077b565b600160a060020a03821615156105a1576040805160e560020a62461bcd02815260206004820152601060248201527f4552525f5a45524f5f4144445245535300000000000000000000000000000000604482015290519081900360640190fd5b5060028054600160a060020a0383811673ffffffffffffffffffffffffffffffffffffffff198316811790935560405191169190829033907f9cfbc11c8556fd711c6b62fe6f06bdee9e8093a594721856bad3b8eb587dcba990600090a45050565b600061060d61077b565b600160a060020a038216151561066d576040805160e560020a62461bcd02815260206004820152601060248201527f4552525f5a45524f5f4144445245535300000000000000000000000000000000604482015290519081900360640190fd5b5060048054600160a060020a0383811673ffffffffffffffffffffffffffffffffffffffff198316811790935560405191169190829033907f83e92cb95ec836f94e25e0a7b31c39f750833a8ce24eaa227a7050aafea08a8490600090a45050565b600454600160a060020a031681565b6106e661077b565b600054600160a060020a038281169116141561074c576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a031633146107dd576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b5600a165627a7a723058208d116798d1dd2b30be0fc646a08b86dd17465a4f229185377429cd23fe486b290029 \ No newline at end of file diff --git a/solidity/build/TokenHandler.bin b/solidity/build/TokenHandler.bin index 27567cf..d90daeb 100644 --- a/solidity/build/TokenHandler.bin +++ b/solidity/build/TokenHandler.bin @@ -1 +1 @@ -6080604052348015600f57600080fd5b50603580601d6000396000f3006080604052600080fd00a165627a7a7230582066e2b0700eae98f9a08571a6ca23e786e9a2cc6edae272588dd0036408e4e74b0029 \ No newline at end of file +6080604052348015600f57600080fd5b50603580601d6000396000f3006080604052600080fd00a165627a7a72305820c0da66b86e995e160be4338f835d80f1b6bbd74467301760dc1c85454c3b471d0029 \ No newline at end of file diff --git a/solidity/build/TokenHolder.abi b/solidity/build/TokenHolder.abi index acdf6be..bed8a27 100644 --- a/solidity/build/TokenHolder.abi +++ b/solidity/build/TokenHolder.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}] \ No newline at end of file +[{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/TokenHolder.bin b/solidity/build/TokenHolder.bin index 2987e75..ac13cb0 100644 --- a/solidity/build/TokenHolder.bin +++ b/solidity/build/TokenHolder.bin @@ -1 +1 @@ -608060405260008054600160a060020a0319163317905561059b806100256000396000f30060806040526004361061006c5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416635e35359e811461007157806379ba50971461009d5780638da5cb5b146100b2578063d4ee1d90146100e3578063f2fde38b146100f8575b600080fd5b34801561007d57600080fd5b5061009b600160a060020a0360043581169060243516604435610119565b005b3480156100a957600080fd5b5061009b610152565b3480156100be57600080fd5b506100c7610225565b60408051600160a060020a039092168252519081900360200190f35b3480156100ef57600080fd5b506100c7610234565b34801561010457600080fd5b5061009b600160a060020a0360043516610243565b6101216102e0565b8261012b81610344565b8261013581610344565b8361013f816103a7565b61014a868686610408565b505050505050565b600154600160a060020a031633146101b4576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600054600160a060020a031681565b600154600160a060020a031681565b61024b6102e0565b600054600160a060020a03828116911614156102b1576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a03163314610342576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b600160a060020a03811615156103a4576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b600160a060020a0381163014156103a4576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff00000000000000000000000000000000000000000000000000000000909316929092179091526104bd9084906104c2565b505050565b6104ca610550565b602060405190810160405280600181525090506020818351602085016000875af18015156104f757600080fd5b50805115156104bd576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b60206040519081016040528060019060208202803883395091929150505600a165627a7a72305820340ec2f4b26db770b3f31d2f3b4f3efc3b20963008850dbb6ab1a9692147b3e10029 \ No newline at end of file +608060405260008054600160a060020a0319163317905561059b806100256000396000f30060806040526004361061006c5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416635e35359e811461007157806379ba50971461009d5780638da5cb5b146100b2578063d4ee1d90146100e3578063f2fde38b146100f8575b600080fd5b34801561007d57600080fd5b5061009b600160a060020a0360043581169060243516604435610119565b005b3480156100a957600080fd5b5061009b610152565b3480156100be57600080fd5b506100c7610225565b60408051600160a060020a039092168252519081900360200190f35b3480156100ef57600080fd5b506100c7610234565b34801561010457600080fd5b5061009b600160a060020a0360043516610243565b6101216102e0565b8261012b81610344565b8261013581610344565b8361013f816103a7565b61014a868686610408565b505050505050565b600154600160a060020a031633146101b4576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600054600160a060020a031681565b600154600160a060020a031681565b61024b6102e0565b600054600160a060020a03828116911614156102b1576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a03163314610342576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b600160a060020a03811615156103a4576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd5b50565b600160a060020a0381163014156103a4576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f414444524553535f49535f53454c4600000000000000000000000000604482015290519081900360640190fd5b604080517f7472616e7366657228616464726573732c75696e74323536290000000000000081528151908190036019018120600160a060020a038516602483015260448083018590528351808403909101815260649092019092526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff00000000000000000000000000000000000000000000000000000000909316929092179091526104bd9084906104c2565b505050565b6104ca610550565b602060405190810160405280600181525090506020818351602085016000875af18015156104f757600080fd5b50805115156104bd576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f5452414e534645525f4641494c454400000000000000000000000000604482015290519081900360640190fd5b60206040519081016040528060019060208202803883395091929150505600a165627a7a72305820672de1a3ef2bc5126ded35d1bbdc4a4578814521616a5bdbf4bc9788c66aa32c0029 \ No newline at end of file diff --git a/solidity/build/Utils.bin b/solidity/build/Utils.bin index 99967d8..cb74360 100644 --- a/solidity/build/Utils.bin +++ b/solidity/build/Utils.bin @@ -1 +1 @@ -6080604052348015600f57600080fd5b50603580601d6000396000f3006080604052600080fd00a165627a7a72305820ac8352e92267f511c72b606e871feba6fec54c6e940050f1e0db57a6d20556da0029 \ No newline at end of file +6080604052348015600f57600080fd5b50603580601d6000396000f3006080604052600080fd00a165627a7a723058209ed7657eb590a113b8b3ff09cec1dbb8f0aa6f4883f99163437caf533ae10cc10029 \ No newline at end of file diff --git a/solidity/build/WRBTC.abi b/solidity/build/WRBTC.abi index d8fcdfc..ac3b31f 100644 --- a/solidity/build/WRBTC.abi +++ b/solidity/build/WRBTC.abi @@ -1,309 +1 @@ -[ - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "src", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "guy", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "wad", - "type": "uint256" - } - ], - "name": "Approval", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "dst", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "wad", - "type": "uint256" - } - ], - "name": "Deposit", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "src", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "dst", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "wad", - "type": "uint256" - } - ], - "name": "Transfer", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "src", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "wad", - "type": "uint256" - } - ], - "name": "Withdrawal", - "type": "event" - }, - { - "payable": true, - "stateMutability": "payable", - "type": "fallback" - }, - { - "constant": true, - "inputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - }, - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "name": "allowance", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "internalType": "address", - "name": "guy", - "type": "address" - }, - { - "internalType": "uint256", - "name": "wad", - "type": "uint256" - } - ], - "name": "approve", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "name": "balanceOf", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "decimals", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": false, - "inputs": [], - "name": "deposit", - "outputs": [], - "payable": true, - "stateMutability": "payable", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "name", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "symbol", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "totalSupply", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "internalType": "address", - "name": "dst", - "type": "address" - }, - { - "internalType": "uint256", - "name": "wad", - "type": "uint256" - } - ], - "name": "transfer", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "internalType": "address", - "name": "src", - "type": "address" - }, - { - "internalType": "address", - "name": "dst", - "type": "address" - }, - { - "internalType": "uint256", - "name": "wad", - "type": "uint256" - } - ], - "name": "transferFrom", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "internalType": "uint256", - "name": "wad", - "type": "uint256" - } - ], - "name": "withdraw", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - } - ] \ No newline at end of file +[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"src","type":"address"},{"indexed":true,"internalType":"address","name":"guy","type":"address"},{"indexed":false,"internalType":"uint256","name":"wad","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"dst","type":"address"},{"indexed":false,"internalType":"uint256","name":"wad","type":"uint256"}],"name":"Deposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"src","type":"address"},{"indexed":true,"internalType":"address","name":"dst","type":"address"},{"indexed":false,"internalType":"uint256","name":"wad","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"src","type":"address"},{"indexed":false,"internalType":"uint256","name":"wad","type":"uint256"}],"name":"Withdrawal","type":"event"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"deposit","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"wad","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"guy","type":"address"},{"internalType":"uint256","name":"wad","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"dst","type":"address"},{"internalType":"uint256","name":"wad","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"src","type":"address"},{"internalType":"address","name":"dst","type":"address"},{"internalType":"uint256","name":"wad","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/WRBTC.bin b/solidity/build/WRBTC.bin index 2059463..77cfdfb 100644 --- a/solidity/build/WRBTC.bin +++ b/solidity/build/WRBTC.bin @@ -1 +1 @@ -60806040526040518060400160405280600b81526020017f57726170706564204254430000000000000000000000000000000000000000008152506000908051906020019061004f9291906100ca565b506040518060400160405280600581526020017f57524254430000000000000000000000000000000000000000000000000000008152506001908051906020019061009b9291906100ca565b506012600260006101000a81548160ff021916908360ff1602179055503480156100c457600080fd5b5061016f565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061010b57805160ff1916838001178555610139565b82800160010185558215610139579182015b8281111561013857825182559160200191906001019061011d565b5b509050610146919061014a565b5090565b61016c91905b80821115610168576000816000905550600101610150565b5090565b90565b610cb18061017e6000396000f3fe60806040526004361061009c5760003560e01c8063313ce56711610064578063313ce567146102a257806370a08231146102d357806395d89b4114610338578063a9059cbb146103c8578063d0e30db01461043b578063dd62ed3e146104455761009c565b806306fdde03146100a6578063095ea7b31461013657806318160ddd146101a957806323b872dd146101d45780632e1a7d4d14610267575b6100a46104ca565b005b3480156100b257600080fd5b506100bb610567565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100fb5780820151818401526020810190506100e0565b50505050905090810190601f1680156101285780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561014257600080fd5b5061018f6004803603604081101561015957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610605565b604051808215151515815260200191505060405180910390f35b3480156101b557600080fd5b506101be6106f7565b6040518082815260200191505060405180910390f35b3480156101e057600080fd5b5061024d600480360360608110156101f757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506106ff565b604051808215151515815260200191505060405180910390f35b34801561027357600080fd5b506102a06004803603602081101561028a57600080fd5b8101908080359060200190929190505050610a48565b005b3480156102ae57600080fd5b506102b7610b79565b604051808260ff1660ff16815260200191505060405180910390f35b3480156102df57600080fd5b50610322600480360360208110156102f657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b8c565b6040518082815260200191505060405180910390f35b34801561034457600080fd5b5061034d610ba4565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561038d578082015181840152602081019050610372565b50505050905090810190601f1680156103ba5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103d457600080fd5b50610421600480360360408110156103eb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c42565b604051808215151515815260200191505060405180910390f35b6104436104ca565b005b34801561045157600080fd5b506104b46004803603604081101561046857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c57565b6040518082815260200191505060405180910390f35b34600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055503373ffffffffffffffffffffffffffffffffffffffff167fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c346040518082815260200191505060405180910390a2565b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105fd5780601f106105d2576101008083540402835291602001916105fd565b820191906000526020600020905b8154815290600101906020018083116105e057829003601f168201915b505050505081565b600081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b600047905090565b600081600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561074d57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561082557507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414155b1561093e5781600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156108b357600080fd5b81600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055505b81600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b80600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610a9457600080fd5b80600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015610b27573d6000803e3d6000fd5b503373ffffffffffffffffffffffffffffffffffffffff167f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b65826040518082815260200191505060405180910390a250565b600260009054906101000a900460ff1681565b60036020528060005260406000206000915090505481565b60018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b505050505081565b6000610c4f3384846106ff565b905092915050565b600460205281600052604060002060205280600052604060002060009150915050548156fea265627a7a723158200679204663409e9cbe250c6c26848e00e9ebde35d7d9a031d3cca8ae03a4aafc64736f6c63430005100032 \ No newline at end of file +60806040526040518060400160405280600b81526020017f57726170706564204254430000000000000000000000000000000000000000008152506000908051906020019061004f9291906100ca565b506040518060400160405280600581526020017f57524254430000000000000000000000000000000000000000000000000000008152506001908051906020019061009b9291906100ca565b506012600260006101000a81548160ff021916908360ff1602179055503480156100c457600080fd5b5061016f565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061010b57805160ff1916838001178555610139565b82800160010185558215610139579182015b8281111561013857825182559160200191906001019061011d565b5b509050610146919061014a565b5090565b61016c91905b80821115610168576000816000905550600101610150565b5090565b90565b610cb18061017e6000396000f3fe60806040526004361061009c5760003560e01c8063313ce56711610064578063313ce567146102a257806370a08231146102d357806395d89b4114610338578063a9059cbb146103c8578063d0e30db01461043b578063dd62ed3e146104455761009c565b806306fdde03146100a6578063095ea7b31461013657806318160ddd146101a957806323b872dd146101d45780632e1a7d4d14610267575b6100a46104ca565b005b3480156100b257600080fd5b506100bb610567565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100fb5780820151818401526020810190506100e0565b50505050905090810190601f1680156101285780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561014257600080fd5b5061018f6004803603604081101561015957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610605565b604051808215151515815260200191505060405180910390f35b3480156101b557600080fd5b506101be6106f7565b6040518082815260200191505060405180910390f35b3480156101e057600080fd5b5061024d600480360360608110156101f757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506106ff565b604051808215151515815260200191505060405180910390f35b34801561027357600080fd5b506102a06004803603602081101561028a57600080fd5b8101908080359060200190929190505050610a48565b005b3480156102ae57600080fd5b506102b7610b79565b604051808260ff1660ff16815260200191505060405180910390f35b3480156102df57600080fd5b50610322600480360360208110156102f657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b8c565b6040518082815260200191505060405180910390f35b34801561034457600080fd5b5061034d610ba4565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561038d578082015181840152602081019050610372565b50505050905090810190601f1680156103ba5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103d457600080fd5b50610421600480360360408110156103eb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c42565b604051808215151515815260200191505060405180910390f35b6104436104ca565b005b34801561045157600080fd5b506104b46004803603604081101561046857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c57565b6040518082815260200191505060405180910390f35b34600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055503373ffffffffffffffffffffffffffffffffffffffff167fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c346040518082815260200191505060405180910390a2565b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105fd5780601f106105d2576101008083540402835291602001916105fd565b820191906000526020600020905b8154815290600101906020018083116105e057829003601f168201915b505050505081565b600081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b600047905090565b600081600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561074d57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561082557507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414155b1561093e5781600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156108b357600080fd5b81600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055505b81600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b80600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610a9457600080fd5b80600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015610b27573d6000803e3d6000fd5b503373ffffffffffffffffffffffffffffffffffffffff167f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b65826040518082815260200191505060405180910390a250565b600260009054906101000a900460ff1681565b60036020528060005260406000206000915090505481565b60018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b505050505081565b6000610c4f3384846106ff565b905092915050565b600460205281600052604060002060205280600052604060002060009150915050548156fea265627a7a723158200daa7bb0ca5e56a012f6a1aff174873aafb4a470544849272fe7330881afe65664736f6c63430005100032 \ No newline at end of file diff --git a/solidity/build/Whitelist.abi b/solidity/build/Whitelist.abi index 198d22e..7d6a1c1 100644 --- a/solidity/build/Whitelist.abi +++ b/solidity/build/Whitelist.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[{"name":"_addresses","type":"address[]"}],"name":"addAddresses","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"addAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"isWhitelisted","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"removeAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addresses","type":"address[]"}],"name":"removeAddresses","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_address","type":"address"}],"name":"AddressAddition","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_address","type":"address"}],"name":"AddressRemoval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}] \ No newline at end of file +[{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_address","type":"address"}],"name":"AddressAddition","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_address","type":"address"}],"name":"AddressRemoval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"isWhitelisted","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"addAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addresses","type":"address[]"}],"name":"addAddresses","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"removeAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addresses","type":"address[]"}],"name":"removeAddresses","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/Whitelist.bin b/solidity/build/Whitelist.bin index eb22c51..73c46eb 100644 --- a/solidity/build/Whitelist.bin +++ b/solidity/build/Whitelist.bin @@ -1 +1 @@ -608060405260008054600160a060020a03191633179055610642806100256000396000f3006080604052600436106100985763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416633628731c811461009d57806338eada1c146100f45780633af32abf146101155780634ba79dfe1461014a57806379ba50971461016b5780638da5cb5b14610180578063a84eb999146101b1578063d4ee1d9014610206578063f2fde38b1461021b575b600080fd5b3480156100a957600080fd5b50604080516020600480358082013583810280860185019096528085526100f29536959394602494938501929182918501908490808284375094975061023c9650505050505050565b005b34801561010057600080fd5b506100f2600160a060020a0360043516610274565b34801561012157600080fd5b50610136600160a060020a03600435166102f9565b604080519115158252519081900360200190f35b34801561015657600080fd5b506100f2600160a060020a0360043516610317565b34801561017757600080fd5b506100f2610390565b34801561018c57600080fd5b50610195610463565b60408051600160a060020a039092168252519081900360200190f35b3480156101bd57600080fd5b50604080516020600480358082013583810280860185019096528085526100f2953695939460249493850192918291850190849080828437509497506104729650505050505050565b34801561021257600080fd5b506101956104a6565b34801561022757600080fd5b506100f2600160a060020a03600435166104b5565b60005b815181101561027057610268828281518110151561025957fe5b90602001906020020151610274565b60010161023f565b5050565b61027c610552565b80610286816105b6565b600160a060020a03821660009081526002602052604090205460ff16156102ac57610270565b600160a060020a038216600081815260026020526040808220805460ff19166001179055517f2c51f80053e9ee7518567e43b2f8e8b48f50cf10daede6d11893df9ad49e4a8a9190a25050565b600160a060020a031660009081526002602052604090205460ff1690565b61031f610552565b600160a060020a03811660009081526002602052604090205460ff1615156103465761038d565b600160a060020a038116600081815260026020526040808220805460ff19169055517f7ec2df28665f8610f9b1d2f74faae35dbc6bd58684a1194a6dfc31584953f03b9190a25b50565b600154600160a060020a031633146103f2576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600054600160a060020a031681565b60005b81518110156102705761049e828281518110151561048f57fe5b90602001906020020151610317565b600101610475565b600154600160a060020a031681565b6104bd610552565b600054600160a060020a0382811691161415610523576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a031633146105b4576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b600160a060020a038116151561038d576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd00a165627a7a72305820e6ed9b6534a4d26659e0f8ead472932be266f4a69bfc4e521a67227db2260aa30029 \ No newline at end of file +608060405260008054600160a060020a03191633179055610642806100256000396000f3006080604052600436106100985763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416633628731c811461009d57806338eada1c146100f45780633af32abf146101155780634ba79dfe1461014a57806379ba50971461016b5780638da5cb5b14610180578063a84eb999146101b1578063d4ee1d9014610206578063f2fde38b1461021b575b600080fd5b3480156100a957600080fd5b50604080516020600480358082013583810280860185019096528085526100f29536959394602494938501929182918501908490808284375094975061023c9650505050505050565b005b34801561010057600080fd5b506100f2600160a060020a0360043516610274565b34801561012157600080fd5b50610136600160a060020a03600435166102f9565b604080519115158252519081900360200190f35b34801561015657600080fd5b506100f2600160a060020a0360043516610317565b34801561017757600080fd5b506100f2610390565b34801561018c57600080fd5b50610195610463565b60408051600160a060020a039092168252519081900360200190f35b3480156101bd57600080fd5b50604080516020600480358082013583810280860185019096528085526100f2953695939460249493850192918291850190849080828437509497506104729650505050505050565b34801561021257600080fd5b506101956104a6565b34801561022757600080fd5b506100f2600160a060020a03600435166104b5565b60005b815181101561027057610268828281518110151561025957fe5b90602001906020020151610274565b60010161023f565b5050565b61027c610552565b80610286816105b6565b600160a060020a03821660009081526002602052604090205460ff16156102ac57610270565b600160a060020a038216600081815260026020526040808220805460ff19166001179055517f2c51f80053e9ee7518567e43b2f8e8b48f50cf10daede6d11893df9ad49e4a8a9190a25050565b600160a060020a031660009081526002602052604090205460ff1690565b61031f610552565b600160a060020a03811660009081526002602052604090205460ff1615156103465761038d565b600160a060020a038116600081815260026020526040808220805460ff19169055517f7ec2df28665f8610f9b1d2f74faae35dbc6bd58684a1194a6dfc31584953f03b9190a25b50565b600154600160a060020a031633146103f2576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600054600160a060020a031681565b60005b81518110156102705761049e828281518110151561048f57fe5b90602001906020020151610317565b600101610475565b600154600160a060020a031681565b6104bd610552565b600054600160a060020a0382811691161415610523576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a031633146105b4576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b600160a060020a038116151561038d576040805160e560020a62461bcd02815260206004820152601360248201527f4552525f494e56414c49445f4144445245535300000000000000000000000000604482015290519081900360640190fd00a165627a7a72305820fe89aa0c79679c1eff9542c0a01946757f4c53d5c4d0a1d072f59e72f4ad76140029 \ No newline at end of file diff --git a/solidity/build/XTransferRerouter.abi b/solidity/build/XTransferRerouter.abi index 67b2c77..6ac9e53 100644 --- a/solidity/build/XTransferRerouter.abi +++ b/solidity/build/XTransferRerouter.abi @@ -1 +1 @@ -[{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_enable","type":"bool"}],"name":"enableRerouting","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_txId","type":"uint256"},{"name":"_blockchain","type":"bytes32"},{"name":"_to","type":"bytes32"}],"name":"rerouteTx","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"reroutingEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_reroutingEnabled","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_txId","type":"uint256"},{"indexed":false,"name":"_toBlockchain","type":"bytes32"},{"indexed":false,"name":"_to","type":"bytes32"}],"name":"TxReroute","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}] \ No newline at end of file +[{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"reroutingEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_reroutingEnabled","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_txId","type":"uint256"},{"indexed":false,"name":"_toBlockchain","type":"bytes32"},{"indexed":false,"name":"_to","type":"bytes32"}],"name":"TxReroute","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"},{"constant":false,"inputs":[{"name":"_enable","type":"bool"}],"name":"enableRerouting","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_txId","type":"uint256"},{"name":"_blockchain","type":"bytes32"},{"name":"_to","type":"bytes32"}],"name":"rerouteTx","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/solidity/build/XTransferRerouter.bin b/solidity/build/XTransferRerouter.bin index 6d6c9f7..662c4b2 100644 --- a/solidity/build/XTransferRerouter.bin +++ b/solidity/build/XTransferRerouter.bin @@ -1 +1 @@ -608060405234801561001057600080fd5b5060405160208061051b833981016040525160008054600160a060020a0319163317905560018054911515740100000000000000000000000000000000000000000260a060020a60ff02199092169190911790556104a8806100736000396000f3006080604052600436106100825763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166379ba509781146100875780638da5cb5b1461009e578063a3ebe71c146100cf578063d4ee1d90146100e9578063e3db16f7146100fe578063edd63c351461011c578063f2fde38b14610145575b600080fd5b34801561009357600080fd5b5061009c610166565b005b3480156100aa57600080fd5b506100b3610239565b60408051600160a060020a039092168252519081900360200190f35b3480156100db57600080fd5b5061009c6004351515610248565b3480156100f557600080fd5b506100b3610290565b34801561010a57600080fd5b5061009c60043560243560443561029f565b34801561012857600080fd5b506101316102e6565b604080519115158252519081900360200190f35b34801561015157600080fd5b5061009c600160a060020a0360043516610307565b600154600160a060020a031633146101c8576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600054600160a060020a031681565b6102506103a4565b60018054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b600154600160a060020a031681565b6102a7610408565b6040805183815260208101839052815185927fb5c80f971fb729e469ffa874c60425659ce82cb4adcfba9731af35ef87b6e619928290030190a2505050565b60015474010000000000000000000000000000000000000000900460ff1681565b61030f6103a4565b600054600160a060020a0382811691161415610375576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a03163314610406576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b60015474010000000000000000000000000000000000000000900460ff161515610406576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f44495341424c45440000000000000000000000000000000000000000604482015290519081900360640190fd00a165627a7a72305820e47d0acc18865926422ffb9d53f4b44521ace729fff7777114a4440c0d08d9ff0029 \ No newline at end of file +608060405234801561001057600080fd5b5060405160208061051b833981016040525160008054600160a060020a0319163317905560018054911515740100000000000000000000000000000000000000000260a060020a60ff02199092169190911790556104a8806100736000396000f3006080604052600436106100825763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166379ba509781146100875780638da5cb5b1461009e578063a3ebe71c146100cf578063d4ee1d90146100e9578063e3db16f7146100fe578063edd63c351461011c578063f2fde38b14610145575b600080fd5b34801561009357600080fd5b5061009c610166565b005b3480156100aa57600080fd5b506100b3610239565b60408051600160a060020a039092168252519081900360200190f35b3480156100db57600080fd5b5061009c6004351515610248565b3480156100f557600080fd5b506100b3610290565b34801561010a57600080fd5b5061009c60043560243560443561029f565b34801561012857600080fd5b506101316102e6565b604080519115158252519081900360200190f35b34801561015157600080fd5b5061009c600160a060020a0360043516610307565b600154600160a060020a031633146101c8576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b60015460008054604051600160a060020a0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600054600160a060020a031681565b6102506103a4565b60018054911515740100000000000000000000000000000000000000000274ff000000000000000000000000000000000000000019909216919091179055565b600154600160a060020a031681565b6102a7610408565b6040805183815260208101839052815185927fb5c80f971fb729e469ffa874c60425659ce82cb4adcfba9731af35ef87b6e619928290030190a2505050565b60015474010000000000000000000000000000000000000000900460ff1681565b61030f6103a4565b600054600160a060020a0382811691161415610375576040805160e560020a62461bcd02815260206004820152600e60248201527f4552525f53414d455f4f574e4552000000000000000000000000000000000000604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a03163314610406576040805160e560020a62461bcd02815260206004820152601160248201527f4552525f4143434553535f44454e494544000000000000000000000000000000604482015290519081900360640190fd5b565b60015474010000000000000000000000000000000000000000900460ff161515610406576040805160e560020a62461bcd02815260206004820152600c60248201527f4552525f44495341424c45440000000000000000000000000000000000000000604482015290519081900360640190fd00a165627a7a72305820fef02194e889c3d4541a4086bed6fe662eeff3c4b41b9c385a498fd9002c15100029 \ No newline at end of file diff --git a/solidity/test/ConverterLiquidity.js b/solidity/test/ConverterLiquidity.js index e527b03..26e7d15 100644 --- a/solidity/test/ConverterLiquidity.js +++ b/solidity/test/ConverterLiquidity.js @@ -14,7 +14,6 @@ contract("ConverterLiquidity", (accounts) => { const initLiquidityPool = async (hasETH, ...weights) => { const smartToken = await SmartToken.new("name", "symbol", 0); const converter = await LiquidityPoolV1Converter.new(smartToken.address, contractRegistry.address, 0); - for (let i = 0; i < weights.length; i++) { if (hasETH && i === weights.length - 1) { await converter.addReserve(ETH_RESERVE_ADDRESS, weights[i] * 10000); @@ -94,7 +93,7 @@ contract("ConverterLiquidity", (accounts) => { let smartToken; let reserveTokens; - const weights = [1, 2, 3, 4, 5]; + const weights = [1, 2]; const reserveAmounts = weights.map((weight) => 1); context("without ether reserve", async () => { @@ -170,7 +169,8 @@ contract("ConverterLiquidity", (accounts) => { const state = []; let expected = []; - for (const supplyAmount of [1000000000, 1000000, 2000000, 3000000, 4000000]) { + for (const supplyAmount of [1000000000, 1000000]) { + //}, 2000000, 3000000, 4000000]) { const reserveAmounts = reserveTokens.map((reserveToken, i) => new BN(supplyAmount).mul(new BN(100 + i)).div(new BN(100))); await Promise.all(reserveTokens.map((reserveToken, i) => approve(reserveToken, converter, reserveAmounts[i].mul(new BN(0))))); await Promise.all(reserveTokens.map((reserveToken, i) => approve(reserveToken, converter, reserveAmounts[i].mul(new BN(1))))); @@ -223,8 +223,8 @@ contract("ConverterLiquidity", (accounts) => { }; for (const hasETH of [false, true]) { - for (const weight1 of [10, 20, 30, 40, 50, 60, 70, 80, 90]) { - for (const weight2 of [10, 20, 30, 40, 50, 60, 70, 80, 90]) { + for (const weight1 of [10, 20]) { + for (const weight2 of [10, 20]) { if (weight1 + weight2 <= 100) { test(hasETH, weight1, weight2); } @@ -233,12 +233,10 @@ contract("ConverterLiquidity", (accounts) => { } for (const hasETH of [false, true]) { - for (const weight1 of [10, 20, 30, 40, 50, 60]) { - for (const weight2 of [10, 20, 30, 40, 50, 60]) { - for (const weight3 of [10, 20, 30, 40, 50, 60]) { - if (weight1 + weight2 + weight3 <= 100) { - test(hasETH, weight1, weight2, weight3); - } + for (const weight1 of [10, 20]) { + for (const weight2 of [10, 20]) { + if (weight1 + weight2 <= 100) { + test(hasETH, weight1, weight2); } } } diff --git a/solidity/utils/addConverter.js b/solidity/utils/addConverter.js index 5ec4f05..fa1efcb 100644 --- a/solidity/utils/addConverter.js +++ b/solidity/utils/addConverter.js @@ -4,14 +4,24 @@ const Web3 = require("web3"); const TOKEN_NAME = process.argv[2]; const NETWORK = process.argv[3]; +const TOKEN_CONFIG_FILENAME = process.argv[4]; const NODE_ADDRESS = process.argv[5]; const PRIVATE_KEY = process.argv[6]; const ARTIFACTS_DIR = path.resolve(__dirname, "../build"); const MIN_GAS_LIMIT = 100000; -const TOKEN_CONFIG_FILENAME = `config_${NETWORK}_${TOKEN_NAME}.json`; -const DATA_FILENAME = `add_${TOKEN_NAME}.json`; +// const TOKEN_CONFIG_FILENAME = `config_${NETWORK}.json`; +const DATA_FILENAME = `add${TOKEN_NAME}.json`; + +const execute = async (transaction, ...args) => { + if (getConfig().phase === phase++) { + await web3Func(send, transaction, ...args); + console.log(`phase ${phase} executed`); + setConfig({ phase }); + } +}; + String.prototype.replaceAll = function (exp, newStr) { return this.replace(new RegExp(exp, "gm"), newStr); }; @@ -126,21 +136,23 @@ const send = async (web3, account, gasPrice, transaction, value = 0) => { const deploy = async (web3, account, gasPrice, contractId, contractName, contractArgs) => { if (getConfig()[contractId] === undefined) { - const buildFile = JSON.parse(fs.readFileSync(path.join(ARTIFACTS_DIR, contractName + ".json"), { encoding: "utf8" })); - const contract = new web3.eth.Contract(abi); - const options = { data: bin, arguments: contractArgs }; + const abi = fs.readFileSync(path.join(ARTIFACTS_DIR, contractName + ".abi"), { encoding: "utf8" }); + const bin = fs.readFileSync(path.join(ARTIFACTS_DIR, contractName + ".bin"), { encoding: "utf8" }); + const contract = new web3.eth.Contract(JSON.parse(abi)); + const options = { data: "0x" + bin, arguments: contractArgs }; const transaction = contract.deploy(options); const receipt = await send(web3, account, gasPrice, transaction); const args = transaction.encodeABI().slice(options.data.length); console.log(`${contractId} deployed at ${receipt.contractAddress}`); setConfig({ [contractId]: { name: contractName, addr: receipt.contractAddress, args: args } }); } + return deployed(web3, contractName, getConfig()[contractId].addr); }; const deployed = (web3, contractName, contractAddr) => { - const buildFile = JSON.parse(fs.readFileSync(path.join(ARTIFACTS_DIR, contractName + ".json"), { encoding: "utf8" })); - return new web3.eth.Contract(buildFile.abi, contractAddr); + const abi = fs.readFileSync(path.join(ARTIFACTS_DIR, contractName + ".abi"), { encoding: "utf8" }); + return new web3.eth.Contract(JSON.parse(abi), contractAddr); }; const decimalToInteger = (value, decimals) => { @@ -232,7 +244,7 @@ const addConverter = async (tokenOracleName, oracleMockName, oracleMockValue, or await execute(converterRegistry.methods.newConverter(type, name, symbol, decimals, "1000000", tokens, weights)); await execute(converterRegistry.methods.setupConverter(type, tokens, weights, newConverter)); - const oracle = await web3Func(deploy, "oracle", "Oracle", [newConverter]); + const oracle = await web3Func(deploy, "Oracle", "Oracle", [newConverter]); console.log("New Converter is ", newConverter); setConfig({ [`newLiquidityPoolV${type}Converter`]: { name: `LiquidityPoolV${type}Converter`, addr: newConverter, args: "" } }); diff --git a/solidity/utils/addSOV.json b/solidity/utils/addSOV.json index a05c2b6..841a15c 100644 --- a/solidity/utils/addSOV.json +++ b/solidity/utils/addSOV.json @@ -1,9 +1,9 @@ { "reserves": [ { - "symbol": "(WR)BTC", + "symbol": "RBTC", "decimals": 18, - "address": "0xFD2E6034Be9Fb1F54ae380a22d6b9FFFc01442F0" + "address": "0xB2A4dF67d6146067Ce20412B8a012BE9c3032614" }, { "symbol": "SOV", @@ -13,12 +13,12 @@ "converters": [ { "type": 1, - "symbol": "(WR)BTC/SOV", + "symbol": "RBTC/SOV", "decimals": 18, "fee": "0.1%", "reserves": [ { - "symbol": "(WR)BTC", + "symbol": "RBTC", "weight": "50%", "balance": "0.01" }, @@ -30,19 +30,89 @@ ] } ], - "phase": 7, - "(WR)BTC": { - "name": "(WR)BTC", - "addr": "0xFD2E6034Be9Fb1F54ae380a22d6b9FFFc01442F0" + "phase": 25, + "contractRegistry": { + "name": "ContractRegistry", + "addr": "0x3e23B8f8E9d7f636E77487A63cE86197F68fb1D7", + "args": "" + }, + "converterFactory": { + "name": "ConverterFactory", + "addr": "0xbCA4CB0d5CBeA95AE037B1c1f4E9B059114fE952", + "args": "" + }, + "sovrynSwapFormula": { + "name": "SovrynSwapFormula", + "addr": "0xE6dd1992286De6820d96eA6b66C186ee8a8f7874", + "args": "" + }, + "sovrynSwapNetwork": { + "name": "SovrynSwapNetwork", + "addr": "0x0Ca64Dc75f7a8261aC8fAEbc17ef5b427dE6F81E", + "args": "0000000000000000000000003e23b8f8e9d7f636e77487a63ce86197f68fb1d7" + }, + "conversionPathFinder": { + "name": "ConversionPathFinder", + "addr": "0xC33B6fc4389904b3ECd1e2A485a9B567EF294C9F", + "args": "0000000000000000000000003e23b8f8e9d7f636e77487a63ce86197f68fb1d7" + }, + "converterUpgrader": { + "name": "ConverterUpgrader", + "addr": "0x2C7F6259D25A58f39D70909c852E9cAF0268AAEd", + "args": "0000000000000000000000003e23b8f8e9d7f636e77487a63ce86197f68fb1d7000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee" + }, + "converterRegistry": { + "name": "ConverterRegistry", + "addr": "0x421c9f841f48C5B4b8a7b8227f998ea8338125a9", + "args": "0000000000000000000000003e23b8f8e9d7f636e77487a63ce86197f68fb1d7" + }, + "converterRegistryData": { + "name": "ConverterRegistryData", + "addr": "0xc157664059557E175a4B185Db0715618976A6eD6", + "args": "0000000000000000000000003e23b8f8e9d7f636e77487a63ce86197f68fb1d7" + }, + "liquidTokenConverterFactory": { + "name": "LiquidTokenConverterFactory", + "addr": "0xbC97A57839c981d911E0768cF2e3B5EA3da564D9", + "args": "" + }, + "liquidityPoolV1ConverterFactory": { + "name": "LiquidityPoolV1ConverterFactory", + "addr": "0xbc199483BD537CB18e4447b88e322b3611F69FF0", + "args": "" + }, + "oracleWhitelist": { + "name": "Whitelist", + "addr": "0x3a6ce1212F3051f73EF26a4ea3c95269747Dda19", + "args": "" + }, + "mocMedianizerMockUSDtoBTC": { + "name": "MoCMedianizerMock", + "addr": "0x181188B68Bd062e7d1a6f5d04f5CC1Bc5fA37C1A", + "args": "" + }, + "RBTC": { + "name": "RBTC", + "addr": "0xB2A4dF67d6146067Ce20412B8a012BE9c3032614" }, "SOV": { "name": "ERC20Token", - "addr": "0x4c2462b1f9507Ca72Ee578c02F43740f7d6EB1dB", + "addr": "0xdd41d8651e93b050b8E13979FcfcB5A5d2f2f91B", "args": "000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000021e19e0c9bab24000000000000000000000000000000000000000000000000000000000000000000003534f5600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003534f560000000000000000000000000000000000000000000000000000000000" }, + "Oracle": { + "name": "Oracle", + "addr": "0x93b33d9Bd715BFE3385a68384Fc09Fb9b800955f", + "args": "000000000000000000000000710fdb419c5a0f469792865fe54e0540d1254d8f000000000000000000000000b2a4df67d6146067ce20412b8a012be9c3032614" + }, "newLiquidityPoolV1Converter": { "name": "LiquidityPoolV1Converter", - "addr": "0x864Cf32F95CF809C1D8E73F547C51fE11597EaDA", + "addr": "0x710fDb419c5a0f469792865fe54e0540D1254d8F", "args": "" + }, + "swapSettings": { + "name": "SwapSettings", + "addr": "0x9f293dF1aF5f0AecFCF68F75001d824Cad0b07B2", + "args": "000000000000000000000000b2a4df67d6146067ce20412b8a012be9c3032614000000000000000000000000b2a4df67d6146067ce20412b8a012be9c3032614000000000000000000000000dd41d8651e93b050b8e13979fcfcb5a5d2f2f91b0000000000000000000000000000000000000000000000000000000000000000" } } \ No newline at end of file diff --git a/solidity/utils/addUSDSOV.json b/solidity/utils/addUSDSOV.json new file mode 100644 index 0000000..2c9f5fe --- /dev/null +++ b/solidity/utils/addUSDSOV.json @@ -0,0 +1,123 @@ +{ + "reserves": [ + { + "symbol": "SUSD", + "decimals": 18, + "address": "0x7D4D2fE5FE76E87e18b2a0DD0676E113A416DAde" + }, + { + "symbol": "SOV", + "decimals": 18, + "address": "0xdd41d8651e93b050b8E13979FcfcB5A5d2f2f91B" + } + ], + "converters": [ + { + "type": 1, + "symbol": "SUSD/SOV", + "decimals": 18, + "fee": "0.1%", + "reserves": [ + { + "symbol": "SUSD", + "weight": "50%", + "balance": "0.01" + }, + { + "symbol": "SOV", + "weight": "50%", + "balance": "67" + } + ] + } + ], + "contractRegistry": { + "name": "ContractRegistry", + "addr": "0x878C99382f042CB8AEabDa4C93Ad0cF560Fc35D1", + "args": "" + }, + "converterFactory": { + "name": "ConverterFactory", + "addr": "0xe2b7E0B2fB9C317eF322A77E4D7880b1811b2E6b", + "args": "" + }, + "sovrynSwapFormula": { + "name": "SovrynSwapFormula", + "addr": "0x0C68Bc4af58b869f269c124DC38Eccf70E2C6fF8", + "args": "" + }, + "sovrynSwapNetwork": { + "name": "SovrynSwapNetwork", + "addr": "0x38267365CaaaA7aC97B71B7bD87Ff8CF4701C6F1", + "args": "000000000000000000000000878c99382f042cb8aeabda4c93ad0cf560fc35d1" + }, + "conversionPathFinder": { + "name": "ConversionPathFinder", + "addr": "0x53F12F1FB95ceD342bf79C0F7C79D2291033f283", + "args": "000000000000000000000000878c99382f042cb8aeabda4c93ad0cf560fc35d1" + }, + "converterUpgrader": { + "name": "ConverterUpgrader", + "addr": "0xd73B41F7ff39BFF18C4414F454951e3A98262900", + "args": "000000000000000000000000878c99382f042cb8aeabda4c93ad0cf560fc35d1000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee" + }, + "converterRegistry": { + "name": "ConverterRegistry", + "addr": "0xa522C61C57F96014Bf310Ac45394d180a6Bf112b", + "args": "000000000000000000000000878c99382f042cb8aeabda4c93ad0cf560fc35d1" + }, + "converterRegistryData": { + "name": "ConverterRegistryData", + "addr": "0x9B0C1cfed511Dcc277E8E3416C7D8813AB1A3F54", + "args": "000000000000000000000000878c99382f042cb8aeabda4c93ad0cf560fc35d1" + }, + "liquidTokenConverterFactory": { + "name": "LiquidTokenConverterFactory", + "addr": "0x46c3659febC28626c3967A3DA0B7932E2A736675", + "args": "" + }, + "liquidityPoolV1ConverterFactory": { + "name": "LiquidityPoolV1ConverterFactory", + "addr": "0xCde2D9C2513231458A8FC8219eBffF638857F2C7", + "args": "" + }, + "mocMedianizerMockUSDtoBTC": { + "name": "MoCMedianizerMock", + "addr": "0x087c85c99Eda409a6E1c711FDa279B1B0eC60D28", + "args": "" + }, + "RBTC": { + "name": "WRBTC", + "addr": "0xB2A4dF67d6146067Ce20412B8a012BE9c3032614", + "args": "" + }, + "SUSD": { + "name": "SUSD", + "addr": "0x7D4D2fE5FE76E87e18b2a0DD0676E113A416DAde" + }, + "newLiquidityPoolV1Converter": { + "name": "LiquidityPoolV1Converter", + "addr": "0xa0ab86AD2E327F55Ce0ceAce836Aeebf379E3B3E", + "args": "" + }, + "swapSettings": { + "name": "SwapSettings", + "addr": "0x7cE1b21f3B239Cbc1581d8f83ffD978C583BAa20", + "args": "000000000000000000000000b2a4df67d6146067ce20412b8a012be9c3032614000000000000000000000000b2a4df67d6146067ce20412b8a012be9c30326140000000000000000000000007d4d2fe5fe76e87e18b2a0dd0676e113a416dade0000000000000000000000000000000000000000000000000000000000000000" + }, + "phase": 25, + "oracleWhitelist": { + "name": "Whitelist", + "addr": "0xCA409d177FD9617F744C92a304e0B9602c447199", + "args": "" + }, + "SOV": { + "name": "SOV", + "addr": "0xdd41d8651e93b050b8E13979FcfcB5A5d2f2f91B" + }, + "Oracle": { + "name": "Oracle", + "addr": "0x33D2d77AbEEf3D4Bc93fB0cD1009eB20AF3B1184", + "args": "000000000000000000000000a0ab86ad2e327f55ce0ceace836aeebf379e3b3e0000000000000000000000007d4d2fe5fe76e87e18b2a0dd0676e113a416dade" + } +} \ No newline at end of file diff --git a/solidity/utils/config_rsk.json b/solidity/utils/config_rsk.json index e4b017b..73f0786 100644 --- a/solidity/utils/config_rsk.json +++ b/solidity/utils/config_rsk.json @@ -1,16 +1,12 @@ { - "privateKey": "0x", - "nodeURL": "http://127.0.0.1:8545", "reserves": [ { "symbol": "RBTC", - "decimals": 18, - "address": "" + "decimals": 18 }, { "symbol": "SUSD", - "decimals": 18, - "address": "" + "decimals": 18 } ], "converters": [ @@ -32,5 +28,91 @@ } ] } - ] + ], + "phase": 26, + "contractRegistry": { + "name": "ContractRegistry", + "addr": "0x878C99382f042CB8AEabDa4C93Ad0cF560Fc35D1", + "args": "" + }, + "converterFactory": { + "name": "ConverterFactory", + "addr": "0xe2b7E0B2fB9C317eF322A77E4D7880b1811b2E6b", + "args": "" + }, + "sovrynSwapFormula": { + "name": "SovrynSwapFormula", + "addr": "0x0C68Bc4af58b869f269c124DC38Eccf70E2C6fF8", + "args": "" + }, + "sovrynSwapNetwork": { + "name": "SovrynSwapNetwork", + "addr": "0x38267365CaaaA7aC97B71B7bD87Ff8CF4701C6F1", + "args": "000000000000000000000000878c99382f042cb8aeabda4c93ad0cf560fc35d1" + }, + "conversionPathFinder": { + "name": "ConversionPathFinder", + "addr": "0x53F12F1FB95ceD342bf79C0F7C79D2291033f283", + "args": "000000000000000000000000878c99382f042cb8aeabda4c93ad0cf560fc35d1" + }, + "converterUpgrader": { + "name": "ConverterUpgrader", + "addr": "0xd73B41F7ff39BFF18C4414F454951e3A98262900", + "args": "000000000000000000000000878c99382f042cb8aeabda4c93ad0cf560fc35d1000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee" + }, + "converterRegistry": { + "name": "ConverterRegistry", + "addr": "0xa522C61C57F96014Bf310Ac45394d180a6Bf112b", + "args": "000000000000000000000000878c99382f042cb8aeabda4c93ad0cf560fc35d1" + }, + "converterRegistryData": { + "name": "ConverterRegistryData", + "addr": "0x9B0C1cfed511Dcc277E8E3416C7D8813AB1A3F54", + "args": "000000000000000000000000878c99382f042cb8aeabda4c93ad0cf560fc35d1" + }, + "liquidTokenConverterFactory": { + "name": "LiquidTokenConverterFactory", + "addr": "0x46c3659febC28626c3967A3DA0B7932E2A736675", + "args": "" + }, + "liquidityPoolV1ConverterFactory": { + "name": "LiquidityPoolV1ConverterFactory", + "addr": "0xCde2D9C2513231458A8FC8219eBffF638857F2C7", + "args": "" + }, + "oracleWhitelist": { + "name": "Whitelist", + "addr": "0x990bcA0089026BD8c8b5b6846BD0a4254dDaE5Dc", + "args": "" + }, + "mocMedianizerMockUSDtoBTC": { + "name": "MoCMedianizerMock", + "addr": "0x087c85c99Eda409a6E1c711FDa279B1B0eC60D28", + "args": "" + }, + "RBTC": { + "name": "WRBTC", + "addr": "0xB2A4dF67d6146067Ce20412B8a012BE9c3032614", + "args": "" + }, + "SUSD": { + "name": "ERC20Token", + "addr": "0x7D4D2fE5FE76E87e18b2a0DD0676E113A416DAde", + "args": "000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000021e19e0c9bab24000000000000000000000000000000000000000000000000000000000000000000004535553440000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000045355534400000000000000000000000000000000000000000000000000000000" + }, + "Oracle": { + "name": "Oracle", + "addr": "0x789798CebBCFe6FeA0c05C8a1c983335e1266202", + "args": "0000000000000000000000009d4db46acc309184160bb4d5626e67e36e8aac2d000000000000000000000000b2a4df67d6146067ce20412b8a012be9c3032614" + }, + "newLiquidityPoolV1Converter": { + "name": "LiquidityPoolV1Converter", + "addr": "0x9D4DB46AcC309184160bb4d5626E67E36e8Aac2D", + "args": "" + }, + "swapSettings": { + "name": "SwapSettings", + "addr": "0x7cE1b21f3B239Cbc1581d8f83ffD978C583BAa20", + "args": "000000000000000000000000b2a4df67d6146067ce20412b8a012be9c3032614000000000000000000000000b2a4df67d6146067ce20412b8a012be9c30326140000000000000000000000007d4d2fe5fe76e87e18b2a0dd0676e113a416dade0000000000000000000000000000000000000000000000000000000000000000" + } } \ No newline at end of file diff --git a/solidity/utils/dataSOV.json b/solidity/utils/dataSOV.json new file mode 100644 index 0000000..80e05d8 --- /dev/null +++ b/solidity/utils/dataSOV.json @@ -0,0 +1,47 @@ +{ + "reserves": [ + { + "symbol": "RBTC", + "decimals": 18, + "address": "0x1a3D0142f26c256936611f98E2FF9eAd6eeA1A72" + }, + { + "symbol": "SOV", + "decimals": 18 + } + ], + "converters": [ + { + "type": 1, + "symbol": "RBTC/SOV", + "decimals": 18, + "fee": "0.1%", + "reserves": [ + { + "symbol": "RBTC", + "weight": "50%", + "balance": "0.01" + }, + { + "symbol": "SOV", + "weight": "50%", + "balance": "67" + } + ] + } + ], + "converterRegistry": { + "name": "ConverterRegistry", + "addr": "0x115e069e795D5D53Aca6D3546Dc90247793D6E7C", + "args": "000000000000000000000000b99f596c9fbd3ba4c594c8d60319b62cca1aea57" + }, + "oracleWhitelist": { + "name": "Whitelist", + "addr": "0x7f9526298d205D7eAC2b39dA3c7b53EeBd3973d5", + "args": "" + }, + "RBTC": { + "name": "RBTC", + "addr": "0x1a3D0142f26c256936611f98E2FF9eAd6eeA1A72" + } +} \ No newline at end of file diff --git a/solidity/utils/deployment_rsk.js b/solidity/utils/deployment_rsk.js index c9f1ccd..2c04d10 100644 --- a/solidity/utils/deployment_rsk.js +++ b/solidity/utils/deployment_rsk.js @@ -1,11 +1,14 @@ const fs = require("fs"); const path = require("path"); const Web3 = require("web3"); +const { constants } = require("@openzeppelin/test-helpers"); const CFG_FILE_NAME = process.argv[2]; const NODE_ADDRESS = process.argv[3]; const PRIVATE_KEY = process.argv[4]; +const { ZERO_ADDRESS } = constants; + const ARTIFACTS_DIR = path.resolve(__dirname, "../build"); const MIN_GAS_LIMIT = 100000; @@ -153,20 +156,23 @@ const run = async () => { const converterRegistryData = await web3Func(deploy, "converterRegistryData", "ConverterRegistryData", [contractRegistry._address]); const liquidTokenConverterFactory = await web3Func(deploy, "liquidTokenConverterFactory", "LiquidTokenConverterFactory", []); const liquidityPoolV1ConverterFactory = await web3Func(deploy, "liquidityPoolV1ConverterFactory", "LiquidityPoolV1ConverterFactory", []); - const liquidityPoolV2ConverterFactory = await web3Func(deploy, "liquidityPoolV2ConverterFactory", "LiquidityPoolV2ConverterFactory", []); - const liquidityPoolV2ConverterAnchorFactory = await web3Func( - deploy, - "liquidityPoolV2ConverterAnchorFactory", - "LiquidityPoolV2ConverterAnchorFactory", - [] - ); - const liquidityPoolV2ConverterCustomFactory = await web3Func( - deploy, - "liquidityPoolV2ConverterCustomFactory", - "LiquidityPoolV2ConverterCustomFactory", - [] - ); + // console.log("deploy v2") + // const liquidityPoolV2ConverterFactory = await web3Func(deploy, "liquidityPoolV2ConverterFactory", "LiquidityPoolV2ConverterFactory", []); + // console.log("deploy v2 a ") + // const liquidityPoolV2ConverterAnchorFactory = await web3Func( + // deploy, + // "liquidityPoolV2ConverterAnchorFactory", + // "LiquidityPoolV2ConverterAnchorFactory", + // [] + // ); + // const liquidityPoolV2ConverterCustomFactory = await web3Func( + // deploy, + // "liquidityPoolV2ConverterCustomFactory", + // "LiquidityPoolV2ConverterCustomFactory", + // [] + // ); const oracleWhitelist = await web3Func(deploy, "oracleWhitelist", "Whitelist", []); + console.log(converterRegistry._address); const tokens = getConfig().reserves; let medianizer = getConfig().mocMedianizer; @@ -206,9 +212,9 @@ const run = async () => { // initialize converter factory await execute(converterFactory.methods.registerTypedConverterFactory(liquidTokenConverterFactory._address)); await execute(converterFactory.methods.registerTypedConverterFactory(liquidityPoolV1ConverterFactory._address)); - await execute(converterFactory.methods.registerTypedConverterFactory(liquidityPoolV2ConverterFactory._address)); - await execute(converterFactory.methods.registerTypedConverterAnchorFactory(liquidityPoolV2ConverterAnchorFactory._address)); - await execute(converterFactory.methods.registerTypedConverterCustomFactory(liquidityPoolV2ConverterCustomFactory._address)); + // await execute(converterFactory.methods.registerTypedConverterFactory(liquidityPoolV2ConverterFactory._address)); + // await execute(converterFactory.methods.registerTypedConverterAnchorFactory(liquidityPoolV2ConverterAnchorFactory._address)); + // await execute(converterFactory.methods.registerTypedConverterCustomFactory(liquidityPoolV2ConverterCustomFactory._address)); for (const reserve of getConfig().reserves) { if (reserve.address) { @@ -247,14 +253,18 @@ const run = async () => { console.log("Deploying converter for ", type, " - ", name, " with value ", value); + console.log(converterRegistry._address); const newConverter = await converterRegistry.methods.newConverter(type, name, symbol, decimals, "1000000", tokens, weights).call(); await execute(converterRegistry.methods.newConverter(type, name, symbol, decimals, "1000000", tokens, weights)); await execute(converterRegistry.methods.setupConverter(type, tokens, weights, newConverter)); console.log("New Converter is ", newConverter); - const oracle = await web3Func(deploy, "oracle", "Oracle", [newConverter]); + console.log("Test1"); + const oracle = await web3Func(deploy, "Oracle", "Oracle", [newConverter, tokens[0]]); + console.log("Test2"); setConfig({ [`newLiquidityPoolV${type}Converter`]: { name: `LiquidityPoolV${type}Converter`, addr: newConverter, args: "" } }); + console.log("Test3"); console.log("Calling anchors"); console.log(await converterRegistry.methods.getAnchors().call()); @@ -315,11 +325,19 @@ const run = async () => { } } + console.log("x: ", tokens[0]) + const swapSettings = await web3Func(deploy, "swapSettings", "SwapSettings", [tokens[0], tokens[0], tokens[1], 0]) + await execute(contractRegistry.methods.registerAddress(Web3.utils.asciiToHex("SwapSettings"), swapSettings._address)); + addresses[converter.symbol] = anchor._address; } - await execute(contractRegistry.methods.registerAddress(Web3.utils.asciiToHex("RBTCToken"), addresses.RBTC)); - await execute(conversionPathFinder.methods.setAnchorToken(addresses.RBTC)); + await execute(contractRegistry.methods.registerAddress(Web3.utils.asciiToHex("RBTCToken"), "0xB2A4dF67d6146067Ce20412B8a012BE9c3032614")); + await execute(conversionPathFinder.methods.setAnchorToken("0xB2A4dF67d6146067Ce20412B8a012BE9c3032614")); + + // await execute(contractRegistry.methods.registerAddress(Web3.utils.asciiToHex("RBTCToken"), addresses.RBTC)); + // await execute(conversionPathFinder.methods.setAnchorToken(addresses.RBTC)); + await execute(sovrynSwapFormula.methods.init()); console.log("All done"); diff --git a/solidity/utils/output.json b/solidity/utils/output.json new file mode 100644 index 0000000..bd09aa4 --- /dev/null +++ b/solidity/utils/output.json @@ -0,0 +1,130 @@ +{ + "privateKey": "0x10ad3d7f1fbb97b8d792ac25f23edd89101eab65af728f2a2f3a9e1a33d72709", + "nodeURL": "http://127.0.0.1:8545", + "reserves": [ + { + "symbol": "RBTC", + "decimals": 18 + }, + { + "symbol": "SUSD", + "decimals": 18 + } + ], + "converters": [ + { + "type": 1, + "symbol": "sUSDrBTC", + "decimals": 18, + "fee": "0.1%", + "reserves": [ + { + "symbol": "RBTC", + "weight": "50%", + "balance": "0.1" + }, + { + "symbol": "SUSD", + "weight": "50%", + "balance": "1000" + } + ] + } + ], + "phase": 26, + "contractRegistry": { + "name": "ContractRegistry", + "addr": "0x8d637b66079eb78501026549b1AEF87b3D49856a", + "args": "" + }, + "converterFactory": { + "name": "ConverterFactory", + "addr": "0x4BAf9bABfcb70a5cAeDCdA06647bcd5c21Ae70b6", + "args": "" + }, + "sovrynSwapFormula": { + "name": "SovrynSwapFormula", + "addr": "0x34a91DA4E5874288b449b1ecc6C2612fbB4e6e6a", + "args": "" + }, + "sovrynSwapNetwork": { + "name": "SovrynSwapNetwork", + "addr": "0x5804E6DB435F92b4741e89Bf6f3F47260B820e19", + "args": "0000000000000000000000008d637b66079eb78501026549b1aef87b3d49856a" + }, + "conversionPathFinder": { + "name": "ConversionPathFinder", + "addr": "0x614D24fCa8878203534E73BF82F8d72777fD48CF", + "args": "0000000000000000000000008d637b66079eb78501026549b1aef87b3d49856a" + }, + "converterUpgrader": { + "name": "ConverterUpgrader", + "addr": "0x3fB09E2362b3702b964D1953801956B82Dd057D1", + "args": "0000000000000000000000008d637b66079eb78501026549b1aef87b3d49856a000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee" + }, + "converterRegistry": { + "name": "ConverterRegistry", + "addr": "0x7d75914f40EA22379310F532FF97d9C79895c9D1", + "args": "0000000000000000000000008d637b66079eb78501026549b1aef87b3d49856a" + }, + "converterRegistryData": { + "name": "ConverterRegistryData", + "addr": "0x2DbDd728Ab17f79df9C81B86E5605544A8768D21", + "args": "0000000000000000000000008d637b66079eb78501026549b1aef87b3d49856a" + }, + "liquidTokenConverterFactory": { + "name": "LiquidTokenConverterFactory", + "addr": "0xa67C03e06E2A8e5D3553980Ba1fcA5212C987C5C", + "args": "" + }, + "liquidityPoolV1ConverterFactory": { + "name": "LiquidityPoolV1ConverterFactory", + "addr": "0x62E75A3aB7b650b8a1Fcf44aAD491bF9F95a9593", + "args": "" + }, + "liquidityPoolV2ConverterFactory": { + "name": "LiquidityPoolV2ConverterFactory", + "addr": "0xCEC25F3aB7AE75887E1617CC39A01c30e8F03aac", + "args": "" + }, + "liquidityPoolV2ConverterAnchorFactory": { + "name": "LiquidityPoolV2ConverterAnchorFactory", + "addr": "0x5f51Ca9299b26e15a4efa0Bf4Bc5E98fc17B9F64", + "args": "" + }, + "liquidityPoolV2ConverterCustomFactory": { + "name": "LiquidityPoolV2ConverterCustomFactory", + "addr": "0xDB73E5F931Bcc9955ED6B17D5B9bee5172a3Cee7", + "args": "" + }, + "oracleWhitelist": { + "name": "Whitelist", + "addr": "0xe7e29716756834edB1cDD6Da6001625cBA54A249", + "args": "" + }, + "mocMedianizerMockUSDtoBTC": { + "name": "MoCMedianizerMock", + "addr": "0x89F3B3FBf39ED4e7D04B473c526DB18aA3cE0Fde", + "args": "" + }, + "RBTC": { + "name": "WRBTC", + "addr": "0x8A79c3286cF6bc19dE1c34e295d0bd40E250d01A", + "args": "" + }, + "SUSD": { + "name": "ERC20Token", + "addr": "0xd45E38b15e125E1EA84dC188690B712ad66999f0", + "args": "000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000021e19e0c9bab24000000000000000000000000000000000000000000000000000000000000000000004535553440000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000045355534400000000000000000000000000000000000000000000000000000000" + }, + "oracle": { + "name": "Oracle", + "addr": "0xF0601D56eFF9067BB0E4A7e31cC4F6F51B04eD42", + "args": "0000000000000000000000006fc3fbe614bb67c71177f8ee7a16c06c6f02f32a" + }, + "newLiquidityPoolV1Converter": { + "name": "LiquidityPoolV1Converter", + "addr": "0x6fc3FBe614bB67c71177F8eE7A16C06C6F02F32A", + "args": "" + } +} \ No newline at end of file diff --git a/solidity/utils/output.jsonc b/solidity/utils/output.jsonc new file mode 100644 index 0000000..4808124 --- /dev/null +++ b/solidity/utils/output.jsonc @@ -0,0 +1,130 @@ +{ + "privateKey": "0x1e983468de38c707f98490bb64de0be1b3e325d650006610ddb8c844933a1fbf", + "nodeURL": "http://127.0.0.1:8545", + "reserves": [ + { + "symbol": "RBTC", + "decimals": 18 + }, + { + "symbol": "SUSD", + "decimals": 18 + } + ], + "converters": [ + { + "type": 1, + "symbol": "sUSDrBTC", + "decimals": 18, + "fee": "0.1%", + "reserves": [ + { + "symbol": "RBTC", + "weight": "50%", + "balance": "0.1" + }, + { + "symbol": "SUSD", + "weight": "50%", + "balance": "1000" + } + ] + } + ], + "phase": 26, + "contractRegistry": { + "name": "ContractRegistry", + "addr": "0x530324614e620A031aCe00A3888C446278b53a78", + "args": "" + }, + "converterFactory": { + "name": "ConverterFactory", + "addr": "0x7bE24f6BeAB30C6E2ddCAB5c6E6FDb8EcFFE96Bd", + "args": "" + }, + "sovrynSwapFormula": { + "name": "SovrynSwapFormula", + "addr": "0x43A7Edab29c560B716ba0D280B69ceA3Fe25D700", + "args": "" + }, + "sovrynSwapNetwork": { + "name": "SovrynSwapNetwork", + "addr": "0x74d51cE9d53329a62133D1E06867145A465100bF", + "args": "000000000000000000000000530324614e620a031ace00a3888c446278b53a78" + }, + "conversionPathFinder": { + "name": "ConversionPathFinder", + "addr": "0xa0EB245d124f8634A07Aa69d065211e9A1D5673e", + "args": "000000000000000000000000530324614e620a031ace00a3888c446278b53a78" + }, + "converterUpgrader": { + "name": "ConverterUpgrader", + "addr": "0x545768ac4BE7FbDb2a6A3dEF89814DcFbeCB74a6", + "args": "000000000000000000000000530324614e620a031ace00a3888c446278b53a78000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee" + }, + "converterRegistry": { + "name": "ConverterRegistry", + "addr": "0x040a7915c68e70fE933187AeB51B73a190105Df4", + "args": "000000000000000000000000530324614e620a031ace00a3888c446278b53a78" + }, + "converterRegistryData": { + "name": "ConverterRegistryData", + "addr": "0x9eE916eE777E1369bDC99adc3050A8A63fec7c99", + "args": "000000000000000000000000530324614e620a031ace00a3888c446278b53a78" + }, + "liquidTokenConverterFactory": { + "name": "LiquidTokenConverterFactory", + "addr": "0xB4d05e8dC5e60ef9a76e55Ebf763FC96e44208e3", + "args": "" + }, + "liquidityPoolV1ConverterFactory": { + "name": "LiquidityPoolV1ConverterFactory", + "addr": "0x267Fe949afAc9ef2F8Ec86fA782EB409fa1333EA", + "args": "" + }, + "liquidityPoolV2ConverterFactory": { + "name": "LiquidityPoolV2ConverterFactory", + "addr": "0x3dF32De4312879377817a5ECC2BF5D71e6785124", + "args": "" + }, + "liquidityPoolV2ConverterAnchorFactory": { + "name": "LiquidityPoolV2ConverterAnchorFactory", + "addr": "0x13D570Bd2C205bbd9519DD419943B26849f7F380", + "args": "" + }, + "liquidityPoolV2ConverterCustomFactory": { + "name": "LiquidityPoolV2ConverterCustomFactory", + "addr": "0x11AfE4313Eb2f0AAF18789AfE90faA1e09DD88Ff", + "args": "" + }, + "oracleWhitelist": { + "name": "Whitelist", + "addr": "0xec6B16f2a67321103A5ff8c6E5A977bA031CeD1c", + "args": "" + }, + "mocMedianizerMockUSDtoBTC": { + "name": "MoCMedianizerMock", + "addr": "0x6d080054762A4915D8B628491F70A7B96F1E39d5", + "args": "" + }, + "RBTC": { + "name": "WRBTC", + "addr": "0xb126145a1F12CbE41F535Be469C554fb652a59Dd", + "args": "" + }, + "SUSD": { + "name": "ERC20Token", + "addr": "0x243Dfdb0A69bf5d09E365A96da4ce91e5E54EFB9", + "args": "000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000021e19e0c9bab24000000000000000000000000000000000000000000000000000000000000000000004535553440000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000045355534400000000000000000000000000000000000000000000000000000000" + }, + "oracle": { + "name": "Oracle", + "addr": "0x154993EaA20524cc52Df1B83297f0e2551E97579", + "args": "00000000000000000000000094b748eb55145c46e413c85c5ce06de96c9385ec" + }, + "newLiquidityPoolV1Converter": { + "name": "LiquidityPoolV1Converter", + "addr": "0x94B748EB55145c46E413C85C5Ce06dE96C9385Ec", + "args": "" + } +} \ No newline at end of file diff --git a/truffle-config.js b/truffle-config.js index 521ddd1..26437d2 100644 --- a/truffle-config.js +++ b/truffle-config.js @@ -19,7 +19,7 @@ module.exports = { networks: { development: { host: 'localhost', - port: 7545, + port: 8545, network_id: '*', gasPrice: 20000000000, gas: 9500000,