{
  "contract_name": "IdentityManager",
  "abi": [
    {
      "constant": true,
      "inputs": [
        {
          "name": "identity",
          "type": "address"
        },
        {
          "name": "recoveryKey",
          "type": "address"
        }
      ],
      "name": "isRecovery",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "identity",
          "type": "address"
        },
        {
          "name": "newOwner",
          "type": "address"
        }
      ],
      "name": "addOwner",
      "outputs": [],
      "payable": false,
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "identity",
          "type": "address"
        },
        {
          "name": "owner",
          "type": "address"
        }
      ],
      "name": "isOlderOwner",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "identity",
          "type": "address"
        },
        {
          "name": "newIdManager",
          "type": "address"
        }
      ],
      "name": "initiateMigration",
      "outputs": [],
      "payable": false,
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "name": "migrationNewAddress",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "identity",
          "type": "address"
        },
        {
          "name": "newOwner",
          "type": "address"
        }
      ],
      "name": "addOwnerFromRecovery",
      "outputs": [],
      "payable": false,
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "identity",
          "type": "address"
        },
        {
          "name": "recoveryKey",
          "type": "address"
        }
      ],
      "name": "changeRecovery",
      "outputs": [],
      "payable": false,
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "identity",
          "type": "address"
        }
      ],
      "name": "finalizeMigration",
      "outputs": [],
      "payable": false,
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "identity",
          "type": "address"
        }
      ],
      "name": "cancelMigration",
      "outputs": [],
      "payable": false,
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "identity",
          "type": "address"
        },
        {
          "name": "destination",
          "type": "address"
        },
        {
          "name": "value",
          "type": "uint256"
        },
        {
          "name": "data",
          "type": "bytes"
        }
      ],
      "name": "forwardTo",
      "outputs": [],
      "payable": false,
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "owner",
          "type": "address"
        },
        {
          "name": "recoveryKey",
          "type": "address"
        }
      ],
      "name": "registerIdentity",
      "outputs": [],
      "payable": false,
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "identity",
          "type": "address"
        },
        {
          "name": "owner",
          "type": "address"
        }
      ],
      "name": "isOwner",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "name": "migrationInitiated",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "owner",
          "type": "address"
        },
        {
          "name": "recoveryKey",
          "type": "address"
        }
      ],
      "name": "createIdentity",
      "outputs": [],
      "payable": false,
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "identity",
          "type": "address"
        },
        {
          "name": "owner",
          "type": "address"
        }
      ],
      "name": "removeOwner",
      "outputs": [],
      "payable": false,
      "type": "function"
    },
    {
      "inputs": [
        {
          "name": "_userTimeLock",
          "type": "uint256"
        },
        {
          "name": "_adminTimeLock",
          "type": "uint256"
        },
        {
          "name": "_adminRate",
          "type": "uint256"
        }
      ],
      "payable": false,
      "type": "constructor"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "identity",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "creator",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "owner",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "recoveryKey",
          "type": "address"
        }
      ],
      "name": "IdentityCreated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "identity",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "owner",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "instigator",
          "type": "address"
        }
      ],
      "name": "OwnerAdded",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "identity",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "owner",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "instigator",
          "type": "address"
        }
      ],
      "name": "OwnerRemoved",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "identity",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "recoveryKey",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "instigator",
          "type": "address"
        }
      ],
      "name": "RecoveryChanged",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "identity",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "newIdManager",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "instigator",
          "type": "address"
        }
      ],
      "name": "MigrationInitiated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "identity",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "newIdManager",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "instigator",
          "type": "address"
        }
      ],
      "name": "MigrationCanceled",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "identity",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "newIdManager",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "instigator",
          "type": "address"
        }
      ],
      "name": "MigrationFinalized",
      "type": "event"
    }
  ],
  "unlinked_binary": "0x6060604052341561000c57fe5b6040516060806111ee8339810160409081528151602083015191909201515b6000829055600183905560028190555b5050505b6111a08061004e6000396000f300606060405236156100bf5763ffffffff60e060020a60003504166311fe12b381146100c157806316d390bf146100f757806332967ea01461011b5780633dcf59ca14610151578063422e33f3146101755780635143eea2146101ad57806353faa9a9146101d1578063633b1954146101f55780636f022ac41461021357806373b40a5c14610231578063781f5a831461029e5780637ddc02d4146102c2578063c778427b146102f8578063d10e73ab14610326578063fbe5ce0a1461034a575bfe5b34156100c957fe5b6100e3600160a060020a036004358116906024351661036e565b604080519115158252519081900360200190f35b34156100ff57fe5b610119600160a060020a0360043581169060243516610395565b005b341561012357fe5b6100e3600160a060020a0360043581169060243516610467565b604080519115158252519081900360200190f35b341561015957fe5b610119600160a060020a03600435811690602435166104d1565b005b341561017d57fe5b610191600160a060020a0360043516610583565b60408051600160a060020a039092168252519081900360200190f35b34156101b557fe5b610119600160a060020a036004358116906024351661059e565b005b34156101d957fe5b610119600160a060020a03600435811690602435166106a7565b005b34156101fd57fe5b610119600160a060020a03600435166107b3565b005b341561021b57fe5b610119600160a060020a03600435166108fa565b005b341561023957fe5b604080516020600460643581810135601f8101849004840285018401909552848452610119948235600160a060020a0390811695602480359092169560443595946084949293019190819084018382808284375094965061099395505050505050565b005b34156102a657fe5b610119600160a060020a0360043581169060243516610a9e565b005b34156102ca57fe5b6100e3600160a060020a0360043581169060243516610b61565b604080519115158252519081900360200190f35b341561030057fe5b610314600160a060020a0360043516610bcb565b60408051918252519081900360200190f35b341561032e57fe5b610119600160a060020a0360043581169060243516610bdd565b005b341561035257fe5b610119600160a060020a0360043581169060243516610c9c565b005b600160a060020a038281166000908152600460205260409020548116908216145b92915050565b816103a08133610467565b1561044e57600254600160a060020a03808516600090815260056020908152604080832033909416835292905220548491420390101561044e57600160a060020a03808216600090815260056020908152604080832033851680855290835281842042908190556001548a871680875260038652848720978b16808852978652958490209103905581519081529051600080516020611135833981519152929181900390910190a35b610454565b60006000fd5b5b50610461565b60006000fd5b5b505050565b600160a060020a03808316600090815260036020908152604080832093851683529290529081205481901180156104c8575060008054600160a060020a03808616835260036020908152604080852092871685529190529091205442910111155b90505b92915050565b816104dc8133610467565b1561044e5781600160a060020a0381161561044e57600160a060020a03848116600081815260066020908152604080832042905560078252918290208054600160a060020a0319168886169081179091558251339095168552915191937fcfc00227bf2b3a4415906c30423e1d01d99604f93a0d756dc25fbf69cf233e20929081900390910190a35b610454565b60006000fd5b5b50610461565b60006000fd5b5b505050565b600760205260009081526040902054600160a060020a031681565b600160a060020a0382811660009081526004602052604090205483913381169116141561044e57600254600160a060020a03808516600090815260056020908152604080832033909416835292905220548491420390101561044e57600160a060020a0380821660009081526005602090815260408083203390941683529290522042905561062d8484610b61565b156106385760006000fd5b600160a060020a038085166000818152600360209081526040808320888616808552908352928190204290558051339095168552519193600080516020611135833981519152929081900390910190a35b610454565b60006000fd5b5b50610461565b60006000fd5b5b505050565b816106b28133610467565b1561044e57600254600160a060020a03808516600090815260056020908152604080832033909416835292905220548491420390101561044e57600160a060020a03808216600090815260056020908152604080832033851684529091529020429055839081161561044e57600160a060020a038581166000818152600460209081526040918290208054600160a060020a0319168986169081179091558251339095168552915191937fa9bb12bc681659b583320c1fa0fbf4d8c1dfb4fcd51566c8f6edf9438a8b8ece929081900390910190a35b610793565b60006000fd5b5b50610454565b60006000fd5b5b50610461565b60006000fd5b5b505050565b6000816107c08133610467565b1561044e57600160a060020a038316600090815260066020526040812054118015610806575060008054600160a060020a03851682526006602052604090912054429101105b1561044e57600160a060020a038084166000818152600760208181526040808420805460068452828620869055939092528154600160a060020a031916909155805160e460020a6301a69523028152919094166004820181905293519395509192631a69523092602480820193929182900301818387803b151561088657fe5b6102c65a03f1151561089457fe5b50506040805133600160a060020a03908116825291518286169350918616917f5d50e5b65a3141f147362981bdcac9e274984e1c2efec57320f86b3e071dd6f89181900360200190a36108e8565b60006000fd5b5b610461565b60006000fd5b5b505050565b6000816109078133610b61565b1561044e57600160a060020a038084166000818152600760208181526040808420805460068452828620959095559282528254600160a060020a03191690925581513386168152915192909416955085937f788f980ac1598bf6282c4cc596fedd7807726e6e8e51f1505a1b6df5d726f56792918290030190a35b610461565b60006000fd5b5b505050565b8361099e8133610b61565b1561044e5784600160a060020a031663d7f31eb98585856040518463ffffffff1660e060020a0281526004018084600160a060020a0316600160a060020a0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360008314610a30575b805182526020831115610a3057601f199092019160209182019101610a10565b505050905090810190601f168015610a5c5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1515610a7957fe5b6102c65a03f11515610a8757fe5b5050505b610a96565b60006000fd5b5b5050505050565b80600160a060020a0381161561044e57600160a060020a033381166000908152600460205260408120549091161115610ad75760006000fd5b60008054600160a060020a03338116808452600360209081526040808620898516808852908352818720429690960390955582865260048252948590208054938816600160a060020a03199094168417905584519384529351919390928392600080516020611155833981519152929181900390910190a45b610461565b60006000fd5b5b505050565b600160a060020a03808316600090815260036020908152604080832093851683529290529081205481901180156104c85750600154600160a060020a0380851660009081526003602090815260408083209387168352929052205442910111155b90505b92915050565b60066020526000908152604090205481565b600081600160a060020a0381161561044e57610bf7610d7a565b60405190819003906000f0801515610c0b57fe5b60008054600160a060020a038381168084526003602090815260408086208b8516808852908352818720429690960390955582865260048252948590208054600160a060020a0319168a851690811790915585519485529451959750939433909216939092600080516020611155833981519152929081900390910190a45b610c95565b60006000fd5b5b50505050565b81610ca78133610467565b1561044e57600254600160a060020a03808516600090815260056020908152604080832033909416835292905220548491420390101561044e57600160a060020a0380821660009081526005602090815260408083203385168085529083528184204290558885168085526003845282852095891680865295845282852094909455815190815290517fc5d55f5b9504a5698fdae1a66c6327ad53ed43440071e233dc0caad0ca8406d4929181900390910190a35b610454565b60006000fd5b5b50610461565b60006000fd5b5b505050565b6040516103aa80610d8b83390190560060606040525b60008054600160a060020a03191633600160a060020a03161790555b5b610379806100316000396000f300606060405236156100465763ffffffff60e060020a6000350416631a695230811461008e5780632f54bf6e146100ac5780638da5cb5b146100dc578063d7f31eb914610108575b61008c5b604080513481529051600160a060020a033316917f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874919081900360200190a25b565b005b341561009657fe5b61008c600160a060020a036004351661016d565b005b34156100b457fe5b6100c8600160a060020a03600435166101be565b604080519115158252519081900360200190f35b34156100e457fe5b6100ec6101d5565b60408051600160a060020a039092168252519081900360200190f35b341561011057fe5b604080516020600460443581810135601f810184900484028501840190955284845261008c948235600160a060020a03169460248035956064949293919092019181908401838280828437509496506101e495505050505050565b005b610176336101be565b15156101825760006000fd5b30600160a060020a031681600160a060020a03161415156101b95760008054600160a060020a031916600160a060020a0383161790555b5b5b50565b600054600160a060020a038281169116145b919050565b600054600160a060020a031681565b6101ed336101be565b15156101f95760006000fd5b82600160a060020a031682826040518082805190602001908083836000831461023d575b80518252602083111561023d57601f19909201916020918201910161021d565b505050905090810190601f1680156102695780820380516001836020036101000a031916815260200191505b5091505060006040518083038185876187965a03f192505050151561028e5760006000fd5b82600160a060020a03167fc1de93dfa06362c6a616cde73ec17d116c0d588dd1df70f27f91b500de207c418383604051808381526020018060200182810382528381815181526020019150805190602001908083836000831461030c575b80518252602083111561030c57601f1990920191602091820191016102ec565b505050905090810190601f1680156103385780820380516001836020036101000a031916815260200191505b50935050505060405180910390a25b5b5050505600a165627a7a723058204423ec5683e8d2868fbdeb9237e3951beeadce2456a3cbdf6d9979463ea828fe00293047230d3e8ea09f306e55725064a524f79ccdf75f030deeb6db4f95518b6386c36800ebd6079fdafc3a7100d0d1172815751804a6d1b7eb365b85f6c9c80e61a165627a7a72305820fce41cf5a23546c13086543e4f1380f4bbc742bafbf9361abb15ea11219616c00029",
  "networks": {
    "4": {
      "address": "0xabbcd5b340c80b5f1c0545c04c987b87310296ae",
      "links": {}
    },
    "42": {
      "address": "0x71845bbfe5ddfdb919e780febfff5eda62a30fdc",
      "links": {}
    }
  },
  "schema_version": "0.0.5",
  "updated_at": 1501696578123
}
