@verified-network/verified-sdk
Version:
An SDK to develop applications on the Verified Network
922 lines • 6.07 MB
JSON
{
"contractName": "Bond",
"abi": [
{
"constant": true,
"inputs": [],
"name": "bondCurrency",
"outputs": [
{
"name": "",
"type": "bytes32"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "name",
"outputs": [
{
"name": "",
"type": "string"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "spender",
"type": "address"
},
{
"name": "amount",
"type": "uint256"
}
],
"name": "approve",
"outputs": [
{
"name": "",
"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": "sender",
"type": "address"
},
{
"name": "recipient",
"type": "address"
},
{
"name": "amount",
"type": "uint256"
}
],
"name": "transferFrom",
"outputs": [
{
"name": "",
"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": "spender",
"type": "address"
},
{
"name": "addedValue",
"type": "uint256"
}
],
"name": "increaseAllowance",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "",
"type": "address"
},
{
"name": "",
"type": "address"
}
],
"name": "issues",
"outputs": [
{
"name": "parValue",
"type": "uint256"
},
{
"name": "paidInAmount",
"type": "uint256"
},
{
"name": "paidInCurrency",
"type": "bytes32"
},
{
"name": "timeIssuedOrSubscribed",
"type": "uint256"
},
{
"name": "purchasedIssueAmount",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "",
"type": "address"
},
{
"name": "",
"type": "address"
}
],
"name": "purchases",
"outputs": [
{
"name": "parValue",
"type": "uint256"
},
{
"name": "paidInAmount",
"type": "uint256"
},
{
"name": "paidInCurrency",
"type": "bytes32"
},
{
"name": "timeIssuedOrSubscribed",
"type": "uint256"
},
{
"name": "purchasedIssueAmount",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "account",
"type": "address"
}
],
"name": "balanceOf",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [],
"name": "renounceOwnership",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "bondName",
"outputs": [
{
"name": "",
"type": "bytes32"
}
],
"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": "isOwner",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"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": "spender",
"type": "address"
},
{
"name": "subtractedValue",
"type": "uint256"
}
],
"name": "decreaseAllowance",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "recipient",
"type": "address"
},
{
"name": "amount",
"type": "uint256"
}
],
"name": "transfer",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "isPaused",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "",
"type": "uint256"
}
],
"name": "bondsIssued",
"outputs": [
{
"name": "",
"type": "address"
}
],
"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": "newOwner",
"type": "address"
}
],
"name": "transferOwnership",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "party",
"type": "address"
},
{
"indexed": false,
"name": "token",
"type": "address"
},
{
"indexed": false,
"name": "bondName",
"type": "bytes32"
},
{
"indexed": false,
"name": "amount",
"type": "uint256"
},
{
"indexed": false,
"name": "currency",
"type": "bytes32"
},
{
"indexed": false,
"name": "collateralAmount",
"type": "uint256"
},
{
"indexed": false,
"name": "issueTime",
"type": "uint256"
}
],
"name": "BondIssued",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "party",
"type": "address"
},
{
"indexed": false,
"name": "token",
"type": "address"
},
{
"indexed": false,
"name": "tokenAmount",
"type": "uint256"
},
{
"indexed": false,
"name": "tokenName",
"type": "bytes32"
},
{
"indexed": false,
"name": "amount",
"type": "uint256"
},
{
"indexed": false,
"name": "currency",
"type": "bytes32"
}
],
"name": "BondRedeemed",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "party",
"type": "address"
},
{
"indexed": false,
"name": "token",
"type": "address"
},
{
"indexed": false,
"name": "bondName",
"type": "bytes32"
},
{
"indexed": false,
"name": "amount",
"type": "uint256"
},
{
"indexed": false,
"name": "currency",
"type": "bytes32"
},
{
"indexed": false,
"name": "paidInAmount",
"type": "uint256"
},
{
"indexed": false,
"name": "purchaseTime",
"type": "uint256"
}
],
"name": "BondPurchased",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "party",
"type": "address"
},
{
"indexed": false,
"name": "token",
"type": "address"
},
{
"indexed": false,
"name": "tokenAmount",
"type": "uint256"
},
{
"indexed": false,
"name": "tokenName",
"type": "bytes32"
},
{
"indexed": false,
"name": "amount",
"type": "uint256"
},
{
"indexed": false,
"name": "currency",
"type": "bytes32"
}
],
"name": "BondLiquidated",
"type": "event"
},
{
"anonymous": false,
"inputs": [],
"name": "Paused",
"type": "event"
},
{
"anonymous": false,
"inputs": [],
"name": "Unpaused",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "previousOwner",
"type": "address"
},
{
"indexed": true,
"name": "newOwner",
"type": "address"
}
],
"name": "OwnershipTransferred",
"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": "_name",
"type": "bytes32"
},
{
"name": "_currency",
"type": "bytes32"
},
{
"name": "_owner",
"type": "address"
},
{
"name": "_oracle",
"type": "address"
},
{
"name": "_token",
"type": "address"
},
{
"name": "_fee",
"type": "address"
}
],
"name": "initialize",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "sender",
"type": "address"
}
],
"name": "initialize",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "amount",
"type": "uint256"
},
{
"name": "payer",
"type": "address"
},
{
"name": "currency",
"type": "bytes32"
},
{
"name": "cashContract",
"type": "address"
}
],
"name": "requestIssue",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "amount",
"type": "uint256"
},
{
"name": "payer",
"type": "address"
},
{
"name": "currency",
"type": "bytes32"
},
{
"name": "cashContract",
"type": "address"
}
],
"name": "requestPurchase",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "amount",
"type": "uint256"
},
{
"name": "payer",
"type": "address"
},
{
"name": "currency",
"type": "bytes32"
},
{
"name": "tokenContract",
"type": "address"
}
],
"name": "requestRedemption",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "sender",
"type": "address"
},
{
"name": "receiver",
"type": "address"
},
{
"name": "tokens",
"type": "uint256"
},
{
"name": "forwarder",
"type": "address"
}
],
"name": "transferForward",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "getBonds",
"outputs": [
{
"name": "",
"type": "address[]"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "issuer",
"type": "address"
},
{
"name": "bondToken",
"type": "address"
}
],
"name": "getBondIssues",
"outputs": [
{
"name": "",
"type": "uint256"
},
{
"name": "",
"type": "uint256"
},
{
"name": "",
"type": "uint256"
},
{
"name": "",
"type": "bytes32"
},
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "purchaser",
"type": "address"
},
{
"name": "bondToken",
"type": "address"
}
],
"name": "getBondPurchases",
"outputs": [
{
"name": "",
"type": "uint256"
},
{
"name": "",
"type": "uint256"
},
{
"name": "",
"type": "bytes32"
},
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [],
"name": "pause",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [],
"name": "unpause",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
}
],
"metadata": "{\"compiler\":{\"version\":\"0.5.7+commit.6da8b019\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[],\"name\":\"bondCurrency\",\"outputs\":[{\"name\":\"\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"spender\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"name\":\"\",\"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\":\"amount\",\"type\":\"uint256\"},{\"name\":\"payer\",\"type\":\"address\"},{\"name\":\"currency\",\"type\":\"bytes32\"},{\"name\":\"cashContract\",\"type\":\"address\"}],\"name\":\"requestPurchase\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"amount\",\"type\":\"uint256\"},{\"name\":\"payer\",\"type\":\"address\"},{\"name\":\"currency\",\"type\":\"bytes32\"},{\"name\":\"tokenContract\",\"type\":\"address\"}],\"name\":\"requestRedemption\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"sender\",\"type\":\"address\"},{\"name\":\"recipient\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"amount\",\"type\":\"uint256\"},{\"name\":\"payer\",\"type\":\"address\"},{\"name\":\"currency\",\"type\":\"bytes32\"},{\"name\":\"cashContract\",\"type\":\"address\"}],\"name\":\"requestIssue\",\"outputs\":[{\"name\":\"\",\"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\":\"spender\",\"type\":\"address\"},{\"name\":\"addedValue\",\"type\":\"uint256\"}],\"name\":\"increaseAllowance\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"},{\"name\":\"\",\"type\":\"address\"}],\"name\":\"issues\",\"outputs\":[{\"name\":\"parValue\",\"type\":\"uint256\"},{\"name\":\"paidInAmount\",\"type\":\"uint256\"},{\"name\":\"paidInCurrency\",\"type\":\"bytes32\"},{\"name\":\"timeIssuedOrSubscribed\",\"type\":\"uint256\"},{\"name\":\"purchasedIssueAmount\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"unpause\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"purchaser\",\"type\":\"address\"},{\"name\":\"bondToken\",\"type\":\"address\"}],\"name\":\"getBondPurchases\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"},{\"name\":\"\",\"type\":\"uint256\"},{\"name\":\"\",\"type\":\"bytes32\"},{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"},{\"name\":\"\",\"type\":\"address\"}],\"name\":\"purchases\",\"outputs\":[{\"name\":\"parValue\",\"type\":\"uint256\"},{\"name\":\"paidInAmount\",\"type\":\"uint256\"},{\"name\":\"paidInCurrency\",\"type\":\"bytes32\"},{\"name\":\"timeIssuedOrSubscribed\",\"type\":\"uint256\"},{\"name\":\"purchasedIssueAmount\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"sender\",\"type\":\"address\"},{\"name\":\"receiver\",\"type\":\"address\"},{\"name\":\"tokens\",\"type\":\"uint256\"},{\"name\":\"forwarder\",\"type\":\"address\"}],\"name\":\"transferForward\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"pause\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"bondName\",\"outputs\":[{\"name\":\"\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_name\",\"type\":\"bytes32\"},{\"name\":\"_currency\",\"type\":\"bytes32\"},{\"name\":\"_owner\",\"type\":\"address\"},{\"name\":\"_oracle\",\"type\":\"address\"},{\"name\":\"_token\",\"type\":\"address\"},{\"name\":\"_fee\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getBonds\",\"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\":\"isOwner\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"issuer\",\"type\":\"address\"},{\"name\":\"bondToken\",\"type\":\"address\"}],\"name\":\"getBondIssues\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"},{\"name\":\"\",\"type\":\"uint256\"},{\"name\":\"\",\"type\":\"uint256\"},{\"name\":\"\",\"type\":\"bytes32\"},{\"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\":\"spender\",\"type\":\"address\"},{\"name\":\"subtractedValue\",\"type\":\"uint256\"}],\"name\":\"decreaseAllowance\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"recipient\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isPaused\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"bondsIssued\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"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\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"party\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"bondName\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"currency\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"collateralAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"issueTime\",\"type\":\"uint256\"}],\"name\":\"BondIssued\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"party\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"tokenAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"tokenName\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"currency\",\"type\":\"bytes32\"}],\"name\":\"BondRedeemed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"party\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"bondName\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"currency\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"paidInAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"purchaseTime\",\"type\":\"uint256\"}],\"name\":\"BondPurchased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"party\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"tokenAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"tokenName\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"currency\",\"type\":\"bytes32\"}],\"name\":\"BondLiquidated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"Paused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"Unpaused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"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\"}],\"devdoc\":{\"methods\":{\"allowance(address,address)\":{\"details\":\"See {IERC20-allowance}.\\r\"},\"approve(address,uint256)\":{\"details\":\"See {IERC20-approve}.\\r * Requirements:\\r * - `spender` cannot be the zero address.\\r\"},\"balanceOf(address)\":{\"details\":\"See {IERC20-balanceOf}.\\r\"},\"decimals()\":{\"details\":\"Returns the number of decimals used to get its user representation.\\r For example, if `decimals` equals `2`, a balance of `505` tokens should\\r be displayed to a user as `5.05` (`505 / 10 ** 2`).\\r * Tokens usually opt for a value of 18, imitating the relationship between\\r Ether and Wei. This is the default value returned by this function, unless\\r it's overridden.\\r * NOTE: This information is only used for _display_ purposes: it in\\r no way affects any of the arithmetic of the contract, including\\r {IERC20-balanceOf} and {IERC20-transfer}.\\r\"},\"decreaseAllowance(address,uint256)\":{\"details\":\"Atomically decreases the allowance granted to `spender` by the caller.\\r * This is an alternative to {approve} that can be used as a mitigation for\\r problems described in {IERC20-approve}.\\r * Emits an {Approval} event indicating the updated allowance.\\r * Requirements:\\r * - `spender` cannot be the zero address.\\r - `spender` must have allowance for the caller of at least\\r `subtractedValue`.\\r\"},\"increaseAllowance(address,uint256)\":{\"details\":\"Atomically increases the allowance granted to `spender` by the caller.\\r * This is an alternative to {approve} that can be used as a mitigation for\\r problems described in {IERC20-approve}.\\r * Emits an {Approval} event indicating the updated allowance.\\r * Requirements:\\r * - `spender` cannot be the zero address.\\r\"},\"initialize(address)\":{\"details\":\"Initializes the contract setting the deployer as the initial owner.\"},\"isOwner()\":{\"details\":\"Returns true if the caller is the current owner.\"},\"isPaused()\":{\"return\":\"True: contract is paused\\rFalse: contract is not paused\\r\"},\"name()\":{\"details\":\"Returns the name of the token.\\r\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. * > Note: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner.\"},\"symbol()\":{\"details\":\"Returns the symbol of the token, usually a shorter version of the\\r name.\\r\"},\"totalSupply()\":{\"details\":\"See {IERC20-totalSupply}.\\r\"},\"transfer(address,uint256)\":{\"details\":\"See {IERC20-transfer}.\\r * Requirements:\\r * - `recipient` cannot be the zero address.\\r - the caller must have a balance of at least `amount`.\\r\"},\"transferFrom(address,address,uint256)\":{\"details\":\"See {IERC20-transferFrom}.\\r * Emits an {Approval} event indicating the updated allowance. This is not\\r required by the EIP. See the note at the beginning of {ERC20};\\r * Requirements:\\r - `sender` and `recipient` cannot be the zero address.\\r - `sender` must have a balance of at least `amount`.\\r - the caller must have allowance for `sender`'s tokens of at least\\r `amount`.\\r\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}}},\"userdoc\":{\"methods\":{\"isPaused()\":{\"notice\":\"returns whether or not the contract is paused\\r\"}}}},\"settings\":{\"compilationTarget\":{\"project:/contracts/Bond.sol\":\"Bond\"},\"evmVersion\":\"petersburg\",\"libraries\":{},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts-ethereum-package/contracts/GSN/Context.sol\":{\"keccak256\":\"0x3491510fa4862af1a43f6c860d9cf7392240196540cd3c0eea79d374d419c5a1\",\"urls\":[\"bzzr://5cddbf3b74b775a8670757a6b8e108dac17dac20253f35f4c729e9cb6bea4ed3\"]},\"@openzeppelin/contracts-ethereum-package/contracts/math/SafeMath.sol\":{\"keccak256\":\"0x640b6dee7a4b830bdfd52b5031a07fc2b12209f5b2e29e5d364a7d37f69d8076\",\"urls\":[\"bzzr://292843005e754e752644f767477ec5ad7a1ffc91ddb18c38b8079c62f3993cad\"]},\"@openzeppelin/contracts-ethereum-package/contracts/ownership/Ownable.sol\":{\"keccak256\":\"0xd7e8ab76fa35c4d8d35a06a6ed538cadab8b75a1aa00594ced1568b2c0cadde3\",\"urls\":[\"bzzr://b4c855b32d75f2a4969bfbd530b6934b69f12f28584b3746967e1ca64e024bd9\"]},\"@openzeppelin/contracts-ethereum-package/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0xe5bb0f57cff3e299f360052ba50f1ea0fff046df2be070b6943e0e3c3fdad8a9\",\"urls\":[\"bzzr://cf2d583b8dce38d0617fdcd65f2fd9f126fe17b7f683b5a515ea9d2762d8b062\"]},\"@openzeppelin/upgrades/contracts/Initializable.sol\":{\"keccak256\":\"0x9bfec92e36234ecc99b5d37230acb6cd1f99560233753162204104a4897e8721\",\"urls\":[\"bzzr://f75d88b16fe25a9e19b3512691c496e2bb6d8451bc9a636196c4e17ca9b40201\"]},\"project:/contracts/Bond.sol\":{\"keccak256\":\"0xaae453ea503fa45a583a3c34e31e740cb0600f6fbaf7be1a9bc28a4194393c12\",\"urls\":[\"bzzr://c55bcee10bd5ca579adddc681850a2e227e2226f97b10dc42733711131926eb3\"]},\"project:/contracts/interfaces/VerifiedClient.sol\":{\"keccak256\":\"0xb4de3dbb08a33aef4860197790d320239afced5fab06ba8b625398671b76c780\",\"urls\":[\"bzzr://de06105d01c0e25f52ac75c1069e79795cc15cdf0169fc574534910055f8b58d\"]},\"project:/contracts/interfaces/VerifiedRates.sol\":{\"keccak256\":\"0x5c637fe1bca7c152e7fc41237459b65b6147632ad110c747584a6566424cb8da\",\"urls\":[\"bzzr://e9647e2e2b1768908061c2ea083d26bd9b2b764f91b5bc49207f3d30696a7a0c\"]},\"project:/contracts/interfaces/ViaBond.sol\":{\"keccak256\":\"0xfc471512526675edd84249f397bf94b1cef191bcbac1d3da1db24786867c4c62\",\"urls\":[\"bzzr://563d2507340846e5d3ac74b24d529a35e52241971e942784781cb4b48b36c2d6\"]},\"project:/contracts/interfaces/ViaCash.sol\":{\"keccak256\":\"0xe08910b316f239248810cafa5878b1f23e2caa10c019f5e8bfe70cf574eab482\",\"urls\":[\"bzzr://f70f069aca6c303ea77f40af1f9b0359b2e5af3a158bf31d9c46d5a47911d676\"]},\"project:/contracts/interfaces/ViaFactory.sol\":{\"keccak256\":\"0xd71096d3b9b6e130416a346913097dd5a5f1ca16e242778c9e1005058b14b7f2\",\"urls\":[\"bzzr://b2eeb8b364fec878cee9035228fce18a58d7cec7a0be946df554de65dd51332b\"]},\"project:/contracts/interfaces/ViaOracle.sol\":{\"keccak256\":\"0xeb2f7a3ecc458880235ec31ac0db32e20285679772f8fc04a5d338d587e711ae\",\"urls\":[\"bzzr://ee9ed796f36a5f1b111c9aecbfe7544f782d90c0c5d9ef94e6c0ce1806f3eee6\"]},\"project:/contracts/interfaces/ViaToken.sol\":{\"keccak256\":\"0xfe45ec0f3e72d12ca2c0dd9ff16258eec9a30b736dddfc8f799b7f2601b1aae0\",\"urls\":[\"bzzr://3d36c5055be4b4f517ee1670643fa0a139811d45ed844195009b00a8fc666c87\"]},\"project:/contracts/math/FixedPoint.sol\":{\"keccak256\":\"0xb5d4f457a56675a2e841c7bcbb71762e1e5d3ff89800a68cda6830d2361b7a6d\",\"urls\":[\"bzzr://f2eb2bb7e4f7952d86ffcd5848efa13b5895fb38168a8241ba467625d37cf90d\"]},\"project:/contracts/math/LogExpMath.sol\":{\"keccak256\":\"0xe8078460aae016460645c05a09602a8021473127853de5e0910138b885b53471\",\"urls\":[\"bzzr://edec9b90a5f598c7fa82fca8c96de4619e95eb3229b8ca3ecc28cc3bed8f204a\"]},\"project:/contracts/math/Math.sol\":{\"keccak256\":\"0x352df7212aec370f69fe388c57272ea67063e5a057483f048237fd32d19b6ed5\",\"urls\":[\"bzzr://6b4058cb71c9b6e2e0a7f8278bc630f466616de1c3fe430e71e2794a8a104ebd\"]},\"project:/contracts/utilities/ERC20.sol\":{\"keccak256\":\"0x410b1bfe4ae45185f9d971ef497cf28ea3f0efb18ced3760fa781aaa150835a8\",\"urls\":[\"bzzr://ce908881afa94cfdc13d8e9afd3aa1edb50cae8469eee123f1169ffbbb0f7f16\"]},\"project:/contracts/utilities/Pausable.sol\":{\"keccak256\":\"0x96eceae12582eec38cc9706095b6f7d038b00dc36d98a02d234e7051b42a2a6a\",\"urls\":[\"bzzr://e5e1adfa3d22d6769d754f3f7f74eb1b12f5327b56b49584d34490b9d747d9b3\"]},\"project:/contracts/utilities/StringUtils.sol\":{\"keccak256\":\"0xb732e27507ecd8e7606f018dafa15110d93650c14aa9e8a16825871b4a58a05d\",\"urls\":[\"bzzr://e7d1e44d5e8c1c8e4fc71a4818f9ab4b0f4aa4912d159594209572fc5fbad06c\"]}},\"version\":1}",
"bytecode": "0x6080604052615fdc806100136000396000f3fe608060405234801561001057600080fd5b50600436106101f05760003560e01c806381ca86fe1161010f57806395d89b41116100a2578063c4d66de811610071578063c4d66de8146103f4578063d478b27414610407578063dd62ed3e1461041a578063f2fde38b1461042d576101f0565b806395d89b41146103be578063a457c2d7146103c6578063a9059cbb146103d9578063b187bd26146103ec576101f0565b80638b140f6b116100de5780638b140f6b146103795780638da5cb5b1461038e5780638f32d59b146103a35780638fba9c7c146103ab576101f0565b806381ca86fe146103435780638456cb5914610356578063887b6abc1461035e57806389d29c4c14610366576101f0565b8063313ce56711610187578063410a6c7d11610156578063410a6c7d146102f25780636b98f8351461031557806370a0823114610328578063715018a61461033b576101f0565b8063313ce5671461029c57806339509351146102b157806339baf480146102c45780633f4ba83a146102e8576101f0565b80631f6fbfae116101c35780631f6fbfae1461025057806320f46de11461026357806323b872dd146102765780633138088814610289576101f0565b80630484d542146101f557806306fdde0314610213578063095ea7b31461022857806318160ddd14610248575b600080fd5b6101fd610440565b60405161020a9190615be0565b60405180910390f35b61021b610446565b60405161020a9190615ca5565b61023b61023636600461527f565b6104dd565b60405161020a9190615bd2565b6101fd6104fb565b61023b61025e366004615390565b610501565b61023b610271366004615390565b61073b565b61023b6102843660046151d1565b610853565b61023b610297366004615390565b6108e1565b6102a4610a51565b60405161020a9190615e7e565b61023b6102bf36600461527f565b610a56565b6102d76102d2366004615197565b610aaa565b60405161020a959493929190615e70565b6102f0610ae4565b005b610305610300366004615197565b610b44565b60405161020a9493929190615e55565b6102d7610323366004615197565b610b88565b6101fd61033636600461515b565b610bc2565b6102f0610be1565b61023b61035136600461521e565b610c52565b6102f0610d20565b6101fd610d7c565b6102f06103743660046152eb565b610d82565b610381610eac565b60405161020a9190615bc1565b610396610f0d565b60405161020a9190615a91565b61023b610f1c565b6102d76103b9366004615197565b610f42565b61021b610f8a565b61023b6103d436600461527f565b610feb565b61023b6103e736600461527f565b611059565b61023b61106d565b6102f061040236600461515b565b611076565b610396610415366004615372565b61114b565b6101fd610428366004615197565b611172565b6102f061043b36600461515b565b61119d565b60a05481565b60368054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156104d25780601f106104a7576101008083540402835291602001916104d2565b820191906000526020600020905b8154815290600101906020018083116104b557829003601f168201915b505050505090505b90565b60006104f16104ea6111d0565b84846111d4565b5060015b92915050565b60355490565b609d5460009060ff161561051457600080fd5b8461053d57604051600160e51b62461bcd02815260040161053490615ce6565b60405180910390fd5b609d54604051600160e01b63f429f19b0281526101009091046001600160a01b03169063f429f19b90610574903390600401615a9f565b60206040518083038186803b15801561058c57600080fd5b505afa1580156105a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506105c491908101906152cd565b600160a11b6b2b34b0a137b7322a37b5b2b702146105e157600080fd5b609d54604051600160e01b63f429f19b0281526101009091046001600160a01b03169063f429f19b90610618908590600401615a91565b60206040518083038186803b15801561063057600080fd5b505afa158015610644573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061066891908101906152cd565b600160cb1b660acd2c286c2e6d0214806107045750609d54604051600160e21b633444c8b50281526101009091046001600160a01b03169063d11322d4906106b4908690600401615be0565b60206040518083038186803b1580156106cc57600080fd5b505afa1580156106e0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061070491908101906152af565b61072357604051600160e51b62461bcd02815260040161053490615d7d565b610730858585853361128e565b90505b949350505050565b609d5460009060ff161561074e57600080fd5b6107578461193a565b151560011461077b57604051600160e51b62461bcd02815260040161053490615d20565b609d54604051600160e01b63f429f19b0281526101009091046001600160a01b03169063f429f19b906107b2903390600401615a9f565b60206040518083038186803b1580156107ca57600080fd5b505afa1580156107de573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061080291908101906152cd565b600160a11b6b2b34b0a137b7322a37b5b2b7021461081f57600080fd5b61083e858585600160a11b6b21b0b9b42a3930b739b332b90286611a75565b1561084b57506001610733565b506000610733565b6000610860848484613007565b6108d68461086c6111d0565b6108d185604051806060016040528060288152602001615f56602891396001600160a01b038a166000908152603460205260408120906108aa6111d0565b6001600160a01b03168152602081019190915260400160002054919063ffffffff61312316565b6111d4565b5060015b9392505050565b609d5460009060ff16156108f457600080fd5b8260a054141561090357600080fd5b609d54604051600160e01b63f429f19b0281526101009091046001600160a01b03169063f429f19b9061093a903390600401615a9f565b60206040518083038186803b15801561095257600080fd5b505afa158015610966573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061098a91908101906152cd565b600160cb1b660acd2c286c2e6d021480610a265750609d54604051600160e21b633444c8b50281526101009091046001600160a01b03169063d11322d4906109d6908690600401615be0565b60206040518083038186803b1580156109ee57600080fd5b505afa158015610a02573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610a2691908101906152af565b610a4557604051600160e51b62461bcd02815260040161053490615d40565b61073085858585613152565b601290565b60006104f1610a636111d0565b846108d18560346000610a746111d0565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff6135e116565b60a3602090815260009283526040808420909152908252902080546001820154600283015460038401546004909401549293919290919085565b609d54339061010090046001600160a01b0316610aff610f0d565b6001600160a01b0316826001600160a01b03161480610b2f5750806001600160a01b0316826001600160a01b0316145b610b3857600080fd5b610b40613609565b5050565b6001600160a01b03918216600090815260a360209