perpl-sdk 0.2.5

Rust SDK for the Perpl decentralized perpetuals exchange
Documentation
{
  "_format": "hh-sol-artifact-1",
  "contractName": "TestToken",
  "sourceName": "contracts/helpers/TestToken.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "_name",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "_symbol",
          "type": "string"
        },
        {
          "internalType": "uint8",
          "name": "_decimals",
          "type": "uint8"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "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"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "spender",
          "type": "address"
        }
      ],
      "name": "allowance",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "spender",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        }
      ],
      "name": "approve",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "account",
          "type": "address"
        }
      ],
      "name": "balanceOf",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "decimals",
      "outputs": [
        {
          "internalType": "uint8",
          "name": "",
          "type": "uint8"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "spender",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "subtractedValue",
          "type": "uint256"
        }
      ],
      "name": "decreaseAllowance",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "spender",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "addedValue",
          "type": "uint256"
        }
      ],
      "name": "increaseAllowance",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "account",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        }
      ],
      "name": "mint",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "name",
      "outputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "symbol",
      "outputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "totalSupply",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "to",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        }
      ],
      "name": "transfer",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "from",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "to",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        }
      ],
      "name": "transferFrom",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": "0x60806040523461033057610d398038038061001981610334565b9283398101906060818303126103305780516001600160401b0381116103305782610045918301610359565b60208201519092906001600160401b03811161033057604091610069918401610359565b91015160ff81168091036103305782516001600160401b03811161024157600354600181811c91168015610326575b602082101461022357601f81116102c3575b506020601f821160011461026057819293945f92610255575b50508160011b915f199060031b1c1916176003555b81516001600160401b03811161024157600454600181811c91168015610237575b602082101461022357601f81116101c0575b50602092601f821160011461015f57928192935f92610154575b50508160011b915f199060031b1c1916176004555b60ff19600554161760055560405161098e90816103ab8239f35b015190505f80610125565b601f1982169360045f52805f20915f5b8681106101a85750836001959610610190575b505050811b0160045561013a565b01515f1960f88460031b161c191690555f8080610182565b9192602060018192868501518155019401920161016f565b60045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b601f830160051c81019160208410610219575b601f0160051c01905b81811061020e575061010b565b5f8155600101610201565b90915081906101f8565b634e487b7160e01b5f52602260045260245ffd5b90607f16906100f9565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100c3565b601f1982169060035f52805f20915f5b8181106102ab57509583600195969710610293575b505050811b016003556100d8565b01515f1960f88460031b161c191690555f8080610285565b9192602060018192868b015181550194019201610270565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c8101916020841061031c575b601f0160051c01905b81811061031157506100aa565b5f8155600101610304565b90915081906102fb565b90607f1690610098565b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761024157604052565b81601f82011215610330578051906001600160401b03821161024157610388601f8301601f1916602001610334565b928284526020838301011161033057815f9260208093018386015e830101529056fe6080806040526004361015610012575f80fd5b5f3560e01c90816306fdde031461056957508063095ea7b31461054357806318160ddd1461052657806323b872dd14610463578063313ce5671461044357806339509351146103f457806340c10f191461033757806370a082311461030057806395d89b41146101e5578063a457c2d714610129578063a9059cbb146100f85763dd62ed3e146100a0575f80fd5b346100f45760403660031901126100f4576100b9610662565b6001600160a01b036100c9610678565b91165f5260016020526001600160a01b0360405f2091165f52602052602060405f2054604051908152f35b5f80fd5b346100f45760403660031901126100f45761011e610114610662565b60243590336107b3565b602060405160018152f35b346100f45760403660031901126100f457610142610662565b60243590335f52600160205260405f206001600160a01b0382165f5260205260405f20549180831061017a5761011e920390336106af565b60405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f0000000000000000000000000000000000000000000000000000006064820152608490fd5b346100f4575f3660031901126100f4576040515f6004548060011c906001811680156102f6575b6020831081146102e2578285529081156102c65750600114610271575b50819003601f01601f191681019067ffffffffffffffff82118183101761025d5761025982918260405282610638565b0390f35b634e487b7160e01b5f52604160045260245ffd5b905060045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5f905b8282106102b057506020915082010182610229565b600181602092548385880101520191019061029b565b90506020925060ff191682840152151560051b82010182610229565b634e487b7160e01b5f52602260045260245ffd5b91607f169161020c565b346100f45760203660031901126100f4576001600160a01b03610321610662565b165f525f602052602060405f2054604051908152f35b346100f45760403660031901126100f457610350610662565b6001600160a01b031660243581156103af577fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6020826103935f9460025461068e565b60025584845283825260408420818154019055604051908152a3005b60405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606490fd5b346100f45760403660031901126100f45761011e610410610662565b335f52600160205260405f206001600160a01b0382165f5260205261043c60405f20602435905461068e565b90336106af565b346100f4575f3660031901126100f457602060ff60055416604051908152f35b346100f45760603660031901126100f45761047c610662565b610484610678565b604435906001600160a01b0383165f52600160205260405f206001600160a01b0333165f5260205260405f2054925f1984036104c5575b61011e93506107b3565b8284106104e1576104dc8361011e950333836106af565b6104bb565b60405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606490fd5b346100f4575f3660031901126100f4576020600254604051908152f35b346100f45760403660031901126100f45761011e61055f610662565b60243590336106af565b346100f4575f3660031901126100f4575f6003548060011c9060018116801561062e575b6020831081146102e2578285529081156102c657506001146105d95750819003601f01601f191681019067ffffffffffffffff82118183101761025d5761025982918260405282610638565b905060035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5f905b82821061061857506020915082010182610229565b6001816020925483858801015201910190610603565b91607f169161058d565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036100f457565b602435906001600160a01b03821682036100f457565b9190820180921161069b57565b634e487b7160e01b5f52601160045260245ffd5b6001600160a01b0316908115610762576001600160a01b03169182156107125760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526001825260405f20855f5282528060405f2055604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608490fd5b60405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608490fd5b6001600160a01b03169081156108ed576001600160a01b031691821561089c57815f525f60205260405f205481811061083157817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b60405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e636500000000000000000000000000000000000000000000000000006064820152608490fd5b60405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608490fd5b60405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152608490fdfea26469706673582212209c8e0f8e6bc0ee54da5c009f6f2fec8c9c053a7c5a6e9c810a9c755382fe452964736f6c634300081e0033",
  "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816306fdde031461056957508063095ea7b31461054357806318160ddd1461052657806323b872dd14610463578063313ce5671461044357806339509351146103f457806340c10f191461033757806370a082311461030057806395d89b41146101e5578063a457c2d714610129578063a9059cbb146100f85763dd62ed3e146100a0575f80fd5b346100f45760403660031901126100f4576100b9610662565b6001600160a01b036100c9610678565b91165f5260016020526001600160a01b0360405f2091165f52602052602060405f2054604051908152f35b5f80fd5b346100f45760403660031901126100f45761011e610114610662565b60243590336107b3565b602060405160018152f35b346100f45760403660031901126100f457610142610662565b60243590335f52600160205260405f206001600160a01b0382165f5260205260405f20549180831061017a5761011e920390336106af565b60405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f0000000000000000000000000000000000000000000000000000006064820152608490fd5b346100f4575f3660031901126100f4576040515f6004548060011c906001811680156102f6575b6020831081146102e2578285529081156102c65750600114610271575b50819003601f01601f191681019067ffffffffffffffff82118183101761025d5761025982918260405282610638565b0390f35b634e487b7160e01b5f52604160045260245ffd5b905060045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5f905b8282106102b057506020915082010182610229565b600181602092548385880101520191019061029b565b90506020925060ff191682840152151560051b82010182610229565b634e487b7160e01b5f52602260045260245ffd5b91607f169161020c565b346100f45760203660031901126100f4576001600160a01b03610321610662565b165f525f602052602060405f2054604051908152f35b346100f45760403660031901126100f457610350610662565b6001600160a01b031660243581156103af577fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6020826103935f9460025461068e565b60025584845283825260408420818154019055604051908152a3005b60405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606490fd5b346100f45760403660031901126100f45761011e610410610662565b335f52600160205260405f206001600160a01b0382165f5260205261043c60405f20602435905461068e565b90336106af565b346100f4575f3660031901126100f457602060ff60055416604051908152f35b346100f45760603660031901126100f45761047c610662565b610484610678565b604435906001600160a01b0383165f52600160205260405f206001600160a01b0333165f5260205260405f2054925f1984036104c5575b61011e93506107b3565b8284106104e1576104dc8361011e950333836106af565b6104bb565b60405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606490fd5b346100f4575f3660031901126100f4576020600254604051908152f35b346100f45760403660031901126100f45761011e61055f610662565b60243590336106af565b346100f4575f3660031901126100f4575f6003548060011c9060018116801561062e575b6020831081146102e2578285529081156102c657506001146105d95750819003601f01601f191681019067ffffffffffffffff82118183101761025d5761025982918260405282610638565b905060035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5f905b82821061061857506020915082010182610229565b6001816020925483858801015201910190610603565b91607f169161058d565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036100f457565b602435906001600160a01b03821682036100f457565b9190820180921161069b57565b634e487b7160e01b5f52601160045260245ffd5b6001600160a01b0316908115610762576001600160a01b03169182156107125760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526001825260405f20855f5282528060405f2055604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608490fd5b60405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608490fd5b6001600160a01b03169081156108ed576001600160a01b031691821561089c57815f525f60205260405f205481811061083157817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b60405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e636500000000000000000000000000000000000000000000000000006064820152608490fd5b60405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608490fd5b60405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152608490fdfea26469706673582212209c8e0f8e6bc0ee54da5c009f6f2fec8c9c053a7c5a6e9c810a9c755382fe452964736f6c634300081e0033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}