Files
BappTutorial/nftbapp/backend-nftbapp/build/contracts/MyNFT.json
2020-03-25 13:49:36 +09:00

1792 lines
98 KiB
JSON

{
"contractName": "MyNFT",
"abi": [
{
"constant": true,
"inputs": [
{
"name": "_interfaceId",
"type": "bytes4"
}
],
"name": "supportsInterface",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "name",
"outputs": [
{
"name": "",
"type": "string"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_tokenId",
"type": "uint256"
}
],
"name": "getApproved",
"outputs": [
{
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_to",
"type": "address"
},
{
"name": "_tokenId",
"type": "uint256"
}
],
"name": "approve",
"outputs": [],
"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": "InterfaceId_ERC165",
"outputs": [
{
"name": "",
"type": "bytes4"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_from",
"type": "address"
},
{
"name": "_to",
"type": "address"
},
{
"name": "_tokenId",
"type": "uint256"
}
],
"name": "transferFrom",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_owner",
"type": "address"
},
{
"name": "_index",
"type": "uint256"
}
],
"name": "tokenOfOwnerByIndex",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_from",
"type": "address"
},
{
"name": "_to",
"type": "address"
},
{
"name": "_tokenId",
"type": "uint256"
}
],
"name": "safeTransferFrom",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_tokenId",
"type": "uint256"
}
],
"name": "exists",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_index",
"type": "uint256"
}
],
"name": "tokenByIndex",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_tokenId",
"type": "uint256"
}
],
"name": "ownerOf",
"outputs": [
{
"name": "",
"type": "address"
}
],
"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": "_approved",
"type": "bool"
}
],
"name": "setApprovalForAll",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_from",
"type": "address"
},
{
"name": "_to",
"type": "address"
},
{
"name": "_tokenId",
"type": "uint256"
},
{
"name": "_data",
"type": "bytes"
}
],
"name": "safeTransferFrom",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_tokenId",
"type": "uint256"
}
],
"name": "tokenURI",
"outputs": [
{
"name": "",
"type": "string"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_owner",
"type": "address"
},
{
"name": "_operator",
"type": "address"
}
],
"name": "isApprovedForAll",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"name": "_name",
"type": "string"
},
{
"name": "_symbol",
"type": "string"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"name": "_by",
"type": "address"
},
{
"indexed": false,
"name": "_tokenId",
"type": "uint256"
}
],
"name": "TokenRegistered",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "_from",
"type": "address"
},
{
"indexed": true,
"name": "_to",
"type": "address"
},
{
"indexed": true,
"name": "_tokenId",
"type": "uint256"
}
],
"name": "Transfer",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "_owner",
"type": "address"
},
{
"indexed": true,
"name": "_approved",
"type": "address"
},
{
"indexed": true,
"name": "_tokenId",
"type": "uint256"
}
],
"name": "Approval",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "_owner",
"type": "address"
},
{
"indexed": true,
"name": "_operator",
"type": "address"
},
{
"indexed": false,
"name": "_approved",
"type": "bool"
}
],
"name": "ApprovalForAll",
"type": "event"
},
{
"constant": false,
"inputs": [
{
"name": "_to",
"type": "address"
},
{
"name": "_tokenId",
"type": "uint256"
},
{
"name": "_tokenURI",
"type": "string"
}
],
"name": "registerUniqueToken",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
}
],
"bytecode": "0x60806040523480156200001157600080fd5b506040516200219238038062002192833981018060405281019080805182019291906020018051820192919050505081816200007f6301ffc9a77c010000000000000000000000000000000000000000000000000000000002620001af640100000000026401000000009004565b620000bc6380ac58cd7c010000000000000000000000000000000000000000000000000000000002620001af640100000000026401000000009004565b620000f9634f558e797c010000000000000000000000000000000000000000000000000000000002620001af640100000000026401000000009004565b8160059080519060200190620001119291906200026d565b5080600690805190602001906200012a9291906200026d565b506200016863780e9d637c010000000000000000000000000000000000000000000000000000000002620001af640100000000026401000000009004565b620001a5635b5e139f7c010000000000000000000000000000000000000000000000000000000002620001af640100000000026401000000009004565b505050506200031c565b63ffffffff7c010000000000000000000000000000000000000000000000000000000002817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916141515156200020157600080fd5b6001600080837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620002b057805160ff1916838001178555620002e1565b82800160010185558215620002e1579182015b82811115620002e0578251825591602001919060010190620002c3565b5b509050620002f09190620002f4565b5090565b6200031991905b8082111562000315576000816000905550600101620002fb565b5090565b90565b611e66806200032c6000396000f300608060405260043610610107576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806301ffc9a71461010c57806306fdde0314610170578063081812fc14610200578063095ea7b31461026d57806318160ddd146102ba57806319fa8f50146102e557806323b872dd1461034e5780632f745c59146103bb57806342842e0e1461041c5780634f558e79146104895780634f6ccce7146104ce5780636352211e1461050f57806370a082311461057c57806395d89b41146105d3578063a22cb46514610663578063b88d4fde146106b2578063bed8e08314610765578063c87b56dd146107f8578063e985e9c51461089e575b600080fd5b34801561011857600080fd5b5061015660048036038101908080357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190505050610919565b604051808215151515815260200191505060405180910390f35b34801561017c57600080fd5b50610185610980565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101c55780820151818401526020810190506101aa565b50505050905090810190601f1680156101f25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561020c57600080fd5b5061022b60048036038101908080359060200190929190505050610a22565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561027957600080fd5b506102b8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a5f565b005b3480156102c657600080fd5b506102cf610ba4565b6040518082815260200191505060405180910390f35b3480156102f157600080fd5b506102fa610bb1565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b34801561035a57600080fd5b506103b9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610bd8565b005b3480156103c757600080fd5b50610406600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610ce3565b6040518082815260200191505060405180910390f35b34801561042857600080fd5b50610487600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d5a565b005b34801561049557600080fd5b506104b460048036038101908080359060200190929190505050610d7b565b604051808215151515815260200191505060405180910390f35b3480156104da57600080fd5b506104f960048036038101908080359060200190929190505050610ded565b6040518082815260200191505060405180910390f35b34801561051b57600080fd5b5061053a60048036038101908080359060200190929190505050610e25565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561058857600080fd5b506105bd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610ea3565b6040518082815260200191505060405180910390f35b3480156105df57600080fd5b506105e8610f27565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561062857808201518184015260208101905061060d565b50505050905090810190601f1680156106555780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561066f57600080fd5b506106b0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803515159060200190929190505050610fc9565b005b3480156106be57600080fd5b50610763600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611105565b005b34801561077157600080fd5b506107f6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061112d565b005b34801561080457600080fd5b50610823600480360381019080803590602001909291905050506111b1565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610863578082015181840152602081019050610848565b50505050905090810190601f1680156108905780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156108aa57600080fd5b506108ff600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061127a565b604051808215151515815260200191505060405180910390f35b6000806000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a900460ff169050919050565b606060058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a185780601f106109ed57610100808354040283529160200191610a18565b820191906000526020600020905b8154815290600101906020018083116109fb57829003601f168201915b5050505050905090565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000610a6a82610e25565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610aa757600080fd5b8073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610ae75750610ae6813361127a565b5b1515610af257600080fd5b826002600084815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550818373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a4505050565b6000600980549050905090565b6301ffc9a77c01000000000000000000000000000000000000000000000000000000000281565b610be2338261130e565b1515610bed57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610c2957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515610c6557600080fd5b610c6f83826113a3565b610c7983826114a6565b610c838282611662565b808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4505050565b6000610cee83610ea3565b82101515610cfb57600080fd5b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002082815481101515610d4757fe5b9060005260206000200154905092915050565b610d768383836020604051908101604052806000815250611105565b505050565b6000806001600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415915050919050565b6000610df7610ba4565b82101515610e0457600080fd5b600982815481101515610e1357fe5b90600052602060002001549050919050565b6000806001600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610e9a57600080fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515610ee057600080fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b606060068054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610fbf5780601f10610f9457610100808354040283529160200191610fbf565b820191906000526020600020905b815481529060010190602001808311610fa257829003601f168201915b5050505050905090565b3373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561100457600080fd5b80600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051808215151515815260200191505060405180910390a35050565b611110848484610bd8565b61111c84848484611739565b151561112757600080fd5b50505050565b611137838361195b565b61114182826119b2565b7fd7ca5dc2f8c6bb37c3a4de2a81499b25f8ca8bbb3082010244fe747077d0f6cc8383604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1505050565b60606111bc82610d7b565b15156111c757600080fd5b600b60008381526020019081526020016000208054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561126e5780601f106112435761010080835404028352916020019161126e565b820191906000526020600020905b81548152906001019060200180831161125157829003601f168201915b50505050509050919050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60008061131a83610e25565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061138957508373ffffffffffffffffffffffffffffffffffffffff1661137184610a22565b73ffffffffffffffffffffffffffffffffffffffff16145b8061139a5750611399818561127a565b5b91505092915050565b8173ffffffffffffffffffffffffffffffffffffffff166113c382610e25565b73ffffffffffffffffffffffffffffffffffffffff161415156113e557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff166002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156114a25760006002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5050565b60008060006114b585856119f2565b600860008581526020019081526020016000205492506115216001600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050611b2190919063ffffffff16565b9150600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208281548110151561156f57fe5b9060005260206000200154905080600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020848154811015156115c957fe5b9060005260206000200181905550600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054809190600190036116299190611d69565b50600060086000868152602001908152602001600020819055508260086000838152602001908152602001600020819055505050505050565b600061166e8383611b3a565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490509050600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020829080600181540180825580915050906001820390600052602060002001600090919290919091505550806008600084815260200190815260200160002081905550505050565b60008061175b8573ffffffffffffffffffffffffffffffffffffffff16611c94565b151561176a5760019150611952565b8473ffffffffffffffffffffffffffffffffffffffff1663150b7a02338887876040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561185f578082015181840152602081019050611844565b50505050905090810190601f16801561188c5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1580156118ae57600080fd5b505af11580156118c2573d6000803e3d6000fd5b505050506040513d60208110156118d857600080fd5b8101908080519060200190929190505050905063150b7a027c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161491505b50949350505050565b6119658282611ca7565b600980549050600a60008381526020019081526020016000208190555060098190806001815401808255809150509060018203906000526020600020016000909192909190915055505050565b6119bb82610d7b565b15156119c657600080fd5b80600b600084815260200190815260200160002090805190602001906119ed929190611d95565b505050565b8173ffffffffffffffffffffffffffffffffffffffff16611a1282610e25565b73ffffffffffffffffffffffffffffffffffffffff16141515611a3457600080fd5b611a876001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b2190919063ffffffff16565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060006001600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b6000828211151515611b2f57fe5b818303905092915050565b600073ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515611ba857600080fd5b816001600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550611c4d6001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d4d90919063ffffffff16565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050565b600080823b905060008111915050919050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515611ce357600080fd5b611ced8282611662565b808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b60008183019050828110151515611d6057fe5b80905092915050565b815481835581811115611d9057818360005260206000209182019101611d8f9190611e15565b5b505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611dd657805160ff1916838001178555611e04565b82800160010185558215611e04579182015b82811115611e03578251825591602001919060010190611de8565b5b509050611e119190611e15565b5090565b611e3791905b80821115611e33576000816000905550600101611e1b565b5090565b905600a165627a7a7230582015f17314aeafa6a3cb4ec50e9f75d6b32886a100aa381b0f0f61410dbd29d8f40029",
"deployedBytecode": "0x608060405260043610610107576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806301ffc9a71461010c57806306fdde0314610170578063081812fc14610200578063095ea7b31461026d57806318160ddd146102ba57806319fa8f50146102e557806323b872dd1461034e5780632f745c59146103bb57806342842e0e1461041c5780634f558e79146104895780634f6ccce7146104ce5780636352211e1461050f57806370a082311461057c57806395d89b41146105d3578063a22cb46514610663578063b88d4fde146106b2578063bed8e08314610765578063c87b56dd146107f8578063e985e9c51461089e575b600080fd5b34801561011857600080fd5b5061015660048036038101908080357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190505050610919565b604051808215151515815260200191505060405180910390f35b34801561017c57600080fd5b50610185610980565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101c55780820151818401526020810190506101aa565b50505050905090810190601f1680156101f25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561020c57600080fd5b5061022b60048036038101908080359060200190929190505050610a22565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561027957600080fd5b506102b8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a5f565b005b3480156102c657600080fd5b506102cf610ba4565b6040518082815260200191505060405180910390f35b3480156102f157600080fd5b506102fa610bb1565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b34801561035a57600080fd5b506103b9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610bd8565b005b3480156103c757600080fd5b50610406600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610ce3565b6040518082815260200191505060405180910390f35b34801561042857600080fd5b50610487600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d5a565b005b34801561049557600080fd5b506104b460048036038101908080359060200190929190505050610d7b565b604051808215151515815260200191505060405180910390f35b3480156104da57600080fd5b506104f960048036038101908080359060200190929190505050610ded565b6040518082815260200191505060405180910390f35b34801561051b57600080fd5b5061053a60048036038101908080359060200190929190505050610e25565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561058857600080fd5b506105bd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610ea3565b6040518082815260200191505060405180910390f35b3480156105df57600080fd5b506105e8610f27565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561062857808201518184015260208101905061060d565b50505050905090810190601f1680156106555780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561066f57600080fd5b506106b0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803515159060200190929190505050610fc9565b005b3480156106be57600080fd5b50610763600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611105565b005b34801561077157600080fd5b506107f6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061112d565b005b34801561080457600080fd5b50610823600480360381019080803590602001909291905050506111b1565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610863578082015181840152602081019050610848565b50505050905090810190601f1680156108905780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156108aa57600080fd5b506108ff600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061127a565b604051808215151515815260200191505060405180910390f35b6000806000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a900460ff169050919050565b606060058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a185780601f106109ed57610100808354040283529160200191610a18565b820191906000526020600020905b8154815290600101906020018083116109fb57829003601f168201915b5050505050905090565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000610a6a82610e25565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610aa757600080fd5b8073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610ae75750610ae6813361127a565b5b1515610af257600080fd5b826002600084815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550818373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a4505050565b6000600980549050905090565b6301ffc9a77c01000000000000000000000000000000000000000000000000000000000281565b610be2338261130e565b1515610bed57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610c2957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515610c6557600080fd5b610c6f83826113a3565b610c7983826114a6565b610c838282611662565b808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4505050565b6000610cee83610ea3565b82101515610cfb57600080fd5b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002082815481101515610d4757fe5b9060005260206000200154905092915050565b610d768383836020604051908101604052806000815250611105565b505050565b6000806001600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415915050919050565b6000610df7610ba4565b82101515610e0457600080fd5b600982815481101515610e1357fe5b90600052602060002001549050919050565b6000806001600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610e9a57600080fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515610ee057600080fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b606060068054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610fbf5780601f10610f9457610100808354040283529160200191610fbf565b820191906000526020600020905b815481529060010190602001808311610fa257829003601f168201915b5050505050905090565b3373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561100457600080fd5b80600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051808215151515815260200191505060405180910390a35050565b611110848484610bd8565b61111c84848484611739565b151561112757600080fd5b50505050565b611137838361195b565b61114182826119b2565b7fd7ca5dc2f8c6bb37c3a4de2a81499b25f8ca8bbb3082010244fe747077d0f6cc8383604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1505050565b60606111bc82610d7b565b15156111c757600080fd5b600b60008381526020019081526020016000208054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561126e5780601f106112435761010080835404028352916020019161126e565b820191906000526020600020905b81548152906001019060200180831161125157829003601f168201915b50505050509050919050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60008061131a83610e25565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061138957508373ffffffffffffffffffffffffffffffffffffffff1661137184610a22565b73ffffffffffffffffffffffffffffffffffffffff16145b8061139a5750611399818561127a565b5b91505092915050565b8173ffffffffffffffffffffffffffffffffffffffff166113c382610e25565b73ffffffffffffffffffffffffffffffffffffffff161415156113e557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff166002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156114a25760006002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5050565b60008060006114b585856119f2565b600860008581526020019081526020016000205492506115216001600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050611b2190919063ffffffff16565b9150600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208281548110151561156f57fe5b9060005260206000200154905080600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020848154811015156115c957fe5b9060005260206000200181905550600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054809190600190036116299190611d69565b50600060086000868152602001908152602001600020819055508260086000838152602001908152602001600020819055505050505050565b600061166e8383611b3a565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490509050600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020829080600181540180825580915050906001820390600052602060002001600090919290919091505550806008600084815260200190815260200160002081905550505050565b60008061175b8573ffffffffffffffffffffffffffffffffffffffff16611c94565b151561176a5760019150611952565b8473ffffffffffffffffffffffffffffffffffffffff1663150b7a02338887876040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561185f578082015181840152602081019050611844565b50505050905090810190601f16801561188c5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b1580156118ae57600080fd5b505af11580156118c2573d6000803e3d6000fd5b505050506040513d60208110156118d857600080fd5b8101908080519060200190929190505050905063150b7a027c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161491505b50949350505050565b6119658282611ca7565b600980549050600a60008381526020019081526020016000208190555060098190806001815401808255809150509060018203906000526020600020016000909192909190915055505050565b6119bb82610d7b565b15156119c657600080fd5b80600b600084815260200190815260200160002090805190602001906119ed929190611d95565b505050565b8173ffffffffffffffffffffffffffffffffffffffff16611a1282610e25565b73ffffffffffffffffffffffffffffffffffffffff16141515611a3457600080fd5b611a876001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b2190919063ffffffff16565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060006001600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b6000828211151515611b2f57fe5b818303905092915050565b600073ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515611ba857600080fd5b816001600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550611c4d6001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d4d90919063ffffffff16565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050565b600080823b905060008111915050919050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515611ce357600080fd5b611ced8282611662565b808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b60008183019050828110151515611d6057fe5b80905092915050565b815481835581811115611d9057818360005260206000209182019101611d8f9190611e15565b5b505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611dd657805160ff1916838001178555611e04565b82800160010185558215611e04579182015b82811115611e03578251825591602001919060010190611de8565b5b509050611e119190611e15565b5090565b611e3791905b80821115611e33576000816000905550600101611e1b565b5090565b905600a165627a7a7230582015f17314aeafa6a3cb4ec50e9f75d6b32886a100aa381b0f0f61410dbd29d8f40029",
"sourceMap": "110:447:2:-;;;146:88;8:9:-1;5:2;;;30:1;27;20:12;5:2;146:88:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;216:5;223:7;649:38:5;274:10;668:18;;649;;;:38;;;:::i;:::-;1258::9;293:10:8;1277:18:9;;1258;;;:38;;;:::i;:::-;1302:44;935:10:8;1321:24:9;;1302:18;;;:44;;;:::i;:::-;1229:5:11;1221;:13;;;;;;;;;;;;:::i;:::-;;1250:7;1240;:17;;;;;;;;;;;;:::i;:::-;;1337:48;1081:10:8;1356:28:11;;1337:18;;;:48;;;:::i;:::-;1391:46;1343:10:8;1410:26:11;;1391:18;;;:46;;;:::i;:::-;1166:276;;146:88:2;;110:447;;987:156:5;1081:10;1065:26;;:12;:26;;;;;1057:35;;;;;;;;1134:4;1098:19;:33;1118:12;1098:33;;;;;;;;;;;;;;;;;;:40;;;;;;;;;;;;;;;;;;987:156;:::o;110:447:2:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;",
"deployedSourceMap": "110:447:2:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;775:142:5;;8:9:-1;5:2;;;30:1;27;20:12;5:2;775:142:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1536:70:11;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1536:70:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;1536:70:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3289:111:9;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3289:111:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2785:277;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2785:277:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2805:87:11;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2805:87:11;;;;;;;;;;;;;;;;;;;;;;;230:54:5;;8:9:-1;5:2;;;30:1;27;20:12;5:2;230:54:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4780:370:9;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4780:370:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2460:203:11;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2460:203:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5766:199:9;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5766:199:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2240:140;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2240:140:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3216::11;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3216:140:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1898:164:9;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1898:164:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1543:142;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1543:142:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1704:74:11;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1704:74:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;1704:74:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3680:205:9;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3680:205:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6647:276;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6647:276:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;240:257:2;;8:9:-1;5:2;;;30:1;27;20:12;5:2;240:257:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1966:133:11;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1966:133:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;1966:133:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4194:168:9;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4194:168:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;775:142:5;858:4;879:19;:33;899:12;879:33;;;;;;;;;;;;;;;;;;;;;;;;;;;872:40;;775:142;;;:::o;1536:70:11:-;1575:6;1596:5;1589:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1536:70;:::o;3289:111:9:-;3349:7;3371:14;:24;3386:8;3371:24;;;;;;;;;;;;;;;;;;;;;3364:31;;3289:111;;;:::o;2785:277::-;2846:13;2862:17;2870:8;2862:7;:17::i;:::-;2846:33;;2900:5;2893:12;;:3;:12;;;;2885:21;;;;;;;;2934:5;2920:19;;:10;:19;;;:58;;;;2943:35;2960:5;2967:10;2943:16;:35::i;:::-;2920:58;2912:67;;;;;;;;3013:3;2986:14;:24;3001:8;2986:24;;;;;;;;;;;;:30;;;;;;;;;;;;;;;;;;3048:8;3043:3;3027:30;;3036:5;3027:30;;;;;;;;;;;;2785:277;;;:::o;2805:87:11:-;2849:7;2871:9;:16;;;;2864:23;;2805:87;:::o;230:54:5:-;274:10;230:54;;;:::o;4780:370:9:-;4891:39;4909:10;4921:8;4891:17;:39::i;:::-;4883:48;;;;;;;;4962:1;4945:19;;:5;:19;;;;4937:28;;;;;;;;4994:1;4979:17;;:3;:17;;;;4971:26;;;;;;;;5004:30;5018:5;5025:8;5004:13;:30::i;:::-;5040:32;5056:5;5063:8;5040:15;:32::i;:::-;5078:25;5089:3;5094:8;5078:10;:25::i;:::-;5136:8;5131:3;5115:30;;5124:5;5115:30;;;;;;;;;;;;4780:370;;;:::o;2460:203:11:-;2566:7;2600:17;2610:6;2600:9;:17::i;:::-;2591:6;:26;2583:35;;;;;;;;2631:11;:19;2643:6;2631:19;;;;;;;;;;;;;;;2651:6;2631:27;;;;;;;;;;;;;;;;;;2624:34;;2460:203;;;;:::o;5766:199:9:-;5918:42;5935:5;5942:3;5947:8;5918:42;;;;;;;;;;;;;:16;:42::i;:::-;5766:199;;;:::o;2240:140::-;2295:4;2307:13;2323:10;:20;2334:8;2323:20;;;;;;;;;;;;;;;;;;;;;2307:36;;2373:1;2356:19;;:5;:19;;;;2349:26;;2240:140;;;;:::o;3216::11:-;3275:7;3307:13;:11;:13::i;:::-;3298:6;:22;3290:31;;;;;;;;3334:9;3344:6;3334:17;;;;;;;;;;;;;;;;;;3327:24;;3216:140;;;:::o;1898:164:9:-;1954:7;1969:13;1985:10;:20;1996:8;1985:20;;;;;;;;;;;;;;;;;;;;;1969:36;;2036:1;2019:19;;:5;:19;;;;2011:28;;;;;;;;2052:5;2045:12;;1898:164;;;;:::o;1543:142::-;1599:7;1640:1;1622:20;;:6;:20;;;;1614:29;;;;;;;;1656:16;:24;1673:6;1656:24;;;;;;;;;;;;;;;;1649:31;;1543:142;;;:::o;1704:74:11:-;1745:6;1766:7;1759:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1704:74;:::o;3680:205:9:-;3764:10;3757:17;;:3;:17;;;;3749:26;;;;;;;;3818:9;3781:17;:29;3799:10;3781:29;;;;;;;;;;;;;;;:34;3811:3;3781:34;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;3865:3;3838:42;;3853:10;3838:42;;;3870:9;3838:42;;;;;;;;;;;;;;;;;;;;;;3680:205;;:::o;6647:276::-;6771:34;6784:5;6791:3;6796:8;6771:12;:34::i;:::-;6864:53;6889:5;6896:3;6901:8;6911:5;6864:24;:53::i;:::-;6856:62;;;;;;;;6647:276;;;;:::o;240:257:2:-;370:26;382:3;387:8;370:11;:26::i;:::-;406:39;425:8;435:9;406:18;:39::i;:::-;460:30;476:3;481:8;460:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;240:257;;;:::o;1966:133:11:-;2023:6;2045:16;2052:8;2045:6;:16::i;:::-;2037:25;;;;;;;;2075:9;:19;2085:8;2075:19;;;;;;;;;;;2068:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1966:133;;;:::o;4194:168:9:-;4300:4;4321:17;:25;4339:6;4321:25;;;;;;;;;;;;;;;:36;4347:9;4321:36;;;;;;;;;;;;;;;;;;;;;;;;;4314:43;;4194:168;;;;:::o;7270:438::-;7380:4;7394:13;7410:17;7418:8;7410:7;:17::i;:::-;7394:33;;7606:5;7594:17;;:8;:17;;;:60;;;;7646:8;7621:33;;:21;7633:8;7621:11;:21::i;:::-;:33;;;7594:60;:103;;;;7664:33;7681:5;7688:8;7664:16;:33::i;:::-;7594:103;7579:124;;7270:438;;;;;:::o;8762:214::-;8863:6;8842:27;;:17;8850:8;8842:7;:17::i;:::-;:27;;;8834:36;;;;;;;;8916:1;8880:38;;:14;:24;8895:8;8880:24;;;;;;;;;;;;;;;;;;;;;:38;;;;8876:96;;;8963:1;8928:14;:24;8943:8;8928:24;;;;;;;;;;;;:37;;;;;;;;;;;;;;;;;;8876:96;8762:214;;:::o;4479:1022:11:-;4734:18;4787:22;4850:17;4552:38;4574:5;4581:8;4552:21;:38::i;:::-;4755:16;:26;4772:8;4755:26;;;;;;;;;;;;4734:47;;4812:32;4842:1;4812:11;:18;4824:5;4812:18;;;;;;;;;;;;;;;:25;;;;:29;;:32;;;;:::i;:::-;4787:57;;4870:11;:18;4882:5;4870:18;;;;;;;;;;;;;;;4889:14;4870:34;;;;;;;;;;;;;;;;;;4850:54;;4944:9;4911:11;:18;4923:5;4911:18;;;;;;;;;;;;;;;4930:10;4911:30;;;;;;;;;;;;;;;;;:42;;;;5031:11;:18;5043:5;5031:18;;;;;;;;;;;;;;;:27;;;;;;;;;;;;:::i;:::-;;5449:1;5420:16;:26;5437:8;5420:26;;;;;;;;;;;:30;;;;5486:10;5456:16;:27;5473:9;5456:27;;;;;;;;;;;:40;;;;4479:1022;;;;;:::o;3974:226::-;4077:14;4040:31;4057:3;4062:8;4040:16;:31::i;:::-;4094:11;:16;4106:3;4094:16;;;;;;;;;;;;;;;:23;;;;4077:40;;4123:11;:16;4135:3;4123:16;;;;;;;;;;;;;;;4145:8;4123:31;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;4123:31:11;;;;;;;;;;;;;;;;;;;;;;4189:6;4160:16;:26;4177:8;4160:26;;;;;;;;;;;:35;;;;3974:226;;;:::o;10442:347:9:-;10581:4;10649:13;10600:16;:3;:14;;;:16::i;:::-;10599:17;10595:49;;;10633:4;10626:11;;;;10595:49;10680:3;10665:36;;;10709:10;10721:5;10728:8;10738:5;10665:79;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;10665:79:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10665:79:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10665:79:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10665:79:9;;;;;;;;;;;;;;;;10649:95;;712:10;10768:15;;10758:25;;;:6;:25;;;;10750:34;;10442:347;;;;;;;;:::o;5762:172:11:-;5823:26;5835:3;5840:8;5823:11;:26::i;:::-;5883:9;:16;;;;5856:14;:24;5871:8;5856:24;;;;;;;;;;;:43;;;;5905:9;5920:8;5905:24;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;5905:24:11;;;;;;;;;;;;;;;;;;;;;;5762:172;;:::o;3581:130::-;3657:16;3664:8;3657:6;:16::i;:::-;3649:25;;;;;;;;3702:4;3680:9;:19;3690:8;3680:19;;;;;;;;;;;:26;;;;;;;;;;;;:::i;:::-;;3581:130;;:::o;9722:214:9:-;9824:5;9803:26;;:17;9811:8;9803:7;:17::i;:::-;:26;;;9795:35;;;;;;;;9862:30;9890:1;9862:16;:23;9879:5;9862:23;;;;;;;;;;;;;;;;:27;;:30;;;;:::i;:::-;9836:16;:23;9853:5;9836:23;;;;;;;;;;;;;;;:56;;;;9929:1;9898:10;:20;9909:8;9898:20;;;;;;;;;;;;:33;;;;;;;;;;;;;;;;;;9722:214;;:::o;1060:116:6:-;1120:7;1148:2;1142;:8;;1135:16;;;;;;1169:2;1164;:7;1157:14;;1060:116;;;;:::o;9239:204:9:-;9345:1;9313:34;;:10;:20;9324:8;9313:20;;;;;;;;;;;;;;;;;;;;;:34;;;9305:43;;;;;;;;9377:3;9354:10;:20;9365:8;9354:20;;;;;;;;;;;;:26;;;;;;;;;;;;;;;;;;9410:28;9436:1;9410:16;:21;9427:3;9410:21;;;;;;;;;;;;;;;;:25;;:28;;;;:::i;:::-;9386:16;:21;9403:3;9386:21;;;;;;;;;;;;;;;:52;;;;9239:204;;:::o;438:578:3:-;496:4;508:12;983:5;971:18;963:26;;1010:1;1003:4;:8;996:15;;438:578;;;;:::o;7957:169:9:-;8041:1;8026:17;;:3;:17;;;;8018:26;;;;;;;;8050:25;8061:3;8066:8;8050:10;:25::i;:::-;8112:8;8107:3;8086:35;;8103:1;8086:35;;;;;;;;;;;;7957:169;;:::o;1238:128:6:-;1298:9;1324:2;1319;:7;1315:11;;1344:2;1339:1;:7;;1332:15;;;;;;1360:1;1353:8;;1238:128;;;;:::o;110:447:2:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o",
"source": "pragma solidity ^0.4.24;\n\nimport \"../node_modules/zeppelin-solidity/contracts/token/ERC721/ERC721Token.sol\";\n\ncontract MyNFT is ERC721Token {\n constructor (string _name, string _symbol) public\n ERC721Token(_name, _symbol) {}\n\n function registerUniqueToken(\n address _to,\n uint256 _tokenId,\n string _tokenURI\n ) public\n {\n super._mint(_to, _tokenId);\n super._setTokenURI(_tokenId, _tokenURI);\n emit TokenRegistered(_to, _tokenId);\n }\n\n event TokenRegistered(address _by, uint256 _tokenId);\n}\n",
"sourcePath": "/Users/willpark/Desktop/bookwork-klaytn/project_codes/nftbapp/backend-nftdapp/contracts/MyNFT.sol",
"ast": {
"absolutePath": "/Users/willpark/Desktop/bookwork-klaytn/project_codes/nftbapp/backend-nftdapp/contracts/MyNFT.sol",
"exportedSymbols": {
"MyNFT": [
451
]
},
"id": 452,
"nodeType": "SourceUnit",
"nodes": [
{
"id": 400,
"literals": [
"solidity",
"^",
"0.4",
".24"
],
"nodeType": "PragmaDirective",
"src": "0:24:2"
},
{
"absolutePath": "/Users/willpark/Desktop/bookwork-klaytn/project_codes/nftbapp/backend-nftdapp/node_modules/zeppelin-solidity/contracts/token/ERC721/ERC721Token.sol",
"file": "../node_modules/zeppelin-solidity/contracts/token/ERC721/ERC721Token.sol",
"id": 401,
"nodeType": "ImportDirective",
"scope": 452,
"sourceUnit": 1742,
"src": "26:82:2",
"symbolAliases": [],
"unitAlias": ""
},
{
"baseContracts": [
{
"arguments": null,
"baseName": {
"contractScope": null,
"id": 402,
"name": "ERC721Token",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 1741,
"src": "128:11:2",
"typeDescriptions": {
"typeIdentifier": "t_contract$_ERC721Token_$1741",
"typeString": "contract ERC721Token"
}
},
"id": 403,
"nodeType": "InheritanceSpecifier",
"src": "128:11:2"
}
],
"contractDependencies": [
480,
531,
652,
672,
679,
801,
1349,
1741
],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": true,
"id": 451,
"linearizedBaseContracts": [
451,
1741,
679,
672,
652,
1349,
801,
531,
480
],
"name": "MyNFT",
"nodeType": "ContractDefinition",
"nodes": [
{
"body": {
"id": 414,
"nodeType": "Block",
"src": "232:2:2",
"statements": []
},
"documentation": null,
"id": 415,
"implemented": true,
"isConstructor": true,
"isDeclaredConst": false,
"modifiers": [
{
"arguments": [
{
"argumentTypes": null,
"id": 410,
"name": "_name",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 405,
"src": "216:5:2",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string memory"
}
},
{
"argumentTypes": null,
"id": 411,
"name": "_symbol",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 407,
"src": "223:7:2",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string memory"
}
}
],
"id": 412,
"modifierName": {
"argumentTypes": null,
"id": 409,
"name": "ERC721Token",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1741,
"src": "204:11:2",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_contract$_ERC721Token_$1741_$",
"typeString": "type(contract ERC721Token)"
}
},
"nodeType": "ModifierInvocation",
"src": "204:27:2"
}
],
"name": "",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 408,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 405,
"name": "_name",
"nodeType": "VariableDeclaration",
"scope": 415,
"src": "159:12:2",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string"
},
"typeName": {
"id": 404,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "159:6:2",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 407,
"name": "_symbol",
"nodeType": "VariableDeclaration",
"scope": 415,
"src": "173:14:2",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string"
},
"typeName": {
"id": 406,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "173:6:2",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "158:30:2"
},
"payable": false,
"returnParameters": {
"id": 413,
"nodeType": "ParameterList",
"parameters": [],
"src": "232:0:2"
},
"scope": 451,
"src": "146:88:2",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"body": {
"id": 443,
"nodeType": "Block",
"src": "360:137:2",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 427,
"name": "_to",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 417,
"src": "382:3:2",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 428,
"name": "_tokenId",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 419,
"src": "387:8:2",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"id": 424,
"name": "super",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1792,
"src": "370:5:2",
"typeDescriptions": {
"typeIdentifier": "t_super$_MyNFT_$451",
"typeString": "contract super MyNFT"
}
},
"id": 426,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "_mint",
"nodeType": "MemberAccess",
"referencedDeclaration": 1661,
"src": "370:11:2",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
"typeString": "function (address,uint256)"
}
},
"id": 429,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "370:26:2",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 430,
"nodeType": "ExpressionStatement",
"src": "370:26:2"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 434,
"name": "_tokenId",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 419,
"src": "425:8:2",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
{
"argumentTypes": null,
"id": 435,
"name": "_tokenURI",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 421,
"src": "435:9:2",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string memory"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
{
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string memory"
}
],
"expression": {
"argumentTypes": null,
"id": 431,
"name": "super",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1792,
"src": "406:5:2",
"typeDescriptions": {
"typeIdentifier": "t_super$_MyNFT_$451",
"typeString": "contract super MyNFT"
}
},
"id": 433,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "_setTokenURI",
"nodeType": "MemberAccess",
"referencedDeclaration": 1533,
"src": "406:18:2",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (uint256,string memory)"
}
},
"id": 436,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "406:39:2",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 437,
"nodeType": "ExpressionStatement",
"src": "406:39:2"
},
{
"eventCall": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 439,
"name": "_to",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 417,
"src": "476:3:2",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 440,
"name": "_tokenId",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 419,
"src": "481:8:2",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 438,
"name": "TokenRegistered",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 450,
"src": "460:15:2",
"typeDescriptions": {
"typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$",
"typeString": "function (address,uint256)"
}
},
"id": 441,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "460:30:2",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 442,
"nodeType": "EmitStatement",
"src": "455:35:2"
}
]
},
"documentation": null,
"id": 444,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [],
"name": "registerUniqueToken",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 422,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 417,
"name": "_to",
"nodeType": "VariableDeclaration",
"scope": 444,
"src": "278:11:2",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 416,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "278:7:2",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 419,
"name": "_tokenId",
"nodeType": "VariableDeclaration",
"scope": 444,
"src": "299:16:2",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 418,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "299:7:2",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 421,
"name": "_tokenURI",
"nodeType": "VariableDeclaration",
"scope": 444,
"src": "325:17:2",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string"
},
"typeName": {
"id": 420,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "325:6:2",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "268:80:2"
},
"payable": false,
"returnParameters": {
"id": 423,
"nodeType": "ParameterList",
"parameters": [],
"src": "360:0:2"
},
"scope": 451,
"src": "240:257:2",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"anonymous": false,
"documentation": null,
"id": 450,
"name": "TokenRegistered",
"nodeType": "EventDefinition",
"parameters": {
"id": 449,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 446,
"indexed": false,
"name": "_by",
"nodeType": "VariableDeclaration",
"scope": 450,
"src": "524:11:2",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 445,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "524:7:2",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 448,
"indexed": false,
"name": "_tokenId",
"nodeType": "VariableDeclaration",
"scope": 450,
"src": "537:16:2",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 447,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "537:7:2",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "523:31:2"
},
"src": "502:53:2"
}
],
"scope": 452,
"src": "110:447:2"
}
],
"src": "0:558:2"
},
"legacyAST": {
"absolutePath": "/Users/willpark/Desktop/bookwork-klaytn/project_codes/nftbapp/backend-nftdapp/contracts/MyNFT.sol",
"exportedSymbols": {
"MyNFT": [
451
]
},
"id": 452,
"nodeType": "SourceUnit",
"nodes": [
{
"id": 400,
"literals": [
"solidity",
"^",
"0.4",
".24"
],
"nodeType": "PragmaDirective",
"src": "0:24:2"
},
{
"absolutePath": "/Users/willpark/Desktop/bookwork-klaytn/project_codes/nftbapp/backend-nftdapp/node_modules/zeppelin-solidity/contracts/token/ERC721/ERC721Token.sol",
"file": "../node_modules/zeppelin-solidity/contracts/token/ERC721/ERC721Token.sol",
"id": 401,
"nodeType": "ImportDirective",
"scope": 452,
"sourceUnit": 1742,
"src": "26:82:2",
"symbolAliases": [],
"unitAlias": ""
},
{
"baseContracts": [
{
"arguments": null,
"baseName": {
"contractScope": null,
"id": 402,
"name": "ERC721Token",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 1741,
"src": "128:11:2",
"typeDescriptions": {
"typeIdentifier": "t_contract$_ERC721Token_$1741",
"typeString": "contract ERC721Token"
}
},
"id": 403,
"nodeType": "InheritanceSpecifier",
"src": "128:11:2"
}
],
"contractDependencies": [
480,
531,
652,
672,
679,
801,
1349,
1741
],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": true,
"id": 451,
"linearizedBaseContracts": [
451,
1741,
679,
672,
652,
1349,
801,
531,
480
],
"name": "MyNFT",
"nodeType": "ContractDefinition",
"nodes": [
{
"body": {
"id": 414,
"nodeType": "Block",
"src": "232:2:2",
"statements": []
},
"documentation": null,
"id": 415,
"implemented": true,
"isConstructor": true,
"isDeclaredConst": false,
"modifiers": [
{
"arguments": [
{
"argumentTypes": null,
"id": 410,
"name": "_name",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 405,
"src": "216:5:2",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string memory"
}
},
{
"argumentTypes": null,
"id": 411,
"name": "_symbol",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 407,
"src": "223:7:2",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string memory"
}
}
],
"id": 412,
"modifierName": {
"argumentTypes": null,
"id": 409,
"name": "ERC721Token",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1741,
"src": "204:11:2",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_contract$_ERC721Token_$1741_$",
"typeString": "type(contract ERC721Token)"
}
},
"nodeType": "ModifierInvocation",
"src": "204:27:2"
}
],
"name": "",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 408,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 405,
"name": "_name",
"nodeType": "VariableDeclaration",
"scope": 415,
"src": "159:12:2",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string"
},
"typeName": {
"id": 404,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "159:6:2",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 407,
"name": "_symbol",
"nodeType": "VariableDeclaration",
"scope": 415,
"src": "173:14:2",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string"
},
"typeName": {
"id": 406,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "173:6:2",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "158:30:2"
},
"payable": false,
"returnParameters": {
"id": 413,
"nodeType": "ParameterList",
"parameters": [],
"src": "232:0:2"
},
"scope": 451,
"src": "146:88:2",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"body": {
"id": 443,
"nodeType": "Block",
"src": "360:137:2",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 427,
"name": "_to",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 417,
"src": "382:3:2",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 428,
"name": "_tokenId",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 419,
"src": "387:8:2",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"id": 424,
"name": "super",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1792,
"src": "370:5:2",
"typeDescriptions": {
"typeIdentifier": "t_super$_MyNFT_$451",
"typeString": "contract super MyNFT"
}
},
"id": 426,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "_mint",
"nodeType": "MemberAccess",
"referencedDeclaration": 1661,
"src": "370:11:2",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
"typeString": "function (address,uint256)"
}
},
"id": 429,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "370:26:2",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 430,
"nodeType": "ExpressionStatement",
"src": "370:26:2"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 434,
"name": "_tokenId",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 419,
"src": "425:8:2",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
{
"argumentTypes": null,
"id": 435,
"name": "_tokenURI",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 421,
"src": "435:9:2",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string memory"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
{
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string memory"
}
],
"expression": {
"argumentTypes": null,
"id": 431,
"name": "super",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1792,
"src": "406:5:2",
"typeDescriptions": {
"typeIdentifier": "t_super$_MyNFT_$451",
"typeString": "contract super MyNFT"
}
},
"id": 433,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "_setTokenURI",
"nodeType": "MemberAccess",
"referencedDeclaration": 1533,
"src": "406:18:2",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (uint256,string memory)"
}
},
"id": 436,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "406:39:2",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 437,
"nodeType": "ExpressionStatement",
"src": "406:39:2"
},
{
"eventCall": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 439,
"name": "_to",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 417,
"src": "476:3:2",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 440,
"name": "_tokenId",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 419,
"src": "481:8:2",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 438,
"name": "TokenRegistered",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 450,
"src": "460:15:2",
"typeDescriptions": {
"typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$",
"typeString": "function (address,uint256)"
}
},
"id": 441,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "460:30:2",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 442,
"nodeType": "EmitStatement",
"src": "455:35:2"
}
]
},
"documentation": null,
"id": 444,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [],
"name": "registerUniqueToken",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 422,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 417,
"name": "_to",
"nodeType": "VariableDeclaration",
"scope": 444,
"src": "278:11:2",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 416,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "278:7:2",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 419,
"name": "_tokenId",
"nodeType": "VariableDeclaration",
"scope": 444,
"src": "299:16:2",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 418,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "299:7:2",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 421,
"name": "_tokenURI",
"nodeType": "VariableDeclaration",
"scope": 444,
"src": "325:17:2",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string"
},
"typeName": {
"id": 420,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "325:6:2",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "268:80:2"
},
"payable": false,
"returnParameters": {
"id": 423,
"nodeType": "ParameterList",
"parameters": [],
"src": "360:0:2"
},
"scope": 451,
"src": "240:257:2",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"anonymous": false,
"documentation": null,
"id": 450,
"name": "TokenRegistered",
"nodeType": "EventDefinition",
"parameters": {
"id": 449,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 446,
"indexed": false,
"name": "_by",
"nodeType": "VariableDeclaration",
"scope": 450,
"src": "524:11:2",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 445,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "524:7:2",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 448,
"indexed": false,
"name": "_tokenId",
"nodeType": "VariableDeclaration",
"scope": 450,
"src": "537:16:2",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 447,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "537:7:2",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "523:31:2"
},
"src": "502:53:2"
}
],
"scope": 452,
"src": "110:447:2"
}
],
"src": "0:558:2"
},
"compiler": {
"name": "solc",
"version": "0.4.25+commit.59dbf8f1.Emscripten.clang"
},
"networks": {
"1001": {
"events": {},
"links": {},
"address": "0xfd0d9aeaae3c10b1acd9db5a17f2ee2775493f64",
"transactionHash": "0x6839888b3bc8bc110940e42b8ca7970c18e7e8213979d7e5b0064a454747b5a9"
},
"5777": {
"events": {},
"links": {},
"address": "0x3cd92247e5331d3b51f6cbeff4e5d3ef420f1989",
"transactionHash": "0xc2027e4edde681818c53398bbbcf3fdb42129e065fe0ca3108fe46a7a6acb2ef"
}
},
"schemaVersion": "2.0.2",
"updatedAt": "2020-03-25T02:14:31.596Z"
}