{
  "contractName": "SiringClockAuction",
  "abi": [
    {
      "constant": false,
      "inputs": [],
      "name": "unpause",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "paused",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [],
      "name": "withdrawBalance",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [],
      "name": "renounceOwnership",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "isSiringClockAuction",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_tokenId",
          "type": "uint256"
        }
      ],
      "name": "getAuction",
      "outputs": [
        {
          "name": "seller",
          "type": "address"
        },
        {
          "name": "startingPrice",
          "type": "uint256"
        },
        {
          "name": "endingPrice",
          "type": "uint256"
        },
        {
          "name": "duration",
          "type": "uint256"
        },
        {
          "name": "startedAt",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "ownerCut",
      "outputs": [
        {
          "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": "_tokenId",
          "type": "uint256"
        }
      ],
      "name": "cancelAuctionWhenPaused",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "owner",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_tokenId",
          "type": "uint256"
        }
      ],
      "name": "cancelAuction",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_tokenId",
          "type": "uint256"
        }
      ],
      "name": "getCurrentPrice",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "nonFungibleContract",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_newOwner",
          "type": "address"
        }
      ],
      "name": "transferOwnership",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "name": "_nftAddr",
          "type": "address"
        },
        {
          "name": "_cut",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "fallback"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "name": "tokenId",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "startingPrice",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "endingPrice",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "duration",
          "type": "uint256"
        }
      ],
      "name": "AuctionCreated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "name": "tokenId",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "totalPrice",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "winner",
          "type": "address"
        }
      ],
      "name": "AuctionSuccessful",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "name": "tokenId",
          "type": "uint256"
        }
      ],
      "name": "AuctionCancelled",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [],
      "name": "Pause",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [],
      "name": "Unpause",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "previousOwner",
          "type": "address"
        }
      ],
      "name": "OwnershipRenounced",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "previousOwner",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "newOwner",
          "type": "address"
        }
      ],
      "name": "OwnershipTransferred",
      "type": "event"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_tokenId",
          "type": "uint256"
        },
        {
          "name": "_startingPrice",
          "type": "uint256"
        },
        {
          "name": "_endingPrice",
          "type": "uint256"
        },
        {
          "name": "_duration",
          "type": "uint256"
        },
        {
          "name": "_seller",
          "type": "address"
        }
      ],
      "name": "createAuction",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_tokenId",
          "type": "uint256"
        }
      ],
      "name": "bid",
      "outputs": [],
      "payable": true,
      "stateMutability": "payable",
      "type": "function"
    }
  ],
  "bytecode": "0x60806040526000805460a060020a60ff02191690556004805460ff1916600117905534801561002d57600080fd5b50604051604080610eab83398101604052805160209091015160008054600160a060020a031916331781558290829061271082111561006b57600080fd5b8160028190555082905080600160a060020a0316631051db346040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1580156100cc57600080fd5b505af11580156100e0573d6000803e3d6000fd5b505050506040513d60208110156100f657600080fd5b5051151561010357600080fd5b60018054600160a060020a03909216600160a060020a031990921691909117905550505050610d74806101376000396000f3006080604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166327ebe40a81146100f45780633f4ba83a14610123578063454a2ab3146101385780635c975abb146101435780635fd8c7101461016c578063715018a61461018157806376190f8f1461019657806378bd7935146101ab57806383b5ff8b146101f85780638456cb591461021f578063878eb368146102345780638da5cb5b1461024c57806396b5a7551461027d578063c55d0f5614610295578063dd1b7a0f146102ad578063f2fde38b146102c2575b3480156100f157600080fd5b50005b34801561010057600080fd5b50610121600435602435604435606435600160a060020a03608435166102e3565b005b34801561012f57600080fd5b506101216103dc565b610121600435610452565b34801561014f57600080fd5b5061015861049e565b604080519115158252519081900360200190f35b34801561017857600080fd5b506101216104ae565b34801561018d57600080fd5b50610121610517565b3480156101a257600080fd5b50610158610583565b3480156101b757600080fd5b506101c360043561058c565b60408051600160a060020a03909616865260208601949094528484019290925260608401526080830152519081900360a00190f35b34801561020457600080fd5b5061020d610622565b60408051918252519081900360200190f35b34801561022b57600080fd5b50610121610628565b34801561024057600080fd5b506101216004356106a3565b34801561025857600080fd5b5061026161070c565b60408051600160a060020a039092168252519081900360200190f35b34801561028957600080fd5b5061012160043561071b565b3480156102a157600080fd5b5061020d600435610765565b3480156102b957600080fd5b50610261610797565b3480156102ce57600080fd5b50610121600160a060020a03600435166107a6565b6102eb610d1a565b846fffffffffffffffffffffffffffffffff811061030857600080fd5b846fffffffffffffffffffffffffffffffff811061032557600080fd5b8467ffffffffffffffff81111561033b57600080fd5b600154600160a060020a0316331461035257600080fd5b61035c858a6107c9565b60a06040519081016040528086600160a060020a03168152602001896fffffffffffffffffffffffffffffffff168152602001886fffffffffffffffffffffffffffffffff1681526020018767ffffffffffffffff1681526020014267ffffffffffffffff1681525093506103d18985610859565b505050505050505050565b600054600160a060020a031633146103f357600080fd5b60005460a060020a900460ff16151561040b57600080fd5b6000805474ff0000000000000000000000000000000000000000191681556040517f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b339190a1565b600154600090600160a060020a0316331461046c57600080fd5b50600081815260036020526040902054600160a060020a031661048f82346109ad565b5061049a8183610a9e565b5050565b60005460a060020a900460ff1681565b600154600054600160a060020a0391821691163314806104d6575033600160a060020a038216145b15156104e157600080fd5b604051600160a060020a03821690303180156108fc02916000818181858888f1935050505015801561049a573d6000803e3d6000fd5b600054600160a060020a0316331461052e57600080fd5b60008054604051600160a060020a03909116917ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482091a26000805473ffffffffffffffffffffffffffffffffffffffff19169055565b60045460ff1681565b600081815260036020526040812081908190819081906105ab81610b0c565b15156105b657600080fd5b80546001820154600290920154600160a060020a03909116986fffffffffffffffffffffffffffffffff8084169950700100000000000000000000000000000000909304909216965067ffffffffffffffff808216965068010000000000000000909104169350915050565b60025481565b600054600160a060020a0316331461063f57600080fd5b60005460a060020a900460ff161561065657600080fd5b6000805474ff0000000000000000000000000000000000000000191660a060020a1781556040517f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff6259190a1565b6000805460a060020a900460ff1615156106bc57600080fd5b600054600160a060020a031633146106d357600080fd5b5060008181526003602052604090206106eb81610b0c565b15156106f657600080fd5b805461049a908390600160a060020a0316610b2d565b600054600160a060020a031681565b60008181526003602052604081209061073382610b0c565b151561073e57600080fd5b508054600160a060020a031633811461075657600080fd5b6107608382610b2d565b505050565b600081815260036020526040812061077c81610b0c565b151561078757600080fd5b61079081610b77565b9392505050565b600154600160a060020a031681565b600054600160a060020a031633146107bd57600080fd5b6107c681610c07565b50565b600154604080517f23b872dd000000000000000000000000000000000000000000000000000000008152600160a060020a03858116600483015230602483015260448201859052915191909216916323b872dd91606480830192600092919082900301818387803b15801561083d57600080fd5b505af1158015610851573d6000803e3d6000fd5b505050505050565b603c816060015167ffffffffffffffff161015151561087757600080fd5b60008281526003602090815260409182902083518154600160a060020a0390911673ffffffffffffffffffffffffffffffffffffffff1990911617815581840151600182018054858701516fffffffffffffffffffffffffffffffff90811670010000000000000000000000000000000081029482166fffffffffffffffffffffffffffffffff19909316831790911693909317909155606080870151600290940180546080808a015167ffffffffffffffff90811668010000000000000000026fffffffffffffffff0000000000000000199190981667ffffffffffffffff1990931683171696909617909155865189815295860192909252848601929092529083015291517fa9c8dfcda5664a5a124c713e386da27de87432d5b668e79458501eb296389ba7929181900390910190a15050565b6000828152600360205260408120818080806109c885610b0c565b15156109d357600080fd5b6109dc85610b77565b9350838710156109eb57600080fd5b8454600160a060020a03169250610a0188610c84565b6000841115610a5357610a1384610cd1565b6040519092508285039150600160a060020a0384169082156108fc029083906000818181858888f19350505050158015610a51573d6000803e3d6000fd5b505b6040805189815260208101869052338183015290517f4fcc30d90a842164dd58501ab874a101a3749c3d4747139cefe7c876f4ccebd29181900360600190a150919695505050505050565b600154604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a038581166004830152602482018590529151919092169163a9059cbb91604480830192600092919082900301818387803b15801561083d57600080fd5b6002015460006801000000000000000090910467ffffffffffffffff161190565b610b3682610c84565b610b408183610a9e565b6040805183815290517f2809c7e17bf978fbc7194c0a694b638c4215e9140cacc6c38ca36010b45697df9181900360200190a15050565b6002810154600090819068010000000000000000900467ffffffffffffffff16421115610bbd5750600282015468010000000000000000900467ffffffffffffffff1642035b60018301546002840154610790916fffffffffffffffffffffffffffffffff80821692700100000000000000000000000000000000909204169067ffffffffffffffff1684610cdd565b600160a060020a0381161515610c1c57600080fd5b60008054604051600160a060020a03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6000908152600360205260408120805473ffffffffffffffffffffffffffffffffffffffff19168155600181019190915560020180546fffffffffffffffffffffffffffffffff19169055565b60025461271091020490565b6000808080858510610cf157869350610d0f565b878703925085858402811515610d0357fe5b05915081880190508093505b505050949350505050565b6040805160a081018252600080825260208201819052918101829052606081018290526080810191909152905600a165627a7a7230582064248bf45266ef113d17b21c142fba7a019326e8eab9306b518601eb612cd5200029",
  "deployedBytecode": "0x6080604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166327ebe40a81146100f45780633f4ba83a14610123578063454a2ab3146101385780635c975abb146101435780635fd8c7101461016c578063715018a61461018157806376190f8f1461019657806378bd7935146101ab57806383b5ff8b146101f85780638456cb591461021f578063878eb368146102345780638da5cb5b1461024c57806396b5a7551461027d578063c55d0f5614610295578063dd1b7a0f146102ad578063f2fde38b146102c2575b3480156100f157600080fd5b50005b34801561010057600080fd5b50610121600435602435604435606435600160a060020a03608435166102e3565b005b34801561012f57600080fd5b506101216103dc565b610121600435610452565b34801561014f57600080fd5b5061015861049e565b604080519115158252519081900360200190f35b34801561017857600080fd5b506101216104ae565b34801561018d57600080fd5b50610121610517565b3480156101a257600080fd5b50610158610583565b3480156101b757600080fd5b506101c360043561058c565b60408051600160a060020a03909616865260208601949094528484019290925260608401526080830152519081900360a00190f35b34801561020457600080fd5b5061020d610622565b60408051918252519081900360200190f35b34801561022b57600080fd5b50610121610628565b34801561024057600080fd5b506101216004356106a3565b34801561025857600080fd5b5061026161070c565b60408051600160a060020a039092168252519081900360200190f35b34801561028957600080fd5b5061012160043561071b565b3480156102a157600080fd5b5061020d600435610765565b3480156102b957600080fd5b50610261610797565b3480156102ce57600080fd5b50610121600160a060020a03600435166107a6565b6102eb610d1a565b846fffffffffffffffffffffffffffffffff811061030857600080fd5b846fffffffffffffffffffffffffffffffff811061032557600080fd5b8467ffffffffffffffff81111561033b57600080fd5b600154600160a060020a0316331461035257600080fd5b61035c858a6107c9565b60a06040519081016040528086600160a060020a03168152602001896fffffffffffffffffffffffffffffffff168152602001886fffffffffffffffffffffffffffffffff1681526020018767ffffffffffffffff1681526020014267ffffffffffffffff1681525093506103d18985610859565b505050505050505050565b600054600160a060020a031633146103f357600080fd5b60005460a060020a900460ff16151561040b57600080fd5b6000805474ff0000000000000000000000000000000000000000191681556040517f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b339190a1565b600154600090600160a060020a0316331461046c57600080fd5b50600081815260036020526040902054600160a060020a031661048f82346109ad565b5061049a8183610a9e565b5050565b60005460a060020a900460ff1681565b600154600054600160a060020a0391821691163314806104d6575033600160a060020a038216145b15156104e157600080fd5b604051600160a060020a03821690303180156108fc02916000818181858888f1935050505015801561049a573d6000803e3d6000fd5b600054600160a060020a0316331461052e57600080fd5b60008054604051600160a060020a03909116917ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482091a26000805473ffffffffffffffffffffffffffffffffffffffff19169055565b60045460ff1681565b600081815260036020526040812081908190819081906105ab81610b0c565b15156105b657600080fd5b80546001820154600290920154600160a060020a03909116986fffffffffffffffffffffffffffffffff8084169950700100000000000000000000000000000000909304909216965067ffffffffffffffff808216965068010000000000000000909104169350915050565b60025481565b600054600160a060020a0316331461063f57600080fd5b60005460a060020a900460ff161561065657600080fd5b6000805474ff0000000000000000000000000000000000000000191660a060020a1781556040517f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff6259190a1565b6000805460a060020a900460ff1615156106bc57600080fd5b600054600160a060020a031633146106d357600080fd5b5060008181526003602052604090206106eb81610b0c565b15156106f657600080fd5b805461049a908390600160a060020a0316610b2d565b600054600160a060020a031681565b60008181526003602052604081209061073382610b0c565b151561073e57600080fd5b508054600160a060020a031633811461075657600080fd5b6107608382610b2d565b505050565b600081815260036020526040812061077c81610b0c565b151561078757600080fd5b61079081610b77565b9392505050565b600154600160a060020a031681565b600054600160a060020a031633146107bd57600080fd5b6107c681610c07565b50565b600154604080517f23b872dd000000000000000000000000000000000000000000000000000000008152600160a060020a03858116600483015230602483015260448201859052915191909216916323b872dd91606480830192600092919082900301818387803b15801561083d57600080fd5b505af1158015610851573d6000803e3d6000fd5b505050505050565b603c816060015167ffffffffffffffff161015151561087757600080fd5b60008281526003602090815260409182902083518154600160a060020a0390911673ffffffffffffffffffffffffffffffffffffffff1990911617815581840151600182018054858701516fffffffffffffffffffffffffffffffff90811670010000000000000000000000000000000081029482166fffffffffffffffffffffffffffffffff19909316831790911693909317909155606080870151600290940180546080808a015167ffffffffffffffff90811668010000000000000000026fffffffffffffffff0000000000000000199190981667ffffffffffffffff1990931683171696909617909155865189815295860192909252848601929092529083015291517fa9c8dfcda5664a5a124c713e386da27de87432d5b668e79458501eb296389ba7929181900390910190a15050565b6000828152600360205260408120818080806109c885610b0c565b15156109d357600080fd5b6109dc85610b77565b9350838710156109eb57600080fd5b8454600160a060020a03169250610a0188610c84565b6000841115610a5357610a1384610cd1565b6040519092508285039150600160a060020a0384169082156108fc029083906000818181858888f19350505050158015610a51573d6000803e3d6000fd5b505b6040805189815260208101869052338183015290517f4fcc30d90a842164dd58501ab874a101a3749c3d4747139cefe7c876f4ccebd29181900360600190a150919695505050505050565b600154604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a038581166004830152602482018590529151919092169163a9059cbb91604480830192600092919082900301818387803b15801561083d57600080fd5b6002015460006801000000000000000090910467ffffffffffffffff161190565b610b3682610c84565b610b408183610a9e565b6040805183815290517f2809c7e17bf978fbc7194c0a694b638c4215e9140cacc6c38ca36010b45697df9181900360200190a15050565b6002810154600090819068010000000000000000900467ffffffffffffffff16421115610bbd5750600282015468010000000000000000900467ffffffffffffffff1642035b60018301546002840154610790916fffffffffffffffffffffffffffffffff80821692700100000000000000000000000000000000909204169067ffffffffffffffff1684610cdd565b600160a060020a0381161515610c1c57600080fd5b60008054604051600160a060020a03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6000908152600360205260408120805473ffffffffffffffffffffffffffffffffffffffff19168155600181019190915560020180546fffffffffffffffffffffffffffffffff19169055565b60025461271091020490565b6000808080858510610cf157869350610d0f565b878703925085858402811515610d0357fe5b05915081880190508093505b505050949350505050565b6040805160a081018252600080825260208201819052918101829052606081018290526080810191909152905600a165627a7a7230582064248bf45266ef113d17b21c142fba7a019326e8eab9306b518601eb612cd5200029",
  "sourceMap": "375:2177:17:-;;;268:5:60;247:26;;-1:-1:-1;;;;;;247:26:60;;;565:39:17;;;-1:-1:-1;;565:39:17;247:26:60;565:39:17;;;639:112;5:2:-1;;;;30:1;27;20:12;5:2;639:112:17;;;;;;;;;;;;;;;;;;;1010:24:14;567:18:62;;-1:-1:-1;;;;;;567:18:62;575:10;567:18;;;639:112:17;;;;968:5:14;960:13;;;952:22;;;;;;995:4;984:8;:15;;;;1044:11;1010:46;;1074:17;-1:-1:-1;;;;;1074:34:14;;:36;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1074:36:14;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1074:36:14;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1074:36:14;1066:45;;;;;;;;1121:19;:39;;-1:-1:-1;;;;;1121:39:14;;;-1:-1:-1;;;;;;1121:39:14;;;;;;;;;-1:-1:-1;;;;375:2177:17;;;;;;",
  "deployedSourceMap": "375:2177:17:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;375:2177:17;;1227:666;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1227:666:17;;;;;;;;;-1:-1:-1;;;;;1227:666:17;;;;;;;838:92:60;;8:9:-1;5:2;;;30:1;27;20:12;5:2;838:92:60;;;;2111:438:17;;;;;;247:26:60;;8:9:-1;5:2;;;30:1;27;20:12;5:2;247:26:60;;;;;;;;;;;;;;;;;;;;;;1432:246:14;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1432:246:14;;;;1001:111:62;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1001:111:62;;;;565:39:17;;8:9:-1;5:2;;;30:1;27;20:12;5:2;565:39:17;;;;4415:523:14;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;4415:523:14;;;;;;;;;-1:-1:-1;;;;;4415:523:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1114:23:15;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1114:23:15;;;;;;;;;;;;;;;;;;;;666:90:60;;8:9:-1;5:2;;;30:1;27;20:12;5:2;666:90:60;;;;4038:266:14;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;4038:266:14;;;;;238:20:62;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:62;;;;;;;;-1:-1:-1;;;;;238:20:62;;;;;;;;;;;;;;3494:291:14;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;3494:291:14;;;;;5063:249;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;5063:249:14;;;;;949:33:15;;8:9:-1;5:2;;;30:1;27;20:12;5:2;949:33:15;;;;1274:103:62;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1274:103:62;-1:-1:-1;;;;;1274:103:62;;;;;1227:666:17;1655:22;;:::i;:::-;1442:14;1898:39:15;1889:48;;1881:57;;;;;;1489:12:17;1898:39:15;1889:48;;1881:57;;;;;;1533:9:17;1778:20:15;1768:30;;;1760:39;;;;;;1588:19:17;;-1:-1:-1;;;;;1588:19:17;1566:10;:42;1558:51;;;;;;1619:26;1627:7;1636:8;1619:7;:26::i;:::-;1680:166;;;;;;;;;1701:7;-1:-1:-1;;;;;1680:166:17;;;;;1730:14;1680:166;;;;;;1767:12;1680:166;;;;;;1801:9;1680:166;;;;;;1832:3;1680:166;;;;;1655:191;;1856:30;1868:8;1878:7;1856:11;:30::i;:::-;1948:1:15;;1227:666:17;;;;;;;:::o;838:92:60:-;719:5:62;;-1:-1:-1;;;;;719:5:62;705:10;:19;697:28;;;;;;568:6:60;;-1:-1:-1;;;568:6:60;;;;560:15;;;;;;;;900:5;891:14;;-1:-1:-1;;891:14:60;;;916:9;;;;900:5;916:9;838:92::o;2111:438:17:-;2217:19;;2248:14;;-1:-1:-1;;;;;2217:19:17;2195:10;:42;2187:51;;;;;;-1:-1:-1;2265:26:17;;;;:16;:26;;;;;:33;-1:-1:-1;;;;;2265:33:17;2382:25;2282:8;2397:9;2382:4;:25::i;:::-;;2515:27;2525:6;2533:8;2515:9;:27::i;:::-;2111:438;;:::o;247:26:60:-;;;-1:-1:-1;;;247:26:60;;;;;:::o;1432:246:14:-;1507:19;;1478:18;1573:5;-1:-1:-1;;;;;1507:19:14;;;;1573:5;1559:10;:19;;:59;;-1:-1:-1;1594:10:14;-1:-1:-1;;;;;1594:24:14;;;1559:59;1538:90;;;;;;;;1638:33;;-1:-1:-1;;;;;1638:19:14;;;1658:4;:12;1638:33;;;;;;;;;1658:12;1638:19;:33;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;1001:111:62;719:5;;-1:-1:-1;;;;;719:5:62;705:10;:19;697:28;;;;;;1077:5;;;1058:25;;-1:-1:-1;;;;;1077:5:62;;;;1058:25;;;1105:1;1089:18;;-1:-1:-1;;1089:18:62;;;1001:111::o;565:39:17:-;;;;;;:::o;4415:523:14:-;4511:14;4681:26;;;:16;:26;;;;;4511:14;;;;;;;;4725:21;4681:26;4725:12;:21::i;:::-;4717:30;;;;;;;;4778:14;;;4806:21;;;4874:16;;;;;-1:-1:-1;;;;;4778:14:14;;;;4806:21;;;;;-1:-1:-1;4841:19:14;;;;;;;;-1:-1:-1;4874:16:14;;;;;-1:-1:-1;4904:17:14;;;;;;-1:-1:-1;4415:523:14;-1:-1:-1;;4415:523:14:o;1114:23:15:-;;;;:::o;666:90:60:-;719:5:62;;-1:-1:-1;;;;;719:5:62;705:10;:19;697:28;;;;;;416:6:60;;-1:-1:-1;;;416:6:60;;;;415:7;407:16;;;;;;720:6;:13;;-1:-1:-1;;720:13:60;-1:-1:-1;;;720:13:60;;;744:7;;;;720:6;744:7;666:90::o;4038:266:14:-;4155:23;568:6:60;;-1:-1:-1;;;568:6:60;;;;560:15;;;;;;;;719:5:62;;-1:-1:-1;;;;;719:5:62;705:10;:19;697:28;;;;;;-1:-1:-1;4181:26:14;;;;:16;:26;;;;;4225:21;4181:26;4225:12;:21::i;:::-;4217:30;;;;;;;;4282:14;;4257:40;;4272:8;;-1:-1:-1;;;;;4282:14:14;4257;:40::i;238:20:62:-;;;-1:-1:-1;;;;;238:20:62;;:::o;3494:291:14:-;3564:23;3590:26;;;:16;:26;;;;;;3634:21;3590:26;3634:12;:21::i;:::-;3626:30;;;;;;;;-1:-1:-1;3683:14:14;;-1:-1:-1;;;;;3683:14:14;3715:10;:20;;3707:29;;;;;;3746:32;3761:8;3771:6;3746:14;:32::i;:::-;3494:291;;;:::o;5063:249::-;5151:7;5200:26;;;:16;:26;;;;;5244:21;5200:26;5244:12;:21::i;:::-;5236:30;;;;;;;;5283:22;5297:7;5283:13;:22::i;:::-;5276:29;5063:249;-1:-1:-1;;;5063:249:14:o;949:33:15:-;;;-1:-1:-1;;;;;949:33:15;;:::o;1274:103:62:-;719:5;;-1:-1:-1;;;;;719:5:62;705:10;:19;697:28;;;;;;1343:29;1362:9;1343:18;:29::i;:::-;1274:103;:::o;2544:176:15:-;2657:19;;:56;;;;;;-1:-1:-1;;;;;2657:56:15;;;;;;;2698:4;2657:56;;;;;;;;;;;;:19;;;;;:32;;:56;;;;;:19;;:56;;;;;;;:19;;:56;;;5:2:-1;;;;30:1;27;20:12;5:2;2657:56:15;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2657:56:15;;;;2544:176;;:::o;3343:502::-;3573:9;3552:8;:17;;;:30;;;;3544:39;;;;;;;;3594:26;;;;:16;:26;;;;;;;;;:37;;;;-1:-1:-1;;;;;3594:37:15;;;-1:-1:-1;;3594:37:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3594:37:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3594:37:15;;;;-1:-1:-1;;3594:37:15;;;;;;;;;;;;;3655:183;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3343:502;;:::o;4196:2095::-;4282:7;4380:26;;;:16;:26;;;;;4282:7;;;;4687:21;4380:26;4687:12;:21::i;:::-;4679:30;;;;;;;;4819:22;4833:7;4819:13;:22::i;:::-;4803:38;-1:-1:-1;4859:19:15;;;;4851:28;;;;;;5000:14;;-1:-1:-1;;;;;5000:14:15;;-1:-1:-1;5159:24:15;5174:8;5159:14;:24::i;:::-;5265:1;5257:5;:9;5253:920;;;5488:18;5500:5;5488:11;:18::i;:::-;6131:31;;5464:42;;-1:-1:-1;5545:21:15;;;;-1:-1:-1;;;;;;6131:15:15;;;:31;;;;;5545:21;;6131:31;;;;5545:21;6131:15;:31;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6131:31:15;5253:920;6215:46;;;;;;;;;;;;6250:10;6215:46;;;;;;;;;;;;;;;-1:-1:-1;6279:5:15;;4196:2095;-1:-1:-1;;;;;;4196:2095:15:o;2952:174::-;3070:19;;:49;;;;;;-1:-1:-1;;;;;3070:49:15;;;;;;;;;;;;;;;:19;;;;;:28;;:49;;;;;:19;;:49;;;;;;;:19;;:49;;;5:2:-1;;;;30:1;27;20:12;6612:125:15;6707:18;;;6683:4;6707:18;;;;;;:22;;6612:125::o;3900:188::-;3978:24;3993:8;3978:14;:24::i;:::-;4012:28;4022:7;4031:8;4012:9;:28::i;:::-;4055:26;;;;;;;;;;;;;;;;;3900:188;;:::o;7032:633::-;7398:18;;;;7128:7;;;;7398:18;;;;;7392:3;:24;7388:95;;;-1:-1:-1;7454:18:15;;;;;;;;;7448:3;:24;7388:95;7534:22;;;;7604:17;;;;7500:158;;7534:22;;;;;7570:20;;;;;;7604:17;;7635:13;7500:20;:158::i;1512:171:62:-;-1:-1:-1;;;;;1582:23:62;;;;1574:32;;;;;;1638:5;;;1617:38;;-1:-1:-1;;;;;1617:38:62;;;;1638:5;;;1617:38;;;1661:5;:17;;-1:-1:-1;;1661:17:62;-1:-1:-1;;;;;1661:17:62;;;;;;;;;;1512:171::o;6409:101:15:-;6477:26;;;;:16;:26;;;;;6470:33;;-1:-1:-1;;6470:33:15;;;;;;;;;;;;;;-1:-1:-1;;6470:33:15;;;6409:101::o;9656:482::-;10115:8;;10126:5;10106:17;;:25;;9656:482::o;7913:1649::-;8117:7;;;;8466:27;;;8462:1094;;8642:12;8635:19;;;;8462:1094;8866:14;8843:12;8836:45;8810:71;;9216:9;9191:14;9165:16;:41;:61;;;;;;;;9137:89;;9472:18;9454:14;9447:43;9425:65;;9532:12;9517:28;;8462:1094;7913:1649;;;;;;;;;:::o;375:2177:17:-;;;;;;;;;-1:-1:-1;375:2177:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o",
  "source": "/* solium-disable */\n/**\n *  @title Reverse auction modified for siring\n *  @author dapperlabs (https://github.com/dapperlabs)\n *  This code was taken from https://github.com/dapperlabs at\n *  https://github.com/dapperlabs/cryptokitties-bounty and is NOT kleros code.\n */\npragma solidity ^0.4.18;\n\nimport \"./ClockAuction.sol\";\n\n/// @title Reverse auction modified for siring\ncontract SiringClockAuction is ClockAuction {\n\n    // @dev Sanity check that allows us to ensure that we are pointing to the\n    //  right auction in our setSiringAuctionAddress() call.\n    bool public isSiringClockAuction = true;\n\n    // Delegate constructor\n    function SiringClockAuction(address _nftAddr, uint256 _cut) public ClockAuction(_nftAddr, _cut) {\n        \n    }\n\n    /// @dev Creates and begins a new auction. Since this function is wrapped,\n    /// require sender to be KittyCore contract.\n    /// @param _tokenId - ID of token to auction, sender must be owner.\n    /// @param _startingPrice - Price of item (in wei) at beginning of auction.\n    /// @param _endingPrice - Price of item (in wei) at end of auction.\n    /// @param _duration - Length of auction (in seconds).\n    /// @param _seller - Seller, if not the message sender\n    function createAuction(\n        uint256 _tokenId,\n        uint256 _startingPrice,\n        uint256 _endingPrice,\n        uint256 _duration,\n        address _seller\n    )\n        public\n        canBeStoredWith128Bits(_startingPrice)\n        canBeStoredWith128Bits(_endingPrice)\n        canBeStoredWith64Bits(_duration)\n    {\n        require(msg.sender == address(nonFungibleContract));\n        _escrow(_seller, _tokenId);\n        Auction memory auction = Auction(\n            _seller,\n            uint128(_startingPrice),\n            uint128(_endingPrice),\n            uint64(_duration),\n            uint64(now)\n        );\n        _addAuction(_tokenId, auction);\n    }\n\n    /// @dev Places a bid for siring. Requires the sender\n    /// is the KittyCore contract because all bid methods\n    /// should be wrapped. Also returns the kitty to the\n    /// seller rather than the winner.\n    function bid(uint256 _tokenId)\n        public\n        payable\n    {\n        require(msg.sender == address(nonFungibleContract));\n        address seller = tokenIdToAuction[_tokenId].seller;\n        // _bid checks that token ID is valid and will throw if bid fails\n        _bid(_tokenId, msg.value);\n        // We transfer the kitty back to the seller, the winner will get\n        // the offspring\n        _transfer(seller, _tokenId);\n    }\n\n}\n",
  "sourcePath": "/private/tmp/kleros-interaction/contracts/standard/arbitration/CriptoKitties/Auction/SiringClockAuction.sol",
  "ast": {
    "absolutePath": "/private/tmp/kleros-interaction/contracts/standard/arbitration/CriptoKitties/Auction/SiringClockAuction.sol",
    "exportedSymbols": {
      "SiringClockAuction": [
        6369
      ]
    },
    "id": 6370,
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 6257,
        "literals": [
          "solidity",
          "^",
          "0.4",
          ".18"
        ],
        "nodeType": "PragmaDirective",
        "src": "272:24:17"
      },
      {
        "absolutePath": "/private/tmp/kleros-interaction/contracts/standard/arbitration/CriptoKitties/Auction/ClockAuction.sol",
        "file": "./ClockAuction.sol",
        "id": 6258,
        "nodeType": "ImportDirective",
        "scope": 6370,
        "sourceUnit": 5705,
        "src": "298:28:17",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "baseContracts": [
          {
            "arguments": null,
            "baseName": {
              "contractScope": null,
              "id": 6259,
              "name": "ClockAuction",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 5704,
              "src": "406:12:17",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_ClockAuction_$5704",
                "typeString": "contract ClockAuction"
              }
            },
            "id": 6260,
            "nodeType": "InheritanceSpecifier",
            "src": "406:12:17"
          }
        ],
        "contractDependencies": [
          5704,
          6091,
          19752,
          19932
        ],
        "contractKind": "contract",
        "documentation": "@title Reverse auction modified for siring",
        "fullyImplemented": true,
        "id": 6369,
        "linearizedBaseContracts": [
          6369,
          5704,
          6091,
          19752,
          19932
        ],
        "name": "SiringClockAuction",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "constant": false,
            "id": 6263,
            "name": "isSiringClockAuction",
            "nodeType": "VariableDeclaration",
            "scope": 6369,
            "src": "565:39:17",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_bool",
              "typeString": "bool"
            },
            "typeName": {
              "id": 6261,
              "name": "bool",
              "nodeType": "ElementaryTypeName",
              "src": "565:4:17",
              "typeDescriptions": {
                "typeIdentifier": "t_bool",
                "typeString": "bool"
              }
            },
            "value": {
              "argumentTypes": null,
              "hexValue": "74727565",
              "id": 6262,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "bool",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "600:4:17",
              "subdenomination": null,
              "typeDescriptions": {
                "typeIdentifier": "t_bool",
                "typeString": "bool"
              },
              "value": "true"
            },
            "visibility": "public"
          },
          {
            "body": {
              "id": 6274,
              "nodeType": "Block",
              "src": "735:16:17",
              "statements": []
            },
            "documentation": null,
            "id": 6275,
            "implemented": true,
            "isConstructor": true,
            "isDeclaredConst": false,
            "modifiers": [
              {
                "arguments": [
                  {
                    "argumentTypes": null,
                    "id": 6270,
                    "name": "_nftAddr",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 6265,
                    "src": "719:8:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  {
                    "argumentTypes": null,
                    "id": 6271,
                    "name": "_cut",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 6267,
                    "src": "729:4:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  }
                ],
                "id": 6272,
                "modifierName": {
                  "argumentTypes": null,
                  "id": 6269,
                  "name": "ClockAuction",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": 5704,
                  "src": "706:12:17",
                  "typeDescriptions": {
                    "typeIdentifier": "t_type$_t_contract$_ClockAuction_$5704_$",
                    "typeString": "type(contract ClockAuction)"
                  }
                },
                "nodeType": "ModifierInvocation",
                "src": "706:28:17"
              }
            ],
            "name": "SiringClockAuction",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6268,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6265,
                  "name": "_nftAddr",
                  "nodeType": "VariableDeclaration",
                  "scope": 6275,
                  "src": "667:16:17",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 6264,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "667:7:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 6267,
                  "name": "_cut",
                  "nodeType": "VariableDeclaration",
                  "scope": 6275,
                  "src": "685:12:17",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6266,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "685:7:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "666:32:17"
            },
            "payable": false,
            "returnParameters": {
              "id": 6273,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "735:0:17"
            },
            "scope": 6369,
            "src": "639:112:17",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6334,
              "nodeType": "Block",
              "src": "1548:345:17",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        "id": 6303,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 6298,
                            "name": "msg",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20639,
                            "src": "1566:3:17",
                            "typeDescriptions": {
                              "typeIdentifier": "t_magic_message",
                              "typeString": "msg"
                            }
                          },
                          "id": 6299,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "sender",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": null,
                          "src": "1566:10:17",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "==",
                        "rightExpression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "id": 6301,
                              "name": "nonFungibleContract",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 5720,
                              "src": "1588:19:17",
                              "typeDescriptions": {
                                "typeIdentifier": "t_contract$_ERC721_$6435",
                                "typeString": "contract ERC721"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_contract$_ERC721_$6435",
                                "typeString": "contract ERC721"
                              }
                            ],
                            "id": 6300,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "nodeType": "ElementaryTypeNameExpression",
                            "src": "1580:7:17",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_address_$",
                              "typeString": "type(address)"
                            },
                            "typeName": "address"
                          },
                          "id": 6302,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "typeConversion",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "1580:28:17",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "src": "1566:42:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      ],
                      "id": 6297,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        20642,
                        20643
                      ],
                      "referencedDeclaration": 20642,
                      "src": "1558:7:17",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
                        "typeString": "function (bool) pure"
                      }
                    },
                    "id": 6304,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1558:51:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 6305,
                  "nodeType": "ExpressionStatement",
                  "src": "1558:51:17"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6307,
                        "name": "_seller",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6285,
                        "src": "1627:7:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6308,
                        "name": "_tokenId",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6277,
                        "src": "1636:8:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 6306,
                      "name": "_escrow",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 5810,
                      "src": "1619:7:17",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256)"
                      }
                    },
                    "id": 6309,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1619:26:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 6310,
                  "nodeType": "ExpressionStatement",
                  "src": "1619:26:17"
                },
                {
                  "assignments": [
                    6312
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 6312,
                      "name": "auction",
                      "nodeType": "VariableDeclaration",
                      "scope": 6335,
                      "src": "1655:22:17",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_Auction_$5718_memory_ptr",
                        "typeString": "struct ClockAuctionBase.Auction"
                      },
                      "typeName": {
                        "contractScope": null,
                        "id": 6311,
                        "name": "Auction",
                        "nodeType": "UserDefinedTypeName",
                        "referencedDeclaration": 5718,
                        "src": "1655:7:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Auction_$5718_storage_ptr",
                          "typeString": "struct ClockAuctionBase.Auction"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 6328,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6314,
                        "name": "_seller",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6285,
                        "src": "1701:7:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 6316,
                            "name": "_startingPrice",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 6279,
                            "src": "1730:14:17",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          ],
                          "id": 6315,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "1722:7:17",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_uint128_$",
                            "typeString": "type(uint128)"
                          },
                          "typeName": "uint128"
                        },
                        "id": 6317,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "1722:23:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint128",
                          "typeString": "uint128"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 6319,
                            "name": "_endingPrice",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 6281,
                            "src": "1767:12:17",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          ],
                          "id": 6318,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "1759:7:17",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_uint128_$",
                            "typeString": "type(uint128)"
                          },
                          "typeName": "uint128"
                        },
                        "id": 6320,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "1759:21:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint128",
                          "typeString": "uint128"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 6322,
                            "name": "_duration",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 6283,
                            "src": "1801:9:17",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          ],
                          "id": 6321,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "1794:6:17",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_uint64_$",
                            "typeString": "type(uint64)"
                          },
                          "typeName": "uint64"
                        },
                        "id": 6323,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "1794:17:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint64",
                          "typeString": "uint64"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 6325,
                            "name": "now",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20641,
                            "src": "1832:3:17",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          ],
                          "id": 6324,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "1825:6:17",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_uint64_$",
                            "typeString": "type(uint64)"
                          },
                          "typeName": "uint64"
                        },
                        "id": 6326,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "1825:11:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint64",
                          "typeString": "uint64"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint128",
                          "typeString": "uint128"
                        },
                        {
                          "typeIdentifier": "t_uint128",
                          "typeString": "uint128"
                        },
                        {
                          "typeIdentifier": "t_uint64",
                          "typeString": "uint64"
                        },
                        {
                          "typeIdentifier": "t_uint64",
                          "typeString": "uint64"
                        }
                      ],
                      "id": 6313,
                      "name": "Auction",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 5718,
                      "src": "1680:7:17",
                      "typeDescriptions": {
                        "typeIdentifier": "t_type$_t_struct$_Auction_$5718_storage_ptr_$",
                        "typeString": "type(struct ClockAuctionBase.Auction storage pointer)"
                      }
                    },
                    "id": 6327,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "structConstructorCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1680:166:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_Auction_$5718_memory",
                      "typeString": "struct ClockAuctionBase.Auction memory"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "1655:191:17"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6330,
                        "name": "_tokenId",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6277,
                        "src": "1868:8:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6331,
                        "name": "auction",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6312,
                        "src": "1878:7:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Auction_$5718_memory_ptr",
                          "typeString": "struct ClockAuctionBase.Auction memory"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_struct$_Auction_$5718_memory_ptr",
                          "typeString": "struct ClockAuctionBase.Auction memory"
                        }
                      ],
                      "id": 6329,
                      "name": "_addAuction",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 5864,
                      "src": "1856:11:17",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_struct$_Auction_$5718_memory_ptr_$returns$__$",
                        "typeString": "function (uint256,struct ClockAuctionBase.Auction memory)"
                      }
                    },
                    "id": 6332,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1856:30:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 6333,
                  "nodeType": "ExpressionStatement",
                  "src": "1856:30:17"
                }
              ]
            },
            "documentation": "@dev Creates and begins a new auction. Since this function is wrapped,\n require sender to be KittyCore contract.\n @param _tokenId - ID of token to auction, sender must be owner.\n @param _startingPrice - Price of item (in wei) at beginning of auction.\n @param _endingPrice - Price of item (in wei) at end of auction.\n @param _duration - Length of auction (in seconds).\n @param _seller - Seller, if not the message sender",
            "id": 6335,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [
              {
                "arguments": [
                  {
                    "argumentTypes": null,
                    "id": 6288,
                    "name": "_startingPrice",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 6279,
                    "src": "1442:14:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  }
                ],
                "id": 6289,
                "modifierName": {
                  "argumentTypes": null,
                  "id": 6287,
                  "name": "canBeStoredWith128Bits",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": 5776,
                  "src": "1419:22:17",
                  "typeDescriptions": {
                    "typeIdentifier": "t_modifier$_t_uint256_$",
                    "typeString": "modifier (uint256)"
                  }
                },
                "nodeType": "ModifierInvocation",
                "src": "1419:38:17"
              },
              {
                "arguments": [
                  {
                    "argumentTypes": null,
                    "id": 6291,
                    "name": "_endingPrice",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 6281,
                    "src": "1489:12:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  }
                ],
                "id": 6292,
                "modifierName": {
                  "argumentTypes": null,
                  "id": 6290,
                  "name": "canBeStoredWith128Bits",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": 5776,
                  "src": "1466:22:17",
                  "typeDescriptions": {
                    "typeIdentifier": "t_modifier$_t_uint256_$",
                    "typeString": "modifier (uint256)"
                  }
                },
                "nodeType": "ModifierInvocation",
                "src": "1466:36:17"
              },
              {
                "arguments": [
                  {
                    "argumentTypes": null,
                    "id": 6294,
                    "name": "_duration",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 6283,
                    "src": "1533:9:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  }
                ],
                "id": 6295,
                "modifierName": {
                  "argumentTypes": null,
                  "id": 6293,
                  "name": "canBeStoredWith64Bits",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": 5764,
                  "src": "1511:21:17",
                  "typeDescriptions": {
                    "typeIdentifier": "t_modifier$_t_uint256_$",
                    "typeString": "modifier (uint256)"
                  }
                },
                "nodeType": "ModifierInvocation",
                "src": "1511:32:17"
              }
            ],
            "name": "createAuction",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6286,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6277,
                  "name": "_tokenId",
                  "nodeType": "VariableDeclaration",
                  "scope": 6335,
                  "src": "1259:16:17",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6276,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1259:7:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 6279,
                  "name": "_startingPrice",
                  "nodeType": "VariableDeclaration",
                  "scope": 6335,
                  "src": "1285:22:17",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6278,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1285:7:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 6281,
                  "name": "_endingPrice",
                  "nodeType": "VariableDeclaration",
                  "scope": 6335,
                  "src": "1317:20:17",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6280,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1317:7:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 6283,
                  "name": "_duration",
                  "nodeType": "VariableDeclaration",
                  "scope": 6335,
                  "src": "1347:17:17",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6282,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1347:7:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 6285,
                  "name": "_seller",
                  "nodeType": "VariableDeclaration",
                  "scope": 6335,
                  "src": "1374:15:17",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 6284,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1374:7:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1249:146:17"
            },
            "payable": false,
            "returnParameters": {
              "id": 6296,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1548:0:17"
            },
            "scope": 6369,
            "src": "1227:666:17",
            "stateMutability": "nonpayable",
            "superFunction": 5556,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6367,
              "nodeType": "Block",
              "src": "2177:372:17",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        "id": 6346,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 6341,
                            "name": "msg",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20639,
                            "src": "2195:3:17",
                            "typeDescriptions": {
                              "typeIdentifier": "t_magic_message",
                              "typeString": "msg"
                            }
                          },
                          "id": 6342,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "sender",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": null,
                          "src": "2195:10:17",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "==",
                        "rightExpression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "id": 6344,
                              "name": "nonFungibleContract",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 5720,
                              "src": "2217:19:17",
                              "typeDescriptions": {
                                "typeIdentifier": "t_contract$_ERC721_$6435",
                                "typeString": "contract ERC721"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_contract$_ERC721_$6435",
                                "typeString": "contract ERC721"
                              }
                            ],
                            "id": 6343,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "nodeType": "ElementaryTypeNameExpression",
                            "src": "2209:7:17",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_address_$",
                              "typeString": "type(address)"
                            },
                            "typeName": "address"
                          },
                          "id": 6345,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "typeConversion",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "2209:28:17",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "src": "2195:42:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      ],
                      "id": 6340,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        20642,
                        20643
                      ],
                      "referencedDeclaration": 20642,
                      "src": "2187:7:17",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
                        "typeString": "function (bool) pure"
                      }
                    },
                    "id": 6347,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2187:51:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 6348,
                  "nodeType": "ExpressionStatement",
                  "src": "2187:51:17"
                },
                {
                  "assignments": [
                    6350
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 6350,
                      "name": "seller",
                      "nodeType": "VariableDeclaration",
                      "scope": 6368,
                      "src": "2248:14:17",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      },
                      "typeName": {
                        "id": 6349,
                        "name": "address",
                        "nodeType": "ElementaryTypeName",
                        "src": "2248:7:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 6355,
                  "initialValue": {
                    "argumentTypes": null,
                    "expression": {
                      "argumentTypes": null,
                      "baseExpression": {
                        "argumentTypes": null,
                        "id": 6351,
                        "name": "tokenIdToAuction",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5726,
                        "src": "2265:16:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Auction_$5718_storage_$",
                          "typeString": "mapping(uint256 => struct ClockAuctionBase.Auction storage ref)"
                        }
                      },
                      "id": 6353,
                      "indexExpression": {
                        "argumentTypes": null,
                        "id": 6352,
                        "name": "_tokenId",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6337,
                        "src": "2282:8:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "IndexAccess",
                      "src": "2265:26:17",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_Auction_$5718_storage",
                        "typeString": "struct ClockAuctionBase.Auction storage ref"
                      }
                    },
                    "id": 6354,
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "memberName": "seller",
                    "nodeType": "MemberAccess",
                    "referencedDeclaration": 5709,
                    "src": "2265:33:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "2248:50:17"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6357,
                        "name": "_tokenId",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6337,
                        "src": "2387:8:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 6358,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20639,
                          "src": "2397:3:17",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 6359,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "value",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "2397:9:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 6356,
                      "name": "_bid",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 5960,
                      "src": "2382:4:17",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$_t_uint256_$",
                        "typeString": "function (uint256,uint256) returns (uint256)"
                      }
                    },
                    "id": 6360,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2382:25:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 6361,
                  "nodeType": "ExpressionStatement",
                  "src": "2382:25:17"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6363,
                        "name": "seller",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6350,
                        "src": "2525:6:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6364,
                        "name": "_tokenId",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6337,
                        "src": "2533:8:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 6362,
                      "name": "_transfer",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 5825,
                      "src": "2515:9:17",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256)"
                      }
                    },
                    "id": 6365,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2515:27:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 6366,
                  "nodeType": "ExpressionStatement",
                  "src": "2515:27:17"
                }
              ]
            },
            "documentation": "@dev Places a bid for siring. Requires the sender\n is the KittyCore contract because all bid methods\n should be wrapped. Also returns the kitty to the\n seller rather than the winner.",
            "id": 6368,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "bid",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6338,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6337,
                  "name": "_tokenId",
                  "nodeType": "VariableDeclaration",
                  "scope": 6368,
                  "src": "2124:16:17",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6336,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2124:7:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2123:18:17"
            },
            "payable": true,
            "returnParameters": {
              "id": 6339,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2177:0:17"
            },
            "scope": 6369,
            "src": "2111:438:17",
            "stateMutability": "payable",
            "superFunction": 5576,
            "visibility": "public"
          }
        ],
        "scope": 6370,
        "src": "375:2177:17"
      }
    ],
    "src": "272:2281:17"
  },
  "legacyAST": {
    "absolutePath": "/private/tmp/kleros-interaction/contracts/standard/arbitration/CriptoKitties/Auction/SiringClockAuction.sol",
    "exportedSymbols": {
      "SiringClockAuction": [
        6369
      ]
    },
    "id": 6370,
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 6257,
        "literals": [
          "solidity",
          "^",
          "0.4",
          ".18"
        ],
        "nodeType": "PragmaDirective",
        "src": "272:24:17"
      },
      {
        "absolutePath": "/private/tmp/kleros-interaction/contracts/standard/arbitration/CriptoKitties/Auction/ClockAuction.sol",
        "file": "./ClockAuction.sol",
        "id": 6258,
        "nodeType": "ImportDirective",
        "scope": 6370,
        "sourceUnit": 5705,
        "src": "298:28:17",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "baseContracts": [
          {
            "arguments": null,
            "baseName": {
              "contractScope": null,
              "id": 6259,
              "name": "ClockAuction",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 5704,
              "src": "406:12:17",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_ClockAuction_$5704",
                "typeString": "contract ClockAuction"
              }
            },
            "id": 6260,
            "nodeType": "InheritanceSpecifier",
            "src": "406:12:17"
          }
        ],
        "contractDependencies": [
          5704,
          6091,
          19752,
          19932
        ],
        "contractKind": "contract",
        "documentation": "@title Reverse auction modified for siring",
        "fullyImplemented": true,
        "id": 6369,
        "linearizedBaseContracts": [
          6369,
          5704,
          6091,
          19752,
          19932
        ],
        "name": "SiringClockAuction",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "constant": false,
            "id": 6263,
            "name": "isSiringClockAuction",
            "nodeType": "VariableDeclaration",
            "scope": 6369,
            "src": "565:39:17",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_bool",
              "typeString": "bool"
            },
            "typeName": {
              "id": 6261,
              "name": "bool",
              "nodeType": "ElementaryTypeName",
              "src": "565:4:17",
              "typeDescriptions": {
                "typeIdentifier": "t_bool",
                "typeString": "bool"
              }
            },
            "value": {
              "argumentTypes": null,
              "hexValue": "74727565",
              "id": 6262,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "bool",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "600:4:17",
              "subdenomination": null,
              "typeDescriptions": {
                "typeIdentifier": "t_bool",
                "typeString": "bool"
              },
              "value": "true"
            },
            "visibility": "public"
          },
          {
            "body": {
              "id": 6274,
              "nodeType": "Block",
              "src": "735:16:17",
              "statements": []
            },
            "documentation": null,
            "id": 6275,
            "implemented": true,
            "isConstructor": true,
            "isDeclaredConst": false,
            "modifiers": [
              {
                "arguments": [
                  {
                    "argumentTypes": null,
                    "id": 6270,
                    "name": "_nftAddr",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 6265,
                    "src": "719:8:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  {
                    "argumentTypes": null,
                    "id": 6271,
                    "name": "_cut",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 6267,
                    "src": "729:4:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  }
                ],
                "id": 6272,
                "modifierName": {
                  "argumentTypes": null,
                  "id": 6269,
                  "name": "ClockAuction",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": 5704,
                  "src": "706:12:17",
                  "typeDescriptions": {
                    "typeIdentifier": "t_type$_t_contract$_ClockAuction_$5704_$",
                    "typeString": "type(contract ClockAuction)"
                  }
                },
                "nodeType": "ModifierInvocation",
                "src": "706:28:17"
              }
            ],
            "name": "SiringClockAuction",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6268,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6265,
                  "name": "_nftAddr",
                  "nodeType": "VariableDeclaration",
                  "scope": 6275,
                  "src": "667:16:17",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 6264,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "667:7:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 6267,
                  "name": "_cut",
                  "nodeType": "VariableDeclaration",
                  "scope": 6275,
                  "src": "685:12:17",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6266,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "685:7:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "666:32:17"
            },
            "payable": false,
            "returnParameters": {
              "id": 6273,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "735:0:17"
            },
            "scope": 6369,
            "src": "639:112:17",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6334,
              "nodeType": "Block",
              "src": "1548:345:17",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        "id": 6303,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 6298,
                            "name": "msg",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20639,
                            "src": "1566:3:17",
                            "typeDescriptions": {
                              "typeIdentifier": "t_magic_message",
                              "typeString": "msg"
                            }
                          },
                          "id": 6299,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "sender",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": null,
                          "src": "1566:10:17",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "==",
                        "rightExpression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "id": 6301,
                              "name": "nonFungibleContract",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 5720,
                              "src": "1588:19:17",
                              "typeDescriptions": {
                                "typeIdentifier": "t_contract$_ERC721_$6435",
                                "typeString": "contract ERC721"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_contract$_ERC721_$6435",
                                "typeString": "contract ERC721"
                              }
                            ],
                            "id": 6300,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "nodeType": "ElementaryTypeNameExpression",
                            "src": "1580:7:17",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_address_$",
                              "typeString": "type(address)"
                            },
                            "typeName": "address"
                          },
                          "id": 6302,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "typeConversion",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "1580:28:17",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "src": "1566:42:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      ],
                      "id": 6297,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        20642,
                        20643
                      ],
                      "referencedDeclaration": 20642,
                      "src": "1558:7:17",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
                        "typeString": "function (bool) pure"
                      }
                    },
                    "id": 6304,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1558:51:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 6305,
                  "nodeType": "ExpressionStatement",
                  "src": "1558:51:17"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6307,
                        "name": "_seller",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6285,
                        "src": "1627:7:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6308,
                        "name": "_tokenId",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6277,
                        "src": "1636:8:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 6306,
                      "name": "_escrow",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 5810,
                      "src": "1619:7:17",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256)"
                      }
                    },
                    "id": 6309,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1619:26:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 6310,
                  "nodeType": "ExpressionStatement",
                  "src": "1619:26:17"
                },
                {
                  "assignments": [
                    6312
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 6312,
                      "name": "auction",
                      "nodeType": "VariableDeclaration",
                      "scope": 6335,
                      "src": "1655:22:17",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_Auction_$5718_memory_ptr",
                        "typeString": "struct ClockAuctionBase.Auction"
                      },
                      "typeName": {
                        "contractScope": null,
                        "id": 6311,
                        "name": "Auction",
                        "nodeType": "UserDefinedTypeName",
                        "referencedDeclaration": 5718,
                        "src": "1655:7:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Auction_$5718_storage_ptr",
                          "typeString": "struct ClockAuctionBase.Auction"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 6328,
                  "initialValue": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6314,
                        "name": "_seller",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6285,
                        "src": "1701:7:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 6316,
                            "name": "_startingPrice",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 6279,
                            "src": "1730:14:17",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          ],
                          "id": 6315,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "1722:7:17",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_uint128_$",
                            "typeString": "type(uint128)"
                          },
                          "typeName": "uint128"
                        },
                        "id": 6317,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "1722:23:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint128",
                          "typeString": "uint128"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 6319,
                            "name": "_endingPrice",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 6281,
                            "src": "1767:12:17",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          ],
                          "id": 6318,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "1759:7:17",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_uint128_$",
                            "typeString": "type(uint128)"
                          },
                          "typeName": "uint128"
                        },
                        "id": 6320,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "1759:21:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint128",
                          "typeString": "uint128"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 6322,
                            "name": "_duration",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 6283,
                            "src": "1801:9:17",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          ],
                          "id": 6321,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "1794:6:17",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_uint64_$",
                            "typeString": "type(uint64)"
                          },
                          "typeName": "uint64"
                        },
                        "id": 6323,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "1794:17:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint64",
                          "typeString": "uint64"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 6325,
                            "name": "now",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20641,
                            "src": "1832:3:17",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          ],
                          "id": 6324,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "1825:6:17",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_uint64_$",
                            "typeString": "type(uint64)"
                          },
                          "typeName": "uint64"
                        },
                        "id": 6326,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "1825:11:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint64",
                          "typeString": "uint64"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint128",
                          "typeString": "uint128"
                        },
                        {
                          "typeIdentifier": "t_uint128",
                          "typeString": "uint128"
                        },
                        {
                          "typeIdentifier": "t_uint64",
                          "typeString": "uint64"
                        },
                        {
                          "typeIdentifier": "t_uint64",
                          "typeString": "uint64"
                        }
                      ],
                      "id": 6313,
                      "name": "Auction",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 5718,
                      "src": "1680:7:17",
                      "typeDescriptions": {
                        "typeIdentifier": "t_type$_t_struct$_Auction_$5718_storage_ptr_$",
                        "typeString": "type(struct ClockAuctionBase.Auction storage pointer)"
                      }
                    },
                    "id": 6327,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "structConstructorCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1680:166:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_Auction_$5718_memory",
                      "typeString": "struct ClockAuctionBase.Auction memory"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "1655:191:17"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6330,
                        "name": "_tokenId",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6277,
                        "src": "1868:8:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6331,
                        "name": "auction",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6312,
                        "src": "1878:7:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Auction_$5718_memory_ptr",
                          "typeString": "struct ClockAuctionBase.Auction memory"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_struct$_Auction_$5718_memory_ptr",
                          "typeString": "struct ClockAuctionBase.Auction memory"
                        }
                      ],
                      "id": 6329,
                      "name": "_addAuction",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 5864,
                      "src": "1856:11:17",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_struct$_Auction_$5718_memory_ptr_$returns$__$",
                        "typeString": "function (uint256,struct ClockAuctionBase.Auction memory)"
                      }
                    },
                    "id": 6332,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1856:30:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 6333,
                  "nodeType": "ExpressionStatement",
                  "src": "1856:30:17"
                }
              ]
            },
            "documentation": "@dev Creates and begins a new auction. Since this function is wrapped,\n require sender to be KittyCore contract.\n @param _tokenId - ID of token to auction, sender must be owner.\n @param _startingPrice - Price of item (in wei) at beginning of auction.\n @param _endingPrice - Price of item (in wei) at end of auction.\n @param _duration - Length of auction (in seconds).\n @param _seller - Seller, if not the message sender",
            "id": 6335,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [
              {
                "arguments": [
                  {
                    "argumentTypes": null,
                    "id": 6288,
                    "name": "_startingPrice",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 6279,
                    "src": "1442:14:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  }
                ],
                "id": 6289,
                "modifierName": {
                  "argumentTypes": null,
                  "id": 6287,
                  "name": "canBeStoredWith128Bits",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": 5776,
                  "src": "1419:22:17",
                  "typeDescriptions": {
                    "typeIdentifier": "t_modifier$_t_uint256_$",
                    "typeString": "modifier (uint256)"
                  }
                },
                "nodeType": "ModifierInvocation",
                "src": "1419:38:17"
              },
              {
                "arguments": [
                  {
                    "argumentTypes": null,
                    "id": 6291,
                    "name": "_endingPrice",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 6281,
                    "src": "1489:12:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  }
                ],
                "id": 6292,
                "modifierName": {
                  "argumentTypes": null,
                  "id": 6290,
                  "name": "canBeStoredWith128Bits",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": 5776,
                  "src": "1466:22:17",
                  "typeDescriptions": {
                    "typeIdentifier": "t_modifier$_t_uint256_$",
                    "typeString": "modifier (uint256)"
                  }
                },
                "nodeType": "ModifierInvocation",
                "src": "1466:36:17"
              },
              {
                "arguments": [
                  {
                    "argumentTypes": null,
                    "id": 6294,
                    "name": "_duration",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 6283,
                    "src": "1533:9:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  }
                ],
                "id": 6295,
                "modifierName": {
                  "argumentTypes": null,
                  "id": 6293,
                  "name": "canBeStoredWith64Bits",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": 5764,
                  "src": "1511:21:17",
                  "typeDescriptions": {
                    "typeIdentifier": "t_modifier$_t_uint256_$",
                    "typeString": "modifier (uint256)"
                  }
                },
                "nodeType": "ModifierInvocation",
                "src": "1511:32:17"
              }
            ],
            "name": "createAuction",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6286,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6277,
                  "name": "_tokenId",
                  "nodeType": "VariableDeclaration",
                  "scope": 6335,
                  "src": "1259:16:17",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6276,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1259:7:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 6279,
                  "name": "_startingPrice",
                  "nodeType": "VariableDeclaration",
                  "scope": 6335,
                  "src": "1285:22:17",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6278,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1285:7:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 6281,
                  "name": "_endingPrice",
                  "nodeType": "VariableDeclaration",
                  "scope": 6335,
                  "src": "1317:20:17",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6280,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1317:7:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 6283,
                  "name": "_duration",
                  "nodeType": "VariableDeclaration",
                  "scope": 6335,
                  "src": "1347:17:17",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6282,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1347:7:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 6285,
                  "name": "_seller",
                  "nodeType": "VariableDeclaration",
                  "scope": 6335,
                  "src": "1374:15:17",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 6284,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1374:7:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1249:146:17"
            },
            "payable": false,
            "returnParameters": {
              "id": 6296,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1548:0:17"
            },
            "scope": 6369,
            "src": "1227:666:17",
            "stateMutability": "nonpayable",
            "superFunction": 5556,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6367,
              "nodeType": "Block",
              "src": "2177:372:17",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        "id": 6346,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 6341,
                            "name": "msg",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20639,
                            "src": "2195:3:17",
                            "typeDescriptions": {
                              "typeIdentifier": "t_magic_message",
                              "typeString": "msg"
                            }
                          },
                          "id": 6342,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "sender",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": null,
                          "src": "2195:10:17",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "==",
                        "rightExpression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "id": 6344,
                              "name": "nonFungibleContract",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 5720,
                              "src": "2217:19:17",
                              "typeDescriptions": {
                                "typeIdentifier": "t_contract$_ERC721_$6435",
                                "typeString": "contract ERC721"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_contract$_ERC721_$6435",
                                "typeString": "contract ERC721"
                              }
                            ],
                            "id": 6343,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "nodeType": "ElementaryTypeNameExpression",
                            "src": "2209:7:17",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_address_$",
                              "typeString": "type(address)"
                            },
                            "typeName": "address"
                          },
                          "id": 6345,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "typeConversion",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "2209:28:17",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "src": "2195:42:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      ],
                      "id": 6340,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        20642,
                        20643
                      ],
                      "referencedDeclaration": 20642,
                      "src": "2187:7:17",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
                        "typeString": "function (bool) pure"
                      }
                    },
                    "id": 6347,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2187:51:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 6348,
                  "nodeType": "ExpressionStatement",
                  "src": "2187:51:17"
                },
                {
                  "assignments": [
                    6350
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 6350,
                      "name": "seller",
                      "nodeType": "VariableDeclaration",
                      "scope": 6368,
                      "src": "2248:14:17",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      },
                      "typeName": {
                        "id": 6349,
                        "name": "address",
                        "nodeType": "ElementaryTypeName",
                        "src": "2248:7:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 6355,
                  "initialValue": {
                    "argumentTypes": null,
                    "expression": {
                      "argumentTypes": null,
                      "baseExpression": {
                        "argumentTypes": null,
                        "id": 6351,
                        "name": "tokenIdToAuction",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5726,
                        "src": "2265:16:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Auction_$5718_storage_$",
                          "typeString": "mapping(uint256 => struct ClockAuctionBase.Auction storage ref)"
                        }
                      },
                      "id": 6353,
                      "indexExpression": {
                        "argumentTypes": null,
                        "id": 6352,
                        "name": "_tokenId",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6337,
                        "src": "2282:8:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "IndexAccess",
                      "src": "2265:26:17",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_Auction_$5718_storage",
                        "typeString": "struct ClockAuctionBase.Auction storage ref"
                      }
                    },
                    "id": 6354,
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "memberName": "seller",
                    "nodeType": "MemberAccess",
                    "referencedDeclaration": 5709,
                    "src": "2265:33:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "2248:50:17"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6357,
                        "name": "_tokenId",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6337,
                        "src": "2387:8:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 6358,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20639,
                          "src": "2397:3:17",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 6359,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "value",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "2397:9:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 6356,
                      "name": "_bid",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 5960,
                      "src": "2382:4:17",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$_t_uint256_$",
                        "typeString": "function (uint256,uint256) returns (uint256)"
                      }
                    },
                    "id": 6360,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2382:25:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 6361,
                  "nodeType": "ExpressionStatement",
                  "src": "2382:25:17"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6363,
                        "name": "seller",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6350,
                        "src": "2525:6:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6364,
                        "name": "_tokenId",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6337,
                        "src": "2533:8:17",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 6362,
                      "name": "_transfer",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 5825,
                      "src": "2515:9:17",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (address,uint256)"
                      }
                    },
                    "id": 6365,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2515:27:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 6366,
                  "nodeType": "ExpressionStatement",
                  "src": "2515:27:17"
                }
              ]
            },
            "documentation": "@dev Places a bid for siring. Requires the sender\n is the KittyCore contract because all bid methods\n should be wrapped. Also returns the kitty to the\n seller rather than the winner.",
            "id": 6368,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "bid",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6338,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6337,
                  "name": "_tokenId",
                  "nodeType": "VariableDeclaration",
                  "scope": 6368,
                  "src": "2124:16:17",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6336,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2124:7:17",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2123:18:17"
            },
            "payable": true,
            "returnParameters": {
              "id": 6339,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2177:0:17"
            },
            "scope": 6369,
            "src": "2111:438:17",
            "stateMutability": "payable",
            "superFunction": 5576,
            "visibility": "public"
          }
        ],
        "scope": 6370,
        "src": "375:2177:17"
      }
    ],
    "src": "272:2281:17"
  },
  "compiler": {
    "name": "solc",
    "version": "0.4.24+commit.e67f0147.Emscripten.clang"
  },
  "networks": {},
  "schemaVersion": "2.0.1",
  "updatedAt": "2018-11-02T14:04:10.980Z"
}