{
  "_format": "hh-sol-artifact-1",
  "contractName": "FixedReputationAllocation",
  "sourceName": "contracts/schemes/FixedReputationAllocation.sol",
  "abi": [
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "_beneficiary",
          "type": "address"
        }
      ],
      "name": "BeneficiaryAddressAdded",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "previousOwner",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "newOwner",
          "type": "address"
        }
      ],
      "name": "OwnershipTransferred",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "_beneficiary",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "_amount",
          "type": "uint256"
        }
      ],
      "name": "Redeem",
      "type": "event"
    },
    {
      "constant": false,
      "inputs": [
        {
          "internalType": "address[]",
          "name": "_beneficiaries",
          "type": "address[]"
        }
      ],
      "name": "addBeneficiaries",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "internalType": "address",
          "name": "_beneficiary",
          "type": "address"
        }
      ],
      "name": "addBeneficiary",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "avatar",
      "outputs": [
        {
          "internalType": "contract Avatar",
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "name": "beneficiaries",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "beneficiaryReward",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [],
      "name": "enable",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "internalType": "contract Avatar",
          "name": "_avatar",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "_reputationReward",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "_redeemEnableTime",
          "type": "uint256"
        }
      ],
      "name": "initialize",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "isEnable",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "isOwner",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "numberOfBeneficiaries",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "owner",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "internalType": "address",
          "name": "_beneficiary",
          "type": "address"
        }
      ],
      "name": "redeem",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "redeemEnableTime",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [],
      "name": "renounceOwnership",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "reputationReward",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "internalType": "address",
          "name": "newOwner",
          "type": "address"
        }
      ],
      "name": "transferOwnership",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": "0x60806040526100156001600160e01b0361006216565b600080546001600160a01b0319166001600160a01b03928316178082556040519216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3610066565b3390565b610c91806100756000396000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c80637a1ac61e11610097578063a3907d7111610066578063a3907d71146102c8578063d044de63146102d0578063ed1ff6d8146102d8578063f2fde38b146102e057610100565b80637a1ac61e146102605780638da5cb5b146102925780638f32d59b1461029a57806395a2251f146102a257610100565b8063590411da116100d3578063590411da146101695780635926651d1461020e5780635aef7de614610234578063715018a61461025857610100565b8063015677391461010557806326e9a57e1461013f5780633d1678f4146101595780634bb77d6814610161575b600080fd5b61012b6004803603602081101561011b57600080fd5b50356001600160a01b0316610306565b604080519115158252519081900360200190f35b61014761031b565b60408051918252519081900360200190f35b610147610321565b61012b610327565b61020c6004803603602081101561017f57600080fd5b81019060208101813564010000000081111561019a57600080fd5b8201836020820111156101ac57600080fd5b803590602001918460208302840111640100000000831117156101ce57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550610330945050505050565b005b61020c6004803603602081101561022457600080fd5b50356001600160a01b03166103ab565b61023c6104ac565b604080516001600160a01b039092168252519081900360200190f35b61020c6104bb565b61020c6004803603606081101561027657600080fd5b506001600160a01b03813516906020810135906040013561054c565b61023c61066f565b61012b61067e565b61012b600480360360208110156102b857600080fd5b50356001600160a01b03166106a2565b61020c610959565b6101476109c7565b6101476109cd565b61020c600480360360208110156102f657600080fd5b50356001600160a01b03166109d3565b60016020526000908152604090205460ff1681565b60055481565b60075481565b60045460ff1681565b61033861067e565b610377576040805162461bcd60e51b81526020600482018190526024820152600080516020610c07833981519152604482015290519081900360640190fd5b60005b81518110156103a75761039f82828151811061039257fe5b60200260200101516103ab565b60010161037a565b5050565b6103b361067e565b6103f2576040805162461bcd60e51b81526020600482018190526024820152600080516020610c07833981519152604482015290519081900360640190fd5b60045460ff16156104345760405162461bcd60e51b815260040180806020018281038252602e815260200180610bb3602e913960400191505060405180910390fd5b6001600160a01b03811660009081526001602052604090205460ff166104a9576001600160a01b0381166000818152600160208190526040808320805460ff19168317905560058054909201909155517f95b0b3bbe2a97e90a67cbf83ff77fbde1eb5b70051247f9d1a62822ccdc919979190a25b50565b6002546001600160a01b031681565b6104c361067e565b610502576040805162461bcd60e51b81526020600482018190526024820152600080516020610c07833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b61055461067e565b610593576040805162461bcd60e51b81526020600482018190526024820152600080516020610c07833981519152604482015290519081900360640190fd5b6002546001600160a01b0316156105f1576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b038316610644576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b600391909155600755600280546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031690565b600080546001600160a01b0316610693610a23565b6001600160a01b031614905090565b60045460009060ff166106f3576040805162461bcd60e51b81526020600482015260146024820152737265717569726520746f20626520656e61626c6560601b604482015290519081900360640190fd5b6001600160a01b03821660009081526001602052604090205460ff1661074a5760405162461bcd60e51b8152600401808060200182810382526036815260200180610c276036913960400191505060405180910390fd5b6001600160a01b0382166000908152600160205260409020805460ff1916905560075442116107c0576040805162461bcd60e51b815260206004820152601e60248201527f72657175697265206e6f77203e2072656465656d456e61626c6554696d650000604482015290519081900360640190fd5b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561080e57600080fd5b505afa158015610822573d6000803e3d6000fd5b505050506040513d602081101561083857600080fd5b50516006546002546040805163757cca5960e11b815260048101939093526001600160a01b03868116602485015291821660448401525192169163eaf994b2916064808201926020929091908290030181600087803b15801561089a57600080fd5b505af11580156108ae573d6000803e3d6000fd5b505050506040513d60208110156108c457600080fd5b5051610910576040805162461bcd60e51b81526020600482015260166024820152751b5a5b9d081c995c1d5d185d1a5bdb8819985a5b195960521b604482015290519081900360640190fd5b60065460408051918252516001600160a01b038416917f222838db2794d11532d940e8dec38ae307ed0b63cd97c233322e221f998767a6919081900360200190a2506001919050565b61096161067e565b6109a0576040805162461bcd60e51b81526020600482018190526024820152600080516020610c07833981519152604482015290519081900360640190fd5b6004805460ff191660011790556005546003546109c29163ffffffff610a2716565b600655565b60065481565b60035481565b6109db61067e565b610a1a576040805162461bcd60e51b81526020600482018190526024820152600080516020610c07833981519152604482015290519081900360640190fd5b6104a981610a70565b3390565b6000610a6983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610b10565b9392505050565b6001600160a01b038116610ab55760405162461bcd60e51b8152600401808060200182810382526026815260200180610be16026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b60008183610b9c5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610b61578181015183820152602001610b49565b50505050905090810190601f168015610b8e5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581610ba857fe5b049594505050505056fe63616e206164642062656e6566696369617279206f6e6c79206966206e6f7420616c726561647920656e61626c654f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657272657175697265205f62656e656669636961727920746f20657869737420696e207468652062656e65666963696172696573206d6170a265627a7a7231582017dd397842ab578f3e9febe8ac063961e8c889450ae33aefd65209e1f32426ae64736f6c63430005110032",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101005760003560e01c80637a1ac61e11610097578063a3907d7111610066578063a3907d71146102c8578063d044de63146102d0578063ed1ff6d8146102d8578063f2fde38b146102e057610100565b80637a1ac61e146102605780638da5cb5b146102925780638f32d59b1461029a57806395a2251f146102a257610100565b8063590411da116100d3578063590411da146101695780635926651d1461020e5780635aef7de614610234578063715018a61461025857610100565b8063015677391461010557806326e9a57e1461013f5780633d1678f4146101595780634bb77d6814610161575b600080fd5b61012b6004803603602081101561011b57600080fd5b50356001600160a01b0316610306565b604080519115158252519081900360200190f35b61014761031b565b60408051918252519081900360200190f35b610147610321565b61012b610327565b61020c6004803603602081101561017f57600080fd5b81019060208101813564010000000081111561019a57600080fd5b8201836020820111156101ac57600080fd5b803590602001918460208302840111640100000000831117156101ce57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550610330945050505050565b005b61020c6004803603602081101561022457600080fd5b50356001600160a01b03166103ab565b61023c6104ac565b604080516001600160a01b039092168252519081900360200190f35b61020c6104bb565b61020c6004803603606081101561027657600080fd5b506001600160a01b03813516906020810135906040013561054c565b61023c61066f565b61012b61067e565b61012b600480360360208110156102b857600080fd5b50356001600160a01b03166106a2565b61020c610959565b6101476109c7565b6101476109cd565b61020c600480360360208110156102f657600080fd5b50356001600160a01b03166109d3565b60016020526000908152604090205460ff1681565b60055481565b60075481565b60045460ff1681565b61033861067e565b610377576040805162461bcd60e51b81526020600482018190526024820152600080516020610c07833981519152604482015290519081900360640190fd5b60005b81518110156103a75761039f82828151811061039257fe5b60200260200101516103ab565b60010161037a565b5050565b6103b361067e565b6103f2576040805162461bcd60e51b81526020600482018190526024820152600080516020610c07833981519152604482015290519081900360640190fd5b60045460ff16156104345760405162461bcd60e51b815260040180806020018281038252602e815260200180610bb3602e913960400191505060405180910390fd5b6001600160a01b03811660009081526001602052604090205460ff166104a9576001600160a01b0381166000818152600160208190526040808320805460ff19168317905560058054909201909155517f95b0b3bbe2a97e90a67cbf83ff77fbde1eb5b70051247f9d1a62822ccdc919979190a25b50565b6002546001600160a01b031681565b6104c361067e565b610502576040805162461bcd60e51b81526020600482018190526024820152600080516020610c07833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b61055461067e565b610593576040805162461bcd60e51b81526020600482018190526024820152600080516020610c07833981519152604482015290519081900360640190fd5b6002546001600160a01b0316156105f1576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b038316610644576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b600391909155600755600280546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031690565b600080546001600160a01b0316610693610a23565b6001600160a01b031614905090565b60045460009060ff166106f3576040805162461bcd60e51b81526020600482015260146024820152737265717569726520746f20626520656e61626c6560601b604482015290519081900360640190fd5b6001600160a01b03821660009081526001602052604090205460ff1661074a5760405162461bcd60e51b8152600401808060200182810382526036815260200180610c276036913960400191505060405180910390fd5b6001600160a01b0382166000908152600160205260409020805460ff1916905560075442116107c0576040805162461bcd60e51b815260206004820152601e60248201527f72657175697265206e6f77203e2072656465656d456e61626c6554696d650000604482015290519081900360640190fd5b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561080e57600080fd5b505afa158015610822573d6000803e3d6000fd5b505050506040513d602081101561083857600080fd5b50516006546002546040805163757cca5960e11b815260048101939093526001600160a01b03868116602485015291821660448401525192169163eaf994b2916064808201926020929091908290030181600087803b15801561089a57600080fd5b505af11580156108ae573d6000803e3d6000fd5b505050506040513d60208110156108c457600080fd5b5051610910576040805162461bcd60e51b81526020600482015260166024820152751b5a5b9d081c995c1d5d185d1a5bdb8819985a5b195960521b604482015290519081900360640190fd5b60065460408051918252516001600160a01b038416917f222838db2794d11532d940e8dec38ae307ed0b63cd97c233322e221f998767a6919081900360200190a2506001919050565b61096161067e565b6109a0576040805162461bcd60e51b81526020600482018190526024820152600080516020610c07833981519152604482015290519081900360640190fd5b6004805460ff191660011790556005546003546109c29163ffffffff610a2716565b600655565b60065481565b60035481565b6109db61067e565b610a1a576040805162461bcd60e51b81526020600482018190526024820152600080516020610c07833981519152604482015290519081900360640190fd5b6104a981610a70565b3390565b6000610a6983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610b10565b9392505050565b6001600160a01b038116610ab55760405162461bcd60e51b8152600401808060200182810382526026815260200180610be16026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b60008183610b9c5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610b61578181015183820152602001610b49565b50505050905090810190601f168015610b8e5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581610ba857fe5b049594505050505056fe63616e206164642062656e6566696369617279206f6e6c79206966206e6f7420616c726561647920656e61626c654f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657272657175697265205f62656e656669636961727920746f20657869737420696e207468652062656e65666963696172696573206d6170a265627a7a7231582017dd397842ab578f3e9febe8ac063961e8c889450ae33aefd65209e1f32426ae64736f6c63430005110032",
  "linkReferences": {},
  "deployedLinkReferences": {}
}