diff --git a/.gitignore b/.gitignore index b3732f2..8230268 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ node_modules notes.txt .DS_Store seed +TestRegistry.json diff --git a/build/contracts/ArrayLib.json b/build/contracts/ArrayLib.json index 7a5083e..35942fd 100644 --- a/build/contracts/ArrayLib.json +++ b/build/contracts/ArrayLib.json @@ -41,7 +41,7 @@ "type": "function" } ], - "unlinked_binary": "0x606060405234610000575b6101e4806100196000396000f300606060405263ffffffff60e060020a600035041663c6f31521811461002f578063f14717c71461003f575b610000565b61003d600435602435610068565b005b610056600160a060020a0360043516602435610149565b60408051918252519081900360200190f35b80546000198101908290829081101561000057906000526020600020900160005b9054906101000a9004600160a060020a03168284815481101561000057906000526020600020900160005b6101000a815481600160a060020a030219169083600160a060020a031602179055508181815481101561000057906000526020600020900160005b6101000a815490600160a060020a03021916905580828181548183558181151161013e5760008381526020902061013e9181019083015b8082111561013a5760008155600101610126565b5090565b5b505050505b505050565b6000805b82548110156101ab5783600160a060020a03168382815481101561000057906000526020600020900160005b9054906101000a9004600160a060020a0316600160a060020a031614156101a2578091506101b1565b5b60010161014d565b60001991505b50929150505600a165627a7a72305820716584b2fde1c641931f4cef74554e539ea0c151c6826cf73959f21c6e3019850029", + "unlinked_binary": "0x6060604052341561000c57fe5b5b6102048061001c6000396000f300606060405263ffffffff60e060020a600035041663c6f31521811461002c578063f14717c71461003c575bfe5b61003a600435602435610065565b005b610053600160a060020a036004351660243561011b565b60408051918252519081900360200190f35b805460001981019082908290811061007957fe5b906000526020600020900160005b9054906101000a9004600160a060020a031682848154811015156100a757fe5b906000526020600020900160005b6101000a815481600160a060020a030219169083600160a060020a0316021790555081818154811015156100e557fe5b906000526020600020900160005b6101000a815490600160a060020a030219169055808281610114919061018d565b505b505050565b6000805b82548110156101805783600160a060020a0316838281548110151561014057fe5b906000526020600020900160005b9054906101000a9004600160a060020a0316600160a060020a0316141561017757809150610186565b5b60010161011f565b60001991505b5092915050565b815481835581811511610116576000838152602090206101169181019083016101b7565b5b505050565b6101d591905b808211156101d157600081556001016101bd565b5090565b905600a165627a7a723058202e5fcbcc910279570525c4660cf6d3f4364d7baca9a8148451efb2a669b25e9e0029", "networks": { "1": { "events": {}, @@ -81,5 +81,5 @@ } }, "schema_version": "0.0.5", - "updated_at": 1494766483133 + "updated_at": 1499785642009 } \ No newline at end of file diff --git a/build/contracts/IdentityFactory.json b/build/contracts/IdentityFactory.json index 6cd2ed7..a94f246 100644 --- a/build/contracts/IdentityFactory.json +++ b/build/contracts/IdentityFactory.json @@ -72,7 +72,7 @@ "type": "event" } ], - "unlinked_binary": "0x606060405234610000575b612135806100196000396000f300606060405263ffffffff60e060020a60003504166394d9cf8f811461002f578063e90bcb321461008f575b610000565b346100005760408051602480356004818101356020818102868101820190975281865261008d96600160a060020a0384351696939560449501929182919085019084908082843750949650508435946020013593506100c492505050565b005b34610000576100a8600160a060020a0360043516610315565b60408051600160a060020a039092168252519081900360200190f35b6000600060006040516103828061033183396040519101819003906000f0801561000057925082878686604051610a13806106b38339600160a060020a0395861691019081529290931660208301526040808301919091526060820192909252905190819003608001906000f0801561000057915082600160a060020a0316631a695230836040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b156100005760325a03f115610000575050508186604051611044806110c68339600160a060020a0384169101908152604060208083018281528451928401929092528351606084019185810191028083838215610200575b80518252602083111561020057601f1990920191602091820191016101e0565b5050509050019350505050604051809103906000f0801561000057905081600160a060020a031663a08df770826040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b156100005760325a03f11561000057505060408051600160a060020a0386811682528581166020830152848116828401529151918a1692507fc36800ebd6079fdafc3a7100d0d1172815751804a6d1b7eb365b85f6c9c80e61919081900360600190a233600160a060020a039081166000908152602081905260409020805473ffffffffffffffffffffffffffffffffffffffff19169185169190911790555b50505050505050565b600060208190529081526040902054600160a060020a031681560060606040525b60008054600160a060020a03191633600160a060020a03161790555b5b610351806100316000396000f300606060405236156100465763ffffffff60e060020a6000350416631a695230811461008e5780632f54bf6e146100a95780638da5cb5b146100d6578063d7f31eb9146100ff575b61008c5b604080513481529051600160a060020a033316917f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874919081900360200190a25b565b005b346100005761008c600160a060020a0360043516610161565b005b34610000576100c2600160a060020a036004351661019d565b604080519115158252519081900360200190f35b34610000576100e36101b4565b60408051600160a060020a039092168252519081900360200190f35b3461000057604080516020600460443581810135601f810184900484028501840190955284845261008c948235600160a060020a03169460248035956064949293919092019181908401838280828437509496506101c395505050505050565b005b61016a3361019d565b15610198576000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b5b50565b600054600160a060020a038281169116145b919050565b600054600160a060020a031681565b6101cc3361019d565b1561031e5782600160a060020a0316828260405180828051906020019080838360008314610215575b80518252602083111561021557601f1990920191602091820191016101f5565b505050905090810190601f1680156102415780820380516001836020036101000a031916815260200191505b5091505060006040518083038185876185025a03f192505050151561026557610000565b82600160a060020a03167fc1de93dfa06362c6a616cde73ec17d116c0d588dd1df70f27f91b500de207c41838360405180838152602001806020018281038252838181518152602001915080519060200190808383600083146102e3575b8051825260208311156102e357601f1990920191602091820191016102c3565b505050905090810190601f16801561030f5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a25b5b5b5050505600a165627a7a723058201d08dfdc10daed12ae0a5bfec3c85fac4143262d2bd01733fa3346596904f36a002960606040523461000057604051608080610a1383398101604090815281516020830151918301516060909301519092905b600160008190558054600160a060020a03808716600160a060020a03199283161790925560028054868416908316179055600a839055600b8490556005805433909316929091169190911790555b505050505b610981806100926000396000f300606060405236156101015763ffffffff60e060020a60003504166309b8f77a81146101065780631c1c22891461012f5780631de0e877146101585780631ec9f7b51461017757806334c7dcf8146101965780634893ed5b146101bf57806354fd4d50146101de5780637a5d5345146101fd5780637ab0b9981461021857806384191f62146102335780638ac0eef91461024257806397905a8814610251578063a08df7701461027a578063c998e9dd14610295578063cbd2c73b146102b0578063d1c484f6146102cb578063d233fc0b146102ea578063d7f31eb9146102f9578063ec5568891461035b578063f60edb0e14610384578063f66c6691146103ad575b610000565b34610000576101136103cc565b60408051600160a060020a039092168252519081900360200190f35b34610000576101136103db565b60408051600160a060020a039092168252519081900360200190f35b34610000576101656103ea565b60408051918252519081900360200190f35b34610000576101656103f0565b60408051918252519081900360200190f35b34610000576101136103f6565b60408051600160a060020a039092168252519081900360200190f35b3461000057610165610405565b60408051918252519081900360200190f35b346100005761016561040b565b60408051918252519081900360200190f35b3461000057610216600160a060020a0360043516610411565b005b3461000057610216600160a060020a03600435166104ac565b005b3461000057610216610547565b005b34610000576102166105e9565b005b346100005761011361068c565b60408051600160a060020a039092168252519081900360200190f35b3461000057610216600160a060020a036004351661069b565b005b3461000057610216600160a060020a03600435166106d3565b005b3461000057610216600160a060020a0360043516610717565b005b34610000576101656107b2565b60408051918252519081900360200190f35b34610000576102166107b8565b005b3461000057604080516020600460443581810135601f8101849004840285018401909552848452610216948235600160a060020a031694602480359560649492939190920191819084018382808284375094965061080195505050505050565b005b3461000057610113610911565b60408051600160a060020a039092168252519081900360200190f35b3461000057610113610920565b60408051600160a060020a039092168252519081900360200190f35b346100005761016561092f565b60408051918252519081900360200190f35b600654600160a060020a031681565b600254600160a060020a031681565b60095481565b600b5481565b600354600160a060020a031681565b60045481565b60005481565b60025433600160a060020a03908116911614156104a757600b54420160095560088054600160a060020a031916600160a060020a0383811691909117909155604080513390921660208301528082526014828201527f7369676e436f6e74726f6c6c65724368616e6765000000000000000000000000606083015251600080516020610936833981519152916080908290030190a15b5b5b50565b60025433600160a060020a03908116911614156104a757600b54420160075560068054600160a060020a031916600160a060020a0383811691909117909155604080513390921660208301528082526012828201527f7369676e5265636f766572794368616e67650000000000000000000000000000606083015251600080516020610936833981519152916080908290030190a15b5b5b50565b426009541080156105625750600854600160a060020a031615155b156105e657600154600854604080517f1a695230000000000000000000000000000000000000000000000000000000008152600160a060020a03928316600482015290519190921691631a69523091602480830192600092919082900301818387803b156100005760325a03f115610000575050600854600160a060020a03169050ff5b5b565b426004541080156106045750600354600160a060020a031615155b156105e6576003805460028054600160a060020a03808416600160a060020a03199283161790925590911690915560408051339092166020830152808252600d828201527f6368616e6765557365724b657900000000000000000000000000000000000000606083015251600080516020610936833981519152916080908290030190a15b5b565b600554600160a060020a031681565b60055433600160a060020a03908116911614156104a75760058054600160a060020a031916600160a060020a0383161790555b5b5b50565b60055433600160a060020a03908116911614156104a75760038054600160a060020a031990811690915560028054909116600160a060020a0383161790555b5b5b50565b60025433600160a060020a03908116911614156104a757600a54420160045560038054600160a060020a031916600160a060020a0383811691909117909155604080513390921660208301528082526011828201527f7369676e557365724b65794368616e6765000000000000000000000000000000606083015251600080516020610936833981519152916080908290030190a15b5b5b50565b60075481565b426007541080156107d35750600654600160a060020a031615155b156105e6576006805460058054600160a060020a0319908116600160a060020a038416179091551690555b5b565b60025433600160a060020a039081169116141561090a576001546040517fd7f31eb9000000000000000000000000000000000000000000000000000000008152600160a060020a038581166004830190815260248301869052606060448401908152855160648501528551929094169363d7f31eb99388938893889390929091608490910190602085019080838382156108b6575b8051825260208311156108b657601f199092019160209182019101610896565b505050905090810190601f1680156108e25780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b156100005760325a03f115610000575050505b5b5b505050565b600154600160a060020a031681565b600854600160a060020a031681565b600a54815600ea8e84a162c4602ea0c61acf85fa1242db8ce550e7a448d613e3c7dff2f06793a165627a7a7230582055dd5e79ac17387077c5f0283d2c23a9a796b29b0b8e40631c3d8ca89c91216900296060604052346100005760405161104438038061104483398101604052805160208201519091015b60008054600160a060020a031916600160a060020a0384161781555b8151811015610174576001805480600101828181548183558181151161008e5760008381526020902061008e9181019083015b8082111561008a5760008155600101610076565b5090565b5b505050916000526020600020900160005b848481518110156100005790602001906020020151909190916101000a815481600160a060020a030219169083600160a060020a0316021790555050606060405190810160405280651cae8c13e0008152602001600081526020016000600160a060020a0316815250600260008484815181101561000057602090810291909101810151600160a060020a0390811683528282019390935260409182016000208451815590840151600182015592015160029092018054600160a060020a031916929091169190911790555b600101610043565b5b5050505b610ebc806101886000396000f3006060604052361561007d5763ffffffff60e060020a60003504166323d44dee8114610082578063245d1314146100ad5780633f31281a146100c8578063587cde1e146100e357806364bc82c314610123578063943e170d1461014f578063a39fac121461016e578063e71e592b146101d6578063f77c479114610260575b610000565b346100005761009b600160a060020a0360043516610289565b60408051918252519081900360200190f35b34610000576100c6600160a060020a036004351661037d565b005b34610000576100c6600160a060020a036004351661047a565b005b34610000576100fc600160a060020a036004351661060d565b604080519384526020840192909252600160a060020a031682820152519081900360600190f35b3461000057610133600435610636565b60408051600160a060020a039092168252519081900360200190f35b346100005761009b610666565b60408051918252519081900360200190f35b346100005761017b610708565b60408051602080825283518183015283519192839290830191858101910280838382156101c3575b8051825260208311156101c357601f1990920191602091820191016101a3565b5050509050019250505060405180910390f35b34610000576100c6600480803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843750506040805187358901803560208181028481018201909552818452989a99890198929750908201955093508392508501908490808284375094965061077395505050505050565b005b34610000576101336108e8565b60408051600160a060020a039092168252519081900360200190f35b6000805b6001548110156103765761030660026000600184815481101561000057906000526020600020900160005b9054600160a060020a036101009290920a90048116825260208083019390935260409182016000208251606081018452815481526001820154948101949094526002015416908201526108f7565b8015610361575082600160a060020a031660026000600184815481101561000057906000526020600020900160005b9054600160a060020a036101009290920a90048116825260208201929092526040016000206002015416145b1561036d576001909101905b5b60010161028d565b5b50919050565b600160a060020a0333811660009081526002602081815260409283902083516060810185528154815260018201549281019290925290910154909216908201526103c690610922565b156104765733600160a060020a039081166000908152600260208190526040909120018054600160a060020a0319169183169190911790556104078161047a565b60408051600160a060020a0333166020820152818152600e818301527f7369676e557365724368616e6765000000000000000000000000000000000000606082015290517fea8e84a162c4602ea0c61acf85fa1242db8ce550e7a448d613e3c7dff2f067939181900360800190a15b5b50565b6000610484610666565b61048d83610289565b106106075760008054604080517fc998e9dd000000000000000000000000000000000000000000000000000000008152600160a060020a0386811660048301529151919092169263c998e9dd926024808201939182900301818387803b156100005760325a03f11561000057505050600090505b600154811015610607574260026000600184815481101561000057906000526020600020900160005b9054906101000a9004600160a060020a0316600160a060020a0316600160a060020a031681526020019081526020016000206001015411156105ab574260026000600184815481101561000057906000526020600020900160005b9054600160a060020a036101009290920a90041681526020810191909152604001600020555b60026000600183815481101561000057906000526020600020900160005b9054600160a060020a036101009290920a900416815260208101919091526040016000206002018054600160a060020a03191690555b600101610501565b5b5b5050565b6002602081905260009182526040909120805460018201549190920154600160a060020a031683565b600181815481101561000057906000526020600020900160005b915054906101000a9004600160a060020a031681565b600080805b6001548110156106f9576106e460026000600184815481101561000057906000526020600020900160005b9054600160a060020a036101009290920a900481168252602080830193909352604091820160002082516060810184528154815260018201549481019490945260020154169082015261092c565b156106f0576001909101905b5b60010161066b565b6002820460010192505b505090565b60408051602081810183526000825260018054845181840281018401909552808552929392909183018282801561076857602002820191906000526020600020905b8154600160a060020a0316815260019091019060200180831161074a575b505050505090505b90565b6000805460408051602090810184905281517f1c1c228900000000000000000000000000000000000000000000000000000000815291518493600160a060020a031692631c1c228992600480830193919282900301818787803b156100005760325a03f1156100005750505060405180519050600160a060020a031633600160a060020a031614156108e057600091505b83518210156108365761082a848381518110156100005790602001906020020151610960565b5b600190910190610804565b61083e610ac1565b5060005b825181101561087157610868838281518110156100005790602001906020020151610cdc565b5b600101610842565b60408051600160a060020a03331660208201528181526010818301527f7265706c61636544656c65676174657300000000000000000000000000000000606082015290517fea8e84a162c4602ea0c61acf85fa1242db8ce550e7a448d613e3c7dff2f067939181900360800190a15b5b5b50505050565b600054600160a060020a031681565b60006109028261092c565b801561091a57506040820151600160a060020a031615155b90505b919050565b805115155b919050565b600061093782610922565b8015610949575061094782610e84565b155b801561091a5750816020015142115b90505b919050565b42600060009054906101000a9004600160a060020a0316600160a060020a0316631ec9f7b56000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f1156100005750506040805151600160a060020a038516600090815260026020529190912054920190911115905061047657600160a060020a03811660009081526002602052604090206001015442901115610a3357600160a060020a0381166000908152600260205260409020429055610476565b42600060009054906101000a9004600160a060020a0316600160a060020a0316631ec9f7b56000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f1156100005750506040805151600160a060020a03851660009081526002602052919091209201909155505b5b5b50565b60005b60015481101561047657610b3d60026000600184815481101561000057906000526020600020900160005b9054600160a060020a036101009290920a9004811682526020808301939093526040918201600020825160608101845281548152600182015494810194909452600201541690820152610e84565b15610ccf57600060026000600184815481101561000057906000526020600020900160005b9054906101000a9004600160a060020a0316600160a060020a0316600160a060020a0316815260200190815260200160002060000181905550600060026000600184815481101561000057906000526020600020900160005b9054906101000a9004600160a060020a0316600160a060020a0316600160a060020a0316815260200190815260200160002060010181905550600060026000600184815481101561000057906000526020600020900160005b90546101009190910a9004600160a060020a0390811682526020820192909252604090810160009081206002018054600160a060020a031916949093169390931790915580517fc6f315210000000000000000000000000000000000000000000000000000000081526004810184905260016024820152905173__ArrayLib______________________________9263c6f315219260448082019391829003018186803b156100005760325a03f41561000057505050610cd3565b6001015b610ac4565b5b50565b600160a060020a038082166000908152600260208181526040928390208351606081018552815481526001820154928101929092529091015490921690820152610d2590610922565b158015610d355750600154600f90105b1561047657606060405190810160405280651cae8c13e0008152602001600060009054906101000a9004600160a060020a0316600160a060020a0316631ec9f7b56000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f11561000057505060408051514201835260006020938401819052600160a060020a0386811682526002808652918390208651815594860151600180870191909155959092015193018054600160a060020a03191693909116929092179091555080548082018083558281838015829011610e4e57600083815260209020610e4e9181019083015b80821115610e4a5760008155600101610e36565b5090565b5b505050916000526020600020900160005b8154600160a060020a038086166101009390930a92830292021916179055505b5b50565b8051429011155b9190505600a165627a7a72305820c903da7784132f5c31dd104017432f2db6df8711988e0e3f62b882a52bc8ac8e0029a165627a7a723058202260a2b94f5ea2875e53bf61e0f5dfafb9780272a2e4e8e506112fbfb090533c0029", + "unlinked_binary": "0x6060604052341561000c57fe5b5b6121328061001c6000396000f300606060405263ffffffff60e060020a60003504166394d9cf8f811461002c578063e90bcb321461008f575bfe5b341561003457fe5b60408051602480356004818101356020818102868101820190975281865261008d96600160a060020a0384351696939560449501929182919085019084908082843750949650508435946020013593506100c792505050565b005b341561009757fe5b6100ab600160a060020a036004351661030f565b60408051600160a060020a039092168252519081900360200190f35b6000600060006100d561032a565b60405190819003906000f08015156100e957fe5b9250828786866100f761033a565b600160a060020a0394851681529290931660208301526040808301919091526060820192909252905190819003608001906000f080151561013457fe5b915082600160a060020a0316631a695230836040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b151561018d57fe5b6102c65a03f1151561019b57fe5b50505081866101a861034a565b600160a060020a03831681526040602080830182815284519284019290925283516060840191858101910280838382156101fd575b8051825260208311156101fd57601f1990920191602091820191016101dd565b5050509050019350505050604051809103906000f080151561021b57fe5b905081600160a060020a031663a08df770826040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b151561027457fe5b6102c65a03f1151561028257fe5b505060408051600160a060020a0386811682528581166020830152848116828401529151918a1692507fc36800ebd6079fdafc3a7100d0d1172815751804a6d1b7eb365b85f6c9c80e61919081900360600190a233600160a060020a0390811660009081526020819052604090208054600160a060020a0319169185169190911790555b50505050505050565b600060208190529081526040902054600160a060020a031681565b6040516103aa8061035b83390190565b604051610a108061070583390190565b604051610ff28061111583390190560060606040525b60008054600160a060020a03191633600160a060020a03161790555b5b610379806100316000396000f300606060405236156100465763ffffffff60e060020a6000350416631a695230811461008e5780632f54bf6e146100ac5780638da5cb5b146100dc578063d7f31eb914610108575b61008c5b604080513481529051600160a060020a033316917f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874919081900360200190a25b565b005b341561009657fe5b61008c600160a060020a036004351661016d565b005b34156100b457fe5b6100c8600160a060020a03600435166101be565b604080519115158252519081900360200190f35b34156100e457fe5b6100ec6101d5565b60408051600160a060020a039092168252519081900360200190f35b341561011057fe5b604080516020600460443581810135601f810184900484028501840190955284845261008c948235600160a060020a03169460248035956064949293919092019181908401838280828437509496506101e495505050505050565b005b610176336101be565b15156101825760006000fd5b30600160a060020a031681600160a060020a03161415156101b95760008054600160a060020a031916600160a060020a0383161790555b5b5b50565b600054600160a060020a038281169116145b919050565b600054600160a060020a031681565b6101ed336101be565b15156101f95760006000fd5b82600160a060020a031682826040518082805190602001908083836000831461023d575b80518252602083111561023d57601f19909201916020918201910161021d565b505050905090810190601f1680156102695780820380516001836020036101000a031916815260200191505b5091505060006040518083038185876187965a03f192505050151561028e5760006000fd5b82600160a060020a03167fc1de93dfa06362c6a616cde73ec17d116c0d588dd1df70f27f91b500de207c418383604051808381526020018060200182810382528381815181526020019150805190602001908083836000831461030c575b80518252602083111561030c57601f1990920191602091820191016102ec565b505050905090810190601f1680156103385780820380516001836020036101000a031916815260200191505b50935050505060405180910390a25b5b5050505600a165627a7a7230582011e578b01d4fe52397b0794d6b9dee762670ecd8207070f40e7959ce4f99f1f000296060604052341561000c57fe5b604051608080610a1083398101604090815281516020830151918301516060909301519092905b600160008190558054600160a060020a03808716600160a060020a03199283161790925560028054868416908316179055600a839055600b8490556005805433909316929091169190911790555b505050505b61097b806100956000396000f300606060405236156101015763ffffffff60e060020a60003504166309b8f77a81146101035780631c1c22891461012f5780631de0e8771461015b5780631ec9f7b51461017d57806334c7dcf81461019f5780634893ed5b146101cb57806354fd4d50146101ed5780637a5d53451461020f5780637ab0b9981461022d57806384191f621461024b5780638ac0eef91461025d57806397905a881461026f578063a08df7701461029b578063c998e9dd146102b9578063cbd2c73b146102d7578063d1c484f6146102f5578063d233fc0b14610317578063d7f31eb914610329578063ec5568891461038e578063f60edb0e146103ba578063f66c6691146103e6575bfe5b341561010b57fe5b610113610408565b60408051600160a060020a039092168252519081900360200190f35b341561013757fe5b610113610417565b60408051600160a060020a039092168252519081900360200190f35b341561016357fe5b61016b610426565b60408051918252519081900360200190f35b341561018557fe5b61016b61042c565b60408051918252519081900360200190f35b34156101a757fe5b610113610432565b60408051600160a060020a039092168252519081900360200190f35b34156101d357fe5b61016b610441565b60408051918252519081900360200190f35b34156101f557fe5b61016b610447565b60408051918252519081900360200190f35b341561021757fe5b61022b600160a060020a036004351661044d565b005b341561023557fe5b61022b600160a060020a03600435166104e2565b005b341561025357fe5b61022b610575565b005b341561026557fe5b61022b610608565b005b341561027757fe5b61011361069e565b60408051600160a060020a039092168252519081900360200190f35b34156102a357fe5b61022b600160a060020a03600435166106ad565b005b34156102c157fe5b61022b600160a060020a03600435166106e5565b005b34156102df57fe5b61022b600160a060020a0360043516610729565b005b34156102fd57fe5b61016b6107bb565b60408051918252519081900360200190f35b341561031f57fe5b61022b6107c1565b005b341561033157fe5b604080516020600460443581810135601f810184900484028501840190955284845261022b948235600160a060020a031694602480359560649492939190920191819084018382808284375094965061080a95505050505050565b005b341561039657fe5b61011361090b565b60408051600160a060020a039092168252519081900360200190f35b34156103c257fe5b61011361091a565b60408051600160a060020a039092168252519081900360200190f35b34156103ee57fe5b61016b610929565b60408051918252519081900360200190f35b600654600160a060020a031681565b600254600160a060020a031681565b60095481565b600b5481565b600354600160a060020a031681565b60045481565b60005481565b60025433600160a060020a03908116911614156104dd57600b54420160095560088054600160a060020a031916600160a060020a038381169190911790915560408051339092166020830152808252601482820152606060020a737369676e436f6e74726f6c6c65724368616e676502606083015251600080516020610930833981519152916080908290030190a15b5b5b50565b60025433600160a060020a03908116911614156104dd57600b54420160075560068054600160a060020a031916600160a060020a038381169190911790915560408051339092166020830152808252601282820152607060020a717369676e5265636f766572794368616e676502606083015251600080516020610930833981519152916080908290030190a15b5b5b50565b426009541080156105905750600854600160a060020a031615155b15610605576001546008546040805160e460020a6301a69523028152600160a060020a03928316600482015290519190921691631a69523091602480830192600092919082900301818387803b15156105e557fe5b6102c65a03f115156105f357fe5b5050600854600160a060020a03169050ff5b5b565b426004541080156106235750600354600160a060020a031615155b15610605576003805460028054600160a060020a03808416600160a060020a03199283161790925590911690915560408051339092166020830152808252600d82820152609860020a6c6368616e6765557365724b657902606083015251600080516020610930833981519152916080908290030190a15b5b565b600554600160a060020a031681565b60055433600160a060020a03908116911614156104dd5760058054600160a060020a031916600160a060020a0383161790555b5b5b50565b60055433600160a060020a03908116911614156104dd5760038054600160a060020a031990811690915560028054909116600160a060020a0383161790555b5b5b50565b60025433600160a060020a03908116911614156104dd57600a54420160045560038054600160a060020a031916600160a060020a038381169190911790915560408051339092166020830152808252601182820152607860020a707369676e557365724b65794368616e676502606083015251600080516020610930833981519152916080908290030190a15b5b5b50565b60075481565b426007541080156107dc5750600654600160a060020a031615155b15610605576006805460058054600160a060020a0319908116600160a060020a038416179091551690555b5b565b60025433600160a060020a03908116911614156109045760015460405160e060020a63d7f31eb9028152600160a060020a038581166004830190815260248301869052606060448401908152855160648501528551929094169363d7f31eb99388938893889390929091608490910190602085019080838382156108a9575b8051825260208311156108a957601f199092019160209182019101610889565b505050905090810190601f1680156108d55780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15156108f257fe5b6102c65a03f1151561090057fe5b5050505b5b5b505050565b600154600160a060020a031681565b600854600160a060020a031681565b600a54815600ea8e84a162c4602ea0c61acf85fa1242db8ce550e7a448d613e3c7dff2f06793a165627a7a7230582036f25230ff8e04974ed47406729a7f86b522c2cf97aacf6ac89429407114745600296060604052341561000c57fe5b604051610ff2380380610ff283398101604052805160208201519091015b60008054600160a060020a031916600160a060020a0384161781555b815181101561015557600f811061005c57610155565b6001805480820161006d838261015e565b916000526020600020900160005b848481518110151561008957fe5b90602001906020020151909190916101000a815481600160a060020a030219169083600160a060020a0316021790555050606060405190810160405280651cae8c13e0008152602001600081526020016000600160a060020a03168152506002600084848151811015156100f957fe5b602090810291909101810151600160a060020a0390811683528282019390935260409182016000208451815590840151600182015592015160029092018054600160a060020a031916929091169190911790555b600101610046565b5b5050506101a9565b81548183558181151161018257600083815260209020610182918101908301610188565b5b505050565b6101a691905b808211156101a2576000815560010161018e565b5090565b90565b610e3a806101b86000396000f3006060604052361561007d5763ffffffff60e060020a60003504166323d44dee811461007f578063245d1314146100ad5780633f31281a146100cb578063587cde1e146100e957806364bc82c31461012c578063943e170d1461015b578063a39fac121461017d578063e71e592b146101e8578063f77c479114610275575bfe5b341561008757fe5b61009b600160a060020a03600435166102a1565b60408051918252519081900360200190f35b34156100b557fe5b6100c9600160a060020a036004351661039b565b005b34156100d357fe5b6100c9600160a060020a036004351661047a565b005b34156100f157fe5b610105600160a060020a0360043516610607565b604080519384526020840192909252600160a060020a031682820152519081900360600190f35b341561013457fe5b61013f600435610630565b60408051600160a060020a039092168252519081900360200190f35b341561016357fe5b61009b610662565b60408051918252519081900360200190f35b341561018557fe5b61018d610708565b60408051602080825283518183015283519192839290830191858101910280838382156101d5575b8051825260208311156101d557601f1990920191602091820191016101b5565b5050509050019250505060405180910390f35b34156101f057fe5b6100c9600480803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843750506040805187358901803560208181028481018201909552818452989a99890198929750908201955093508392508501908490808284375094965061077195505050505050565b005b341561027d57fe5b61013f6108c1565b60408051600160a060020a039092168252519081900360200190f35b6000805b60015481101561039457610321600260006001848154811015156102c557fe5b906000526020600020900160005b9054600160a060020a036101009290920a90048116825260208083019390935260409182016000208251606081018452815481526001820154948101949094526002015416908201526108d0565b801561037f575082600160a060020a03166002600060018481548110151561034557fe5b906000526020600020900160005b9054600160a060020a036101009290920a90048116825260208201929092526040016000206002015416145b1561038b576001909101905b5b6001016102a5565b5b50919050565b600160a060020a0333811660009081526002602081815260409283902083516060810185528154815260018201549281019290925290910154909216908201526103e4906108fb565b156104765733600160a060020a039081166000908152600260208190526040909120018054600160a060020a0319169183169190911790556104258161047a565b60408051600160a060020a0333166020820152818152600e81830152609060020a6d7369676e557365724368616e67650260608201529051600080516020610def8339815191529181900360800190a15b5b50565b6000610484610662565b61048d836102a1565b1061060157600080546040805160e060020a63c998e9dd028152600160a060020a0386811660048301529151919092169263c998e9dd926024808201939182900301818387803b15156104dc57fe5b6102c65a03f115156104ea57fe5b505050600090505b60015481101561060157426002600060018481548110151561051057fe5b906000526020600020900160005b9054906101000a9004600160a060020a0316600160a060020a0316600160a060020a031681526020019081526020016000206001015411156105a257426002600060018481548110151561056e57fe5b906000526020600020900160005b9054600160a060020a036101009290920a90041681526020810191909152604001600020555b600260006001838154811015156105b557fe5b906000526020600020900160005b9054600160a060020a036101009290920a900416815260208101919091526040016000206002018054600160a060020a03191690555b6001016104f2565b5b5b5050565b6002602081905260009182526040909120805460018201549190920154600160a060020a031683565b600180548290811061063e57fe5b906000526020600020900160005b915054906101000a9004600160a060020a031681565b600080805b6001548110156106f8576106e36002600060018481548110151561068757fe5b906000526020600020900160005b9054600160a060020a036101009290920a9004811682526020808301939093526040918201600020825160608101845281548152600182015494810194909452600201541690820152610905565b156106ef576001909101905b5b600101610667565b6002825b0460010192505b505090565b610710610d91565b600180548060200260200160405190810160405280929190818152602001828054801561076657602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311610748575b505050505090505b90565b60008054604080516020908101849052815160e060020a631c1c228902815291518493600160a060020a031692631c1c228992600480830193919282900301818787803b15156107bd57fe5b6102c65a03f115156107cb57fe5b50505060405180519050600160a060020a031633600160a060020a031614156108b957600091505b83518210156108285761081c848381518110151561080d57fe5b90602001906020020151610939565b5b6001909101906107f3565b610830610aa8565b5060005b82518110156108665761085d838281518110151561084e57fe5b90602001906020020151610c0a565b5b600101610834565b60408051600160a060020a0333166020820152818152601081830152608060020a6f7265706c61636544656c6567617465730260608201529051600080516020610def8339815191529181900360800190a15b5b5b50505050565b600054600160a060020a031681565b60006108db82610905565b80156108f357506040820151600160a060020a031615155b90505b919050565b805115155b919050565b6000610910826108fb565b8015610922575061092082610d85565b155b80156108f35750816020015142115b90505b919050565b42600060009054906101000a9004600160a060020a0316600160a060020a0316631ec9f7b56000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b151561099557fe5b6102c65a03f115156109a357fe5b50506040805151600160a060020a038516600090815260026020529190912054920190911115905061047657600160a060020a03811660009081526002602052604090206001015442901115610a1357600160a060020a0381166000908152600260205260409020429055610476565b42600060009054906101000a9004600160a060020a0316600160a060020a0316631ec9f7b56000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b1515610a6f57fe5b6102c65a03f11515610a7d57fe5b50506040805151600160a060020a03851660009081526002602052919091209201909155505b5b5b50565b60005b60015481101561047657610b2760026000600184815481101515610acb57fe5b906000526020600020900160005b9054600160a060020a036101009290920a9004811682526020808301939093526040918201600020825160608101845281548152600182015494810194909452600201541690820152610d85565b15610bfd5760026000600183815481101515610b3f57fe5b906000526020600020900160005b9054600160a060020a036101009290920a9004168152602081019190915260409081016000908120818155600180820183905560029091018054600160a060020a0319169055825160e060020a63c6f31521028152600481018590526024810191909152915173__ArrayLib______________________________9263c6f31521926044808301939192829003018186803b1515610be757fe5b6102c65a03f41515610bf557fe5b505050610c01565b6001015b610aab565b5b50565b600160a060020a038082166000908152600260208181526040928390208351606081018552815481526001820154928101929092529091015490921690820152610c53906108fb565b158015610c635750600154600f90105b1561047657606060405190810160405280651cae8c13e0008152602001600060009054906101000a9004600160a060020a0316600160a060020a0316631ec9f7b56000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b1515610cdb57fe5b6102c65a03f11515610ce957fe5b505060408051514201835260006020938401819052600160a060020a0386811682526002808652918390208651815594860151600180870191909155959092015193018054600160a060020a0319169390911692909217909155508054808201610d538382610da3565b916000526020600020900160005b8154600160a060020a038086166101009390930a92830292021916179055505b5b50565b8051429011155b919050565b60408051602081019091526000815290565b815481835581811511610dc757600083815260209020610dc7918101908301610dcd565b5b505050565b61076e91905b80821115610de75760008155600101610dd3565b5090565b905600ea8e84a162c4602ea0c61acf85fa1242db8ce550e7a448d613e3c7dff2f06793a165627a7a723058206ab392f107a7aa73b72b027ba2cd2ae63d7d926745e054e647fd0e718bc2301c0029a165627a7a72305820d6cc4d7f94797afcd7db43c683b191a89a00dce3ffaee46c100c189c3155c3100029", "networks": { "1": { "events": { @@ -256,5 +256,5 @@ } }, "schema_version": "0.0.5", - "updated_at": 1494766483134 + "updated_at": 1499785642008 } \ No newline at end of file diff --git a/build/contracts/IdentityFactoryWithRecoveryKey.json b/build/contracts/IdentityFactoryWithRecoveryKey.json index 06c58b0..31f0541 100644 --- a/build/contracts/IdentityFactoryWithRecoveryKey.json +++ b/build/contracts/IdentityFactoryWithRecoveryKey.json @@ -90,7 +90,7 @@ "type": "event" } ], - "unlinked_binary": "0x606060405234610000575b61109d806100196000396000f300606060405263ffffffff60e060020a6000350416634a3a87e2811461003a5780636738bd4e14610061578063e90bcb3214610096575b610000565b346100005761005f600160a060020a03600435811690602435166044356064356100cb565b005b346100005761007a600160a060020a03600435166102a6565b60408051600160a060020a039092168252519081900360200190f35b346100005761007a600160a060020a03600435166102c1565b60408051600160a060020a039092168252519081900360200190f35b60006000604051610382806102dd83396040519101819003906000f0801561000057915081868585604051610a138061065f8339600160a060020a0395861691019081529290931660208301526040808301919091526060820192909252905190819003608001906000f0801561000057905081600160a060020a0316631a695230826040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b156100005760325a03f1156100005750505080600160a060020a031663a08df770866040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b156100005760325a03f11561000057505060408051600160a060020a03858116825284811660208301528251818a169450908a16927fc36800ebd6079fdafc3a7100d0d1172815751804a6d1b7eb365b85f6c9c80e61928290030190a3600160a060020a03338116600090815260208181526040808320805485881673ffffffffffffffffffffffffffffffffffffffff199182168117909255948a168452600190925290912080549092161790555b505050505050565b600160205260009081526040902054600160a060020a031681565b600060208190529081526040902054600160a060020a031681560060606040525b60008054600160a060020a03191633600160a060020a03161790555b5b610351806100316000396000f300606060405236156100465763ffffffff60e060020a6000350416631a695230811461008e5780632f54bf6e146100a95780638da5cb5b146100d6578063d7f31eb9146100ff575b61008c5b604080513481529051600160a060020a033316917f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874919081900360200190a25b565b005b346100005761008c600160a060020a0360043516610161565b005b34610000576100c2600160a060020a036004351661019d565b604080519115158252519081900360200190f35b34610000576100e36101b4565b60408051600160a060020a039092168252519081900360200190f35b3461000057604080516020600460443581810135601f810184900484028501840190955284845261008c948235600160a060020a03169460248035956064949293919092019181908401838280828437509496506101c395505050505050565b005b61016a3361019d565b15610198576000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b5b50565b600054600160a060020a038281169116145b919050565b600054600160a060020a031681565b6101cc3361019d565b1561031e5782600160a060020a0316828260405180828051906020019080838360008314610215575b80518252602083111561021557601f1990920191602091820191016101f5565b505050905090810190601f1680156102415780820380516001836020036101000a031916815260200191505b5091505060006040518083038185876185025a03f192505050151561026557610000565b82600160a060020a03167fc1de93dfa06362c6a616cde73ec17d116c0d588dd1df70f27f91b500de207c41838360405180838152602001806020018281038252838181518152602001915080519060200190808383600083146102e3575b8051825260208311156102e357601f1990920191602091820191016102c3565b505050905090810190601f16801561030f5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a25b5b5b5050505600a165627a7a723058201d08dfdc10daed12ae0a5bfec3c85fac4143262d2bd01733fa3346596904f36a002960606040523461000057604051608080610a1383398101604090815281516020830151918301516060909301519092905b600160008190558054600160a060020a03808716600160a060020a03199283161790925560028054868416908316179055600a839055600b8490556005805433909316929091169190911790555b505050505b610981806100926000396000f300606060405236156101015763ffffffff60e060020a60003504166309b8f77a81146101065780631c1c22891461012f5780631de0e877146101585780631ec9f7b51461017757806334c7dcf8146101965780634893ed5b146101bf57806354fd4d50146101de5780637a5d5345146101fd5780637ab0b9981461021857806384191f62146102335780638ac0eef91461024257806397905a8814610251578063a08df7701461027a578063c998e9dd14610295578063cbd2c73b146102b0578063d1c484f6146102cb578063d233fc0b146102ea578063d7f31eb9146102f9578063ec5568891461035b578063f60edb0e14610384578063f66c6691146103ad575b610000565b34610000576101136103cc565b60408051600160a060020a039092168252519081900360200190f35b34610000576101136103db565b60408051600160a060020a039092168252519081900360200190f35b34610000576101656103ea565b60408051918252519081900360200190f35b34610000576101656103f0565b60408051918252519081900360200190f35b34610000576101136103f6565b60408051600160a060020a039092168252519081900360200190f35b3461000057610165610405565b60408051918252519081900360200190f35b346100005761016561040b565b60408051918252519081900360200190f35b3461000057610216600160a060020a0360043516610411565b005b3461000057610216600160a060020a03600435166104ac565b005b3461000057610216610547565b005b34610000576102166105e9565b005b346100005761011361068c565b60408051600160a060020a039092168252519081900360200190f35b3461000057610216600160a060020a036004351661069b565b005b3461000057610216600160a060020a03600435166106d3565b005b3461000057610216600160a060020a0360043516610717565b005b34610000576101656107b2565b60408051918252519081900360200190f35b34610000576102166107b8565b005b3461000057604080516020600460443581810135601f8101849004840285018401909552848452610216948235600160a060020a031694602480359560649492939190920191819084018382808284375094965061080195505050505050565b005b3461000057610113610911565b60408051600160a060020a039092168252519081900360200190f35b3461000057610113610920565b60408051600160a060020a039092168252519081900360200190f35b346100005761016561092f565b60408051918252519081900360200190f35b600654600160a060020a031681565b600254600160a060020a031681565b60095481565b600b5481565b600354600160a060020a031681565b60045481565b60005481565b60025433600160a060020a03908116911614156104a757600b54420160095560088054600160a060020a031916600160a060020a0383811691909117909155604080513390921660208301528082526014828201527f7369676e436f6e74726f6c6c65724368616e6765000000000000000000000000606083015251600080516020610936833981519152916080908290030190a15b5b5b50565b60025433600160a060020a03908116911614156104a757600b54420160075560068054600160a060020a031916600160a060020a0383811691909117909155604080513390921660208301528082526012828201527f7369676e5265636f766572794368616e67650000000000000000000000000000606083015251600080516020610936833981519152916080908290030190a15b5b5b50565b426009541080156105625750600854600160a060020a031615155b156105e657600154600854604080517f1a695230000000000000000000000000000000000000000000000000000000008152600160a060020a03928316600482015290519190921691631a69523091602480830192600092919082900301818387803b156100005760325a03f115610000575050600854600160a060020a03169050ff5b5b565b426004541080156106045750600354600160a060020a031615155b156105e6576003805460028054600160a060020a03808416600160a060020a03199283161790925590911690915560408051339092166020830152808252600d828201527f6368616e6765557365724b657900000000000000000000000000000000000000606083015251600080516020610936833981519152916080908290030190a15b5b565b600554600160a060020a031681565b60055433600160a060020a03908116911614156104a75760058054600160a060020a031916600160a060020a0383161790555b5b5b50565b60055433600160a060020a03908116911614156104a75760038054600160a060020a031990811690915560028054909116600160a060020a0383161790555b5b5b50565b60025433600160a060020a03908116911614156104a757600a54420160045560038054600160a060020a031916600160a060020a0383811691909117909155604080513390921660208301528082526011828201527f7369676e557365724b65794368616e6765000000000000000000000000000000606083015251600080516020610936833981519152916080908290030190a15b5b5b50565b60075481565b426007541080156107d35750600654600160a060020a031615155b156105e6576006805460058054600160a060020a0319908116600160a060020a038416179091551690555b5b565b60025433600160a060020a039081169116141561090a576001546040517fd7f31eb9000000000000000000000000000000000000000000000000000000008152600160a060020a038581166004830190815260248301869052606060448401908152855160648501528551929094169363d7f31eb99388938893889390929091608490910190602085019080838382156108b6575b8051825260208311156108b657601f199092019160209182019101610896565b505050905090810190601f1680156108e25780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b156100005760325a03f115610000575050505b5b5b505050565b600154600160a060020a031681565b600854600160a060020a031681565b600a54815600ea8e84a162c4602ea0c61acf85fa1242db8ce550e7a448d613e3c7dff2f06793a165627a7a7230582055dd5e79ac17387077c5f0283d2c23a9a796b29b0b8e40631c3d8ca89c9121690029a165627a7a723058206487a3117e249333dc025a547e0b1c1c1c8b3c07c0e2a0448543a187148f94db0029", + "unlinked_binary": "0x6060604052341561000c57fe5b5b6110e38061001c6000396000f300606060405263ffffffff60e060020a6000350416634a3a87e281146100375780636738bd4e14610061578063e90bcb3214610099575bfe5b341561003f57fe5b61005f600160a060020a03600435811690602435166044356064356100d1565b005b341561006957fe5b61007d600160a060020a03600435166102a7565b60408051600160a060020a039092168252519081900360200190f35b34156100a157fe5b61007d600160a060020a03600435166102c2565b60408051600160a060020a039092168252519081900360200190f35b600060006100dd6102dd565b60405190819003906000f08015156100f157fe5b9150818685856100ff6102ed565b600160a060020a0394851681529290931660208301526040808301919091526060820192909252905190819003608001906000f080151561013c57fe5b905081600160a060020a0316631a695230826040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b151561019557fe5b6102c65a03f115156101a357fe5b50505080600160a060020a031663a08df770866040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b15156101fd57fe5b6102c65a03f1151561020b57fe5b505060408051600160a060020a03858116825284811660208301528251818a169450908a16927fc36800ebd6079fdafc3a7100d0d1172815751804a6d1b7eb365b85f6c9c80e61928290030190a3600160a060020a033381166000908152602081815260408083208054858816600160a060020a03199182168117909255948a168452600190925290912080549092161790555b505050505050565b600160205260009081526040902054600160a060020a031681565b600060208190529081526040902054600160a060020a031681565b6040516103aa806102fe83390190565b604051610a10806106a883390190560060606040525b60008054600160a060020a03191633600160a060020a03161790555b5b610379806100316000396000f300606060405236156100465763ffffffff60e060020a6000350416631a695230811461008e5780632f54bf6e146100ac5780638da5cb5b146100dc578063d7f31eb914610108575b61008c5b604080513481529051600160a060020a033316917f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874919081900360200190a25b565b005b341561009657fe5b61008c600160a060020a036004351661016d565b005b34156100b457fe5b6100c8600160a060020a03600435166101be565b604080519115158252519081900360200190f35b34156100e457fe5b6100ec6101d5565b60408051600160a060020a039092168252519081900360200190f35b341561011057fe5b604080516020600460443581810135601f810184900484028501840190955284845261008c948235600160a060020a03169460248035956064949293919092019181908401838280828437509496506101e495505050505050565b005b610176336101be565b15156101825760006000fd5b30600160a060020a031681600160a060020a03161415156101b95760008054600160a060020a031916600160a060020a0383161790555b5b5b50565b600054600160a060020a038281169116145b919050565b600054600160a060020a031681565b6101ed336101be565b15156101f95760006000fd5b82600160a060020a031682826040518082805190602001908083836000831461023d575b80518252602083111561023d57601f19909201916020918201910161021d565b505050905090810190601f1680156102695780820380516001836020036101000a031916815260200191505b5091505060006040518083038185876187965a03f192505050151561028e5760006000fd5b82600160a060020a03167fc1de93dfa06362c6a616cde73ec17d116c0d588dd1df70f27f91b500de207c418383604051808381526020018060200182810382528381815181526020019150805190602001908083836000831461030c575b80518252602083111561030c57601f1990920191602091820191016102ec565b505050905090810190601f1680156103385780820380516001836020036101000a031916815260200191505b50935050505060405180910390a25b5b5050505600a165627a7a7230582011e578b01d4fe52397b0794d6b9dee762670ecd8207070f40e7959ce4f99f1f000296060604052341561000c57fe5b604051608080610a1083398101604090815281516020830151918301516060909301519092905b600160008190558054600160a060020a03808716600160a060020a03199283161790925560028054868416908316179055600a839055600b8490556005805433909316929091169190911790555b505050505b61097b806100956000396000f300606060405236156101015763ffffffff60e060020a60003504166309b8f77a81146101035780631c1c22891461012f5780631de0e8771461015b5780631ec9f7b51461017d57806334c7dcf81461019f5780634893ed5b146101cb57806354fd4d50146101ed5780637a5d53451461020f5780637ab0b9981461022d57806384191f621461024b5780638ac0eef91461025d57806397905a881461026f578063a08df7701461029b578063c998e9dd146102b9578063cbd2c73b146102d7578063d1c484f6146102f5578063d233fc0b14610317578063d7f31eb914610329578063ec5568891461038e578063f60edb0e146103ba578063f66c6691146103e6575bfe5b341561010b57fe5b610113610408565b60408051600160a060020a039092168252519081900360200190f35b341561013757fe5b610113610417565b60408051600160a060020a039092168252519081900360200190f35b341561016357fe5b61016b610426565b60408051918252519081900360200190f35b341561018557fe5b61016b61042c565b60408051918252519081900360200190f35b34156101a757fe5b610113610432565b60408051600160a060020a039092168252519081900360200190f35b34156101d357fe5b61016b610441565b60408051918252519081900360200190f35b34156101f557fe5b61016b610447565b60408051918252519081900360200190f35b341561021757fe5b61022b600160a060020a036004351661044d565b005b341561023557fe5b61022b600160a060020a03600435166104e2565b005b341561025357fe5b61022b610575565b005b341561026557fe5b61022b610608565b005b341561027757fe5b61011361069e565b60408051600160a060020a039092168252519081900360200190f35b34156102a357fe5b61022b600160a060020a03600435166106ad565b005b34156102c157fe5b61022b600160a060020a03600435166106e5565b005b34156102df57fe5b61022b600160a060020a0360043516610729565b005b34156102fd57fe5b61016b6107bb565b60408051918252519081900360200190f35b341561031f57fe5b61022b6107c1565b005b341561033157fe5b604080516020600460443581810135601f810184900484028501840190955284845261022b948235600160a060020a031694602480359560649492939190920191819084018382808284375094965061080a95505050505050565b005b341561039657fe5b61011361090b565b60408051600160a060020a039092168252519081900360200190f35b34156103c257fe5b61011361091a565b60408051600160a060020a039092168252519081900360200190f35b34156103ee57fe5b61016b610929565b60408051918252519081900360200190f35b600654600160a060020a031681565b600254600160a060020a031681565b60095481565b600b5481565b600354600160a060020a031681565b60045481565b60005481565b60025433600160a060020a03908116911614156104dd57600b54420160095560088054600160a060020a031916600160a060020a038381169190911790915560408051339092166020830152808252601482820152606060020a737369676e436f6e74726f6c6c65724368616e676502606083015251600080516020610930833981519152916080908290030190a15b5b5b50565b60025433600160a060020a03908116911614156104dd57600b54420160075560068054600160a060020a031916600160a060020a038381169190911790915560408051339092166020830152808252601282820152607060020a717369676e5265636f766572794368616e676502606083015251600080516020610930833981519152916080908290030190a15b5b5b50565b426009541080156105905750600854600160a060020a031615155b15610605576001546008546040805160e460020a6301a69523028152600160a060020a03928316600482015290519190921691631a69523091602480830192600092919082900301818387803b15156105e557fe5b6102c65a03f115156105f357fe5b5050600854600160a060020a03169050ff5b5b565b426004541080156106235750600354600160a060020a031615155b15610605576003805460028054600160a060020a03808416600160a060020a03199283161790925590911690915560408051339092166020830152808252600d82820152609860020a6c6368616e6765557365724b657902606083015251600080516020610930833981519152916080908290030190a15b5b565b600554600160a060020a031681565b60055433600160a060020a03908116911614156104dd5760058054600160a060020a031916600160a060020a0383161790555b5b5b50565b60055433600160a060020a03908116911614156104dd5760038054600160a060020a031990811690915560028054909116600160a060020a0383161790555b5b5b50565b60025433600160a060020a03908116911614156104dd57600a54420160045560038054600160a060020a031916600160a060020a038381169190911790915560408051339092166020830152808252601182820152607860020a707369676e557365724b65794368616e676502606083015251600080516020610930833981519152916080908290030190a15b5b5b50565b60075481565b426007541080156107dc5750600654600160a060020a031615155b15610605576006805460058054600160a060020a0319908116600160a060020a038416179091551690555b5b565b60025433600160a060020a03908116911614156109045760015460405160e060020a63d7f31eb9028152600160a060020a038581166004830190815260248301869052606060448401908152855160648501528551929094169363d7f31eb99388938893889390929091608490910190602085019080838382156108a9575b8051825260208311156108a957601f199092019160209182019101610889565b505050905090810190601f1680156108d55780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15156108f257fe5b6102c65a03f1151561090057fe5b5050505b5b5b505050565b600154600160a060020a031681565b600854600160a060020a031681565b600a54815600ea8e84a162c4602ea0c61acf85fa1242db8ce550e7a448d613e3c7dff2f06793a165627a7a7230582036f25230ff8e04974ed47406729a7f86b522c2cf97aacf6ac8942940711474560029a165627a7a72305820a7fb1a61bd7fac3920b54dba1fa96a731199737fe45842fcc1d5277339d9698f0029", "networks": { "3": { "events": { @@ -196,5 +196,5 @@ } }, "schema_version": "0.0.5", - "updated_at": 1494766483141 + "updated_at": 1499785642009 } \ No newline at end of file diff --git a/build/contracts/IdentityManager.json b/build/contracts/IdentityManager.json new file mode 100644 index 0000000..39b06ef --- /dev/null +++ b/build/contracts/IdentityManager.json @@ -0,0 +1,392 @@ +{ + "contract_name": "IdentityManager", + "abi": [ + { + "constant": false, + "inputs": [ + { + "name": "sender", + "type": "address" + }, + { + "name": "identity", + "type": "address" + }, + { + "name": "owner", + "type": "address" + } + ], + "name": "removeOwner", + "outputs": [], + "payable": false, + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "sender", + "type": "address" + }, + { + "name": "identity", + "type": "address" + }, + { + "name": "newIdManager", + "type": "address" + } + ], + "name": "initiateMigration", + "outputs": [], + "payable": false, + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "sender", + "type": "address" + }, + { + "name": "identity", + "type": "address" + }, + { + "name": "recoveryKey", + "type": "address" + } + ], + "name": "changeRecovery", + "outputs": [], + "payable": false, + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "sender", + "type": "address" + }, + { + "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": "sender", + "type": "address" + }, + { + "name": "identity", + "type": "address" + }, + { + "name": "newOwner", + "type": "address" + } + ], + "name": "addOwnerFromRecovery", + "outputs": [], + "payable": false, + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "owner", + "type": "address" + }, + { + "name": "recoveryKey", + "type": "address" + } + ], + "name": "registerIdentity", + "outputs": [], + "payable": false, + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "sender", + "type": "address" + }, + { + "name": "identity", + "type": "address" + } + ], + "name": "cancelMigration", + "outputs": [], + "payable": false, + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "sender", + "type": "address" + }, + { + "name": "identity", + "type": "address" + }, + { + "name": "newOwner", + "type": "address" + } + ], + "name": "addOwner", + "outputs": [], + "payable": false, + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "sender", + "type": "address" + }, + { + "name": "identity", + "type": "address" + } + ], + "name": "finalizeMigration", + "outputs": [], + "payable": false, + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "owner", + "type": "address" + }, + { + "name": "recoveryKey", + "type": "address" + } + ], + "name": "createIdentity", + "outputs": [], + "payable": false, + "type": "function" + }, + { + "inputs": [ + { + "name": "_userTimeLock", + "type": "uint256" + }, + { + "name": "_adminTimeLock", + "type": "uint256" + }, + { + "name": "_adminRate", + "type": "uint256" + }, + { + "name": "_relayAddress", + "type": "address" + } + ], + "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": "0x6060604052341561000c57fe5b60405160808061140383398101604090815281516020830151918301516060909301519092905b60008390556001849055600282905560038054600160a060020a031916600160a060020a0383161790555b505050505b611391806100726000396000f300606060405236156100885763ffffffff60e060020a6000350416631a45fac7811461008a5780631e2629e1146100b45780633061e0ef146100de578063701b882614610108578063754fd35214610178578063781f5a83146101a2578063a5967039146101c6578063a949c637146101ea578063c7576ed414610214578063d10e73ab14610238575bfe5b341561009257fe5b6100b2600160a060020a036004358116906024358116906044351661025c565b005b34156100bc57fe5b6100b2600160a060020a03600435811690602435811690604435166103cd565b005b34156100e657fe5b6100b2600160a060020a03600435811690602435811690604435166104ea565b005b341561011057fe5b604080516020601f6084356004818101359283018490048402850184019095528184526100b294600160a060020a03813581169560248035831696604435909316956064359560a494920191819084018382808284375094965061068495505050505050565b005b341561018057fe5b6100b2600160a060020a036004358116906024358116906044351661081c565b005b34156101aa57fe5b6100b2600160a060020a036004358116906024351661096c565b005b34156101ce57fe5b6100b2600160a060020a0360043581169060243516610a2f565b005b34156101f257fe5b6100b2600160a060020a0360043581169060243581169060443516610b60565b005b341561021c57fe5b6100b2600160a060020a0360043581169060243516610cc7565b005b341561024057fe5b6100b2600160a060020a0360043581169060243516610e84565b005b60035433600160a060020a039081169116148061027d575061027d33610f43565b5b156103a557600160a060020a038083166000908152600460209081526040808320938716835292905290812054839185911180156102e6575060008054600160a060020a03808516835260046020908152604080852092861685529190529091205442910111155b156103a557600254600160a060020a038086166000908152600660209081526040808320938a16835292905220548591879142910110156103a557600160a060020a03808316600090815260066020908152604080832085851684528252808320429055898416808452600483528184208a8616808652908452828520949094558151948c1685529051929390927fc5d55f5b9504a5698fdae1a66c6327ad53ed43440071e233dc0caad0ca8406d4929181900390910190a35b6103ab565b60006000fd5b5b50506103b9565b60006000fd5b5b50506103c7565b60006000fd5b5b505050565b60035433600160a060020a03908116911614806103ee57506103ee33610f43565b5b156103a557600160a060020a03808316600090815260046020908152604080832093871683529290529081205483918591118015610457575060008054600160a060020a03808516835260046020908152604080852092861685529190529091205442910111155b156103a557600160a060020a038481166000818152600760209081526040918290204281556001018054600160a060020a0319168886169081179091558251948a168552915191937fcfc00227bf2b3a4415906c30423e1d01d99604f93a0d756dc25fbf69cf233e20929081900390910190a35b6103b9565b60006000fd5b5b50506103c7565b60006000fd5b5b505050565b60035433600160a060020a039081169116148061050b575061050b33610f43565b5b156103a557600160a060020a03808316600090815260046020908152604080832093871683529290529081205483918591118015610574575060008054600160a060020a03808516835260046020908152604080852092861685529190529091205442910111155b156103a557600254600160a060020a038086166000908152600660209081526040808320938a16835292905220548591879142910110156103a557600160a060020a0380831660009081526006602090815260408083208585168452909152902042905585908116156103a557600160a060020a038781166000818152600560209081526040918290208054600160a060020a0319168b86169081179091558251948d168552915191937fa9bb12bc681659b583320c1fa0fbf4d8c1dfb4fcd51566c8f6edf9438a8b8ece929081900390910190a35b610655565b60006000fd5b5b506103ab565b60006000fd5b5b50506103b9565b60006000fd5b5b50506103c7565b60006000fd5b5b505050565b60035433600160a060020a03908116911614806106a557506106a533610f43565b5b156103a557600160a060020a0380851660009081526004602090815260408083209389168352929052908120548591879111801561070e5750600154600160a060020a0380841660009081526004602090815260408083209386168352929052205442910111155b156103a55785600160a060020a031663d7f31eb98686866040518463ffffffff1660e060020a0281526004018084600160a060020a0316600160a060020a03168152602001838152602001806020018281038252838181518152602001915080519060200190808383600083146107a0575b8051825260208311156107a057601f199092019160209182019101610780565b505050905090810190601f1680156107cc5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15156107e957fe5b6102c65a03f115156107f757fe5b5050505b610806565b60006000fd5b5b5050610814565b60006000fd5b5b5050505050565b60035433600160a060020a039081169116148061083d575061083d33610f43565b5b156103a557600160a060020a0380831660009081526005602052604090205483918591811690821614156103a557600254600160a060020a038086166000908152600660209081526040808320938a16835292905220548591879142910110156103a557600160a060020a0380831660009081526006602090815260408083208585168452825280832042905589841683526004825280832093891683529290529081205411156108ef5760006000fd5b600160a060020a0380871660008181526004602090815260408083208a8616808552908352928190204290558051948c168552519193600080516020611326833981519152929081900390910190a35b6103ab565b60006000fd5b5b50506103b9565b60006000fd5b5b50506103c7565b60006000fd5b5b505050565b80600160a060020a038116156103a557600160a060020a0333811660009081526005602052604081205490911611156109a55760006000fd5b60008054600160a060020a03338116808452600460209081526040808620898516808852908352818720429690960390955582865260058252948590208054938816600160a060020a03199094168417905584519384529351919390928392600080516020611346833981519152929181900390910190a45b6103c7565b60006000fd5b5b505050565b60035433600160a060020a0390811691161480610a505750610a5033610f43565b5b156103a557600160a060020a03808216600090815260046020908152604080832093861683529290529081205482918491118015610ab95750600154600160a060020a0380841660009081526004602090815260408083209386168352929052205442910111155b156103a557600160a060020a03808416600081815260076020908152604091829020600101548251898616815292519416937f788f980ac1598bf6282c4cc596fedd7807726e6e8e51f1505a1b6df5d726f5679281900390910190a3600160a060020a03831660009081526007602052604081209081556001018054600160a060020a03191690555b610b4d565b60006000fd5b5b5050610b5b565b60006000fd5b5b5050565b60035433600160a060020a0390811691161480610b815750610b8133610f43565b5b156103a557600160a060020a03808316600090815260046020908152604080832093871683529290529081205483918591118015610bea575060008054600160a060020a03808516835260046020908152604080852092861685529190529091205442910111155b156103a557600254600160a060020a038086166000908152600660209081526040808320938a16835292905220548591879142910110156103a557600160a060020a0380831660009081526006602090815260408083208585168452825280832042908190556001548b8616808652600485528386208c8816808852908652958490209190920390558151948c168552905192939092600080516020611326833981519152929181900390910190a35b6103ab565b60006000fd5b5b50506103b9565b60006000fd5b5b50506103c7565b60006000fd5b5b505050565b60035460009033600160a060020a0390811691161480610ceb5750610ceb33610f43565b5b156103a557600160a060020a03808316600090815260046020908152604080832093871683529290529081205483918591118015610d54575060008054600160a060020a03808516835260046020908152604080852092861685529190529091205442910111155b156103a557600160a060020a038416600090815260076020526040812054118015610d9a575060008054600160a060020a03861682526007602052604090912054429101105b156104cb57600160a060020a0380851660008181526007602052604080822060018101805491849055600160a060020a031982169055815160e460020a6301a6952302815294166004850181905290519096509192631a695230926024808301939282900301818387803b1515610e0d57fe5b6102c65a03f11515610e1b57fe5b505060408051600160a060020a03888116825291518287169350918716917f5d50e5b65a3141f147362981bdcac9e274984e1c2efec57320f86b3e071dd6f89181900360200190a35b5b6103b9565b60006000fd5b5b50506103c7565b60006000fd5b5b505050565b600081600160a060020a038116156103a557610e9e610f6b565b60405190819003906000f0801515610eb257fe5b60008054600160a060020a038381168084526004602090815260408086208b8516808852908352818720429690960390955582865260058252948590208054600160a060020a0319168a851690811790915585519485529451959750939433909216939092600080516020611346833981519152929081900390910190a45b610f3c565b60006000fd5b5b50505050565b60006024361015610f5657506000610f66565b50600435600160a060020a031681145b919050565b6040516103aa80610f7c83390190560060606040525b60008054600160a060020a03191633600160a060020a03161790555b5b610379806100316000396000f300606060405236156100465763ffffffff60e060020a6000350416631a695230811461008e5780632f54bf6e146100ac5780638da5cb5b146100dc578063d7f31eb914610108575b61008c5b604080513481529051600160a060020a033316917f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874919081900360200190a25b565b005b341561009657fe5b61008c600160a060020a036004351661016d565b005b34156100b457fe5b6100c8600160a060020a03600435166101be565b604080519115158252519081900360200190f35b34156100e457fe5b6100ec6101d5565b60408051600160a060020a039092168252519081900360200190f35b341561011057fe5b604080516020600460443581810135601f810184900484028501840190955284845261008c948235600160a060020a03169460248035956064949293919092019181908401838280828437509496506101e495505050505050565b005b610176336101be565b15156101825760006000fd5b30600160a060020a031681600160a060020a03161415156101b95760008054600160a060020a031916600160a060020a0383161790555b5b5b50565b600054600160a060020a038281169116145b919050565b600054600160a060020a031681565b6101ed336101be565b15156101f95760006000fd5b82600160a060020a031682826040518082805190602001908083836000831461023d575b80518252602083111561023d57601f19909201916020918201910161021d565b505050905090810190601f1680156102695780820380516001836020036101000a031916815260200191505b5091505060006040518083038185876187965a03f192505050151561028e5760006000fd5b82600160a060020a03167fc1de93dfa06362c6a616cde73ec17d116c0d588dd1df70f27f91b500de207c418383604051808381526020018060200182810382528381815181526020019150805190602001908083836000831461030c575b80518252602083111561030c57601f1990920191602091820191016102ec565b505050905090810190601f1680156103385780820380516001836020036101000a031916815260200191505b50935050505060405180910390a25b5b5050505600a165627a7a7230582011e578b01d4fe52397b0794d6b9dee762670ecd8207070f40e7959ce4f99f1f000293047230d3e8ea09f306e55725064a524f79ccdf75f030deeb6db4f95518b6386c36800ebd6079fdafc3a7100d0d1172815751804a6d1b7eb365b85f6c9c80e61a165627a7a723058207a11016e2b926b74676bcd6db6666ba60ae51bfdff807ca720b16a6c2fb90cec0029", + "networks": {}, + "schema_version": "0.0.5", + "updated_at": 1499785642009 +} \ No newline at end of file diff --git a/build/contracts/MetaIdentityManager.json b/build/contracts/MetaIdentityManager.json new file mode 100644 index 0000000..a6ef718 --- /dev/null +++ b/build/contracts/MetaIdentityManager.json @@ -0,0 +1,428 @@ +{ + "contract_name": "MetaIdentityManager", + "abi": [ + { + "constant": false, + "inputs": [ + { + "name": "sender", + "type": "address" + }, + { + "name": "identity", + "type": "address" + }, + { + "name": "owner", + "type": "address" + } + ], + "name": "removeOwner", + "outputs": [], + "payable": false, + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "sender", + "type": "address" + }, + { + "name": "identity", + "type": "address" + }, + { + "name": "newIdManager", + "type": "address" + } + ], + "name": "initiateMigration", + "outputs": [], + "payable": false, + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "sender", + "type": "address" + }, + { + "name": "identity", + "type": "address" + }, + { + "name": "recoveryKey", + "type": "address" + } + ], + "name": "changeRecovery", + "outputs": [], + "payable": false, + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "a", + "type": "address" + } + ], + "name": "checkMessageData", + "outputs": [ + { + "name": "t", + "type": "bool" + } + ], + "payable": false, + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "sender", + "type": "address" + }, + { + "name": "identity", + "type": "address" + }, + { + "name": "newOwner", + "type": "address" + } + ], + "name": "addOwnerForRecovery", + "outputs": [], + "payable": false, + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "sender", + "type": "address" + }, + { + "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": false, + "inputs": [ + { + "name": "sender", + "type": "address" + }, + { + "name": "identity", + "type": "address" + } + ], + "name": "cancelMigration", + "outputs": [], + "payable": false, + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "sender", + "type": "address" + }, + { + "name": "identity", + "type": "address" + }, + { + "name": "newOwner", + "type": "address" + } + ], + "name": "addOwner", + "outputs": [], + "payable": false, + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "owner", + "type": "address" + }, + { + "name": "recoveryKey", + "type": "address" + } + ], + "name": "CreateIdentity", + "outputs": [], + "payable": false, + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "sender", + "type": "address" + } + ], + "name": "test", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "sender", + "type": "address" + }, + { + "name": "identity", + "type": "address" + } + ], + "name": "finalizeMigration", + "outputs": [], + "payable": false, + "type": "function" + }, + { + "inputs": [ + { + "name": "_userTimeLock", + "type": "uint256" + }, + { + "name": "_adminTimeLock", + "type": "uint256" + }, + { + "name": "_adminRate", + "type": "uint256" + }, + { + "name": "relayAddress", + "type": "address" + } + ], + "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": "0x6060604052346100005760405160808061147b83398101604090815281516020830151918301516060909301519092905b60008390556001849055600282905560038054600160a060020a031916600160a060020a0383161790555b505050505b61140c8061006f6000396000f3006060604052361561009e5763ffffffff60e060020a6000350416631a45fac781146100a35780631e2629e1146100ca5780633061e0ef146100f1578063417a7d60146101185780634466772514610145578063701b88261461016c578063781f5a83146101d9578063a5967039146101fa578063a949c6371461021b578063ac1028de14610242578063bb29998e14610263578063c7576ed414610290575b610000565b34610000576100c8600160a060020a03600435811690602435811690604435166102b1565b005b34610000576100c8600160a060020a0360043581169060243581169060443516610422565b005b34610000576100c8600160a060020a0360043581169060243581169060443516610541565b005b3461000057610131600160a060020a03600435166106d2565b604080519115158252519081900360200190f35b34610000576100c8600160a060020a03600435811690602435811690604435166106fe565b005b3461000057604080516020601f6084356004818101359283018490048402850184019095528184526100c894600160a060020a03813581169560248035831696604435909316956064359560a494920191819084018382808284375094965061085f95505050505050565b005b34610000576100c8600160a060020a03600435811690602435166109ee565b005b34610000576100c8600160a060020a0360043581169060243516610aea565b005b34610000576100c8600160a060020a0360043581169060243581169060443516610c0f565b005b34610000576100c8600160a060020a0360043581169060243516610d83565b005b3461000057610131600160a060020a0360043516610e4e565b604080519115158252519081900360200190f35b34610000576100c8600160a060020a0360043581169060243516610e61565b005b60035433600160a060020a03908116911614806102d257506102d2336106d2565b5b1561009e57600160a060020a0380831660009081526004602090815260408083209387168352929052908120548391859111801561033b575060008054600160a060020a03808516835260046020908152604080852092861685529190529091205442910111155b1561009e57600254600160a060020a038086166000908152600660209081526040808320938a168352929052205485918791429190910390101561009e57600160a060020a03808316600090815260066020908152604080832085851684528252808320429055898416808452600483528184208a8616808652908452828520949094558151948c1685529051929390927fc5d55f5b9504a5698fdae1a66c6327ad53ed43440071e233dc0caad0ca8406d4929181900390910190a35b610402565b610000565b5b505061040f565b610000565b5b505061041c565b610000565b5b505050565b60035433600160a060020a03908116911614806104435750610443336106d2565b5b1561009e57600160a060020a038083166000908152600460209081526040808320938716835292905290812054839185911180156104ac575060008054600160a060020a03808516835260046020908152604080852092861685529190529091205442910111155b1561009e57600160a060020a03848116600081815260076020908152604080832042905560088252918290208054600160a060020a0319168886169081179091558251948a168552915191937fcfc00227bf2b3a4415906c30423e1d01d99604f93a0d756dc25fbf69cf233e20929081900390910190a35b61040f565b610000565b5b505061041c565b610000565b5b505050565b60035433600160a060020a03908116911614806105625750610562336106d2565b5b1561009e57600160a060020a038083166000908152600460209081526040808320938716835292905290812054839185911180156105cb575060008054600160a060020a03808516835260046020908152604080852092861685529190529091205442910111155b1561009e57600254600160a060020a038086166000908152600660209081526040808320938a168352929052205485918791429190910390101561009e57600160a060020a038083166000908152600660209081526040808320858516845290915290204290558516151561063f57610000565b600160a060020a038681166000818152600560209081526040918290208054600160a060020a0319168a86169081179091558251948c168552915191937fa9bb12bc681659b583320c1fa0fbf4d8c1dfb4fcd51566c8f6edf9438a8b8ece929081900390910190a35b610402565b610000565b5b505061040f565b610000565b5b505061041c565b610000565b5b505050565b600060243610156106e5575060006106f9565b50600160a060020a03818116602435909116145b919050565b60035433600160a060020a039081169116148061071f575061071f336106d2565b5b1561009e57600160a060020a03808316600090815260056020526040902054839185918116908216141561009e57600254600160a060020a038086166000908152600660209081526040808320938a168352929052205485918791429190910390101561009e57600160a060020a0380831660009081526006602090815260408083208585168452825280832042905589841683526004825280832093891683529290529081205411156107d357610000565b600160a060020a0380871660008181526004602090815260408083208a8616808552908352928190204290558051948c1685525191937f3047230d3e8ea09f306e55725064a524f79ccdf75f030deeb6db4f95518b6386929081900390910190a35b610402565b610000565b5b505061040f565b610000565b5b505061041c565b610000565b5b505050565b60035433600160a060020a03908116911614806108805750610880336106d2565b5b1561009e57600160a060020a038085166000908152600460209081526040808320938916835292905290812054859187911180156108e95750600154600160a060020a0380841660009081526004602090815260408083209386168352929052205442910111155b1561009e5785600160a060020a031663d7f31eb98686866040518463ffffffff1660e060020a0281526004018084600160a060020a0316600160a060020a031681526020018381526020018060200182810382528381815181526020019150805190602001908083836000831461097b575b80518252602083111561097b57601f19909201916020918201910161095b565b505050905090810190601f1680156109a75780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b156100005760325a03f115610000575050505b6109d9565b610000565b5b50506109e6565b610000565b5b5050505050565b600160a060020a0381161515610a0357610000565b600160a060020a0333811660009081526004602090815260408083209386168352929052908120541180610a515750600160a060020a03338116600090815260056020526040812054909116115b15610a5b57610000565b60008054600160a060020a03338116808452600460209081526040808620888516808852908352818720429690960390955582865260058252948590208054938716600160a060020a031990941684179055845193845293519193909283927fc36800ebd6079fdafc3a7100d0d1172815751804a6d1b7eb365b85f6c9c80e61929181900390910190a45b5050565b60035460009033600160a060020a0390811691161480610b0e5750610b0e336106d2565b5b1561009e57600160a060020a03808316600090815260046020908152604080832093871683529290529081205483918591118015610b775750600154600160a060020a0380841660009081526004602090815260408083209386168352929052205442910111155b1561009e57600160a060020a038085166000818152600860208181526040808420805460078452828620959095559282528254600160a060020a03191690925581518a86168152915192909416965086937f788f980ac1598bf6282c4cc596fedd7807726e6e8e51f1505a1b6df5d726f56792918290030190a35b61040f565b610000565b5b505061041c565b610000565b5b505050565b60035433600160a060020a0390811691161480610c305750610c30336106d2565b5b1561009e57600160a060020a03808316600090815260046020908152604080832093871683529290529081205483918591118015610c99575060008054600160a060020a03808516835260046020908152604080852092861685529190529091205442910111155b1561009e57600254600160a060020a038086166000908152600660209081526040808320938a168352929052205485918791429190910390101561009e57600160a060020a0380831660009081526006602090815260408083208585168452825280832042908190558a8516808552600484528285208b871680875290855294839020919091558151948c1685529051929390927f3047230d3e8ea09f306e55725064a524f79ccdf75f030deeb6db4f95518b6386929181900390910190a35b610402565b610000565b5b505061040f565b610000565b5b505061041c565b610000565b5b505050565b6000600160a060020a0382161515610d9a57610000565b6040516103a88061103983396040519101819003906000f080156100005760008054600160a060020a038381168084526004602090815260408086208a8516808852908352818720429690960390955582865260058252948590208054600160a060020a031916898516908117909155855194855294519596509394339092169390927fc36800ebd6079fdafc3a7100d0d1172815751804a6d1b7eb365b85f6c9c80e61929081900390910190a45b505050565b6000610e59336106d2565b90505b919050565b60035460009033600160a060020a0390811691161480610e855750610e85336106d2565b5b1561009e57600160a060020a03808316600090815260046020908152604080832093871683529290529081205483918591118015610eee575060008054600160a060020a03808516835260046020908152604080852092861685529190529091205442910111155b1561009e57600160a060020a038416600090815260076020526040812054118015610f34575060008054600160a060020a03861682526007602052604090912054429101105b1561052457600160a060020a038085166000818152600860208181526040808420805460078452828620869055939092528154600160a060020a03191690915580517f1a695230000000000000000000000000000000000000000000000000000000008152919094166004820181905293519396509192631a69523092602480820193929182900301818387803b156100005760325a03f11561000057505060408051600160a060020a03888116825291518287169350918716917f5d50e5b65a3141f147362981bdcac9e274984e1c2efec57320f86b3e071dd6f89181900360200190a35b5b61040f565b610000565b5b505061041c565b610000565b5b505050560060606040525b60008054600160a060020a03191633600160a060020a03161790555b5b610377806100316000396000f300606060405236156100465763ffffffff60e060020a6000350416631a695230811461008e5780632f54bf6e146100a95780638da5cb5b146100d6578063d7f31eb9146100ff575b61008c5b604080513481529051600160a060020a033316917f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874919081900360200190a25b565b005b346100005761008c600160a060020a0360043516610161565b005b34610000576100c2600160a060020a03600435166101be565b604080519115158252519081900360200190f35b34610000576100e36101d5565b60408051600160a060020a039092168252519081900360200190f35b3461000057604080516020600460443581810135601f810184900484028501840190955284845261008c948235600160a060020a03169460248035956064949293919092019181908401838280828437509496506101e495505050505050565b005b61016a336101be565b151561017557610000565b30600160a060020a031681600160a060020a03161415156101b9576000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b5b50565b600054600160a060020a038281169116145b919050565b600054600160a060020a031681565b6101ed336101be565b15156101f857610000565b82600160a060020a031682826040518082805190602001908083836000831461023c575b80518252602083111561023c57601f19909201916020918201910161021c565b505050905090810190601f1680156102685780820380516001836020036101000a031916815260200191505b5091505060006040518083038185876185025a03f192505050151561028c57610000565b82600160a060020a03167fc1de93dfa06362c6a616cde73ec17d116c0d588dd1df70f27f91b500de207c418383604051808381526020018060200182810382528381815181526020019150805190602001908083836000831461030a575b80518252602083111561030a57601f1990920191602091820191016102ea565b505050905090810190601f1680156103365780820380516001836020036101000a031916815260200191505b50935050505060405180910390a25b5b5050505600a165627a7a72305820cc3d4f31b85c6e2c7f173835b15747edca87aad6a59eb351e54800e4b087b0070029a165627a7a723058203806312d9501655b039fb9e761115107668027254ea87da7b579bd59acef98310029", + "networks": {}, + "schema_version": "0.0.5", + "updated_at": 1498489105320 +} \ No newline at end of file diff --git a/build/contracts/MetaTestRegistry.json b/build/contracts/MetaTestRegistry.json new file mode 100644 index 0000000..a916304 --- /dev/null +++ b/build/contracts/MetaTestRegistry.json @@ -0,0 +1,82 @@ +{ + "contract_name": "MetaTestRegistry", + "abi": [ + { + "constant": true, + "inputs": [ + { + "name": "", + "type": "address" + } + ], + "name": "registry", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "with", + "type": "uint256" + }, + { + "name": "many", + "type": "address" + }, + { + "name": "strange", + "type": "string" + }, + { + "name": "params", + "type": "uint256" + } + ], + "name": "reallyLongFunctionName", + "outputs": [], + "payable": false, + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "sender", + "type": "address" + } + ], + "name": "testThrow", + "outputs": [], + "payable": false, + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "sender", + "type": "address" + }, + { + "name": "x", + "type": "uint256" + } + ], + "name": "register", + "outputs": [], + "payable": false, + "type": "function" + } + ], + "unlinked_binary": "0x6060604052341561000c57fe5b5b61019f8061001c6000396000f300606060405263ffffffff60e060020a600035041663038defd781146100425780630da9a424146100705780634a99e570146100d75780636d705ebb146100f5575bfe5b341561004a57fe5b61005e600160a060020a0360043516610116565b60408051918252519081900360200190f35b341561007857fe5b604080516020600460443581810135601f81018490048402850184019095528484526100d59482359460248035600160a060020a031695606494929391909201918190840183828082843750949650509335935061012892505050565b005b34156100df57fe5b6100d5600160a060020a036004351661014a565b005b34156100fd57fe5b6100d5600160a060020a0360043516602435610153565b005b60006020819052908152604090205481565b600160a060020a03831660009081526020819052604090208190555b50505050565b60006000fd5b50565b600160a060020a03821660009081526020819052604090208190555b50505600a165627a7a723058201c48ee23273dc1af579a0a8268f42c0bb88b10c0a2ba2217595c37782ed575d10029", + "networks": {}, + "schema_version": "0.0.5", + "updated_at": 1499785642009 +} \ No newline at end of file diff --git a/build/contracts/Migrations.json b/build/contracts/Migrations.json index ee62f26..73857f4 100644 --- a/build/contracts/Migrations.json +++ b/build/contracts/Migrations.json @@ -59,7 +59,7 @@ "type": "constructor" } ], - "unlinked_binary": "0x606060405234610000575b60008054600160a060020a03191633600160a060020a03161790555b5b610190806100366000396000f300606060405263ffffffff60e060020a6000350416630900f0108114610045578063445df0ac146100605780638da5cb5b1461007f578063fdacd576146100a8575b610000565b346100005761005e600160a060020a03600435166100ba565b005b346100005761006d61012d565b60408051918252519081900360200190f35b346100005761008c610133565b60408051600160a060020a039092168252519081900360200190f35b346100005761005e600435610142565b005b6000805433600160a060020a03908116911614156101275781905080600160a060020a031663fdacd5766001546040518263ffffffff1660e060020a02815260040180828152602001915050600060405180830381600087803b156100005760325a03f115610000575050505b5b5b5050565b60015481565b600054600160a060020a031681565b60005433600160a060020a039081169116141561015f5760018190555b5b5b505600a165627a7a7230582032674b2bcd8e47b00a96f7a6ef896cc7e00a449ba022c653e5196591d2d6877d0029", + "unlinked_binary": "0x6060604052341561000c57fe5b5b60008054600160a060020a03191633600160a060020a03161790555b5b6101a0806100396000396000f300606060405263ffffffff60e060020a6000350416630900f0108114610042578063445df0ac146100605780638da5cb5b14610082578063fdacd576146100ae575bfe5b341561004a57fe5b61005e600160a060020a03600435166100c3565b005b341561006857fe5b61007061013d565b60408051918252519081900360200190f35b341561008a57fe5b610092610143565b60408051600160a060020a039092168252519081900360200190f35b34156100b657fe5b61005e600435610152565b005b6000805433600160a060020a03908116911614156101375781905080600160a060020a031663fdacd5766001546040518263ffffffff1660e060020a02815260040180828152602001915050600060405180830381600087803b151561012557fe5b6102c65a03f1151561013357fe5b5050505b5b5b5050565b60015481565b600054600160a060020a031681565b60005433600160a060020a039081169116141561016f5760018190555b5b5b505600a165627a7a7230582056142661b5de6d2b3547cca54cb75cdf2a16bfed17ade3184f96a8e6fea7ab3a0029", "networks": { "1": { "events": {}, @@ -87,5 +87,5 @@ } }, "schema_version": "0.0.5", - "updated_at": 1494766483149 + "updated_at": 1499785642009 } \ No newline at end of file diff --git a/build/contracts/Owned.json b/build/contracts/Owned.json index ff54759..c6f8888 100644 --- a/build/contracts/Owned.json +++ b/build/contracts/Owned.json @@ -51,8 +51,8 @@ "type": "constructor" } ], - "unlinked_binary": "0x606060405234610000575b60008054600160a060020a03191633600160a060020a03161790555b5b610129806100366000396000f300606060405263ffffffff60e060020a6000350416631a695230811460365780632f54bf6e14604e5780638da5cb5b146078575b6000565b34600057604c600160a060020a0360043516609e565b005b346000576064600160a060020a036004351660d7565b604080519115158252519081900360200190f35b34600057608260ee565b60408051600160a060020a039092168252519081900360200190f35b60a53360d7565b1560d2576000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b5b50565b600054600160a060020a038281169116145b919050565b600054600160a060020a0316815600a165627a7a72305820d4aa4677681f85dd6e4f5f2f30c9aad0b20cf2c2c31803b273d31100bc4d88650029", + "unlinked_binary": "0x6060604052341561000c57fe5b5b60008054600160a060020a03191633600160a060020a03161790555b5b610154806100396000396000f300606060405263ffffffff60e060020a6000350416631a69523081146100375780632f54bf6e146100555780638da5cb5b14610085575bfe5b341561003f57fe5b610053600160a060020a03600435166100b1565b005b341561005d57fe5b610071600160a060020a0360043516610102565b604080519115158252519081900360200190f35b341561008d57fe5b610095610119565b60408051600160a060020a039092168252519081900360200190f35b6100ba33610102565b15156100c65760006000fd5b30600160a060020a031681600160a060020a03161415156100fd5760008054600160a060020a031916600160a060020a0383161790555b5b5b50565b600054600160a060020a038281169116145b919050565b600054600160a060020a0316815600a165627a7a723058203236cb8b84291d0c68350b08839bd8b7756f03d9bd9908c5099b31cf486108ef0029", "networks": {}, "schema_version": "0.0.5", - "updated_at": 1494766301725 + "updated_at": 1499785642009 } \ No newline at end of file diff --git a/build/contracts/Proxy.json b/build/contracts/Proxy.json index 2308878..71cb7dd 100644 --- a/build/contracts/Proxy.json +++ b/build/contracts/Proxy.json @@ -110,8 +110,8 @@ "type": "event" } ], - "unlinked_binary": "0x60606040525b60008054600160a060020a03191633600160a060020a03161790555b5b610351806100316000396000f300606060405236156100465763ffffffff60e060020a6000350416631a695230811461008e5780632f54bf6e146100a95780638da5cb5b146100d6578063d7f31eb9146100ff575b61008c5b604080513481529051600160a060020a033316917f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874919081900360200190a25b565b005b346100005761008c600160a060020a0360043516610161565b005b34610000576100c2600160a060020a036004351661019d565b604080519115158252519081900360200190f35b34610000576100e36101b4565b60408051600160a060020a039092168252519081900360200190f35b3461000057604080516020600460443581810135601f810184900484028501840190955284845261008c948235600160a060020a03169460248035956064949293919092019181908401838280828437509496506101c395505050505050565b005b61016a3361019d565b15610198576000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b5b50565b600054600160a060020a038281169116145b919050565b600054600160a060020a031681565b6101cc3361019d565b1561031e5782600160a060020a0316828260405180828051906020019080838360008314610215575b80518252602083111561021557601f1990920191602091820191016101f5565b505050905090810190601f1680156102415780820380516001836020036101000a031916815260200191505b5091505060006040518083038185876185025a03f192505050151561026557610000565b82600160a060020a03167fc1de93dfa06362c6a616cde73ec17d116c0d588dd1df70f27f91b500de207c41838360405180838152602001806020018281038252838181518152602001915080519060200190808383600083146102e3575b8051825260208311156102e357601f1990920191602091820191016102c3565b505050905090810190601f16801561030f5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a25b5b5b5050505600a165627a7a723058201d08dfdc10daed12ae0a5bfec3c85fac4143262d2bd01733fa3346596904f36a0029", + "unlinked_binary": "0x60606040525b60008054600160a060020a03191633600160a060020a03161790555b5b610379806100316000396000f300606060405236156100465763ffffffff60e060020a6000350416631a695230811461008e5780632f54bf6e146100ac5780638da5cb5b146100dc578063d7f31eb914610108575b61008c5b604080513481529051600160a060020a033316917f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874919081900360200190a25b565b005b341561009657fe5b61008c600160a060020a036004351661016d565b005b34156100b457fe5b6100c8600160a060020a03600435166101be565b604080519115158252519081900360200190f35b34156100e457fe5b6100ec6101d5565b60408051600160a060020a039092168252519081900360200190f35b341561011057fe5b604080516020600460443581810135601f810184900484028501840190955284845261008c948235600160a060020a03169460248035956064949293919092019181908401838280828437509496506101e495505050505050565b005b610176336101be565b15156101825760006000fd5b30600160a060020a031681600160a060020a03161415156101b95760008054600160a060020a031916600160a060020a0383161790555b5b5b50565b600054600160a060020a038281169116145b919050565b600054600160a060020a031681565b6101ed336101be565b15156101f95760006000fd5b82600160a060020a031682826040518082805190602001908083836000831461023d575b80518252602083111561023d57601f19909201916020918201910161021d565b505050905090810190601f1680156102695780820380516001836020036101000a031916815260200191505b5091505060006040518083038185876187965a03f192505050151561028e5760006000fd5b82600160a060020a03167fc1de93dfa06362c6a616cde73ec17d116c0d588dd1df70f27f91b500de207c418383604051808381526020018060200182810382528381815181526020019150805190602001908083836000831461030c575b80518252602083111561030c57601f1990920191602091820191016102ec565b505050905090810190601f1680156103385780820380516001836020036101000a031916815260200191505b50935050505060405180910390a25b5b5050505600a165627a7a7230582011e578b01d4fe52397b0794d6b9dee762670ecd8207070f40e7959ce4f99f1f00029", "networks": {}, "schema_version": "0.0.5", - "updated_at": 1494766301725 + "updated_at": 1499785642009 } \ No newline at end of file diff --git a/build/contracts/RecoverableController.json b/build/contracts/RecoverableController.json index 42670bd..22ac6cc 100644 --- a/build/contracts/RecoverableController.json +++ b/build/contracts/RecoverableController.json @@ -307,8 +307,8 @@ "type": "event" } ], - "unlinked_binary": "0x60606040523461000057604051608080610a1383398101604090815281516020830151918301516060909301519092905b600160008190558054600160a060020a03808716600160a060020a03199283161790925560028054868416908316179055600a839055600b8490556005805433909316929091169190911790555b505050505b610981806100926000396000f300606060405236156101015763ffffffff60e060020a60003504166309b8f77a81146101065780631c1c22891461012f5780631de0e877146101585780631ec9f7b51461017757806334c7dcf8146101965780634893ed5b146101bf57806354fd4d50146101de5780637a5d5345146101fd5780637ab0b9981461021857806384191f62146102335780638ac0eef91461024257806397905a8814610251578063a08df7701461027a578063c998e9dd14610295578063cbd2c73b146102b0578063d1c484f6146102cb578063d233fc0b146102ea578063d7f31eb9146102f9578063ec5568891461035b578063f60edb0e14610384578063f66c6691146103ad575b610000565b34610000576101136103cc565b60408051600160a060020a039092168252519081900360200190f35b34610000576101136103db565b60408051600160a060020a039092168252519081900360200190f35b34610000576101656103ea565b60408051918252519081900360200190f35b34610000576101656103f0565b60408051918252519081900360200190f35b34610000576101136103f6565b60408051600160a060020a039092168252519081900360200190f35b3461000057610165610405565b60408051918252519081900360200190f35b346100005761016561040b565b60408051918252519081900360200190f35b3461000057610216600160a060020a0360043516610411565b005b3461000057610216600160a060020a03600435166104ac565b005b3461000057610216610547565b005b34610000576102166105e9565b005b346100005761011361068c565b60408051600160a060020a039092168252519081900360200190f35b3461000057610216600160a060020a036004351661069b565b005b3461000057610216600160a060020a03600435166106d3565b005b3461000057610216600160a060020a0360043516610717565b005b34610000576101656107b2565b60408051918252519081900360200190f35b34610000576102166107b8565b005b3461000057604080516020600460443581810135601f8101849004840285018401909552848452610216948235600160a060020a031694602480359560649492939190920191819084018382808284375094965061080195505050505050565b005b3461000057610113610911565b60408051600160a060020a039092168252519081900360200190f35b3461000057610113610920565b60408051600160a060020a039092168252519081900360200190f35b346100005761016561092f565b60408051918252519081900360200190f35b600654600160a060020a031681565b600254600160a060020a031681565b60095481565b600b5481565b600354600160a060020a031681565b60045481565b60005481565b60025433600160a060020a03908116911614156104a757600b54420160095560088054600160a060020a031916600160a060020a0383811691909117909155604080513390921660208301528082526014828201527f7369676e436f6e74726f6c6c65724368616e6765000000000000000000000000606083015251600080516020610936833981519152916080908290030190a15b5b5b50565b60025433600160a060020a03908116911614156104a757600b54420160075560068054600160a060020a031916600160a060020a0383811691909117909155604080513390921660208301528082526012828201527f7369676e5265636f766572794368616e67650000000000000000000000000000606083015251600080516020610936833981519152916080908290030190a15b5b5b50565b426009541080156105625750600854600160a060020a031615155b156105e657600154600854604080517f1a695230000000000000000000000000000000000000000000000000000000008152600160a060020a03928316600482015290519190921691631a69523091602480830192600092919082900301818387803b156100005760325a03f115610000575050600854600160a060020a03169050ff5b5b565b426004541080156106045750600354600160a060020a031615155b156105e6576003805460028054600160a060020a03808416600160a060020a03199283161790925590911690915560408051339092166020830152808252600d828201527f6368616e6765557365724b657900000000000000000000000000000000000000606083015251600080516020610936833981519152916080908290030190a15b5b565b600554600160a060020a031681565b60055433600160a060020a03908116911614156104a75760058054600160a060020a031916600160a060020a0383161790555b5b5b50565b60055433600160a060020a03908116911614156104a75760038054600160a060020a031990811690915560028054909116600160a060020a0383161790555b5b5b50565b60025433600160a060020a03908116911614156104a757600a54420160045560038054600160a060020a031916600160a060020a0383811691909117909155604080513390921660208301528082526011828201527f7369676e557365724b65794368616e6765000000000000000000000000000000606083015251600080516020610936833981519152916080908290030190a15b5b5b50565b60075481565b426007541080156107d35750600654600160a060020a031615155b156105e6576006805460058054600160a060020a0319908116600160a060020a038416179091551690555b5b565b60025433600160a060020a039081169116141561090a576001546040517fd7f31eb9000000000000000000000000000000000000000000000000000000008152600160a060020a038581166004830190815260248301869052606060448401908152855160648501528551929094169363d7f31eb99388938893889390929091608490910190602085019080838382156108b6575b8051825260208311156108b657601f199092019160209182019101610896565b505050905090810190601f1680156108e25780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b156100005760325a03f115610000575050505b5b5b505050565b600154600160a060020a031681565b600854600160a060020a031681565b600a54815600ea8e84a162c4602ea0c61acf85fa1242db8ce550e7a448d613e3c7dff2f06793a165627a7a7230582055dd5e79ac17387077c5f0283d2c23a9a796b29b0b8e40631c3d8ca89c9121690029", + "unlinked_binary": "0x6060604052341561000c57fe5b604051608080610a1083398101604090815281516020830151918301516060909301519092905b600160008190558054600160a060020a03808716600160a060020a03199283161790925560028054868416908316179055600a839055600b8490556005805433909316929091169190911790555b505050505b61097b806100956000396000f300606060405236156101015763ffffffff60e060020a60003504166309b8f77a81146101035780631c1c22891461012f5780631de0e8771461015b5780631ec9f7b51461017d57806334c7dcf81461019f5780634893ed5b146101cb57806354fd4d50146101ed5780637a5d53451461020f5780637ab0b9981461022d57806384191f621461024b5780638ac0eef91461025d57806397905a881461026f578063a08df7701461029b578063c998e9dd146102b9578063cbd2c73b146102d7578063d1c484f6146102f5578063d233fc0b14610317578063d7f31eb914610329578063ec5568891461038e578063f60edb0e146103ba578063f66c6691146103e6575bfe5b341561010b57fe5b610113610408565b60408051600160a060020a039092168252519081900360200190f35b341561013757fe5b610113610417565b60408051600160a060020a039092168252519081900360200190f35b341561016357fe5b61016b610426565b60408051918252519081900360200190f35b341561018557fe5b61016b61042c565b60408051918252519081900360200190f35b34156101a757fe5b610113610432565b60408051600160a060020a039092168252519081900360200190f35b34156101d357fe5b61016b610441565b60408051918252519081900360200190f35b34156101f557fe5b61016b610447565b60408051918252519081900360200190f35b341561021757fe5b61022b600160a060020a036004351661044d565b005b341561023557fe5b61022b600160a060020a03600435166104e2565b005b341561025357fe5b61022b610575565b005b341561026557fe5b61022b610608565b005b341561027757fe5b61011361069e565b60408051600160a060020a039092168252519081900360200190f35b34156102a357fe5b61022b600160a060020a03600435166106ad565b005b34156102c157fe5b61022b600160a060020a03600435166106e5565b005b34156102df57fe5b61022b600160a060020a0360043516610729565b005b34156102fd57fe5b61016b6107bb565b60408051918252519081900360200190f35b341561031f57fe5b61022b6107c1565b005b341561033157fe5b604080516020600460443581810135601f810184900484028501840190955284845261022b948235600160a060020a031694602480359560649492939190920191819084018382808284375094965061080a95505050505050565b005b341561039657fe5b61011361090b565b60408051600160a060020a039092168252519081900360200190f35b34156103c257fe5b61011361091a565b60408051600160a060020a039092168252519081900360200190f35b34156103ee57fe5b61016b610929565b60408051918252519081900360200190f35b600654600160a060020a031681565b600254600160a060020a031681565b60095481565b600b5481565b600354600160a060020a031681565b60045481565b60005481565b60025433600160a060020a03908116911614156104dd57600b54420160095560088054600160a060020a031916600160a060020a038381169190911790915560408051339092166020830152808252601482820152606060020a737369676e436f6e74726f6c6c65724368616e676502606083015251600080516020610930833981519152916080908290030190a15b5b5b50565b60025433600160a060020a03908116911614156104dd57600b54420160075560068054600160a060020a031916600160a060020a038381169190911790915560408051339092166020830152808252601282820152607060020a717369676e5265636f766572794368616e676502606083015251600080516020610930833981519152916080908290030190a15b5b5b50565b426009541080156105905750600854600160a060020a031615155b15610605576001546008546040805160e460020a6301a69523028152600160a060020a03928316600482015290519190921691631a69523091602480830192600092919082900301818387803b15156105e557fe5b6102c65a03f115156105f357fe5b5050600854600160a060020a03169050ff5b5b565b426004541080156106235750600354600160a060020a031615155b15610605576003805460028054600160a060020a03808416600160a060020a03199283161790925590911690915560408051339092166020830152808252600d82820152609860020a6c6368616e6765557365724b657902606083015251600080516020610930833981519152916080908290030190a15b5b565b600554600160a060020a031681565b60055433600160a060020a03908116911614156104dd5760058054600160a060020a031916600160a060020a0383161790555b5b5b50565b60055433600160a060020a03908116911614156104dd5760038054600160a060020a031990811690915560028054909116600160a060020a0383161790555b5b5b50565b60025433600160a060020a03908116911614156104dd57600a54420160045560038054600160a060020a031916600160a060020a038381169190911790915560408051339092166020830152808252601182820152607860020a707369676e557365724b65794368616e676502606083015251600080516020610930833981519152916080908290030190a15b5b5b50565b60075481565b426007541080156107dc5750600654600160a060020a031615155b15610605576006805460058054600160a060020a0319908116600160a060020a038416179091551690555b5b565b60025433600160a060020a03908116911614156109045760015460405160e060020a63d7f31eb9028152600160a060020a038581166004830190815260248301869052606060448401908152855160648501528551929094169363d7f31eb99388938893889390929091608490910190602085019080838382156108a9575b8051825260208311156108a957601f199092019160209182019101610889565b505050905090810190601f1680156108d55780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15156108f257fe5b6102c65a03f1151561090057fe5b5050505b5b5b505050565b600154600160a060020a031681565b600854600160a060020a031681565b600a54815600ea8e84a162c4602ea0c61acf85fa1242db8ce550e7a448d613e3c7dff2f06793a165627a7a7230582036f25230ff8e04974ed47406729a7f86b522c2cf97aacf6ac8942940711474560029", "networks": {}, "schema_version": "0.0.5", - "updated_at": 1494766301725 + "updated_at": 1499785642009 } \ No newline at end of file diff --git a/build/contracts/RecoveryQuorum.json b/build/contracts/RecoveryQuorum.json index a5ccfdc..555c263 100644 --- a/build/contracts/RecoveryQuorum.json +++ b/build/contracts/RecoveryQuorum.json @@ -2,7 +2,7 @@ "contract_name": "RecoveryQuorum", "abi": [ { - "constant": false, + "constant": true, "inputs": [ { "name": "_proposedUserKey", @@ -90,7 +90,7 @@ "type": "function" }, { - "constant": false, + "constant": true, "inputs": [], "name": "neededSignatures", "outputs": [ @@ -177,7 +177,7 @@ "type": "event" } ], - "unlinked_binary": "0x6060604052346100005760405161104438038061104483398101604052805160208201519091015b60008054600160a060020a031916600160a060020a0384161781555b8151811015610174576001805480600101828181548183558181151161008e5760008381526020902061008e9181019083015b8082111561008a5760008155600101610076565b5090565b5b505050916000526020600020900160005b848481518110156100005790602001906020020151909190916101000a815481600160a060020a030219169083600160a060020a0316021790555050606060405190810160405280651cae8c13e0008152602001600081526020016000600160a060020a0316815250600260008484815181101561000057602090810291909101810151600160a060020a0390811683528282019390935260409182016000208451815590840151600182015592015160029092018054600160a060020a031916929091169190911790555b600101610043565b5b5050505b610ebc806101886000396000f3006060604052361561007d5763ffffffff60e060020a60003504166323d44dee8114610082578063245d1314146100ad5780633f31281a146100c8578063587cde1e146100e357806364bc82c314610123578063943e170d1461014f578063a39fac121461016e578063e71e592b146101d6578063f77c479114610260575b610000565b346100005761009b600160a060020a0360043516610289565b60408051918252519081900360200190f35b34610000576100c6600160a060020a036004351661037d565b005b34610000576100c6600160a060020a036004351661047a565b005b34610000576100fc600160a060020a036004351661060d565b604080519384526020840192909252600160a060020a031682820152519081900360600190f35b3461000057610133600435610636565b60408051600160a060020a039092168252519081900360200190f35b346100005761009b610666565b60408051918252519081900360200190f35b346100005761017b610708565b60408051602080825283518183015283519192839290830191858101910280838382156101c3575b8051825260208311156101c357601f1990920191602091820191016101a3565b5050509050019250505060405180910390f35b34610000576100c6600480803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843750506040805187358901803560208181028481018201909552818452989a99890198929750908201955093508392508501908490808284375094965061077395505050505050565b005b34610000576101336108e8565b60408051600160a060020a039092168252519081900360200190f35b6000805b6001548110156103765761030660026000600184815481101561000057906000526020600020900160005b9054600160a060020a036101009290920a90048116825260208083019390935260409182016000208251606081018452815481526001820154948101949094526002015416908201526108f7565b8015610361575082600160a060020a031660026000600184815481101561000057906000526020600020900160005b9054600160a060020a036101009290920a90048116825260208201929092526040016000206002015416145b1561036d576001909101905b5b60010161028d565b5b50919050565b600160a060020a0333811660009081526002602081815260409283902083516060810185528154815260018201549281019290925290910154909216908201526103c690610922565b156104765733600160a060020a039081166000908152600260208190526040909120018054600160a060020a0319169183169190911790556104078161047a565b60408051600160a060020a0333166020820152818152600e818301527f7369676e557365724368616e6765000000000000000000000000000000000000606082015290517fea8e84a162c4602ea0c61acf85fa1242db8ce550e7a448d613e3c7dff2f067939181900360800190a15b5b50565b6000610484610666565b61048d83610289565b106106075760008054604080517fc998e9dd000000000000000000000000000000000000000000000000000000008152600160a060020a0386811660048301529151919092169263c998e9dd926024808201939182900301818387803b156100005760325a03f11561000057505050600090505b600154811015610607574260026000600184815481101561000057906000526020600020900160005b9054906101000a9004600160a060020a0316600160a060020a0316600160a060020a031681526020019081526020016000206001015411156105ab574260026000600184815481101561000057906000526020600020900160005b9054600160a060020a036101009290920a90041681526020810191909152604001600020555b60026000600183815481101561000057906000526020600020900160005b9054600160a060020a036101009290920a900416815260208101919091526040016000206002018054600160a060020a03191690555b600101610501565b5b5b5050565b6002602081905260009182526040909120805460018201549190920154600160a060020a031683565b600181815481101561000057906000526020600020900160005b915054906101000a9004600160a060020a031681565b600080805b6001548110156106f9576106e460026000600184815481101561000057906000526020600020900160005b9054600160a060020a036101009290920a900481168252602080830193909352604091820160002082516060810184528154815260018201549481019490945260020154169082015261092c565b156106f0576001909101905b5b60010161066b565b6002820460010192505b505090565b60408051602081810183526000825260018054845181840281018401909552808552929392909183018282801561076857602002820191906000526020600020905b8154600160a060020a0316815260019091019060200180831161074a575b505050505090505b90565b6000805460408051602090810184905281517f1c1c228900000000000000000000000000000000000000000000000000000000815291518493600160a060020a031692631c1c228992600480830193919282900301818787803b156100005760325a03f1156100005750505060405180519050600160a060020a031633600160a060020a031614156108e057600091505b83518210156108365761082a848381518110156100005790602001906020020151610960565b5b600190910190610804565b61083e610ac1565b5060005b825181101561087157610868838281518110156100005790602001906020020151610cdc565b5b600101610842565b60408051600160a060020a03331660208201528181526010818301527f7265706c61636544656c65676174657300000000000000000000000000000000606082015290517fea8e84a162c4602ea0c61acf85fa1242db8ce550e7a448d613e3c7dff2f067939181900360800190a15b5b5b50505050565b600054600160a060020a031681565b60006109028261092c565b801561091a57506040820151600160a060020a031615155b90505b919050565b805115155b919050565b600061093782610922565b8015610949575061094782610e84565b155b801561091a5750816020015142115b90505b919050565b42600060009054906101000a9004600160a060020a0316600160a060020a0316631ec9f7b56000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f1156100005750506040805151600160a060020a038516600090815260026020529190912054920190911115905061047657600160a060020a03811660009081526002602052604090206001015442901115610a3357600160a060020a0381166000908152600260205260409020429055610476565b42600060009054906101000a9004600160a060020a0316600160a060020a0316631ec9f7b56000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f1156100005750506040805151600160a060020a03851660009081526002602052919091209201909155505b5b5b50565b60005b60015481101561047657610b3d60026000600184815481101561000057906000526020600020900160005b9054600160a060020a036101009290920a9004811682526020808301939093526040918201600020825160608101845281548152600182015494810194909452600201541690820152610e84565b15610ccf57600060026000600184815481101561000057906000526020600020900160005b9054906101000a9004600160a060020a0316600160a060020a0316600160a060020a0316815260200190815260200160002060000181905550600060026000600184815481101561000057906000526020600020900160005b9054906101000a9004600160a060020a0316600160a060020a0316600160a060020a0316815260200190815260200160002060010181905550600060026000600184815481101561000057906000526020600020900160005b90546101009190910a9004600160a060020a0390811682526020820192909252604090810160009081206002018054600160a060020a031916949093169390931790915580517fc6f315210000000000000000000000000000000000000000000000000000000081526004810184905260016024820152905173__ArrayLib______________________________9263c6f315219260448082019391829003018186803b156100005760325a03f41561000057505050610cd3565b6001015b610ac4565b5b50565b600160a060020a038082166000908152600260208181526040928390208351606081018552815481526001820154928101929092529091015490921690820152610d2590610922565b158015610d355750600154600f90105b1561047657606060405190810160405280651cae8c13e0008152602001600060009054906101000a9004600160a060020a0316600160a060020a0316631ec9f7b56000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b156100005760325a03f11561000057505060408051514201835260006020938401819052600160a060020a0386811682526002808652918390208651815594860151600180870191909155959092015193018054600160a060020a03191693909116929092179091555080548082018083558281838015829011610e4e57600083815260209020610e4e9181019083015b80821115610e4a5760008155600101610e36565b5090565b5b505050916000526020600020900160005b8154600160a060020a038086166101009390930a92830292021916179055505b5b50565b8051429011155b9190505600a165627a7a72305820c903da7784132f5c31dd104017432f2db6df8711988e0e3f62b882a52bc8ac8e0029", + "unlinked_binary": "0x6060604052341561000c57fe5b604051610ff2380380610ff283398101604052805160208201519091015b60008054600160a060020a031916600160a060020a0384161781555b815181101561015557600f811061005c57610155565b6001805480820161006d838261015e565b916000526020600020900160005b848481518110151561008957fe5b90602001906020020151909190916101000a815481600160a060020a030219169083600160a060020a0316021790555050606060405190810160405280651cae8c13e0008152602001600081526020016000600160a060020a03168152506002600084848151811015156100f957fe5b602090810291909101810151600160a060020a0390811683528282019390935260409182016000208451815590840151600182015592015160029092018054600160a060020a031916929091169190911790555b600101610046565b5b5050506101a9565b81548183558181151161018257600083815260209020610182918101908301610188565b5b505050565b6101a691905b808211156101a2576000815560010161018e565b5090565b90565b610e3a806101b86000396000f3006060604052361561007d5763ffffffff60e060020a60003504166323d44dee811461007f578063245d1314146100ad5780633f31281a146100cb578063587cde1e146100e957806364bc82c31461012c578063943e170d1461015b578063a39fac121461017d578063e71e592b146101e8578063f77c479114610275575bfe5b341561008757fe5b61009b600160a060020a03600435166102a1565b60408051918252519081900360200190f35b34156100b557fe5b6100c9600160a060020a036004351661039b565b005b34156100d357fe5b6100c9600160a060020a036004351661047a565b005b34156100f157fe5b610105600160a060020a0360043516610607565b604080519384526020840192909252600160a060020a031682820152519081900360600190f35b341561013457fe5b61013f600435610630565b60408051600160a060020a039092168252519081900360200190f35b341561016357fe5b61009b610662565b60408051918252519081900360200190f35b341561018557fe5b61018d610708565b60408051602080825283518183015283519192839290830191858101910280838382156101d5575b8051825260208311156101d557601f1990920191602091820191016101b5565b5050509050019250505060405180910390f35b34156101f057fe5b6100c9600480803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843750506040805187358901803560208181028481018201909552818452989a99890198929750908201955093508392508501908490808284375094965061077195505050505050565b005b341561027d57fe5b61013f6108c1565b60408051600160a060020a039092168252519081900360200190f35b6000805b60015481101561039457610321600260006001848154811015156102c557fe5b906000526020600020900160005b9054600160a060020a036101009290920a90048116825260208083019390935260409182016000208251606081018452815481526001820154948101949094526002015416908201526108d0565b801561037f575082600160a060020a03166002600060018481548110151561034557fe5b906000526020600020900160005b9054600160a060020a036101009290920a90048116825260208201929092526040016000206002015416145b1561038b576001909101905b5b6001016102a5565b5b50919050565b600160a060020a0333811660009081526002602081815260409283902083516060810185528154815260018201549281019290925290910154909216908201526103e4906108fb565b156104765733600160a060020a039081166000908152600260208190526040909120018054600160a060020a0319169183169190911790556104258161047a565b60408051600160a060020a0333166020820152818152600e81830152609060020a6d7369676e557365724368616e67650260608201529051600080516020610def8339815191529181900360800190a15b5b50565b6000610484610662565b61048d836102a1565b1061060157600080546040805160e060020a63c998e9dd028152600160a060020a0386811660048301529151919092169263c998e9dd926024808201939182900301818387803b15156104dc57fe5b6102c65a03f115156104ea57fe5b505050600090505b60015481101561060157426002600060018481548110151561051057fe5b906000526020600020900160005b9054906101000a9004600160a060020a0316600160a060020a0316600160a060020a031681526020019081526020016000206001015411156105a257426002600060018481548110151561056e57fe5b906000526020600020900160005b9054600160a060020a036101009290920a90041681526020810191909152604001600020555b600260006001838154811015156105b557fe5b906000526020600020900160005b9054600160a060020a036101009290920a900416815260208101919091526040016000206002018054600160a060020a03191690555b6001016104f2565b5b5b5050565b6002602081905260009182526040909120805460018201549190920154600160a060020a031683565b600180548290811061063e57fe5b906000526020600020900160005b915054906101000a9004600160a060020a031681565b600080805b6001548110156106f8576106e36002600060018481548110151561068757fe5b906000526020600020900160005b9054600160a060020a036101009290920a9004811682526020808301939093526040918201600020825160608101845281548152600182015494810194909452600201541690820152610905565b156106ef576001909101905b5b600101610667565b6002825b0460010192505b505090565b610710610d91565b600180548060200260200160405190810160405280929190818152602001828054801561076657602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311610748575b505050505090505b90565b60008054604080516020908101849052815160e060020a631c1c228902815291518493600160a060020a031692631c1c228992600480830193919282900301818787803b15156107bd57fe5b6102c65a03f115156107cb57fe5b50505060405180519050600160a060020a031633600160a060020a031614156108b957600091505b83518210156108285761081c848381518110151561080d57fe5b90602001906020020151610939565b5b6001909101906107f3565b610830610aa8565b5060005b82518110156108665761085d838281518110151561084e57fe5b90602001906020020151610c0a565b5b600101610834565b60408051600160a060020a0333166020820152818152601081830152608060020a6f7265706c61636544656c6567617465730260608201529051600080516020610def8339815191529181900360800190a15b5b5b50505050565b600054600160a060020a031681565b60006108db82610905565b80156108f357506040820151600160a060020a031615155b90505b919050565b805115155b919050565b6000610910826108fb565b8015610922575061092082610d85565b155b80156108f35750816020015142115b90505b919050565b42600060009054906101000a9004600160a060020a0316600160a060020a0316631ec9f7b56000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b151561099557fe5b6102c65a03f115156109a357fe5b50506040805151600160a060020a038516600090815260026020529190912054920190911115905061047657600160a060020a03811660009081526002602052604090206001015442901115610a1357600160a060020a0381166000908152600260205260409020429055610476565b42600060009054906101000a9004600160a060020a0316600160a060020a0316631ec9f7b56000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b1515610a6f57fe5b6102c65a03f11515610a7d57fe5b50506040805151600160a060020a03851660009081526002602052919091209201909155505b5b5b50565b60005b60015481101561047657610b2760026000600184815481101515610acb57fe5b906000526020600020900160005b9054600160a060020a036101009290920a9004811682526020808301939093526040918201600020825160608101845281548152600182015494810194909452600201541690820152610d85565b15610bfd5760026000600183815481101515610b3f57fe5b906000526020600020900160005b9054600160a060020a036101009290920a9004168152602081019190915260409081016000908120818155600180820183905560029091018054600160a060020a0319169055825160e060020a63c6f31521028152600481018590526024810191909152915173__ArrayLib______________________________9263c6f31521926044808301939192829003018186803b1515610be757fe5b6102c65a03f41515610bf557fe5b505050610c01565b6001015b610aab565b5b50565b600160a060020a038082166000908152600260208181526040928390208351606081018552815481526001820154928101929092529091015490921690820152610c53906108fb565b158015610c635750600154600f90105b1561047657606060405190810160405280651cae8c13e0008152602001600060009054906101000a9004600160a060020a0316600160a060020a0316631ec9f7b56000604051602001526040518163ffffffff1660e060020a028152600401809050602060405180830381600087803b1515610cdb57fe5b6102c65a03f11515610ce957fe5b505060408051514201835260006020938401819052600160a060020a0386811682526002808652918390208651815594860151600180870191909155959092015193018054600160a060020a0319169390911692909217909155508054808201610d538382610da3565b916000526020600020900160005b8154600160a060020a038086166101009390930a92830292021916179055505b5b50565b8051429011155b919050565b60408051602081019091526000815290565b815481835581811511610dc757600083815260209020610dc7918101908301610dcd565b5b505050565b61076e91905b80821115610de75760008155600101610dd3565b5090565b905600ea8e84a162c4602ea0c61acf85fa1242db8ce550e7a448d613e3c7dff2f06793a165627a7a723058206ab392f107a7aa73b72b027ba2cd2ae63d7d926745e054e647fd0e718bc2301c0029", "networks": { "4": { "events": { @@ -206,5 +206,5 @@ } }, "schema_version": "0.0.5", - "updated_at": 1494766483143 + "updated_at": 1499785642009 } \ No newline at end of file diff --git a/build/contracts/TestRegistry.json b/build/contracts/TestRegistry.json new file mode 100644 index 0000000..d1376b4 --- /dev/null +++ b/build/contracts/TestRegistry.json @@ -0,0 +1,73 @@ +{ + "contract_name": "TestRegistry", + "abi": [ + { + "constant": true, + "inputs": [ + { + "name": "", + "type": "address" + } + ], + "name": "registry", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "with", + "type": "uint256" + }, + { + "name": "many", + "type": "address" + }, + { + "name": "strange", + "type": "string" + }, + { + "name": "params", + "type": "uint256" + } + ], + "name": "reallyLongFunctionName", + "outputs": [], + "payable": false, + "type": "function" + }, + { + "constant": false, + "inputs": [], + "name": "testThrow", + "outputs": [], + "payable": false, + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "x", + "type": "uint256" + } + ], + "name": "register", + "outputs": [], + "payable": false, + "type": "function" + } + ], + "unlinked_binary": "0x6060604052341561000c57fe5b5b6101858061001c6000396000f300606060405263ffffffff60e060020a600035041663038defd781146100425780630da9a4241461007057806350bff6bf146100d7578063f207564e146100e9575bfe5b341561004a57fe5b61005e600160a060020a03600435166100fe565b60408051918252519081900360200190f35b341561007857fe5b604080516020600460443581810135601f81018490048402850184019095528484526100d59482359460248035600160a060020a031695606494929391909201918190840183828082843750949650509335935061011092505050565b005b34156100df57fe5b6100d5610132565b005b34156100f157fe5b6100d560043561013a565b005b60006020819052908152604090205481565b600160a060020a03831660009081526020819052604090208190555b50505050565b60006000fd5b565b600160a060020a03331660009081526020819052604090208190555b505600a165627a7a72305820b8aa772571a057935c76c8e11f222ac8bb8536e0d759d0f81cb5ec845a2a6c460029", + "networks": {}, + "schema_version": "0.0.5", + "updated_at": 1499785642009 +} \ No newline at end of file diff --git a/build/contracts/TxRelay.json b/build/contracts/TxRelay.json new file mode 100644 index 0000000..a5363bc --- /dev/null +++ b/build/contracts/TxRelay.json @@ -0,0 +1,74 @@ +{ + "contract_name": "TxRelay", + "abi": [ + { + "constant": true, + "inputs": [ + { + "name": "add", + "type": "address" + } + ], + "name": "getNonce", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "sigV", + "type": "uint8" + }, + { + "name": "sigR", + "type": "bytes32" + }, + { + "name": "sigS", + "type": "bytes32" + }, + { + "name": "destination", + "type": "address" + }, + { + "name": "data", + "type": "bytes" + } + ], + "name": "relayMetaTx", + "outputs": [], + "payable": false, + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "b", + "type": "bytes" + } + ], + "name": "getAddress", + "outputs": [ + { + "name": "a", + "type": "address" + } + ], + "payable": false, + "type": "function" + } + ], + "unlinked_binary": "0x6060604052341561000c57fe5b5b6103ff8061001c6000396000f300606060405263ffffffff60e060020a6000350416632d0335ab8114610037578063b4fadcad14610065578063c47cf5de146100d2575bfe5b341561003f57fe5b610053600160a060020a0360043516610144565b60408051918252519081900360200190f35b341561006d57fe5b604080516020601f6084356004818101359283018490048402850184019095528184526100d09460ff81351694602480359560443595600160a060020a03606435169560a494930191819084018382808284375094965061016395505050505050565b005b34156100da57fe5b610128600480803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437509496506103aa95505050505050565b60408051600160a060020a039092168252519081900360200190f35b600160a060020a0381166000908152602081905260409020545b919050565b600060006000610172846103aa565b9250306000600085600160a060020a0316600160a060020a03168152602001908152602001600020548686336040518086600160a060020a0316600160a060020a0316606060020a02815260140185815260200184600160a060020a0316600160a060020a0316606060020a02815260140183805190602001908083835b6020831061020f5780518252601f1990920191602091820191016101f0565b6001836020036101000a03801982511681845116808217855250505050505090500182600160a060020a0316600160a060020a0316606060020a0281526014019550505050505060405180910390209150600182898989604051806000526020016040526000604051602001526040518085600019166000191681526020018460ff1660ff16815260200183600019166000191681526020018260001916600019168152602001945050505050602060405160208103908084039060008661646e5a03f115156102db57fe5b505060408051601f190151600160a060020a038086166000818152602081905293909320805460010190559092508216146103165760006000fd5b84600160a060020a03168460405180828051906020019080838360008314610359575b80518252602083111561035957601f199092019160209182019101610339565b505050905090810190601f1680156103855780820380516001836020036101000a031916815260200191505b5091505060006040518083038160008661646e5a03f15050505b5b5050505050505050565b60006024825110156103be5750600061015e565b506024810151600160a060020a03165b9190505600a165627a7a723058204745660e5fb80bc04f5a0f6ba35168ca3cf7706d8563da424b18c4e5c2012c330029", + "networks": {}, + "schema_version": "0.0.5", + "updated_at": 1499785642009 +} \ No newline at end of file diff --git a/contracts/IdentityFactory.sol b/contracts/IdentityFactory.sol index a594d65..5c83695 100644 --- a/contracts/IdentityFactory.sol +++ b/contracts/IdentityFactory.sol @@ -1,4 +1,4 @@ -pragma solidity 0.4.8; +pragma solidity 0.4.11; import "./RecoveryQuorum.sol"; diff --git a/contracts/IdentityFactoryWithRecoveryKey.sol b/contracts/IdentityFactoryWithRecoveryKey.sol index fe54d98..1ee2ece 100644 --- a/contracts/IdentityFactoryWithRecoveryKey.sol +++ b/contracts/IdentityFactoryWithRecoveryKey.sol @@ -1,4 +1,4 @@ -pragma solidity 0.4.8; +pragma solidity 0.4.11; import "./RecoverableController.sol"; diff --git a/contracts/IdentityManager.sol b/contracts/IdentityManager.sol new file mode 100644 index 0000000..5651042 --- /dev/null +++ b/contracts/IdentityManager.sol @@ -0,0 +1,219 @@ +pragma solidity 0.4.11; +import "./Proxy.sol"; + + +contract IdentityManager { + + event IdentityCreated( + address indexed identity, + address indexed creator, + address owner, + address indexed recoveryKey); + + event OwnerAdded( + address indexed identity, + address indexed owner, + address instigator); + + event OwnerRemoved( + address indexed identity, + address indexed owner, + address instigator); + + event RecoveryChanged( + address indexed identity, + address indexed recoveryKey, + address instigator); + + event MigrationInitiated( + address indexed identity, + address indexed newIdManager, + address instigator); + + event MigrationCanceled( + address indexed identity, + address indexed newIdManager, + address instigator); + + event MigrationFinalized( + address indexed identity, + address indexed newIdManager, + address instigator); + + uint adminTimeLock; + uint userTimeLock; + uint adminRate; + address relay; + + mapping(address => mapping(address => uint)) owners; + mapping(address => address) recoveryKeys; + mapping(address => mapping(address => uint)) limiter; + + struct Migration { + uint startTime; + address newAddress; + } + mapping(address => Migration) migrations; + + modifier onlyAuthorized() { + if (msg.sender == relay || checkMessageData(msg.sender)) _; + else throw; + } + + modifier onlyOwner(address identity, address sender) { + if (owners[identity][sender] > 0 && (owners[identity][sender] + userTimeLock) <= now ) _; + else throw; + } + + modifier onlyOlderOwner(address identity, address sender) { + if (owners[identity][sender] > 0 && (owners[identity][sender] + adminTimeLock) <= now) _; + else throw; + } + + modifier onlyRecovery(address identity, address sender) { + if (recoveryKeys[identity] == sender) _; + else throw; + } + + modifier rateLimited(Proxy identity, address sender) { + if ((limiter[identity][sender] + adminRate) < now) { + limiter[identity][sender] = now; + _ ; + } else throw; + } + + modifier validRecovery(address newKey) { //protects against some weird attacks + if (newKey != address(0)) _; + else throw; + } + + /// @dev Contract constructor sets initial timelocks and meta-tx relay address + /// @param _userTimeLock Time before new owner can control proxy + /// @param _adminTimeLock Time before new owner can add/remove owners + /// @param _adminRate Time period used for rate limiting a given key for admin functionality + /// @param _relayAddress Address of meta transaction relay contract + function IdentityManager(uint _userTimeLock, uint _adminTimeLock, uint _adminRate, address _relayAddress) { + adminTimeLock = _adminTimeLock; + userTimeLock = _userTimeLock; + adminRate = _adminRate; + relay = _relayAddress; + } + + /// @dev Creates a new proxy contract for an owner and recovery + /// @param owner Key who can use this contract to control proxy. Given full power + /// @param recoveryKey Key of recovery network or address from seed to recovery proxy + /// Gas cost of ~300,000 + function createIdentity(address owner, address recoveryKey) validRecovery(recoveryKey) { + Proxy identity = new Proxy(); + owners[identity][owner] = now - adminTimeLock; // This is to ensure original owner has full power from day one + recoveryKeys[identity] = recoveryKey; + IdentityCreated(identity, msg.sender, owner, recoveryKey); + } + + /// @dev Allows a user to transfer control of existing proxy to this contract. Must come through proxy + /// @param owner Key who can use this contract to control proxy. Given full power + /// @param recoveryKey Key of recovery network or address from seed to recovery proxy + /// Note: User must change owner of proxy to this contract after calling this + function registerIdentity(address owner, address recoveryKey) validRecovery(recoveryKey) { + if (recoveryKeys[msg.sender] > 0 ) throw; // Invariant enforced w/ validRecovery modifier + owners[msg.sender][owner] = now - adminTimeLock; // Owner has full power from day one + recoveryKeys[msg.sender] = recoveryKey; + IdentityCreated(msg.sender, msg.sender, owner, recoveryKey); + } + + /// @dev Allows a user to forward a call through their proxy. + function forwardTo(address sender, Proxy identity, address destination, uint value, bytes data) + onlyAuthorized + onlyOwner(identity, sender) + { + identity.forward(destination, value, data); + } + + /// @dev Allows an olderOwner to add a new owner instantly + function addOwner(address sender, Proxy identity, address newOwner) + onlyAuthorized + onlyOlderOwner(identity, sender) + rateLimited(identity, sender) + { + owners[identity][newOwner] = now - userTimeLock; + OwnerAdded(identity, newOwner, sender); + } + + /// @dev Allows a recoveryKey to add a new owner with userTimeLock waiting time + function addOwnerFromRecovery(address sender, Proxy identity, address newOwner) + onlyAuthorized + onlyRecovery(identity, sender) + rateLimited(identity, sender) + { + if (owners[identity][newOwner] > 0) throw; + owners[identity][newOwner] = now; + OwnerAdded(identity, newOwner, sender); + } + + /// @dev Allows an owner to remove another owner instantly + function removeOwner(address sender, Proxy identity, address owner) + onlyAuthorized + onlyOlderOwner(identity, sender) + rateLimited(identity, sender) + { + delete owners[identity][owner]; + OwnerRemoved(identity, owner, sender); + } + + /// @dev Allows an owner to change the recoveryKey instantly + function changeRecovery(address sender, Proxy identity, address recoveryKey) + onlyAuthorized + onlyOlderOwner(identity, sender) + rateLimited(identity, sender) + validRecovery(recoveryKey) + { + recoveryKeys[identity] = recoveryKey; + RecoveryChanged(identity, recoveryKey, sender); + } + + /// @dev Allows an owner to begin process of transfering proxy to new IdentityManager + function initiateMigration(address sender, Proxy identity, address newIdManager) + onlyAuthorized + onlyOlderOwner(identity, sender) + { + migrations[identity].startTime = now; + migrations[identity].newAddress = newIdManager; + MigrationInitiated(identity, newIdManager, sender); + } + + /// @dev Allows an owner to cancel the process of transfering proxy to new IdentityManager + function cancelMigration(address sender, Proxy identity) onlyAuthorized onlyOwner(identity, sender) { + MigrationCanceled(identity, migrations[identity].newAddress, sender); + delete migrations[identity]; + } + + /// @dev Allows an owner to finalize and completly transfer proxy to new IdentityManager + /// Note: before transfering to a new address, make sure this address is "ready to recieve" the proxy. + /// Not doing so risks the proxy becoming stuck. + function finalizeMigration(address sender, Proxy identity) onlyAuthorized onlyOlderOwner(identity, sender) { + if (migrations[identity].startTime > 0 && migrations[identity].startTime + adminTimeLock < now) { + address newIdManager = migrations[identity].newAddress; + delete migrations[identity]; + identity.transfer(newIdManager); + MigrationFinalized(identity, newIdManager, sender); + } + } + + //Checks that address a is the first input in msg.data. + //Has very minimal gas overhead. + function checkMessageData(address a) constant internal returns (bool t) { + if (msg.data.length < 36) return false; + assembly { + let mask := 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + t := eq(a, and(mask, calldataload(4))) + } + } + + function isOwner(address identity, address owner) constant returns (bool) { + return owners[identity][owner] != 0; + } + + function isRecovery(address identity, address recoveryKey) constant returns (bool) { + return recoveryKeys[identity] == recoveryKey; + } +} diff --git a/contracts/Proxy.sol b/contracts/Proxy.sol index 103ae3d..ff32e2e 100644 --- a/contracts/Proxy.sol +++ b/contracts/Proxy.sol @@ -1,4 +1,4 @@ -pragma solidity 0.4.8; +pragma solidity 0.4.11; import "./libs/Owned.sol"; diff --git a/contracts/RecoverableController.sol b/contracts/RecoverableController.sol index ca417e5..9e9f9bf 100644 --- a/contracts/RecoverableController.sol +++ b/contracts/RecoverableController.sol @@ -1,4 +1,4 @@ -pragma solidity 0.4.8; +pragma solidity 0.4.11; import "./Proxy.sol"; @@ -92,4 +92,3 @@ contract RecoverableController { userKey = _userKey; } } - diff --git a/contracts/RecoveryQuorum.sol b/contracts/RecoveryQuorum.sol index cf712e2..4d78de6 100644 --- a/contracts/RecoveryQuorum.sol +++ b/contracts/RecoveryQuorum.sol @@ -1,4 +1,4 @@ -pragma solidity 0.4.8; +pragma solidity 0.4.11; import "./RecoverableController.sol"; import "./libs/ArrayLib.sol"; diff --git a/contracts/TxRelay.sol b/contracts/TxRelay.sol new file mode 100644 index 0000000..67d91c3 --- /dev/null +++ b/contracts/TxRelay.sol @@ -0,0 +1,61 @@ +pragma solidity 0.4.11; + + +//This contract is meant as a "singleton" forwarding contract. +//Eventually, it will be able to forward any transaction to +//Any contract that is built to accept it. +contract TxRelay { + + // Note: This is a local nonce. + // Different from the nonce defined w/in protocol. + mapping(address => uint) nonce; + + /* + * @dev Relays meta transactions + * @param sigV, sigR, sigS ECDSA signature on some data to be forwarded + * @param destination Location the meta-tx should be forwarded to + * @param data The bytes necessary to call the function in the destination contract. + Note, the first encoded argument in data must be address of the signer + */ + function relayMetaTx(uint8 sigV, bytes32 sigR, bytes32 sigS, + address destination, bytes data) { + + address claimedSender = getAddress(data); + // relay :: nonce :: destination :: data :: relayer + bytes32 h = sha3(this, nonce[claimedSender], destination, data, msg.sender); + address addressFromSig = ecrecover(h, sigV, sigR, sigS); + + nonce[claimedSender]++; + + if (claimedSender != addressFromSig) throw; + + if (!destination.call(data)) { + //In the future, add event here. Has semi-complex gas considerations. See EIP 150 + } + } + + /* + * @dev Gets an address encoded as the first argument in transaction data + * @param b The byte array that should have an address as first argument + * @returns a The address retrieved from the array + (Optimization based on work by tjade273) + */ + function getAddress(bytes b) constant returns (address a) { + if (b.length < 36) return address(0); + assembly { + let mask := 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + a := and(mask, mload(add(b, 36))) + //36 is the offset of the first param of the data, if encoded properly. + //4 bytes for the function signature, and 32 for the addess. + } + } + + /* + * @dev Returns the local nonce of an account. + * @param add The address to return the nonce for. + * @return The specific-to-this-contract nonce of the address provided + */ + function getNonce(address add) constant returns (uint) { + return nonce[add]; + } +} diff --git a/contracts/libs/ArrayLib.sol b/contracts/libs/ArrayLib.sol index bc84def..534038e 100644 --- a/contracts/libs/ArrayLib.sol +++ b/contracts/libs/ArrayLib.sol @@ -1,4 +1,4 @@ -pragma solidity 0.4.8; +pragma solidity 0.4.11; library ArrayLib { diff --git a/contracts/libs/Owned.sol b/contracts/libs/Owned.sol index ce2e523..a042af9 100644 --- a/contracts/libs/Owned.sol +++ b/contracts/libs/Owned.sol @@ -1,4 +1,4 @@ -pragma solidity 0.4.8; +pragma solidity 0.4.11; contract Owned { diff --git a/contracts/misc/MetaTestRegistry.sol b/contracts/misc/MetaTestRegistry.sol new file mode 100644 index 0000000..08b23ec --- /dev/null +++ b/contracts/misc/MetaTestRegistry.sol @@ -0,0 +1,20 @@ +pragma solidity 0.4.11; + + +// This contract is only used for testing purposes. +contract MetaTestRegistry { + + mapping(address => uint) public registry; + + function register(address sender, uint x) { + registry[sender] = x; + } + + function reallyLongFunctionName(uint with, address many, string strange, uint params) { + registry[many] = params; + } + + function testThrow(address sender) { + throw; + } +} diff --git a/contracts/misc/Migrations.sol b/contracts/misc/Migrations.sol index 3752313..28ffa35 100644 --- a/contracts/misc/Migrations.sol +++ b/contracts/misc/Migrations.sol @@ -1,4 +1,4 @@ -pragma solidity 0.4.8; +pragma solidity 0.4.11; contract Migrations { address public owner; diff --git a/contracts/misc/TestRegistry.sol b/contracts/misc/TestRegistry.sol index c62af9d..862726a 100644 --- a/contracts/misc/TestRegistry.sol +++ b/contracts/misc/TestRegistry.sol @@ -1,5 +1,5 @@ // This contract is only used for testing purposes. -pragma solidity ^0.4.8; +pragma solidity 0.4.11; contract TestRegistry { diff --git a/index.js b/index.js index b660434..dceb4f7 100644 --- a/index.js +++ b/index.js @@ -5,4 +5,6 @@ module.exports = { RecoverableController: require('./build/contracts/RecoverableController.json'), Proxy: require('./build/contracts/Proxy.json'), RecoveryQuorum: require('./build/contracts/RecoveryQuorum.json'), + TxRelay: require('./build/contracts/TxRelay.json'), + IdentityManager: require('./build/contracts/IdentityManager.json'), } diff --git a/migrations/3_deploy_meta_tx.js b/migrations/3_deploy_meta_tx.js new file mode 100644 index 0000000..fb96424 --- /dev/null +++ b/migrations/3_deploy_meta_tx.js @@ -0,0 +1,7 @@ +const MetaIdentityManager = artifacts.require('./MetaIdentityManager.sol') +const TxRelay = artifacts.require('./TxRelay.sol') + +module.exports = function (deployer) { + deployer.deploy(MetaIdentityManager) + deployer.deploy(TxRelay) +} diff --git a/package.json b/package.json index 3247bc2..a423fc4 100644 --- a/package.json +++ b/package.json @@ -34,12 +34,15 @@ "babel-preset-stage-2": "^6.24.1", "babel-preset-stage-3": "^6.24.1", "bluebird": "^3.5.0", + "eth-lightwallet": "^2.5.6", "eth-signer": "^0.2.2", "ethereumjs-testrpc": "^3.0.3", "ethjs-abi": "^0.1.9", + "left-pad": "^1.1.3", "node-plantuml": "^0.5.0", + "solidity-sha3": "^0.4.1", "solium": "^0.5.3", - "truffle": "3.1.2", + "truffle": "^3.4.3", "truffle-contract": "^1.1.10", "truffle-hdwallet-provider": "0.0.3" } diff --git a/test/compareCode.js b/test/compareCode.js index c2991d8..b6c3be9 100644 --- a/test/compareCode.js +++ b/test/compareCode.js @@ -7,4 +7,4 @@ async function compareCode(addr1, addr2) { assert.equal(c1, c2, 'the deployed contract has incorrect code') } -module.exports = compareCode +module.exports = compareCode \ No newline at end of file diff --git a/test/evmSnapshots.js b/test/evmSnapshots.js new file mode 100644 index 0000000..a709b72 --- /dev/null +++ b/test/evmSnapshots.js @@ -0,0 +1,32 @@ +function snapshot () { + return new Promise(function(resolve, reject){ + web3.currentProvider.sendAsync( + { + jsonrpc: "2.0", + method: "evm_snapshot", + params: [], + id: 0 + }, + resolve + ) + }) +} + +function revert (id) { + return new Promise(function(resolve, reject){ + web3.currentProvider.sendAsync( + { + jsonrpc: "2.0", + method: "evm_revert", + params: [id], + id: 0 + }, + resolve + ) + }) +} + +module.exports = { + snapshot: snapshot, + revert: revert +} diff --git a/test/identityManager.js b/test/identityManager.js new file mode 100644 index 0000000..4b2c83e --- /dev/null +++ b/test/identityManager.js @@ -0,0 +1,563 @@ +const lightwallet = require('eth-signer') +const evm_increaseTime = require('./evmIncreaseTime.js') +const snapshots = require('./evmSnapshots.js') +const IdentityManager = artifacts.require('IdentityManager') +const Proxy = artifacts.require('Proxy') +const TestRegistry = artifacts.require('TestRegistry') +const Promise = require('bluebird') +const compareCode = require('./compareCode') +web3.eth = Promise.promisifyAll(web3.eth) + +const LOG_NUMBER_1 = 1234 +const LOG_NUMBER_2 = 2345 + +const userTimeLock = 100; +const adminTimeLock = 1000; +const adminRate = 200; + +function getRandomNumber() { + return Math.floor(Math.random() * (1000000 - 1)) + 1; +} + +//From is who is actually signing. claimedFrom is the address that they claim to be (first input to most functions) +async function testForwardTo(testReg, identityManager, proxyAddress, fromAccount, claimedFrom, shouldEqual) { + let errorThrown = false + let testNum = getRandomNumber() + // Encode the transaction to send to the proxy contract + let data = lightwallet.txutils._encodeFunctionTxData('register', ['uint256'], [testNum]) + // Send forward request from the owner + try { + await identityManager.forwardTo(claimedFrom, proxyAddress, testReg.address, 0, '0x' + data, {from: fromAccount}) + } catch (e) { + errorThrown = e.message + } + let regData = await testReg.registry.call(proxyAddress) + if (shouldEqual) { + assert.isNotOk(errorThrown, 'An error should not have been thrown') + assert.equal(regData.toNumber(), testNum) + } else { + assert.match(errorThrown, /invalid opcode/, 'throws an error') + assert.notEqual(regData.toNumber(), testNum) + } +} + +async function testForwardToFromRelay(testReg, identityManager, proxyAddress, fromAccount, txRelayAddress, shouldEqual) { + let errorThrown = false + let testNum = getRandomNumber() + // Encode the transaction to send to the proxy contract + let data = lightwallet.txutils._encodeFunctionTxData('register', ['uint256'], [testNum]) + // Send forward request from the owner + try { + await identityManager.forwardTo(fromAccount, proxyAddress, testReg.address, 0, '0x' + data, {from: txRelayAddress}) + } catch (e) { + errorThrown = e.message + } + let regData = await testReg.registry.call(proxyAddress) + if (shouldEqual) { + assert.isNotOk(errorThrown, 'An error should not have been thrown') + assert.equal(regData.toNumber(), testNum) + } else { + assert.match(errorThrown, /invalid opcode/, 'throws an error') + assert.notEqual(regData.toNumber(), testNum) + } +} + + +contract('IdentityManager', (accounts) => { + let proxy + let deployedProxy + let testReg + let identityManager + let user1 + let user2 + let user3 + let user4 + let user5 + let nobody + let relay + + let recoveryKey + let recoveryKey2 + + let snapshotId + + before(async function() { + // Truffle deploys contracts with accounts[0] + user1 = accounts[0] + nobody = accounts[1] // has no authority + user2 = accounts[2] + user3 = accounts[3] + user4 = accounts[4] + user5 = accounts[5] + relay = accounts[6] + recoveryKey = accounts[8] + recoveryKey2 = accounts[9] + identityManager = await IdentityManager.new(userTimeLock, adminTimeLock, adminRate, relay) + deployedProxy = await Proxy.new({from: user1}) + testReg = await TestRegistry.deployed() + }) + + it('Correctly creates Identity', async function() { + let tx = await identityManager.createIdentity(user1, recoveryKey, {from: nobody}) + let log = tx.logs[0] + + assert.equal(log.event, 'IdentityCreated', 'wrong event') + assert.equal(log.args.owner, user1, 'Owner key is set in event') + assert.equal(log.args.recoveryKey, recoveryKey, 'Recovery key is set in event') + assert.equal(log.args.creator, nobody, 'Creator is set in event') + + await compareCode(log.args.identity, deployedProxy.address) + let proxyOwner = await Proxy.at(log.args.identity).owner.call() + assert.equal(proxyOwner, identityManager.address, 'Proxy owner should be the identity manager') + }) + + describe('existing identity', () => { + + beforeEach(async function() { + let tx = await identityManager.createIdentity(user1, recoveryKey, {from: nobody}) + let log = tx.logs[0] + assert.equal(log.event, 'IdentityCreated', 'wrong event') + proxy = Proxy.at(log.args.identity) + }) + + it('allow transactions initiated by owner', async function() { + await testForwardTo(testReg, identityManager, proxy.address, user1, user1, true) + }) + + it('don\'t allow transactions initiated by non owner', async function() { + await testForwardTo(testReg, identityManager, proxy.address, user2, user2, false) + }) + + it('don\'t allow transactions initiated by recoveryKey', async function() { + await testForwardTo(testReg, identityManager, proxy.address, recoveryKey, recoveryKey, false) + }) + + it('onlyAuthorized modifier allows in correct users/relay', async function () { + //Allow a user claimed to be themselves + await testForwardTo(testReg, identityManager, proxy.address, user1, user1, true) + //Do not allow a user claiming to be someone else. + let errorThrown = false + try { + await testForwardTo(testReg, identityManager, proxy.address, user2, user1, true) + } catch (e) { + assert.match(e.message, /invalid opcode/, "Should have thrown") + errorThrown = true + } + assert.isTrue(errorThrown, "should have thrown an error") + //Allow the transaction relay. + await testForwardToFromRelay(testReg, identityManager, proxy.address, user1, relay, true) + }) + + it('owner can add other owner', async function() { + let isOwner = await identityManager.isOwner(proxy.address, user5, {from: user1}) + assert.isFalse(isOwner, 'user5 should not be owner yet') + let tx = await identityManager.addOwner(user1, proxy.address, user5, {from: user1}) + let log = tx.logs[0] + assert.equal(log.event, 'OwnerAdded', 'should trigger correct event') + assert.equal(log.args.identity, + proxy.address, + 'event should be for correct proxy') + assert.equal(log.args.owner, + user5, + 'Owner key is set in event') + assert.equal(log.args.instigator, + user1, + 'Instigator key is set in event') + isOwner = await identityManager.isOwner(proxy.address, user5, {from: user1}) + assert.isTrue(isOwner, 'user5 should be owner now') + }) + + it('owner is rateLimited on some functions', async function() { + //User1 adds user5 + let tx = await identityManager.addOwner(user1, proxy.address, user5, {from: user1}) + let log = tx.logs[0] + assert.equal(log.event, 'OwnerAdded', 'should trigger correct event') //tests for correctness elsewhere + //User1 try to add another owner, should fail. + let errorThrown = false + try { + await identityManager.addOwner(user1, proxy.address, user4, {from: user1}) + } catch (e) { + assert.match(e.message, /invalid opcode/, "should have thrown") + errorThrown = true + } + assert.isTrue(errorThrown, "should have thrown") + //User1 try to remove a user. Should still be rate limited and fail. + errorThrown = false + try { + await identityManager.removeOwner(user1, proxy.address, user5, {from: user1}) + } catch (e) { + assert.match(e.message, /invalid opcode/, "should have thrown") + errorThrown = true + } + assert.isTrue(errorThrown, "should have thrown") + //user1 tries to change recovery, but is still rate limited + errorThrown = false + try { + await identityManager.changeRecovery(user1, proxy.address, recoveryKey2, {from: user1}) + } catch (e) { + assert.match(e.message, /invalid opcode/, "should have thrown") + errorThrown = true + } + assert.isTrue(errorThrown, "should have thrown") + //No longer rateLimited + await evm_increaseTime(adminTimeLock + 1) + //User1 tries to add another owner. Should be able to + tx = await identityManager.addOwner(user1, proxy.address, user4, {from: user1}) + log = tx.logs[0] + assert.equal(log.event, 'OwnerAdded', 'should trigger correct event') //tests for correctness elsewhere + //User1 try to remove a user. Should be rate limited and fail. + errorThrown = false + try { + await identityManager.removeOwner(user1, proxy.address, user5, {from: user1}) + } catch (e) { + assert.match(e.message, /invalid opcode/, "should have thrown") + errorThrown = true + } + assert.isTrue(errorThrown, "should have thrown") + //user1 tries to change recovery, but is still rate limited + errorThrown = false + try { + await identityManager.changeRecovery(user1, proxy.address, recoveryKey2, {from: user1}) + } catch (e) { + assert.match(e.message, /invalid opcode/, "should have thrown") + errorThrown = true + } + assert.isTrue(errorThrown, "should have thrown") + //no longer rateLimited + await evm_increaseTime(adminTimeLock + 1) + tx = await identityManager.removeOwner(user1, proxy.address, user5, {from: user1}) + log = tx.logs[0] + assert.equal(log.event, 'OwnerRemoved', 'should trigger correct event') + //user1 tries to change recovery, but is rate limited + errorThrown = false + try { + await identityManager.changeRecovery(user1, proxy.address, recoveryKey2, {from: user1}) + } catch (e) { + assert.match(e.message, /invalid opcode/, "should have thrown") + errorThrown = true + } + assert.isTrue(errorThrown, "should have thrown") + //no longer rateLimited + await evm_increaseTime(adminTimeLock + 1) + tx = await identityManager.changeRecovery(user1, proxy.address, recoveryKey2, {from: user1}) + log = tx.logs[0] + assert.equal(log.event, 'RecoveryChanged', 'should trigger correct event') + }) + + it('non-owner can not add other owner', async function() { + errorThrown = false + try { + await identityManager.addOwner(user3, proxy.address, user4, {from: user3}) + } catch(e) { + assert.match(e.message, /invalid opcode/, 'throws an error') + errorThrown = true + } + assert.isTrue(errorThrown, "should have thrown") + }) + + describe('new owner added by owner', () => { + beforeEach(async function() { + await identityManager.addOwner(user1, proxy.address, user2, {from: user1}) + errorThrown = false + }) + + it('within userTimeLock is allowed transactions', async function() { + await testForwardTo(testReg, identityManager, proxy.address, user2, user2, true) + }) + + describe('after userTimeLock', () => { + beforeEach(() => evm_increaseTime(userTimeLock)) + + it('Allow transactions', async function() { + await testForwardTo(testReg, identityManager, proxy.address, user2, user2, true) + }) + + it('can not add other owner yet', async function() { + let errorThrown = false + try { + await identityManager.addOwner(user2, proxy.address, user4, {from: user2}) + } catch(e) { + assert.match(e.message, /invalid opcode/, 'throws an error') + errorThrown = true + } + assert.isTrue(errorThrown, 'Should have thrown') + }) + + it('can not remove other owner yet', async function() { + let errorThrown = false + try { + await identityManager.removeOwner(user2, proxy.address, user1, {from: user2}) + } catch(e) { + assert.match(e.message, /invalid opcode/, 'throws an error') + errorThrown = true + } + assert.isTrue(errorThrown, 'Should have thrown') + }) + + it('can not change recoveryKey yet', async function() { + let errorThrown = false + try { + await identityManager.changeRecovery(user2, proxy.address, recoveryKey2, {from: user2}) + } catch(e) { + assert.match(e.message, /invalid opcode/, 'throws an error') + errorThrown = true + } + assert.isTrue(errorThrown, 'Should have thrown') + }) + }) + + describe('after adminTimeLock', () => { + beforeEach(() => evm_increaseTime(adminTimeLock)) + + it('can add new owner', async function() { + let tx = await identityManager.addOwner(user2, proxy.address, user3, {from: user2}) + const log = tx.logs[0] + assert.equal(log.args.owner, + user3, + 'Owner key is set in event') + assert.equal(log.args.instigator, + user2, + 'Instigator key is set in event') + }) + + it('can remove other owner', async function() { + let tx = await identityManager.removeOwner(user2, proxy.address, user1, {from: user2}) + const log = tx.logs[0] + assert.equal(log.args.owner, + user1, + 'Owner key is set in event') + assert.equal(log.args.instigator, + user2, + 'Instigator key is set in event') + }) + + it('can change recoveryKey', async function() { + let isRecovery = await identityManager.isRecovery(proxy.address, recoveryKey2, {from: user1}) + assert.isFalse(isRecovery, 'recoveryKey2 should not be recovery yet') + let tx = await identityManager.changeRecovery(user2, proxy.address, recoveryKey2, {from: user2}) + const log = tx.logs[0] + assert.equal(log.args.recoveryKey, + recoveryKey2, + 'recoveryKey key is set in event') + assert.equal(log.args.instigator, + user2, + 'Instigator key is set in event') + isRecovery = await identityManager.isRecovery(proxy.address, recoveryKey2, {from: user1}) + assert.isTrue(isRecovery, 'recoveryKey2 should be recovery now') + }) + }) + }) + + describe('new owner added by recoveryKey', () => { + beforeEach(async function() { + await identityManager.addOwnerFromRecovery(recoveryKey, proxy.address, user2, {from: recoveryKey}) + }) + + it('recoveryKey is rate limited in added new owners', async function () { + //should be rate limited when trying again + let errorThrown = false + try { + await identityManager.addOwnerFromRecovery(recoveryKey, proxy.address, user4, {from: recoveryKey}) + } catch (e) { + assert.match(e.message, /invalid opcode/, "should have thrown") + errorThrown = true + } + assert.isTrue(errorThrown, "should have thrown") + //should no longer be rateLimited + await evm_increaseTime(adminTimeLock + 1) + tx = await identityManager.addOwnerFromRecovery(recoveryKey, proxy.address, user4, {from: recoveryKey}) + assert.equal(tx.logs[0].event, 'OwnerAdded', 'should trigger correct event') + }) + + it('within userTimeLock is not allowed transactions', async function() { + await testForwardTo(testReg, identityManager, proxy.address, user2, user2, false) + }) + + describe('after userTimeLock', () => { + beforeEach(() => evm_increaseTime(userTimeLock)) + + it('Allow transactions', async function() { + await testForwardTo(testReg, identityManager, proxy.address, user2, user2, true) + }) + }) + + describe('after adminTimeLock', () => { + beforeEach(() => evm_increaseTime(adminTimeLock)) + + it('can add new owner', async function() { + let tx = await identityManager.addOwner(user2, proxy.address, user3, {from: user2}) + const log = tx.logs[0] + assert.equal(log.args.owner, + user3, + 'Owner key is set in event') + assert.equal(log.args.instigator, + user2, + 'Instigator key is set in event') + }) + + it('can remove other owner', async function() { + let tx = await identityManager.removeOwner(user2, proxy.address, user1, {from: user2}) + const log = tx.logs[0] + assert.equal(log.args.owner, + user1, + 'Owner key is set in event') + assert.equal(log.args.instigator, + user2, + 'Instigator key is set in event') + }) + + it('can change recoveryKey', async function() { + let tx = await identityManager.changeRecovery(user2, proxy.address, recoveryKey2, {from: user2}) + const log = tx.logs[0] + assert.equal(log.args.recoveryKey, + recoveryKey2, + 'recoveryKey key is set in event') + assert.equal(log.args.instigator, + user2, + 'Instigator key is set in event') + }) + }) + }) + }) + + describe('migration', () => { + let newIdenManager + beforeEach(async function() { + let tx = await identityManager.createIdentity(user1, recoveryKey, {from: nobody}) + let log = tx.logs[0] + assert.equal(log.event, 'IdentityCreated', 'wrong event') + proxy = Proxy.at(log.args.identity) + newIdenManager = await IdentityManager.new(userTimeLock, adminTimeLock, adminRate, relay) + //user2 is now a younger owner, while user1 is an olderowner + tx = await identityManager.addOwner(user1, proxy.address, user2, {from: user1}) + log = tx.logs[0] + assert.equal(log.event, 'OwnerAdded', 'wrong event') + assert.equal(log.args.identity, proxy.address, 'wrong proxy') + assert.equal(log.args.owner, user2, 'wrong owner added') + assert.equal(log.args.instigator, user1, 'wrong initiator') + }) + + it('older owner can start transfer', async function() { + let tx = await identityManager.initiateMigration(user1, proxy.address, newIdenManager.address, {from: user1}) + let log = tx.logs[0] + assert.equal(log.event, 'MigrationInitiated', 'wrong event initiated') + assert.equal(log.args.identity, proxy.address, 'migrating wrong proxy') + assert.equal(log.args.newIdManager, newIdenManager.address, 'migrating to wrong location') + assert.equal(log.args.instigator, user1, 'migrating to wrong location') + }) + + it('young owner should not be able to start transfer', async function() { + let threwError = false + try { + await identityManager.initiateMigration(user2, proxy.address, newIdenManager.address, {from: user2}) + } catch(e) { + assert.match(e.message, /invalid opcode/, 'throws an error') + threwError = true + } + assert.isTrue(threwError, 'Should have thrown an error here') + }) + + it('non-owner should not be able to start transfer' , async function() { + let threwError = false + try { + await identityManager.initiateMigration(nobody, proxy.address, newIdenManager.address, {from: nobody}) + } catch(e) { + assert.match(e.message, /invalid opcode/, 'throws an error') + threwError = true + } + assert.isTrue(threwError, 'Should have thrown an error here') + }) + + it('correct keys can cancel migration', async function() { + let tx = await identityManager.initiateMigration(user1, proxy.address, newIdenManager.address, {from: user1}) + let log = tx.logs[0] + assert.equal(log.event, 'MigrationInitiated', 'wrong event initiated') + assert.equal(log.args.identity, proxy.address, 'migrating wrong proxy') + assert.equal(log.args.newIdManager, newIdenManager.address, 'migrating to wrong location') + assert.equal(log.args.instigator, user1, 'started migrating from wrong user') + + tx = await identityManager.cancelMigration(user1, proxy.address, {from: user1}) + log = tx.logs[0] + assert.equal(log.event, 'MigrationCanceled', 'wrong event initiated') + assert.equal(log.args.identity, proxy.address, 'canceled migrating wrong proxy') + assert.equal(log.args.newIdManager, newIdenManager.address, 'canceled migration to wrong location') + assert.equal(log.args.instigator, user1, 'canceled migrating from wrong user') + + //set up migration again + tx = await identityManager.initiateMigration(user1, proxy.address, newIdenManager.address, {from: user1}) + //Second migration attempt, should allow + log = tx.logs[0] + assert.equal(log.event, 'MigrationInitiated', 'wrong event initiated') + assert.equal(log.args.identity, proxy.address, 'migrating wrong proxy') + assert.equal(log.args.newIdManager, newIdenManager.address, 'migrating to wrong location') + assert.equal(log.args.instigator, user1, 'started migrating from wrong person') + + await evm_increaseTime(userTimeLock) + tx = await identityManager.cancelMigration(user2, proxy.address, {from: user2}) + //young owner should also be able to cancel migration + log = tx.logs[0] + assert.equal(log.event, 'MigrationCanceled', 'wrong event initiated') + assert.equal(log.args.identity, proxy.address, 'canceled migrating wrong proxy') + assert.equal(log.args.newIdManager, newIdenManager.address, 'canceled migration to wrong location') + assert.equal(log.args.instigator, user2, 'canceled migrating from wrong person') + + await identityManager.initiateMigration(user1, proxy.address, newIdenManager.address, {from: user1}) + //Don't need to check setup again + let threwError = false + try { + await identityManager.cancelMigration(nobody, proxy.address, {from: nobody}) + } catch(e) { + assert.match(e.message, /invalid opcode/, 'throws an error') + threwError = true + } + assert.isTrue(threwError, 'Should have thrown error') + }) + + it('correct keys should finilize transfer', async function() { + await identityManager.initiateMigration(user1, proxy.address, newIdenManager.address, {from: user1}) + let threwError = false + try { + await identityManager.finalizeMigration(nobody, proxy.address, {from: nobody}) + } catch(e) { + assert.match(e.message, /invalid opcode/, 'throws an error') + threwError = true + } + assert.isTrue(threwError, 'non-owner should not be able to finalize') + threwError = false + try { + await identityManager.finalizeMigration(user2, proxy.address, {from: user2}) + } catch(e) { + assert.match(e.message, /invalid opcode/, 'throws an error') + threwError = true + } + assert.isTrue(threwError, 'young owner should not be able to finalize') + + await evm_increaseTime(2 * adminTimeLock) + let tx = await identityManager.finalizeMigration(user1, proxy.address, {from: user1}) + let log = tx.logs[0] + assert.equal(log.event, 'MigrationFinalized', 'wrong event initiated') + assert.equal(log.args.identity, proxy.address, 'finalized migrating wrong proxy') + assert.equal(log.args.newIdManager, newIdenManager.address, 'finalized migration to wrong location') + assert.equal(log.args.instigator, user1, 'finalized migrating from wrong person') + }) + + it('should be owner of new identityManager after successful transfer', async function() { + await identityManager.initiateMigration(user1, proxy.address, newIdenManager.address, {from: user1}) + let data = '0x' + lightwallet.txutils._encodeFunctionTxData('registerIdentity', ['address', 'address'], [user1, recoveryKey]) + await identityManager.forwardTo(user1, proxy.address, newIdenManager.address, 0, data, {from: user1}) + //increase time until migration can be finialized + await evm_increaseTime(2 * adminTimeLock) + let tx = await identityManager.finalizeMigration(user1, proxy.address, newIdenManager.address, {from: user1}) + let log = tx.logs[0] + assert.equal(log.event, 'MigrationFinalized', 'wrong event initiated') + assert.equal(log.args.identity, proxy.address, 'finalized migrating wrong proxy') + assert.equal(log.args.newIdManager, newIdenManager.address, 'finalized migration to wrong location') + assert.equal(log.args.instigator, user1, 'finalized migrating from wrong user') + data = '0x' + lightwallet.txutils._encodeFunctionTxData('register', ['uint256'], [LOG_NUMBER_1]) + await newIdenManager.forwardTo(user1, proxy.address, testReg.address, 0, data, {from: user1}) + // Verify that the proxy address is logged as the sender + let regData = await testReg.registry.call(proxy.address) + assert.equal(regData.toNumber(), LOG_NUMBER_1, 'User1 should be able to send transaction from new contract') + }) + }) +}) diff --git a/test/txRelay.js b/test/txRelay.js new file mode 100644 index 0000000..d80d860 --- /dev/null +++ b/test/txRelay.js @@ -0,0 +1,870 @@ +const lightwallet = require('eth-lightwallet') +const evm_increaseTime = require('./evmIncreaseTime.js') +const MetaTxRelay = artifacts.require('TxRelay') +const IdentityManager = artifacts.require('IdentityManager') +const Proxy = artifacts.require('Proxy') +const TestRegistry = artifacts.require('TestRegistry') +const MetaTestRegistry = artifacts.require('MetaTestRegistry') +const Promise = require('bluebird') +const compareCode = require('./compareCode') +const solsha3 = require('solidity-sha3').default +const leftPad = require('left-pad') + +const LOG_NUMBER_1 = 1234 +const LOG_NUMBER_2 = 2345 + +const userTimeLock = 100; +const adminTimeLock = 1000; +const adminRate = 200; + +const zero = "0000000000000000000000000000000000000000000000000000000000000000" + +function enc(funName, types, params) { + return '0x' + lightwallet.txutils._encodeFunctionTxData(funName, types, params) +} + +//Returns random number in [1, 99] +function getRandomNumber() { //Thanks Oed :~) + return Math.floor(Math.random() * (100 - 1)) + 1; +} + +//Left packs a (hex) string. Should probably use leftpad +function pad(n) { + assert.equal(typeof(n), 'string', "Passed in a non string") + let data + if (n.startsWith("0x")) { + data = '0x' + leftPad(n.slice(2), '64', '0') + assert.equal(data.length, 66, "packed incorrectly") + return data; + } else { + data = '0x' + leftPad(n, '64', '0') + assert.equal(data.length, 66, "packed incorrectly") + return data; + } +} + +function signPayload(signingAddr, sendingAddr, txRelay, destinationAddress, functionName, + functionTypes, functionParams, lw, keyFromPw) { + return new Promise( + function (resolve, reject) { + if (functionTypes.length !== functionParams.length) { + reject(error("Types and params are uneven")) + } + if (typeof(functionName) !== 'string') { + reject(error("Function name should be a string")) + } + //Prolly should check inputs more thoroughly :@ + let nonce + let blockTimeout + let data + let hashInput + let hash + let sig + let retVal = {} + data = enc(functionName, functionTypes, functionParams) + + txRelay.getNonce.call(signingAddr).then(currNonce => { + nonce = currNonce + //Tight packing, as Solidity sha3 does + hashInput = txRelay.address + pad(nonce.toString('16')).slice(2) + + destinationAddress.slice(2) + data.slice(2) + sendingAddr.slice(2) + hash = solsha3(hashInput) + sig = lightwallet.signing.signMsgHash(lw, keyFromPw, hash, signingAddr) + retVal.r = '0x'+sig.r.toString('hex') + retVal.s = '0x'+sig.s.toString('hex') + retVal.v = sig.v //Q: Why is this not converted to hex? + retVal.data = data + retVal.hash = hash + retVal.nonce = nonce + retVal.dest = destinationAddress + resolve(retVal) + }) + }) +} + + +//shouldThrow is if the relayer should throw +//shouldUpdate is if the subcall should throw +async function testMetaTxForwardTo(signingAddr, sendingAddr, txRelay, identityManagerAddress, proxyAddress, + testReg, relayShouldFail, subCallShouldFail, lw, keyFromPw) { + //Relayer must be a truffle account, while fromAccount must be lightwallet account + let errorThrown = false + let testNum = getRandomNumber() + // Encode the transaction to send to the proxy contract + let data = enc('register', ['uint256'], [testNum]) + let types = ['address', 'address', 'address', 'uint256', 'bytes'] + let params = [signingAddr, proxyAddress, testReg.address, 0, data] + // Setup payload for meta-tx + let p = await signPayload(signingAddr, sendingAddr, txRelay, identityManagerAddress, + 'forwardTo', types, params, lw, keyFromPw) + let firstNonce = p.nonce + // Send forward request from the owner + try { + await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sendingAddr}) + } catch (error) { + errorThrown = true + assert.match(errorThrown, /invalid opcode/, "An error should have been thrown") + } + if (relayShouldFail) { + assert.true(errorThrown, "Transaction should not have gotten through relay") + } else { + let regData = await testReg.registry.call(proxyAddress) + if (subCallShouldFail) { + assert.notEqual(regData.toNumber(), testNum) + } else { + assert.equal(regData.toNumber(), testNum) + } + p = await signPayload(signingAddr, sendingAddr, txRelay, identityManagerAddress, + 'forwardTo', types, params, lw, keyFromPw) + assert.equal(p.nonce.toNumber(), firstNonce.toNumber() + 1, "Nonce should have updated") + } +} + +async function checkLogs(tx, eventName, indexAddOne, indexAddTwo, notIndexAdd) { + const log = tx.receipt.logs[0] + assert.equal(log.topics[0], solsha3(eventName + "(address,address,address)"), "Wrong event") + assert.equal(log.topics[1], pad(indexAddOne), "Wrong topic one") + assert.equal(log.topics[2], pad(indexAddTwo), "Wrong topic two") + assert.equal(log.data, pad(notIndexAdd), "Wrong initiator") +} + + +contract('TxRelay', (accounts) => { + let proxy + let deployedProxy + let testReg + let mTestReg //metaTestRegistry + let identityManager + let txRelay + let user1 + let user2 + let user3 + let user4 + let sender + + let recoveryKey + let recoveryKey2 + + let lw + let keyFromPw + + let data + let types + let params + let newData + let res + let regData + let p + let errorThrown = false; + + beforeEach((done) => { + let seed = "pull rent tower word science patrol economy legal yellow kit frequent fat" + + lightwallet.keystore.createVault( + {hdPathString: "m/44'/60'/0'/0", + seedPhrase: seed, + password: "test", + salt: "testsalt" + }, + function (err, keystore) { + + lw = keystore + lw.keyFromPassword("test", function(e,k) { + keyFromPw = k + + lw.generateNewAddress(keyFromPw, 10) + let acct = lw.getAddresses() + + user1 = '0x'+acct[0] + nobody = '0x'+acct[1] // has no authority + user2 = '0x'+acct[2] + user3 = '0x'+acct[3] + user4 = '0x'+acct[4] + recoveryKey = '0x'+acct[8] + recoveryKey2 = '0x'+acct[9] + + sender = accounts[0] + notSender = accounts[1] + regularUser = accounts[2] + + errorThrown = false + + MetaTxRelay.new().then(instance => { + txRelay = instance + return IdentityManager.new(userTimeLock, adminTimeLock, adminRate, txRelay.address) + }).then(instance => { + identityManager = instance + return Proxy.new({from: sender}) + }).then(instance => { + deployedProxy = instance + return TestRegistry.new() + }).then((instance) => { + testReg = instance + return identityManager.createIdentity(user1, recoveryKey, {from: sender}) + }).then(tx => { + const log = tx.logs[0] + assert.equal(log.event, 'IdentityCreated', 'wrong event') + proxy = Proxy.at(log.args.identity) + return MetaTestRegistry.new() + }).then(instance => { + mTestReg = instance + done() + }) + }) + }) + }) + + describe("Meta transactions", () => { + it('Should forward properly formatted meta tx', async function() { + types = ['address', 'uint256'] + params = [user1, LOG_NUMBER_1] + p = await signPayload(user1, sender, txRelay, mTestReg.address, 'register', + types, params, lw, keyFromPw) + + await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + + regData = await mTestReg.registry.call(user1) + assert.equal(regData.toNumber(), LOG_NUMBER_1, 'Registry did not update') + }) + + + it('Should forward properly formatted meta tx, though sub-calls may fail', async function() { + types = ['address'] + params = [user1] + p = await signPayload(user1, sender, txRelay, mTestReg.address, 'testThrow', + types, params, lw, keyFromPw) + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, + {from: sender, gas: 4500000}) + //Best way I have found to test for throw in a sub-call. Suggestions welcome :) + assert.isAbove(tx.receipt.gasUsed, 4000000, "Did not throw, as it should have consumed gas") + + p = await signPayload(user1, sender, txRelay, mTestReg.address, 'testThrow', + types, params, lw, keyFromPw) + + assert.equal(p.nonce, "1", "nonce should have updated") + }) + + it('Should not forward meta tx from someone lying about address', async function() { + //User1 encodes user2's address. Still can only sign w/ their own key + types = ['address', 'uint256'] + params = [user2, LOG_NUMBER_1] + p = await signPayload(user1, sender, txRelay, mTestReg.address, 'register', + types, params, lw, keyFromPw) + + res = await txRelay.getAddress.call(p.data) + assert.equal(res, user2, "Address is not first parameter") + + try { + //claim to be a different person again + await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + } catch (e) { + assert.match(e.message, /invalid opcode/, "Should have thrown") + errorThrown = true; + } + assert.isTrue(errorThrown, "Has thrown an error") + + //Check both address in case in updated one + regData = await mTestReg.registry.call(user1) + assert.equal(regData.toNumber(), 0, 'Registry did not update') + regData = await mTestReg.registry.call(user2) + assert.equal(regData.toNumber(), 0, 'Registry did not update') + }) + + it('Should not forward meta tx from a dishonest relayer', async function() { + types = ['address', 'uint256'] + params = [user1, LOG_NUMBER_1] + p = await signPayload(user1, sender, txRelay, mTestReg.address, 'register', + types, params, lw, keyFromPw) + + try { + //Wrong sender tries to send transaction + await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: notSender}) + } catch (e) { + assert.match(e.message, /invalid opcode/, "Should have thrown") + errorThrown = true; + } + assert.isTrue(errorThrown, "Has thrown an error") + + regData = await mTestReg.registry.call(user1) + assert.equal(regData.toNumber(), 0, 'Registry did not update') + }) + + it('Should not forward meta tx with Ether', async function () { + types = ['address', 'uint256'] + params = [user1, LOG_NUMBER_1] + p = await signPayload(user1, sender, txRelay, mTestReg.address, 'register', + types, params, lw, keyFromPw) + + res = await txRelay.getAddress.call(p.data) + assert.equal(res, user1, "Address is not first parameter") + + try { + //Send the transaction with 1 Wei + await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, + {from: sender, value: 1}) + } catch (e) { + assert.match(e.message, /Cannot send value to non-payable function/, "Should have thrown") + errorThrown = true; + } + assert.isTrue(errorThrown, "Should have thrown an error") + + regData = await mTestReg.registry.call(user1) + assert.equal(regData.toNumber(), 0, 'Registry did not update') + }) + + it('Should not allow a replay attack', async function () { + types = ['address', 'uint256'] + params = [user1, LOG_NUMBER_1] + p = await signPayload(user1, sender, txRelay, mTestReg.address, 'register', + types, params, lw, keyFromPw) + + res = await txRelay.getAddress.call(p.data) + assert.equal(res, user1, "Address is not first parameter") + + await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + + regData = await mTestReg.registry.call(user1) + assert.equal(regData.toNumber(), LOG_NUMBER_1, 'Registry did not update') + + try { + //Relayer tries to relay the same transaction twice + await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + } catch (e) { + assert.match(e.message, /invalid opcode/, "should have thrown") + errorThrown = true + } + assert.isTrue(errorThrown, "Should have thrown") + }) + + //Had some weird stuff w/ hex before - not a great test though :@ + it('Should forward meta tx multiple times', async function() { + let randNum + + for (let i = 0; i < 100; i++) { + randNum = getRandomNumber() + + types = ['address', 'uint256'] + params = [user1, randNum] + p = await signPayload(user1, sender, txRelay, mTestReg.address, 'register', + types, params, lw, keyFromPw) + + assert.equal(p.nonce, i.toString(), "Nonce should have updated") + await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + + regData = await mTestReg.registry.call(user1) + assert.equal(regData.toNumber(), randNum, 'Registry did not update properly') + } + }) + }) + + describe("Meta-tx with IdentityManager", () => { + describe("existing identity", () => { + it("allow transactions initiated by owner", async function () { + await testMetaTxForwardTo(user1, sender, txRelay, identityManager.address, + proxy.address, testReg, false, false, lw, keyFromPw) + }) + + it("don't allow transactions initiated by non owner", async function () { + await testMetaTxForwardTo(user2, sender, txRelay, identityManager.address, proxy.address, + testReg, false, true, lw, keyFromPw) + }) + + it("owner can add other owner", async function () { + types = ['address', 'address', 'address'] + params = [user1, proxy.address, user2] + p = await signPayload(user1, sender, txRelay, identityManager.address, + 'addOwner', types, params, lw, keyFromPw) + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + + await checkLogs(tx, "OwnerAdded", proxy.address, user2, user1) + }) + + it("owner is rateLimited in adding/removing owners and recoveryKey", async function () { + //First, user1 adds user2 as a new owner + types = ['address', 'address', 'address'] + params = [user1, proxy.address, user2] + p = await signPayload(user1, sender, txRelay, identityManager.address, + 'addOwner', types, params, lw, keyFromPw) + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + + await checkLogs(tx, "OwnerAdded", proxy.address, user2, user1) + //Then, user1 tries to add user3 as a new owner + params = [user1, proxy.address, user3] + p = await signPayload(user1, sender, txRelay, identityManager.address, + 'addOwner', types, params, lw, keyFromPw) + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender, gas: 4500000}) + assert.isAbove(tx.receipt.gasUsed, 4000000, "Should have thrown in a sub call") + + //Tries to change the recoveryKey + params = [user1, proxy.address, recoveryKey2] + p = await signPayload(user1, sender, txRelay, identityManager.address, + 'changeRecovery', types, params, lw, keyFromPw) + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender, gas: 4500000}) + assert.isAbove(tx.receipt.gasUsed, 4000000, "Should have thrown in a sub call") + + //Then have user1 try to remove user2 - still is rateLimited + params = [user1, proxy.address, user2] + p = await signPayload(user1, sender, txRelay, identityManager.address, + 'removeOwner', types, params, lw, keyFromPw) + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + assert.isAbove(tx.receipt.gasUsed, 4000000, "Should have thrown in a sub call") + + //Make them no longer rateLimited + await evm_increaseTime(adminRate + 1) + //Have them add user3, sucessfull this time + params = [user1, proxy.address, user3] + p = await signPayload(user1, sender, txRelay, identityManager.address, + 'addOwner', types, params, lw, keyFromPw) + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender, gas: 4500000}) + await checkLogs(tx, "OwnerAdded", proxy.address, user3, user1) + + //Try to remove owner two again, should fail + params = [user1, proxy.address, user2] + p = await signPayload(user1, sender, txRelay, identityManager.address, + 'removeOwner', types, params, lw, keyFromPw) + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender, gas: 4500000}) + assert.isAbove(tx.receipt.gasUsed, 4000000, "Should have thrown in a sub call") + + //Tries to change the recoveryKey + params = [user1, proxy.address, recoveryKey2] + p = await signPayload(user1, sender, txRelay, identityManager.address, + 'changeRecovery', types, params, lw, keyFromPw) + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender, gas: 4500000}) + assert.isAbove(tx.receipt.gasUsed, 4000000, "Should have thrown in a sub call") + + //Unrate limit them again + await evm_increaseTime(adminRate + 1) + + params = [user1, proxy.address, user2] + p = await signPayload(user1, sender, txRelay, identityManager.address, + 'removeOwner', types, params, lw, keyFromPw) + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + await checkLogs(tx, "OwnerRemoved", proxy.address, user2, user1) + + //Tries to change the recoveryKey + params = [user1, proxy.address, recoveryKey2] + p = await signPayload(user1, sender, txRelay, identityManager.address, + 'changeRecovery', types, params, lw, keyFromPw) + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender, gas: 4500000}) + assert.isAbove(tx.receipt.gasUsed, 4000000, "Should have thrown in a sub call") + + //Unrate limit them again + await evm_increaseTime(adminRate + 1) + //Tries to change the recoveryKey + params = [user1, proxy.address, recoveryKey2] + p = await signPayload(user1, sender, txRelay, identityManager.address, + 'changeRecovery', types, params, lw, keyFromPw) + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + await checkLogs(tx, "RecoveryChanged", proxy.address, recoveryKey2, user1) + }) + + it("non-owner can not add other owner", async function () { + types = ['address', 'address', 'address'] + params = [user3, proxy.address, user4] + p = await signPayload(user3, sender, txRelay, identityManager.address, + 'addOwner', types, params, lw, keyFromPw) + + res = await txRelay.getAddress.call(p.data) + assert.equal(res, user3, "Address is not first parameter") + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + assert.isUndefined(tx.receipt.logs[0], "Generated logs, thus owner was added") + }) + + describe("new owner added by owner", () => { + beforeEach(async function () { + types = ['address', 'address', 'address'] + params = [user1, proxy.address, user2] + p = await signPayload(user1, sender, txRelay, identityManager.address, + 'addOwner', types, params, lw, keyFromPw) + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + + await checkLogs(tx, "OwnerAdded", proxy.address, user2, user1) + }) + + it("within userTimeLock is allowed transactions", async function () { + await testMetaTxForwardTo(user2, sender, txRelay, identityManager.address, proxy.address, + testReg, false, false, lw, keyFromPw) + }) + + describe("after userTimeLock", () => { + beforeEach(async function () { + await evm_increaseTime(userTimeLock + 1) + }) + + it("Allow transactions", async function () { + await testMetaTxForwardTo(user2, sender, txRelay, identityManager.address, proxy.address, + testReg, false, false, lw, keyFromPw) + }) + + it("can not add other owner yet", async function () { + types = ['address', 'address', 'address'] + params = [user2, proxy.address, user3] + p = await signPayload(user2, sender, txRelay, identityManager.address, + 'addOwner', types, params, lw, keyFromPw) + + res = await txRelay.getAddress.call(p.data) + assert.equal(res, user2, "Address is not first parameter") + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + assert.isUndefined(tx.receipt.logs[0], "Generated logs, thus owner was added") + }) + + it("can not remove other owner yet", async function () { + types = ['address', 'address', 'address'] + params = [user2, proxy.address, user1] + p = await signPayload(user2, sender, txRelay, identityManager.address, + 'addOwner', types, params, lw, keyFromPw) + + res = await txRelay.getAddress.call(p.data) + assert.equal(res, user2, "Address is not first parameter") + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + assert.isUndefined(tx.receipt.logs[0], "Generated logs, thus owner was removed") + }) + + it("can not change recoveryKey yet", async function () { + types = ['address', 'address', 'address'] + params = [user2, proxy.address, recoveryKey2] + p = await signPayload(user2, sender, txRelay, identityManager.address, + 'changeRecovery', types, params, lw, keyFromPw) + + res = await txRelay.getAddress.call(p.data) + assert.equal(res, user2, "Address is not first parameter") + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + assert.isUndefined(tx.receipt.logs[0], "Generated logs, thus recovery was changed") + }) + }) + + describe("after adminTimeLock", () => { + beforeEach(async function () { + await evm_increaseTime(adminTimeLock + 1) + }) + + it("can add new owner", async function () { + types = ['address', 'address', 'address'] + params = [user2, proxy.address, user3] + p = await signPayload(user2, sender, txRelay, identityManager.address, + 'addOwner', types, params, lw, keyFromPw) + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + + await checkLogs(tx, "OwnerAdded", proxy.address, user3, user2) + }) + + it("can remove other owner", async function () { + types = ['address', 'address', 'address'] + params = [user2, proxy.address, user3] + p = await signPayload(user2, sender, txRelay, identityManager.address, + 'removeOwner', types, params, lw, keyFromPw) + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + + await checkLogs(tx, "OwnerRemoved", proxy.address, user3, user2) + }) + + it("can change recoveryKey", async function () { + types = ['address', 'address', 'address'] + params = [user2, proxy.address, recoveryKey2] + p = await signPayload(user2, sender, txRelay, identityManager.address, + 'changeRecovery', types, params, lw, keyFromPw) + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + + await checkLogs(tx, "RecoveryChanged", proxy.address, recoveryKey2, user2) + }) + }) + }) + describe("new owner added by recoveryKey", () => { + beforeEach(async function () { + types = ['address', 'address', 'address'] + params = [recoveryKey, proxy.address, user4] //new owner + p = await signPayload(recoveryKey, sender, txRelay, identityManager.address, + 'addOwnerFromRecovery', types, params, lw, keyFromPw) + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + + await checkLogs(tx, "OwnerAdded", proxy.address, user4, recoveryKey) + }) + + it('recovery key is rateLimited', async function () { + types = ['address', 'address', 'address'] + params = [recoveryKey, proxy.address, user4] //new owner + p = await signPayload(recoveryKey, sender, txRelay, identityManager.address, + 'addOwnerFromRecovery', types, params, lw, keyFromPw) + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender, gas: 4500000}) + assert.isAbove(tx.receipt.gasUsed, 4000000, "Sub call should have thrown") + }) + + it("within userTimeLock is not allowed transactions", async function () { + await testMetaTxForwardTo(user4, sender, txRelay, identityManager.address, proxy.address, + testReg, false, true, lw, keyFromPw) + }) + + describe("after userTimeLock", () => { + it("Allow transactions", async function () { + await evm_increaseTime(userTimeLock + 1) + await testMetaTxForwardTo(user4, sender, txRelay, identityManager.address, proxy.address, + testReg, false, false, lw, keyFromPw) + }) + }) + + describe("after adminTimeLock", () => { + beforeEach(async function () { + await evm_increaseTime(adminTimeLock + 1) + }) + + it("can add new owner", async function () { + types = ['address', 'address', 'address'] + params = [user4, proxy.address, user3] + p = await signPayload(user4, sender, txRelay, identityManager.address, + 'addOwner', types, params, lw, keyFromPw) + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + + await checkLogs(tx, "OwnerAdded", proxy.address, user3, user4) + }) + + it("can remove other owner", async function () { + types = ['address', 'address', 'address'] + params = [user4, proxy.address, user3] + p = await signPayload(user4, sender, txRelay, identityManager.address, + 'removeOwner', types, params, lw, keyFromPw) + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + + await checkLogs(tx, "OwnerRemoved", proxy.address, user3, user4) + }) + + it("can change recoveryKey", async function () { + types = ['address', 'address', 'address'] + params = [user4, proxy.address, recoveryKey2] + p = await signPayload(user4, sender, txRelay, identityManager.address, + 'changeRecovery', types, params, lw, keyFromPw) + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + + await checkLogs(tx, "RecoveryChanged", proxy.address, recoveryKey2, user4) + }) + }) + }) + }) + describe("migration", () => { + let newIdenManager + beforeEach(async function () { + newIdenManager = await IdentityManager.new(userTimeLock, adminTimeLock, adminRate, txRelay.address) + //Make user2 a young owner. + types = ['address', 'address', 'address'] + params = [user1, proxy.address, user2] + p = await signPayload(user1, sender, txRelay, identityManager.address, + 'addOwner', types, params, lw, keyFromPw) + + res = await txRelay.getAddress.call(p.data) + assert.equal(res, user1, "Address is not first parameter") + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + + await checkLogs(tx, "OwnerAdded", proxy.address, user2, user1) + }) + + it("older owner can start transfer", async function () { + types = ['address', 'address', 'address'] + params = [user1, proxy.address, newIdenManager.address] + p = await signPayload(user1, sender, txRelay, identityManager.address, + 'initiateMigration', types, params, lw, keyFromPw) + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + + await checkLogs(tx, "MigrationInitiated", proxy.address, newIdenManager.address, user1) + }) + + it("young owner should not be able to start transfer", async function () { + types = ['address', 'address', 'address'] + params = [user2, proxy.address, newIdenManager.address] + p = await signPayload(user2, sender, txRelay, identityManager.address, + 'initiateMigration', types, params, lw, keyFromPw) + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + assert.isUndefined(tx.receipt.logs[0], "Log generated, so therefore transfer started") + }) + + it("non-owner should not be able to start transfer", async function () { + types = ['address', 'address', 'address'] + params = [user3, proxy.address, newIdenManager.address] + p = await signPayload(user3, sender, txRelay, identityManager.address, + 'initiateMigration', types, params, lw, keyFromPw) + + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + assert.isUndefined(tx.receipt.logs[0], "Log generated, so therefore transfer started") + }) + + it("correct keys can cancel migration ", async function () { + //Start migration + types = ['address', 'address', 'address'] + params = [user1, proxy.address, newIdenManager.address] + p = await signPayload(user1, sender, txRelay, identityManager.address, + 'initiateMigration', types, params, lw, keyFromPw) + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + await checkLogs(tx, "MigrationInitiated", proxy.address, newIdenManager.address, user1) + + //Non-owner tries to cancel + types = ['address', 'address'] + params = [user3, proxy.address] + p = await signPayload(user3, sender, txRelay, identityManager.address, + 'cancelMigration', types, params, lw, keyFromPw) + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + assert.isUndefined(tx.receipt.logs[0], "Log generated, so therefore transfer started") + + //Young owner tries to cancel + params = [user2, proxy.address] + p = await signPayload(user2, sender, txRelay, identityManager.address, + 'cancelMigration', types, params, lw, keyFromPw) + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + await checkLogs(tx, "MigrationCanceled", proxy.address, newIdenManager.address, user2) + + await evm_increaseTime(adminTimeLock + 1) + //Start migration again + types = ['address', 'address', 'address'] + params = [user1, proxy.address, newIdenManager.address] + p = await signPayload(user1, sender, txRelay, identityManager.address, + 'initiateMigration', types, params, lw, keyFromPw) + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + await checkLogs(tx, "MigrationInitiated", proxy.address, newIdenManager.address, user1) + + //Older owner tries to cancel. + types = ['address', 'address'] + params = [user1, proxy.address] + p = await signPayload(user1, sender, txRelay, identityManager.address, + 'cancelMigration', types, params, lw, keyFromPw) + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + await checkLogs(tx, "MigrationCanceled", proxy.address, newIdenManager.address, user1) + }) + + it("correct keys should finilize transfer", async function () { + //Start migration + types = ['address', 'address', 'address'] + params = [user1, proxy.address, newIdenManager.address] + p = await signPayload(user1, sender, txRelay, identityManager.address, + 'initiateMigration', types, params, lw, keyFromPw) + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + + await checkLogs(tx, "MigrationInitiated", proxy.address, newIdenManager.address, user1) + + //Non-owner tries to finalize + types = ['address', 'address'] + params = [user3, proxy.address] + p = await signPayload(user3, sender, txRelay, identityManager.address, + 'finalizeMigration', types, params, lw, keyFromPw) + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + assert.isUndefined(tx.receipt.logs[0], "Log generated, so therefore transfer started") + + //Young owner tries to finalize + params = [user2, proxy.address] + p = await signPayload(user2, sender, txRelay, identityManager.address, + 'finalizeMigration', types, params, lw, keyFromPw) + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + assert.isUndefined(tx.receipt.logs[0], "Log generated, so therefore transfer started") + + await evm_increaseTime(adminTimeLock + 1) + + //Older owner tries to finalize, and succedes. + params = [user1, proxy.address] + p = await signPayload(user1, sender, txRelay, identityManager.address, + 'finalizeMigration', types, params, lw, keyFromPw) + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + + await checkLogs(tx, "MigrationFinalized", proxy.address, newIdenManager.address, user1) + }) + + it("should be owner of new identityManager after successful transfer", async function () { + //Start migration + types = ['address', 'address', 'address'] + params = [user1, proxy.address, newIdenManager.address] + p = await signPayload(user1, sender, txRelay, identityManager.address, + 'initiateMigration', types, params, lw, keyFromPw) + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + + await checkLogs(tx, "MigrationInitiated", proxy.address, newIdenManager.address, user1) + + //setup new identitymanage to receive + data = enc('registerIdentity', ['address', 'address'], [user1, recoveryKey]) + types = ['address', 'address', 'address', 'uint256', 'bytes'] + params = [user1, proxy.address, newIdenManager.address, 0, data] + p = await signPayload(user1, sender, txRelay, identityManager.address, + 'forwardTo', types, params, lw, keyFromPw) + + res = await txRelay.getAddress.call(p.data) + assert.equal(res, user1, "Address is not first parameter") + await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + + //Allow for transfer to finalize + await evm_increaseTime(adminTimeLock + 1) + + types = ['address', 'address'] + params = [user1, proxy.address] + p = await signPayload(user1, sender, txRelay, identityManager.address, + 'finalizeMigration', types, params, lw, keyFromPw) + tx = await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + + await checkLogs(tx, "MigrationFinalized", proxy.address, newIdenManager.address, user1) + + //Setup data and sign + data = enc('register', ['uint256'], [LOG_NUMBER_1]) + types = ['address', 'address', 'address', 'uint256', 'bytes'] + params = [user1, proxy.address, testReg.address, 0, data] + p = await signPayload(user1, sender, txRelay, newIdenManager.address, + 'forwardTo', types, params, lw, keyFromPw) + + res = await txRelay.getAddress.call(p.data) + assert.equal(res, user1, "Address is not first parameter") + + await txRelay.relayMetaTx(p.v, p.r, p.s, p.dest, p.data, {from: sender}) + regData = await testReg.registry.call(proxy.address) + assert.equal(regData.toNumber(), LOG_NUMBER_1, 'Registry did not update properly') + }) + }) + }) + + it('Should not approve bad data', async function () { + //This function needs some serious thought + testing + let t = ['address', 'address', 'address', 'uint256', 'bytes'] //types + let p = [user1, proxy.address, testReg.address, 0, []] //params + let n = "forwardTo" //name of function + + //encoded correctly + data = enc(n, t, p) + res = await txRelay.getAddress.call(data) + assert.equal(res, user1, "Address is not first parameter") + //off by a nibble + data = enc(n, t, p).slice(1) + res = await txRelay.getAddress.call(data) + assert.notEqual(res, user1, "Address is first parameter, should be shifted off") + //short + data = enc(n, t, p).substring(0, 16) + res = await txRelay.getAddress.call(data) + assert.notEqual(res, user1, "Address is first parameter, should be too short") + //wrong address + let badParam = [user2, proxy.address, testReg.address, 0, []] + data = enc(n, t, badParam) + res = await txRelay.getAddress.call(data) + assert.notEqual(res, user1, "Address is first parameter, should be someone else") + //first half of address + data = enc(n, t, p).substring(0, 26) + zero + res = await txRelay.getAddress.call(data) + assert.notEqual(res, user1, "Address is first parameter, should be too short") + }) +}) diff --git a/yarn.lock b/yarn.lock index d1e7bd0..e1a1a24 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,14 +2,6 @@ # yarn lockfile v1 -"@types/mkdirp@^0.3.29": - version "0.3.29" - resolved "https://registry.yarnpkg.com/@types/mkdirp/-/mkdirp-0.3.29.tgz#7f2ad7ec55f914482fc9b1ec4bb1ae6028d46066" - -"@types/node@^6", "@types/node@^6.0.45": - version "6.0.68" - resolved "https://registry.yarnpkg.com/@types/node/-/node-6.0.68.tgz#0c43b6b8b9445feb86a0fbd3457e3f4bc591e66d" - abbrev@1: version "1.1.0" resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.0.tgz#d0554c2256636e2f56e7c2e5ad183f859428d81f" @@ -20,60 +12,17 @@ abstract-leveldown@2.4.1, abstract-leveldown@~2.4.0: dependencies: xtend "~4.0.0" -accept@2.x.x: - version "2.1.3" - resolved "https://registry.yarnpkg.com/accept/-/accept-2.1.3.tgz#ab0f5bda4c449bbe926aea607b3522562f5acf86" - dependencies: - boom "4.x.x" - hoek "4.x.x" - -accepts@1.3.3: - version "1.3.3" - resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.3.tgz#c3ca7434938648c3e0d9c1e328dd68b622c284ca" - dependencies: - mime-types "~2.1.11" - negotiator "0.6.1" - -acorn@^1.0.3: - version "1.2.2" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-1.2.2.tgz#c8ce27de0acc76d896d2b1fad3df588d9e82f014" - -adm-zip@~0.4.3: - version "0.4.7" - resolved "https://registry.yarnpkg.com/adm-zip/-/adm-zip-0.4.7.tgz#8606c2cbf1c426ce8c8ec00174447fd49b6eafc1" - aes-js@^0.2.3: version "0.2.4" resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-0.2.4.tgz#94b881ab717286d015fa219e08fb66709dda5a3d" -after@0.8.2: - version "0.8.2" - resolved "https://registry.yarnpkg.com/after/-/after-0.8.2.tgz#fedb394f9f0e02aa9768e702bda23b505fae7e1f" - ajv@^4.9.1: - version "4.11.5" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.5.tgz#b6ee74657b993a01dce44b7944d56f485828d5bd" + version "4.11.8" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536" dependencies: co "^4.6.0" json-stable-stringify "^1.0.1" -amdefine@>=0.0.4: - version "1.0.1" - resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" - -ammo@2.x.x: - version "2.0.3" - resolved "https://registry.yarnpkg.com/ammo/-/ammo-2.0.3.tgz#914bbcf65b043ed0f58a8a9d0196e250ec51e6a7" - dependencies: - boom "4.x.x" - hoek "4.x.x" - -ansi-align@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-1.1.0.tgz#2f0c1658829739add5ebb15e6b0c6e3423f016ba" - dependencies: - string-width "^1.0.1" - ansi-regex@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" @@ -90,15 +39,15 @@ anymatch@^1.3.0: micromatch "^2.1.5" aproba@^1.0.3: - version "1.1.1" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.1.1.tgz#95d3600f07710aa0e9298c726ad5ecf2eacbabab" + version "1.1.2" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.1.2.tgz#45c6629094de4e96f693ef7eab74ae079c240fc1" are-we-there-yet@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.2.tgz#80e470e95a084794fe1899262c5667c6e88de1b3" + version "1.1.4" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d" dependencies: delegates "^1.0.0" - readable-stream "^2.0.0 || ^1.1.13" + readable-stream "^2.0.6" arr-diff@^2.0.0: version "2.0.0" @@ -107,52 +56,17 @@ arr-diff@^2.0.0: arr-flatten "^1.0.1" arr-flatten@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.0.1.tgz#e5ffe54d45e19f32f216e91eb99c8ce892bb604b" - -array-union@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" - dependencies: - array-uniq "^1.0.1" - -array-uniq@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" + version "1.1.0" + resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" array-unique@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" -arraybuffer.slice@0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/arraybuffer.slice/-/arraybuffer.slice-0.0.6.tgz#f33b2159f0532a3f3107a272c0ccfbd1ad2979ca" - arrify@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" -asap@~2.0.3: - version "2.0.5" - resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.5.tgz#522765b50c3510490e52d7dcfe085ef9ba96958f" - -asn1.js@1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-1.0.3.tgz#281ba3ec1f2448fe765f92a4eecf883fe1364b54" - dependencies: - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - optionalDependencies: - bn.js "^1.0.0" - -asn1.js@^4.9.1: - version "4.9.1" - resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.9.1.tgz#48ba240b45a9280e94748990ba597d216617fd40" - dependencies: - bn.js "^4.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - asn1@~0.2.3: version "0.2.3" resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86" @@ -165,34 +79,26 @@ assert-plus@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" -assertion-error@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.0.2.tgz#13ca515d86206da0bac66e834dd397d87581094c" - async-each@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" async-eventemitter@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/async-eventemitter/-/async-eventemitter-0.2.2.tgz#5a77976b59dbcffc3b7156f866038cf6b445dcf4" + version "0.2.3" + resolved "https://registry.yarnpkg.com/async-eventemitter/-/async-eventemitter-0.2.3.tgz#f79f480dfda6645a97bd6142c017150d63b4e70e" dependencies: - async "~0.2.9" + async "^2.4.0" -async@^1.4.2, async@^1.5.2, async@~1.5.0: +async@^1.4.2: version "1.5.2" resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" -async@^2.1.2, async@^2.1.4, async@^2.1.5, async@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/async/-/async-2.3.0.tgz#1013d1051047dd320fe24e494d5c66ecaf6147d9" +async@^2.0.1, async@^2.1.2, async@^2.4.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/async/-/async-2.5.0.tgz#843190fd6b7357a0b9e1c956edddd5ec8462b54d" dependencies: lodash "^4.14.0" -async@~0.2.9: - version "0.2.10" - resolved "https://registry.yarnpkg.com/async/-/async-0.2.10.tgz#b6bbe0b0674b9d719708ca38de8c237cb526c3d1" - asynckit@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" @@ -205,17 +111,13 @@ aws4@^1.2.1: version "1.6.0" resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" -b64@3.x.x: - version "3.0.2" - resolved "https://registry.yarnpkg.com/b64/-/b64-3.0.2.tgz#7a9d60466adf7b8de114cbdf651a5fdfcc90894d" - babel-cli@*: - version "6.24.0" - resolved "https://registry.yarnpkg.com/babel-cli/-/babel-cli-6.24.0.tgz#a05ffd210dca0c288a26d5319c5ac8669a265ad0" + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-cli/-/babel-cli-6.24.1.tgz#207cd705bba61489b2ea41b5312341cf6aca2283" dependencies: - babel-core "^6.24.0" + babel-core "^6.24.1" babel-polyfill "^6.23.0" - babel-register "^6.24.0" + babel-register "^6.24.1" babel-runtime "^6.22.0" commander "^2.8.1" convert-source-map "^1.1.0" @@ -238,20 +140,20 @@ babel-code-frame@^6.22.0: esutils "^2.0.2" js-tokens "^3.0.0" -babel-core@^6.24.0: - version "6.24.0" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.24.0.tgz#8f36a0a77f5c155aed6f920b844d23ba56742a02" +babel-core@^6.0.14, babel-core@^6.24.1: + version "6.25.0" + resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.25.0.tgz#7dd42b0463c742e9d5296deb3ec67a9322dad729" dependencies: babel-code-frame "^6.22.0" - babel-generator "^6.24.0" - babel-helpers "^6.23.0" + babel-generator "^6.25.0" + babel-helpers "^6.24.1" babel-messages "^6.23.0" - babel-register "^6.24.0" + babel-register "^6.24.1" babel-runtime "^6.22.0" - babel-template "^6.23.0" - babel-traverse "^6.23.1" - babel-types "^6.23.0" - babylon "^6.11.0" + babel-template "^6.25.0" + babel-traverse "^6.25.0" + babel-types "^6.25.0" + babylon "^6.17.2" convert-source-map "^1.1.0" debug "^2.1.1" json5 "^0.5.0" @@ -262,93 +164,136 @@ babel-core@^6.24.0: slash "^1.0.0" source-map "^0.5.0" -babel-generator@^6.24.0: - version "6.24.0" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.24.0.tgz#eba270a8cc4ce6e09a61be43465d7c62c1f87c56" +babel-generator@^6.25.0: + version "6.25.0" + resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.25.0.tgz#33a1af70d5f2890aeb465a4a7793c1df6a9ea9fc" dependencies: babel-messages "^6.23.0" babel-runtime "^6.22.0" - babel-types "^6.23.0" + babel-types "^6.25.0" detect-indent "^4.0.0" jsesc "^1.3.0" lodash "^4.2.0" source-map "^0.5.0" trim-right "^1.0.1" -babel-helper-call-delegate@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.22.0.tgz#119921b56120f17e9dae3f74b4f5cc7bcc1b37ef" +babel-helper-bindify-decorators@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.24.1.tgz#14c19e5f142d7b47f19a52431e52b1ccbc40a330" dependencies: - babel-helper-hoist-variables "^6.22.0" babel-runtime "^6.22.0" - babel-traverse "^6.22.0" - babel-types "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" -babel-helper-define-map@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-6.23.0.tgz#1444f960c9691d69a2ced6a205315f8fd00804e7" +babel-helper-builder-binary-assignment-operator-visitor@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz#cce4517ada356f4220bcae8a02c2b346f9a56664" + dependencies: + babel-helper-explode-assignable-expression "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-helper-call-delegate@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz#ece6aacddc76e41c3461f88bfc575bd0daa2df8d" dependencies: - babel-helper-function-name "^6.23.0" + babel-helper-hoist-variables "^6.24.1" babel-runtime "^6.22.0" - babel-types "^6.23.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helper-define-map@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-6.24.1.tgz#7a9747f258d8947d32d515f6aa1c7bd02204a080" + dependencies: + babel-helper-function-name "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" lodash "^4.2.0" -babel-helper-function-name@^6.22.0, babel-helper-function-name@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.23.0.tgz#25742d67175c8903dbe4b6cb9d9e1fcb8dcf23a6" +babel-helper-explode-assignable-expression@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz#f25b82cf7dc10433c55f70592d5746400ac22caa" dependencies: - babel-helper-get-function-arity "^6.22.0" babel-runtime "^6.22.0" - babel-template "^6.23.0" - babel-traverse "^6.23.0" - babel-types "^6.23.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" -babel-helper-get-function-arity@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.22.0.tgz#0beb464ad69dc7347410ac6ade9f03a50634f5ce" +babel-helper-explode-class@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-explode-class/-/babel-helper-explode-class-6.24.1.tgz#7dc2a3910dee007056e1e31d640ced3d54eaa9eb" dependencies: + babel-helper-bindify-decorators "^6.24.1" babel-runtime "^6.22.0" - babel-types "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" -babel-helper-hoist-variables@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.22.0.tgz#3eacbf731d80705845dd2e9718f600cfb9b4ba72" +babel-helper-function-name@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz#d3475b8c03ed98242a25b48351ab18399d3580a9" dependencies: + babel-helper-get-function-arity "^6.24.1" babel-runtime "^6.22.0" - babel-types "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" -babel-helper-optimise-call-expression@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.23.0.tgz#f3ee7eed355b4282138b33d02b78369e470622f5" +babel-helper-get-function-arity@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz#8f7782aa93407c41d3aa50908f89b031b1b6853d" dependencies: babel-runtime "^6.22.0" - babel-types "^6.23.0" + babel-types "^6.24.1" -babel-helper-regex@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.22.0.tgz#79f532be1647b1f0ee3474b5f5c3da58001d247d" +babel-helper-hoist-variables@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz#1ecb27689c9d25513eadbc9914a73f5408be7a76" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-helper-optimise-call-expression@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz#f7a13427ba9f73f8f4fa993c54a97882d1244257" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-helper-regex@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.24.1.tgz#d36e22fab1008d79d88648e32116868128456ce8" dependencies: babel-runtime "^6.22.0" - babel-types "^6.22.0" + babel-types "^6.24.1" lodash "^4.2.0" -babel-helper-replace-supers@^6.22.0, babel-helper-replace-supers@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.23.0.tgz#eeaf8ad9b58ec4337ca94223bacdca1f8d9b4bfd" +babel-helper-remap-async-to-generator@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b" + dependencies: + babel-helper-function-name "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helper-replace-supers@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz#bf6dbfe43938d17369a213ca8a8bf74b6a90ab1a" dependencies: - babel-helper-optimise-call-expression "^6.23.0" + babel-helper-optimise-call-expression "^6.24.1" babel-messages "^6.23.0" babel-runtime "^6.22.0" - babel-template "^6.23.0" - babel-traverse "^6.23.0" - babel-types "^6.23.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" -babel-helpers@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.23.0.tgz#4f8f2e092d0b6a8808a4bde79c27f1e2ecf0d992" +babel-helpers@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2" dependencies: babel-runtime "^6.22.0" - babel-template "^6.23.0" + babel-template "^6.24.1" babel-messages@^6.23.0: version "6.23.0" @@ -362,6 +307,73 @@ babel-plugin-check-es2015-constants@^6.22.0: dependencies: babel-runtime "^6.22.0" +babel-plugin-syntax-async-functions@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95" + +babel-plugin-syntax-async-generators@^6.5.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz#6bc963ebb16eccbae6b92b596eb7f35c342a8b9a" + +babel-plugin-syntax-class-properties@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz#d7eb23b79a317f8543962c505b827c7d6cac27de" + +babel-plugin-syntax-decorators@^6.13.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz#312563b4dbde3cc806cee3e416cceeaddd11ac0b" + +babel-plugin-syntax-dynamic-import@^6.18.0: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz#8d6a26229c83745a9982a441051572caa179b1da" + +babel-plugin-syntax-exponentiation-operator@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de" + +babel-plugin-syntax-object-rest-spread@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5" + +babel-plugin-syntax-trailing-function-commas@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3" + +babel-plugin-transform-async-generator-functions@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.24.1.tgz#f058900145fd3e9907a6ddf28da59f215258a5db" + dependencies: + babel-helper-remap-async-to-generator "^6.24.1" + babel-plugin-syntax-async-generators "^6.5.0" + babel-runtime "^6.22.0" + +babel-plugin-transform-async-to-generator@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761" + dependencies: + babel-helper-remap-async-to-generator "^6.24.1" + babel-plugin-syntax-async-functions "^6.8.0" + babel-runtime "^6.22.0" + +babel-plugin-transform-class-properties@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz#6a79763ea61d33d36f37b611aa9def81a81b46ac" + dependencies: + babel-helper-function-name "^6.24.1" + babel-plugin-syntax-class-properties "^6.8.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + +babel-plugin-transform-decorators@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz#788013d8f8c6b5222bdf7b344390dfd77569e24d" + dependencies: + babel-helper-explode-class "^6.24.1" + babel-plugin-syntax-decorators "^6.13.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-types "^6.24.1" + babel-plugin-transform-es2015-arrow-functions@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz#452692cb711d5f79dc7f85e440ce41b9f244d221" @@ -374,36 +386,36 @@ babel-plugin-transform-es2015-block-scoped-functions@^6.22.0: dependencies: babel-runtime "^6.22.0" -babel-plugin-transform-es2015-block-scoping@^6.22.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.23.0.tgz#e48895cf0b375be148cd7c8879b422707a053b51" +babel-plugin-transform-es2015-block-scoping@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.24.1.tgz#76c295dc3a4741b1665adfd3167215dcff32a576" dependencies: babel-runtime "^6.22.0" - babel-template "^6.23.0" - babel-traverse "^6.23.0" - babel-types "^6.23.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" lodash "^4.2.0" -babel-plugin-transform-es2015-classes@^6.22.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.23.0.tgz#49b53f326202a2fd1b3bbaa5e2edd8a4f78643c1" +babel-plugin-transform-es2015-classes@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz#5a4c58a50c9c9461e564b4b2a3bfabc97a2584db" dependencies: - babel-helper-define-map "^6.23.0" - babel-helper-function-name "^6.23.0" - babel-helper-optimise-call-expression "^6.23.0" - babel-helper-replace-supers "^6.23.0" + babel-helper-define-map "^6.24.1" + babel-helper-function-name "^6.24.1" + babel-helper-optimise-call-expression "^6.24.1" + babel-helper-replace-supers "^6.24.1" babel-messages "^6.23.0" babel-runtime "^6.22.0" - babel-template "^6.23.0" - babel-traverse "^6.23.0" - babel-types "^6.23.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" -babel-plugin-transform-es2015-computed-properties@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.22.0.tgz#7c383e9629bba4820c11b0425bdd6290f7f057e7" +babel-plugin-transform-es2015-computed-properties@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz#6fe2a8d16895d5634f4cd999b6d3480a308159b3" dependencies: babel-runtime "^6.22.0" - babel-template "^6.22.0" + babel-template "^6.24.1" babel-plugin-transform-es2015-destructuring@^6.22.0: version "6.23.0" @@ -411,12 +423,12 @@ babel-plugin-transform-es2015-destructuring@^6.22.0: dependencies: babel-runtime "^6.22.0" -babel-plugin-transform-es2015-duplicate-keys@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.22.0.tgz#672397031c21610d72dd2bbb0ba9fb6277e1c36b" +babel-plugin-transform-es2015-duplicate-keys@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz#73eb3d310ca969e3ef9ec91c53741a6f1576423e" dependencies: babel-runtime "^6.22.0" - babel-types "^6.22.0" + babel-types "^6.24.1" babel-plugin-transform-es2015-for-of@^6.22.0: version "6.23.0" @@ -424,13 +436,13 @@ babel-plugin-transform-es2015-for-of@^6.22.0: dependencies: babel-runtime "^6.22.0" -babel-plugin-transform-es2015-function-name@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.22.0.tgz#f5fcc8b09093f9a23c76ac3d9e392c3ec4b77104" +babel-plugin-transform-es2015-function-name@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz#834c89853bc36b1af0f3a4c5dbaa94fd8eacaa8b" dependencies: - babel-helper-function-name "^6.22.0" + babel-helper-function-name "^6.24.1" babel-runtime "^6.22.0" - babel-types "^6.22.0" + babel-types "^6.24.1" babel-plugin-transform-es2015-literals@^6.22.0: version "6.22.0" @@ -438,63 +450,63 @@ babel-plugin-transform-es2015-literals@^6.22.0: dependencies: babel-runtime "^6.22.0" -babel-plugin-transform-es2015-modules-amd@^6.24.0: - version "6.24.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.0.tgz#a1911fb9b7ec7e05a43a63c5995007557bcf6a2e" +babel-plugin-transform-es2015-modules-amd@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz#3b3e54017239842d6d19c3011c4bd2f00a00d154" dependencies: - babel-plugin-transform-es2015-modules-commonjs "^6.24.0" + babel-plugin-transform-es2015-modules-commonjs "^6.24.1" babel-runtime "^6.22.0" - babel-template "^6.22.0" + babel-template "^6.24.1" -babel-plugin-transform-es2015-modules-commonjs@^6.24.0: - version "6.24.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.24.0.tgz#e921aefb72c2cc26cb03d107626156413222134f" +babel-plugin-transform-es2015-modules-commonjs@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.24.1.tgz#d3e310b40ef664a36622200097c6d440298f2bfe" dependencies: - babel-plugin-transform-strict-mode "^6.22.0" + babel-plugin-transform-strict-mode "^6.24.1" babel-runtime "^6.22.0" - babel-template "^6.23.0" - babel-types "^6.23.0" + babel-template "^6.24.1" + babel-types "^6.24.1" -babel-plugin-transform-es2015-modules-systemjs@^6.22.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.23.0.tgz#ae3469227ffac39b0310d90fec73bfdc4f6317b0" +babel-plugin-transform-es2015-modules-systemjs@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz#ff89a142b9119a906195f5f106ecf305d9407d23" dependencies: - babel-helper-hoist-variables "^6.22.0" + babel-helper-hoist-variables "^6.24.1" babel-runtime "^6.22.0" - babel-template "^6.23.0" + babel-template "^6.24.1" -babel-plugin-transform-es2015-modules-umd@^6.24.0: - version "6.24.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.0.tgz#fd5fa63521cae8d273927c3958afd7c067733450" +babel-plugin-transform-es2015-modules-umd@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz#ac997e6285cd18ed6176adb607d602344ad38468" dependencies: - babel-plugin-transform-es2015-modules-amd "^6.24.0" + babel-plugin-transform-es2015-modules-amd "^6.24.1" babel-runtime "^6.22.0" - babel-template "^6.23.0" + babel-template "^6.24.1" -babel-plugin-transform-es2015-object-super@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.22.0.tgz#daa60e114a042ea769dd53fe528fc82311eb98fc" +babel-plugin-transform-es2015-object-super@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz#24cef69ae21cb83a7f8603dad021f572eb278f8d" dependencies: - babel-helper-replace-supers "^6.22.0" + babel-helper-replace-supers "^6.24.1" babel-runtime "^6.22.0" -babel-plugin-transform-es2015-parameters@^6.22.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.23.0.tgz#3a2aabb70c8af945d5ce386f1a4250625a83ae3b" +babel-plugin-transform-es2015-parameters@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz#57ac351ab49caf14a97cd13b09f66fdf0a625f2b" dependencies: - babel-helper-call-delegate "^6.22.0" - babel-helper-get-function-arity "^6.22.0" + babel-helper-call-delegate "^6.24.1" + babel-helper-get-function-arity "^6.24.1" babel-runtime "^6.22.0" - babel-template "^6.23.0" - babel-traverse "^6.23.0" - babel-types "^6.23.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" -babel-plugin-transform-es2015-shorthand-properties@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.22.0.tgz#8ba776e0affaa60bff21e921403b8a652a2ff723" +babel-plugin-transform-es2015-shorthand-properties@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz#24f875d6721c87661bbd99a4622e51f14de38aa0" dependencies: babel-runtime "^6.22.0" - babel-types "^6.22.0" + babel-types "^6.24.1" babel-plugin-transform-es2015-spread@^6.22.0: version "6.22.0" @@ -502,13 +514,13 @@ babel-plugin-transform-es2015-spread@^6.22.0: dependencies: babel-runtime "^6.22.0" -babel-plugin-transform-es2015-sticky-regex@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.22.0.tgz#ab316829e866ee3f4b9eb96939757d19a5bc4593" +babel-plugin-transform-es2015-sticky-regex@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz#00c1cdb1aca71112cdf0cf6126c2ed6b457ccdbc" dependencies: - babel-helper-regex "^6.22.0" + babel-helper-regex "^6.24.1" babel-runtime "^6.22.0" - babel-types "^6.22.0" + babel-types "^6.24.1" babel-plugin-transform-es2015-template-literals@^6.22.0: version "6.22.0" @@ -522,26 +534,41 @@ babel-plugin-transform-es2015-typeof-symbol@^6.22.0: dependencies: babel-runtime "^6.22.0" -babel-plugin-transform-es2015-unicode-regex@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.22.0.tgz#8d9cc27e7ee1decfe65454fb986452a04a613d20" +babel-plugin-transform-es2015-unicode-regex@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz#d38b12f42ea7323f729387f18a7c5ae1faeb35e9" dependencies: - babel-helper-regex "^6.22.0" + babel-helper-regex "^6.24.1" babel-runtime "^6.22.0" regexpu-core "^2.0.0" -babel-plugin-transform-regenerator@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.22.0.tgz#65740593a319c44522157538d690b84094617ea6" +babel-plugin-transform-exponentiation-operator@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e" dependencies: - regenerator-transform "0.9.8" + babel-helper-builder-binary-assignment-operator-visitor "^6.24.1" + babel-plugin-syntax-exponentiation-operator "^6.8.0" + babel-runtime "^6.22.0" -babel-plugin-transform-strict-mode@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.22.0.tgz#e008df01340fdc87e959da65991b7e05970c8c7c" +babel-plugin-transform-object-rest-spread@^6.22.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.23.0.tgz#875d6bc9be761c58a2ae3feee5dc4895d8c7f921" + dependencies: + babel-plugin-syntax-object-rest-spread "^6.8.0" + babel-runtime "^6.22.0" + +babel-plugin-transform-regenerator@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.24.1.tgz#b8da305ad43c3c99b4848e4fe4037b770d23c418" + dependencies: + regenerator-transform "0.9.11" + +babel-plugin-transform-strict-mode@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758" dependencies: babel-runtime "^6.22.0" - babel-types "^6.22.0" + babel-types "^6.24.1" babel-polyfill@^6.23.0: version "6.23.0" @@ -551,40 +578,59 @@ babel-polyfill@^6.23.0: core-js "^2.4.0" regenerator-runtime "^0.10.0" -babel-preset-es2015@*: - version "6.24.0" - resolved "https://registry.yarnpkg.com/babel-preset-es2015/-/babel-preset-es2015-6.24.0.tgz#c162d68b1932696e036cd3110dc1ccd303d2673a" +babel-preset-es2015@*, babel-preset-es2015@^6.24.0, babel-preset-es2015@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-es2015/-/babel-preset-es2015-6.24.1.tgz#d44050d6bc2c9feea702aaf38d727a0210538939" dependencies: babel-plugin-check-es2015-constants "^6.22.0" babel-plugin-transform-es2015-arrow-functions "^6.22.0" babel-plugin-transform-es2015-block-scoped-functions "^6.22.0" - babel-plugin-transform-es2015-block-scoping "^6.22.0" - babel-plugin-transform-es2015-classes "^6.22.0" - babel-plugin-transform-es2015-computed-properties "^6.22.0" + babel-plugin-transform-es2015-block-scoping "^6.24.1" + babel-plugin-transform-es2015-classes "^6.24.1" + babel-plugin-transform-es2015-computed-properties "^6.24.1" babel-plugin-transform-es2015-destructuring "^6.22.0" - babel-plugin-transform-es2015-duplicate-keys "^6.22.0" + babel-plugin-transform-es2015-duplicate-keys "^6.24.1" babel-plugin-transform-es2015-for-of "^6.22.0" - babel-plugin-transform-es2015-function-name "^6.22.0" + babel-plugin-transform-es2015-function-name "^6.24.1" babel-plugin-transform-es2015-literals "^6.22.0" - babel-plugin-transform-es2015-modules-amd "^6.24.0" - babel-plugin-transform-es2015-modules-commonjs "^6.24.0" - babel-plugin-transform-es2015-modules-systemjs "^6.22.0" - babel-plugin-transform-es2015-modules-umd "^6.24.0" - babel-plugin-transform-es2015-object-super "^6.22.0" - babel-plugin-transform-es2015-parameters "^6.22.0" - babel-plugin-transform-es2015-shorthand-properties "^6.22.0" + babel-plugin-transform-es2015-modules-amd "^6.24.1" + babel-plugin-transform-es2015-modules-commonjs "^6.24.1" + babel-plugin-transform-es2015-modules-systemjs "^6.24.1" + babel-plugin-transform-es2015-modules-umd "^6.24.1" + babel-plugin-transform-es2015-object-super "^6.24.1" + babel-plugin-transform-es2015-parameters "^6.24.1" + babel-plugin-transform-es2015-shorthand-properties "^6.24.1" babel-plugin-transform-es2015-spread "^6.22.0" - babel-plugin-transform-es2015-sticky-regex "^6.22.0" + babel-plugin-transform-es2015-sticky-regex "^6.24.1" babel-plugin-transform-es2015-template-literals "^6.22.0" babel-plugin-transform-es2015-typeof-symbol "^6.22.0" - babel-plugin-transform-es2015-unicode-regex "^6.22.0" - babel-plugin-transform-regenerator "^6.22.0" + babel-plugin-transform-es2015-unicode-regex "^6.24.1" + babel-plugin-transform-regenerator "^6.24.1" -babel-register@*, babel-register@^6.24.0: - version "6.24.0" - resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.24.0.tgz#5e89f8463ba9970356d02eb07dabe3308b080cfd" +babel-preset-stage-2@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-stage-2/-/babel-preset-stage-2-6.24.1.tgz#d9e2960fb3d71187f0e64eec62bc07767219bdc1" dependencies: - babel-core "^6.24.0" + babel-plugin-syntax-dynamic-import "^6.18.0" + babel-plugin-transform-class-properties "^6.24.1" + babel-plugin-transform-decorators "^6.24.1" + babel-preset-stage-3 "^6.24.1" + +babel-preset-stage-3@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-stage-3/-/babel-preset-stage-3-6.24.1.tgz#836ada0a9e7a7fa37cb138fb9326f87934a48395" + dependencies: + babel-plugin-syntax-trailing-function-commas "^6.22.0" + babel-plugin-transform-async-generator-functions "^6.24.1" + babel-plugin-transform-async-to-generator "^6.24.1" + babel-plugin-transform-exponentiation-operator "^6.24.1" + babel-plugin-transform-object-rest-spread "^6.22.0" + +babel-register@*, babel-register@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.24.1.tgz#7e10e13a2f71065bdfad5a1787ba45bca6ded75f" + dependencies: + babel-core "^6.24.1" babel-runtime "^6.22.0" core-js "^2.4.0" home-or-tmp "^2.0.0" @@ -599,78 +645,61 @@ babel-runtime@^6.18.0, babel-runtime@^6.22.0: core-js "^2.4.0" regenerator-runtime "^0.10.0" -babel-template@^6.22.0, babel-template@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.23.0.tgz#04d4f270adbb3aa704a8143ae26faa529238e638" +babel-template@^6.24.1, babel-template@^6.25.0: + version "6.25.0" + resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.25.0.tgz#665241166b7c2aa4c619d71e192969552b10c071" dependencies: babel-runtime "^6.22.0" - babel-traverse "^6.23.0" - babel-types "^6.23.0" - babylon "^6.11.0" + babel-traverse "^6.25.0" + babel-types "^6.25.0" + babylon "^6.17.2" lodash "^4.2.0" -babel-traverse@^6.22.0, babel-traverse@^6.23.0, babel-traverse@^6.23.1: - version "6.23.1" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.23.1.tgz#d3cb59010ecd06a97d81310065f966b699e14f48" +babel-traverse@^6.24.1, babel-traverse@^6.25.0: + version "6.25.0" + resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.25.0.tgz#2257497e2fcd19b89edc13c4c91381f9512496f1" dependencies: babel-code-frame "^6.22.0" babel-messages "^6.23.0" babel-runtime "^6.22.0" - babel-types "^6.23.0" - babylon "^6.15.0" + babel-types "^6.25.0" + babylon "^6.17.2" debug "^2.2.0" globals "^9.0.0" invariant "^2.2.0" lodash "^4.2.0" -babel-types@^6.19.0, babel-types@^6.22.0, babel-types@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.23.0.tgz#bb17179d7538bad38cd0c9e115d340f77e7e9acf" +babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.25.0: + version "6.25.0" + resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.25.0.tgz#70afb248d5660e5d18f811d91c8303b54134a18e" dependencies: babel-runtime "^6.22.0" esutils "^2.0.2" lodash "^4.2.0" to-fast-properties "^1.0.1" -babylon@^6.11.0, babylon@^6.15.0: - version "6.16.1" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.16.1.tgz#30c5a22f481978a9e7f8cdfdf496b11d94b404d3" - -backo2@1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/backo2/-/backo2-1.0.2.tgz#31ab1ac8b129363463e35b3ebb69f4dfcfba7947" +babelify@^7.3.0: + version "7.3.0" + resolved "https://registry.yarnpkg.com/babelify/-/babelify-7.3.0.tgz#aa56aede7067fd7bd549666ee16dc285087e88e5" + dependencies: + babel-core "^6.0.14" + object-assign "^4.0.0" -balanced-match@^0.4.1: - version "0.4.2" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.4.2.tgz#cb3f3e3c732dc0f01ee70b403f302e61d7709838" +babylon@^6.17.2: + version "6.17.4" + resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.17.4.tgz#3e8b7402b88d22c3423e137a1577883b15ff869a" -base-x@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/base-x/-/base-x-3.0.0.tgz#77b56f0311070b780b3c8a5f534beac47e506702" +balanced-match@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" base-x@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/base-x/-/base-x-1.1.0.tgz#42d3d717474f9ea02207f6d1aa1f426913eeb7ac" -base-x@^2.0.1: - version "2.0.5" - resolved "https://registry.yarnpkg.com/base-x/-/base-x-2.0.5.tgz#11967f90b42995cfdb5f50a1be499d7675db4fce" - -base32.js@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/base32.js/-/base32.js-0.1.0.tgz#b582dec693c2f11e893cf064ee6ac5b6131a2202" - -base64-arraybuffer@0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz#73926771923b5a19747ad666aa5cd4bf9c6e9ce8" - base64-js@^1.0.2: - version "1.2.0" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.0.tgz#a39992d723584811982be5e290bb6a53d86700f1" - -base64id@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/base64id/-/base64id-1.0.0.tgz#47688cb99bb6804f0e06d3e763b1c32e57d8e6b6" + version "1.2.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.1.tgz#a91947da1f4a516ea38e5b4ec0ec3773675e0886" bcrypt-pbkdf@^1.0.0: version "1.0.1" @@ -678,23 +707,17 @@ bcrypt-pbkdf@^1.0.0: dependencies: tweetnacl "^0.14.3" -better-assert@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/better-assert/-/better-assert-1.0.2.tgz#40866b9e1b9e0b55b481894311e68faffaebc522" - dependencies: - callsite "1.0.0" +bignumber.js@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-4.0.2.tgz#2d1dc37ee5968867ecea90b6da4d16e68608d21d" -bignumber.js@debris/bignumber.js#94d7146671b9719e00a09c29b01a691bc85048c2, "bignumber.js@git+https://github.com/debris/bignumber.js#master", "bignumber.js@git+https://github.com/debris/bignumber.js.git#94d7146671b9719e00a09c29b01a691bc85048c2": +"bignumber.js@git+https://github.com/debris/bignumber.js#master": version "2.0.7" - resolved "https://codeload.github.com/debris/bignumber.js/tar.gz/94d7146671b9719e00a09c29b01a691bc85048c2" - -bignumber.js@~2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-2.1.4.tgz#29b3bb693dbb238e88b72eac2fb89650888b2d59" + resolved "git+https://github.com/debris/bignumber.js#c7a38de919ed75e6fb6ba38051986e294b328df9" -bignumber.js@~3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-3.0.1.tgz#807652d10e39de37e9e3497247edc798bb746f76" +"bignumber.js@git+https://github.com/debris/bignumber.js.git#94d7146671b9719e00a09c29b01a691bc85048c2": + version "2.0.7" + resolved "git+https://github.com/debris/bignumber.js.git#94d7146671b9719e00a09c29b01a691bc85048c2" binary-extensions@^1.0.0: version "1.8.0" @@ -704,18 +727,21 @@ bindings@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.2.1.tgz#14ad6113812d2d37d72e67b4cacb4bb726505f11" -bip39@^2.2.0, bip39@~2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/bip39/-/bip39-2.2.0.tgz#40e73f70674c267f148cdbf8374f2a50be166b0d" +bip39@^2.2.0: + version "2.3.1" + resolved "https://registry.yarnpkg.com/bip39/-/bip39-2.3.1.tgz#c8238abc09d719c6f01136ef042daccc5dc3581b" dependencies: create-hash "^1.1.0" - pbkdf2 "^3.0.0" + pbkdf2 "^3.0.9" randombytes "^2.0.1" + safe-buffer "^5.0.1" unorm "^1.3.3" bip66@^1.1.3: - version "1.1.4" - resolved "https://registry.yarnpkg.com/bip66/-/bip66-1.1.4.tgz#8a59f8ae16eccb94681c3c2a7b224774605aadfb" + version "1.1.5" + resolved "https://registry.yarnpkg.com/bip66/-/bip66-1.1.5.tgz#01fa8748785ca70955d5011217d1b3139969ca22" + dependencies: + safe-buffer "^5.0.1" bitcore-lib@^0.14.0: version "0.14.0" @@ -729,88 +755,47 @@ bitcore-lib@^0.14.0: lodash "=3.10.1" bitcore-mnemonic@^1.2.2: - version "1.2.3" - resolved "https://registry.yarnpkg.com/bitcore-mnemonic/-/bitcore-mnemonic-1.2.3.tgz#007bf30a12dfa6c920cddc72f864c0bf2b272afa" + version "1.2.5" + resolved "https://registry.yarnpkg.com/bitcore-mnemonic/-/bitcore-mnemonic-1.2.5.tgz#45faba00163c557a054202ffe9a20fba2360685f" dependencies: bitcore-lib "^0.14.0" unorm "^1.3.3" -bl@^1.0.0, bl@^1.1.2: - version "1.2.0" - resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.0.tgz#1397e7ec42c5f5dc387470c500e34a9f6be9ea98" +bl@^1.0.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.1.tgz#cac328f7bee45730d404b692203fcb590e172d5e" dependencies: readable-stream "^2.0.5" -blakejs@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/blakejs/-/blakejs-1.0.1.tgz#ae54b631fb4ab820c4f7a226a4b430a95f87065e" - -blob@0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/blob/-/blob-0.0.4.tgz#bcf13052ca54463f30f9fc7e95b9a47630a94921" - block-stream@*: version "0.0.9" resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a" dependencies: inherits "~2.0.0" -bluebird@^3.4.1: +bluebird@^3.5.0: version "3.5.0" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.0.tgz#791420d7f551eea2897453a8a77653f96606d67c" -bn.js@4.11.6, bn.js@^4.0.0, bn.js@^4.11.3, bn.js@^4.4.0, bn.js@^4.8.0: +bn.js@4.11.6, bn.js@^4.11.3, bn.js@^4.4.0, bn.js@^4.8.0: version "4.11.6" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.6.tgz#53344adb14617a13f6e8dd2ce28905d1c0ba3215" -bn.js@=2.0.4, bn.js@^2.0.0: +bn.js@=2.0.4, bn.js@^2.0.0, bn.js@^2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-2.0.4.tgz#220a7cd677f7f1bfa93627ff4193776fe7819480" -bn.js@^1.0.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-1.3.0.tgz#0db4cbf96f8f23b742f5bcb9d1aa7a9994a05e83" - boom@2.x.x: version "2.10.1" resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f" dependencies: hoek "2.x.x" -boom@4.x.x, boom@^4.2.0: - version "4.3.1" - resolved "https://registry.yarnpkg.com/boom/-/boom-4.3.1.tgz#4f8a3005cb4a7e3889f749030fd25b96e01d2e31" - dependencies: - hoek "4.x.x" - -borc@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/borc/-/borc-2.0.2.tgz#8eae1a4d599cfdfdfc9fa857cbba69c90e83291f" - dependencies: - bignumber.js "~3.0.0" - commander "^2.9" - ieee754 "^1.1.8" - json-text-sequence "^0.1" - -boxen@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/boxen/-/boxen-0.6.0.tgz#8364d4248ac34ff0ef1b2f2bf49a6c60ce0d81b6" - dependencies: - ansi-align "^1.1.0" - camelcase "^2.1.0" - chalk "^1.1.1" - cli-boxes "^1.0.0" - filled-array "^1.0.0" - object-assign "^4.0.1" - repeating "^2.0.0" - string-width "^1.0.1" - widest-line "^1.0.0" - -brace-expansion@^1.0.0: - version "1.1.7" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.7.tgz#3effc3c50e000531fb720eaff80f0ae8ef23cf59" +brace-expansion@^1.1.7: + version "1.1.8" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292" dependencies: - balanced-match "^0.4.1" + balanced-match "^1.0.0" concat-map "0.0.1" braces@^1.8.2: @@ -821,15 +806,6 @@ braces@^1.8.2: preserve "^0.2.0" repeat-element "^1.1.2" -brfs@^1.4.0: - version "1.4.3" - resolved "https://registry.yarnpkg.com/brfs/-/brfs-1.4.3.tgz#db675d6f5e923e6df087fca5859c9090aaed3216" - dependencies: - quote-stream "^1.0.1" - resolve "^1.1.5" - static-module "^1.1.0" - through2 "^2.0.0" - brorand@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" @@ -848,24 +824,12 @@ browserify-aes@^1.0.6: evp_bytestokey "^1.0.0" inherits "^2.0.1" -browserify-sha3@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/browserify-sha3/-/browserify-sha3-0.0.2.tgz#256cccc7ed972c4a80eb499c82aacccbee6c0a45" - dependencies: - js-sha3 "^0.5.1" - browserify-sha3@^0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/browserify-sha3/-/browserify-sha3-0.0.1.tgz#3ff34a3006ef15c0fb3567e541b91a2340123d11" dependencies: js-sha3 "^0.3.1" -browserify-zlib-next@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/browserify-zlib-next/-/browserify-zlib-next-1.0.1.tgz#880403868b4f6262f0f3eacf04699abf9f076f9f" - dependencies: - pako "~1.0.4" - bs58@=2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/bs58/-/bs58-2.0.0.tgz#72b713bed223a0ac518bbda0e3ce3f4817f39eb5" @@ -874,18 +838,12 @@ bs58@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/bs58/-/bs58-2.0.1.tgz#55908d58f1982aba2008fa1bed8f91998a29bf8d" -bs58@^3.0.0, bs58@^3.1.0: +bs58@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/bs58/-/bs58-3.1.0.tgz#d4c26388bf4804cac714141b1945aa47e5eb248e" dependencies: base-x "^1.1.0" -bs58@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/bs58/-/bs58-4.0.0.tgz#65f5deaf6d74e6135a99f763ca6209ab424b9172" - dependencies: - base-x "^2.0.1" - bs58check@^1.0.8: version "1.3.4" resolved "https://registry.yarnpkg.com/bs58check/-/bs58check-1.3.4.tgz#c52540073749117714fa042c3047eb8f9151cbf8" @@ -897,23 +855,11 @@ buffer-compare@=1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/buffer-compare/-/buffer-compare-1.0.0.tgz#acaa7a966e98eee9fae14b31c39a5f158fb3c4a2" -buffer-equal@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/buffer-equal/-/buffer-equal-0.0.1.tgz#91bc74b11ea405bc916bc6aa908faafa5b4aac4b" - -buffer-loader@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/buffer-loader/-/buffer-loader-0.0.1.tgz#4d677ca92dd889310878b02a2fbcfab712024cf2" - -buffer-shims@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51" - buffer-xor@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" -buffer@^4.9.1: +buffer@^4.9.0, buffer@^4.9.1: version "4.9.1" resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.1.tgz#6d1bb601b07a4efced97094132093027c95bc298" dependencies: @@ -925,64 +871,15 @@ builtin-modules@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" -builtin-status-codes@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" - -call@3.x.x: - version "3.0.4" - resolved "https://registry.yarnpkg.com/call/-/call-3.0.4.tgz#e380f2f2a491330aa79085355f8be080877d559e" - dependencies: - boom "4.x.x" - hoek "4.x.x" - -callsite@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/callsite/-/callsite-1.0.0.tgz#280398e5d664bd74038b6f0905153e6e8af1bc20" - -camelcase@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39" - -camelcase@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" - camelcase@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" -capture-stack-trace@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz#4a6fa07399c26bba47f0b2496b4d0fb408c5550d" - caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" -catbox-memory@2.x.x: - version "2.0.4" - resolved "https://registry.yarnpkg.com/catbox-memory/-/catbox-memory-2.0.4.tgz#433e255902caf54233d1286429c8f4df14e822d5" - dependencies: - hoek "4.x.x" - -catbox@7.x.x: - version "7.1.3" - resolved "https://registry.yarnpkg.com/catbox/-/catbox-7.1.3.tgz#9817edec5a921743282addfc9c45ace52847eebb" - dependencies: - boom "4.x.x" - hoek "4.x.x" - joi "10.x.x" - -chai@^3.3.0, chai@^3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/chai/-/chai-3.5.0.tgz#4d02637b067fe958bdbfdd3a40ec56fef7373247" - dependencies: - assertion-error "^1.0.1" - deep-eql "^0.1.3" - type-detect "^1.0.0" - -chalk@^1.0.0, chalk@^1.1.0, chalk@^1.1.1: +chalk@^1.1.0: version "1.1.3" resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" dependencies: @@ -998,9 +895,9 @@ checkpoint-store@^1.1.0: dependencies: functional-red-black-tree "^1.0.1" -chokidar@^1.4.2, chokidar@^1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.6.1.tgz#2f4447ab5e96e50fb3d789fd90d4c72e0e4c70c2" +chokidar@^1.6.0, chokidar@^1.6.1: + version "1.7.0" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468" dependencies: anymatch "^1.3.0" async-each "^1.0.0" @@ -1017,41 +914,14 @@ chownr@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.0.1.tgz#e2a75042a9551908bebd25b8523d5f9769d79181" -cids@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/cids/-/cids-0.2.0.tgz#0a79f621c34eb3ff9c3be505fda2b809710847fc" - dependencies: - multibase "^0.2.0" - multicodec "0.1.0" - multihashes "^0.2.2" - -cids@^0.3.4: - version "0.3.6" - resolved "https://registry.yarnpkg.com/cids/-/cids-0.3.6.tgz#a0a3a2c386105a92ecd9c8a2f2239beb2f544c15" - dependencies: - multibase "^0.3.0" - multicodec "^0.1.3" - multihashes "^0.3.1" - -cids@^0.4.0, cids@~0.4.1: - version "0.4.2" - resolved "https://registry.yarnpkg.com/cids/-/cids-0.4.2.tgz#f1414e78fa466fe97a7ce9cd6c03892993bef307" - dependencies: - multibase "~0.3.4" - multicodec "~0.1.7" - multihashes "~0.4.4" - -cipher-base@^1.0.0, cipher-base@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.3.tgz#eeabf194419ce900da3018c207d212f2a6df0a07" +cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" dependencies: inherits "^2.0.1" + safe-buffer "^5.0.1" -cli-boxes@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-1.0.0.tgz#4fa917c3e59c94a004cd61f8ee509da651687143" - -cliui@^3.0.3, cliui@^3.2.0: +cliui@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" dependencies: @@ -1096,80 +966,28 @@ commander@2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.3.0.tgz#fd430e889832ec353b9acd1de217c11cb3eef873" -commander@2.9.0, commander@^2.8.1, commander@^2.9: +commander@2.9.0: version "2.9.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4" dependencies: graceful-readlink ">= 1.0.0" -component-bind@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/component-bind/-/component-bind-1.0.0.tgz#00c608ab7dcd93897c0009651b1d3a8e1e73bbd1" - -component-emitter@1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.1.2.tgz#296594f2753daa63996d2af08d15a95116c9aec3" - -component-emitter@1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" - -component-inherit@0.0.3: - version "0.0.3" - resolved "https://registry.yarnpkg.com/component-inherit/-/component-inherit-0.0.3.tgz#645fc4adf58b72b649d5cae65135619db26ff143" +commander@^2.8.1, commander@^2.9.0: + version "2.11.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563" concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" -concat-stream@^1.5.2: - version "1.6.0" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7" - dependencies: - inherits "^2.0.3" - readable-stream "^2.2.2" - typedarray "^0.0.6" - -concat-stream@~1.4.5: - version "1.4.10" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.4.10.tgz#acc3bbf5602cb8cc980c6ac840fa7d8603e3ef36" - dependencies: - inherits "~2.0.1" - readable-stream "~1.1.9" - typedarray "~0.0.5" - -configstore@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/configstore/-/configstore-2.1.0.tgz#737a3a7036e9886102aa6099e47bb33ab1aba1a1" - dependencies: - dot-prop "^3.0.0" - graceful-fs "^4.1.2" - mkdirp "^0.5.0" - object-assign "^4.0.1" - os-tmpdir "^1.0.0" - osenv "^0.1.0" - uuid "^2.0.1" - write-file-atomic "^1.1.2" - xdg-basedir "^2.0.0" - console-control-strings@^1.0.0, console-control-strings@~1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" -content@3.x.x, content@^3.0.0: - version "3.0.3" - resolved "https://registry.yarnpkg.com/content/-/content-3.0.3.tgz#000f8a01371b95c66afe99be9390fa6cb91aa87a" - dependencies: - boom "4.x.x" - convert-source-map@^1.1.0: version "1.5.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.0.tgz#9acd70851c6d5dfdd93d9282e5edf94a03ff46b5" -cookie@0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" - core-js@^2.4.0: version "2.4.1" resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.4.1.tgz#4de911e667b0eae9124e34254b53aea6fc618d3e" @@ -1178,35 +996,25 @@ core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" -cpr@^0.4.3: - version "0.4.3" - resolved "https://registry.yarnpkg.com/cpr/-/cpr-0.4.3.tgz#0a23e4b6ec23f3b8cc7a405ecb5cfdc778f7de25" - dependencies: - graceful-fs "~4.1.2" - mkdirp "~0.5.0" - rimraf "~2.4.3" - -create-error-class@^3.0.1: - version "3.0.2" - resolved "https://registry.yarnpkg.com/create-error-class/-/create-error-class-3.0.2.tgz#06be7abef947a3f14a30fd610671d401bca8b7b6" - dependencies: - capture-stack-trace "^1.0.0" - create-hash@^1.1.0, create-hash@^1.1.1, create-hash@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.1.2.tgz#51210062d7bb7479f6c65bb41a92208b1d61abad" + version "1.1.3" + resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.1.3.tgz#606042ac8b9262750f483caddab0f5819172d8fd" dependencies: cipher-base "^1.0.1" inherits "^2.0.1" - ripemd160 "^1.0.0" - sha.js "^2.3.6" + ripemd160 "^2.0.0" + sha.js "^2.4.0" -create-hmac@^1.1.2, create-hmac@^1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.4.tgz#d3fb4ba253eb8b3f56e39ea2fbcb8af747bd3170" +create-hmac@^1.1.4: + version "1.1.6" + resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.6.tgz#acb9e221a4e17bdb076e90657c42b93e3726cf06" dependencies: + cipher-base "^1.0.3" create-hash "^1.1.0" inherits "^2.0.1" + ripemd160 "^2.0.0" + safe-buffer "^5.0.1" + sha.js "^2.4.8" cryptiles@2.x.x: version "2.0.5" @@ -1214,13 +1022,7 @@ cryptiles@2.x.x: dependencies: boom "2.x.x" -cryptiles@3.x.x: - version "3.1.1" - resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-3.1.1.tgz#86a9203f7367a0e9324bc7555ff0fcf5f81979ee" - dependencies: - boom "4.x.x" - -crypto-js@^3.1.4: +crypto-js@^3.1.4, crypto-js@^3.1.5: version "3.1.8" resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-3.1.8.tgz#715f070bf6014f2ae992a98b3929258b713f08d5" @@ -1234,47 +1036,29 @@ dashdash@^1.12.0: dependencies: assert-plus "^1.0.0" -debug@2.2.0, debug@~2.2.0: +debug@2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/debug/-/debug-2.2.0.tgz#f87057e995b1a1f6ae6a4960664137bc56f039da" dependencies: ms "0.7.1" -debug@2.3.3: - version "2.3.3" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.3.3.tgz#40c453e67e6e13c901ddec317af8986cda9eff8c" - dependencies: - ms "0.7.2" - -debug@2.6.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.1.tgz#79855090ba2c4e3115cc7d8769491d58f0491351" - dependencies: - ms "0.7.2" - -debug@^2.1.0, debug@^2.1.1, debug@^2.2.0, debug@^2.3.2, debug@^2.3.3, debug@^2.6.3: - version "2.6.3" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.3.tgz#0f7eb8c30965ec08c72accfa0130c8b79984141d" +debug@2.6.0, debug@^2.1.1, debug@^2.2.0: + version "2.6.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.0.tgz#bc596bcabe7617f11d9fa15361eded5608b8499b" dependencies: ms "0.7.2" -decamelize@^1.0.0, decamelize@^1.1.1: +decamelize@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" -deep-eql@^0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-0.1.3.tgz#ef558acab8de25206cd713906d74e56930eb69f2" - dependencies: - type-detect "0.1.1" - deep-equal@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" deep-extend@~0.4.0: - version "0.4.1" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.1.tgz#efe4113d08085f4e6f9687759810f807469e2253" + version "0.4.2" + resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.2.tgz#48b699c27e334bf89f10892be432f6e4c7d34a7f" deferred-leveldown@~1.2.1: version "1.2.1" @@ -1293,18 +1077,6 @@ defined@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" -del@^2.2.0: - version "2.2.2" - resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8" - dependencies: - globby "^5.0.0" - is-path-cwd "^1.0.0" - is-path-in-cwd "^1.0.0" - object-assign "^4.0.1" - pify "^2.0.0" - pinkie-promise "^2.0.0" - rimraf "^2.2.8" - delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" @@ -1313,53 +1085,24 @@ delegates@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" -delimit-stream@0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/delimit-stream/-/delimit-stream-0.1.0.tgz#9b8319477c0e5f8aeb3ce357ae305fc25ea1cd2b" - -depd@1.1.0, depd@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.0.tgz#e1bd82c6aab6ced965b97b88b17ed3e528ca18c3" - -destroy@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" - detect-indent@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" dependencies: repeating "^2.0.0" -detect-node@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.3.tgz#a2033c09cc8e158d37748fbde7507832bd6ce127" - -dexie@^1.4.2: - version "1.5.1" - resolved "https://registry.yarnpkg.com/dexie/-/dexie-1.5.1.tgz#ac3ad5a0ebaf7e6e42760db58710418d4a756624" - -dicer@^0.2.5: - version "0.2.5" - resolved "https://registry.yarnpkg.com/dicer/-/dicer-0.2.5.tgz#5996c086bb33218c812c090bddc09cd12facb70f" - dependencies: - readable-stream "1.1.x" - streamsearch "0.1.2" - diff@1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/diff/-/diff-1.4.0.tgz#7f28d2eb9ee7b15a97efd89ce63dcfdaa3ccbabf" +diff@3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-3.2.0.tgz#c9ce393a4b7cbd0b058a725c93df299027868ff9" + dom-walk@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.1.tgz#672226dc74c8f799ad35307df936aba11acd6018" -dot-prop@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-3.0.0.tgz#1b708af094a49c9a0e7dbcad790aba539dac1177" - dependencies: - is-obj "^1.0.0" - drbg.js@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/drbg.js/-/drbg.js-1.0.1.tgz#3e36b6c42b37043823cdbc332d58f31e2445480b" @@ -1368,28 +1111,12 @@ drbg.js@^1.0.1: create-hash "^1.1.2" create-hmac "^1.1.4" -duplexer2@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.1.4.tgz#8b12dab878c0d69e3e7891051662a32fc6bddcc1" - dependencies: - readable-stream "^2.0.2" - -duplexer2@~0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.0.2.tgz#c614dcf67e2fb14995a91711e5a617e8a60a31db" - dependencies: - readable-stream "~1.1.9" - ecc-jsbn@~0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" dependencies: jsbn "~0.1.0" -ee-first@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" - elliptic@=3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-3.0.3.tgz#865c9b420bfbe55006b9f969f97a0d2c44966595" @@ -1399,6 +1126,15 @@ elliptic@=3.0.3: hash.js "^1.0.0" inherits "^2.0.1" +elliptic@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-3.1.0.tgz#c21682ef762769b56a74201609105da11d5f60cc" + dependencies: + bn.js "^2.0.3" + brorand "^1.0.1" + hash.js "^1.0.0" + inherits "^2.0.1" + elliptic@^6.2.3, elliptic@^6.3.1: version "6.4.0" resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.0.tgz#cac9af8762c85836187003c8dfe193e5e2eae5df" @@ -1411,10 +1147,6 @@ elliptic@^6.2.3, elliptic@^6.3.1: minimalistic-assert "^1.0.0" minimalistic-crypto-utils "^1.0.0" -encodeurl@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.1.tgz#79e3d58655346909fe6f0f45a5de68103b294d20" - encoding@^0.1.11: version "0.1.12" resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" @@ -1427,45 +1159,6 @@ end-of-stream@^1.0.0, end-of-stream@^1.1.0: dependencies: once "^1.4.0" -engine.io-client@1.8.3: - version "1.8.3" - resolved "https://registry.yarnpkg.com/engine.io-client/-/engine.io-client-1.8.3.tgz#1798ed93451246453d4c6f635d7a201fe940d5ab" - dependencies: - component-emitter "1.2.1" - component-inherit "0.0.3" - debug "2.3.3" - engine.io-parser "1.3.2" - has-cors "1.1.0" - indexof "0.0.1" - parsejson "0.0.3" - parseqs "0.0.5" - parseuri "0.0.5" - ws "1.1.2" - xmlhttprequest-ssl "1.5.3" - yeast "0.1.2" - -engine.io-parser@1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/engine.io-parser/-/engine.io-parser-1.3.2.tgz#937b079f0007d0893ec56d46cb220b8cb435220a" - dependencies: - after "0.8.2" - arraybuffer.slice "0.0.6" - base64-arraybuffer "0.1.5" - blob "0.0.4" - has-binary "0.1.7" - wtf-8 "1.0.0" - -engine.io@1.8.3: - version "1.8.3" - resolved "https://registry.yarnpkg.com/engine.io/-/engine.io-1.8.3.tgz#8de7f97895d20d39b85f88eeee777b2bd42b13d4" - dependencies: - accepts "1.3.3" - base64id "1.0.0" - cookie "0.3.1" - debug "2.3.3" - engine.io-parser "1.3.2" - ws "1.1.2" - errno@~0.1.1: version "0.1.4" resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.4.tgz#b896e23a9e5e8ba33871fc996abd3635fc9a1c7d" @@ -1495,10 +1188,6 @@ es-to-primitive@^1.1.1: is-date-object "^1.0.1" is-symbol "^1.0.1" -escape-html@~1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" - escape-string-regexp@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.2.tgz#4dbc2fe674e71949caf3fb2695ce7f2dc1d9a8d1" @@ -1507,62 +1196,34 @@ escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" -escodegen@~0.0.24: - version "0.0.28" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-0.0.28.tgz#0e4ff1715f328775d6cab51ac44a406cd7abffd3" - dependencies: - esprima "~1.0.2" - estraverse "~1.3.0" - optionalDependencies: - source-map ">= 0.1.2" - -escodegen@~1.3.2: - version "1.3.3" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.3.3.tgz#f024016f5a88e046fd12005055e939802e6c5f23" - dependencies: - esprima "~1.1.1" - estraverse "~1.5.0" - esutils "~1.0.0" - optionalDependencies: - source-map "~0.1.33" - -esprima@~1.0.2: - version "1.0.4" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.0.4.tgz#9f557e08fc3b4d26ece9dd34f8fbf476b62585ad" - -esprima@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.1.1.tgz#5b6f1547f4d102e670e140c509be6771d6aeb549" - estraverse@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" -estraverse@~1.3.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-1.3.2.tgz#37c2b893ef13d723f276d878d60d8535152a6c42" - -estraverse@~1.5.0: - version "1.5.1" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-1.5.1.tgz#867a3e8e58a9f84618afb6c2ddbcd916b7cbaf71" - esutils@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" -esutils@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-1.0.0.tgz#8151d358e20c8acc7fb745e7472c0025fe496570" - -etag@~1.8.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.0.tgz#6f631aef336d6c46362b51764044ce216be3c051" +eth-lightwallet@^2.5.6: + version "2.5.6" + resolved "https://registry.yarnpkg.com/eth-lightwallet/-/eth-lightwallet-2.5.6.tgz#6f10f134ca97531e4f03a194008d314322500c13" + dependencies: + bitcore-lib "^0.14.0" + bitcore-mnemonic "^1.2.2" + buffer "^4.9.0" + crypto-js "^3.1.5" + elliptic "^3.1.0" + ethereumjs-tx "^1.1.1" + ethereumjs-util "^5.1.1" + rlp "^2.0.0" + scrypt-async "^1.2.0" + tweetnacl "0.13.2" + web3 "^0.19.1" eth-signer@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/eth-signer/-/eth-signer-0.2.2.tgz#41296b2ea5f9b227ee580f305c69c21967306eee" + version "0.2.3" + resolved "https://registry.yarnpkg.com/eth-signer/-/eth-signer-0.2.3.tgz#1808820769ebfef0c1dd6cfbc9412ef5e0c3a1a0" dependencies: - bignumber.js debris/bignumber.js#94d7146671b9719e00a09c29b01a691bc85048c2 bitcore-lib "^0.14.0" bitcore-mnemonic "^1.2.2" buffer "^4.9.1" @@ -1575,75 +1236,41 @@ eth-signer@^0.2.2: secp256k1 "^3.2.0" tweetnacl "0.14.3" tweetnacl-util "^0.13.3" - web3 "^0.15.3" - -ethereum-common@0.0.16: - version "0.0.16" - resolved "https://registry.yarnpkg.com/ethereum-common/-/ethereum-common-0.0.16.tgz#9a1e169ead34ab75e089f50ca512bfd0fbd12655" + web3 "^0.19.1" ethereum-common@0.0.18, ethereum-common@^0.0.18: version "0.0.18" resolved "https://registry.yarnpkg.com/ethereum-common/-/ethereum-common-0.0.18.tgz#2fdc3576f232903358976eb39da783213ff9523f" -ethereum-common@^0.0.17: - version "0.0.17" - resolved "https://registry.yarnpkg.com/ethereum-common/-/ethereum-common-0.0.17.tgz#0b554ca9d512cadc8be0456fbd000ffcc3ac4f6f" - -ethereumjs-account@^2.0.3, ethereumjs-account@~2.0.4: +ethereumjs-account@^2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/ethereumjs-account/-/ethereumjs-account-2.0.4.tgz#f8c30231bcb707f4514d8a052c1f9da103624d47" dependencies: ethereumjs-util "^4.0.1" rlp "^2.0.0" -ethereumjs-block@^1.2.2, ethereumjs-block@~1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/ethereumjs-block/-/ethereumjs-block-1.2.2.tgz#2ec7534a59021b8ec9b83c30e49690c6ebaedda1" +ethereumjs-block@^1.2.2: + version "1.5.1" + resolved "https://registry.yarnpkg.com/ethereumjs-block/-/ethereumjs-block-1.5.1.tgz#ffb9f636f2e7d4db4b8060df98f08e9d688dc660" dependencies: - async "^1.5.2" - ethereum-common "0.0.16" - ethereumjs-tx "^1.0.0" - ethereumjs-util "^4.0.1" + async "^2.0.1" + ethereum-common "0.0.18" + ethereumjs-tx "^1.2.2" + ethereumjs-util "^5.0.0" merkle-patricia-tree "^2.1.2" ethereumjs-testrpc@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/ethereumjs-testrpc/-/ethereumjs-testrpc-3.0.3.tgz#830480310dc02355305b674bc1004ba8a649b44d" - dependencies: - async "~1.5.0" - bignumber.js "~2.1.4" - bip39 "~2.2.0" - ethereumjs-account "~2.0.4" - ethereumjs-block "~1.2.2" - ethereumjs-tx "1.1.2" - ethereumjs-util "~4.5.0" - ethereumjs-vm "~2.0.1" - ethereumjs-wallet "~0.6.0" - fake-merkle-patricia-tree "~1.0.1" - heap "~0.2.6" - merkle-patricia-tree "~2.1.2" - seedrandom "~2.4.2" - shelljs "~0.6.0" - solc "0.4.6" - web3 "~0.16.0" - web3-provider-engine "~8.1.0" - yargs "~3.29.0" - -ethereumjs-tx@1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/ethereumjs-tx/-/ethereumjs-tx-1.1.2.tgz#c151477c6205d1860600e29108c3eacae97e29fa" - dependencies: - ethereum-common "^0.0.17" - ethereumjs-util "^4.5.0" + version "3.9.2" + resolved "https://registry.yarnpkg.com/ethereumjs-testrpc/-/ethereumjs-testrpc-3.9.2.tgz#bb0f2d3c3aa39350872ad38e40c83e9d787331c9" -ethereumjs-tx@^1.0.0, ethereumjs-tx@^1.1.2, ethereumjs-tx@^1.2.0: - version "1.2.5" - resolved "https://registry.yarnpkg.com/ethereumjs-tx/-/ethereumjs-tx-1.2.5.tgz#ed36d7ffeb97bc889c61eef1ab76f47a613d8286" +ethereumjs-tx@^1.1.1, ethereumjs-tx@^1.1.2, ethereumjs-tx@^1.2.0, ethereumjs-tx@^1.2.2: + version "1.3.1" + resolved "https://registry.yarnpkg.com/ethereumjs-tx/-/ethereumjs-tx-1.3.1.tgz#d6909abcfb37da6404fc18124d351eda20047dac" dependencies: ethereum-common "^0.0.18" ethereumjs-util "^5.0.0" -ethereumjs-util@^4.0.0, ethereumjs-util@^4.0.1, ethereumjs-util@^4.4.0, ethereumjs-util@^4.5.0, ethereumjs-util@~4.5.0: +ethereumjs-util@^4.0.0, ethereumjs-util@^4.0.1, ethereumjs-util@^4.4.0, ethereumjs-util@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-4.5.0.tgz#3e9428b317eebda3d7260d854fddda954b1f1bc6" dependencies: @@ -1653,10 +1280,12 @@ ethereumjs-util@^4.0.0, ethereumjs-util@^4.0.1, ethereumjs-util@^4.4.0, ethereum rlp "^2.0.0" secp256k1 "^3.0.1" -ethereumjs-util@^5.0.0, ethereumjs-util@^5.0.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-5.1.1.tgz#122fb38dea747dc62b3aebfc365d1bd48be4b73e" +ethereumjs-util@^5.0.0, ethereumjs-util@^5.0.1, ethereumjs-util@^5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-5.1.2.tgz#25ba0215cbb4c2f0b108a6f96af2a2e62e45921f" dependencies: + babel-preset-es2015 "^6.24.0" + babelify "^7.3.0" bn.js "^4.8.0" create-hash "^1.1.2" ethjs-util "^0.1.3" @@ -1664,9 +1293,9 @@ ethereumjs-util@^5.0.0, ethereumjs-util@^5.0.1: rlp "^2.0.0" secp256k1 "^3.0.1" -ethereumjs-vm@^2.0.2, ethereumjs-vm@~2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/ethereumjs-vm/-/ethereumjs-vm-2.0.2.tgz#84e2372a5715a80a62f7f2a312f8c64537e8a842" +ethereumjs-vm@^2.0.2: + version "2.1.0" + resolved "https://registry.yarnpkg.com/ethereumjs-vm/-/ethereumjs-vm-2.1.0.tgz#0faa3f5b6b6ecbd4c74f499c1260c27f712c7319" dependencies: async "^2.1.2" async-eventemitter "^0.2.2" @@ -1678,7 +1307,7 @@ ethereumjs-vm@^2.0.2, ethereumjs-vm@~2.0.1: functional-red-black-tree "^1.0.1" merkle-patricia-tree "^2.1.2" -ethereumjs-wallet@^0.6.0, ethereumjs-wallet@~0.6.0: +ethereumjs-wallet@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/ethereumjs-wallet/-/ethereumjs-wallet-0.6.0.tgz#82763b1697ee7a796be7155da9dfb49b2f98cfdb" dependencies: @@ -1698,6 +1327,14 @@ ethjs-abi@0.1.8: js-sha3 "0.5.5" number-to-bn "1.7.0" +ethjs-abi@^0.1.9: + version "0.1.9" + resolved "https://registry.yarnpkg.com/ethjs-abi/-/ethjs-abi-0.1.9.tgz#5211c4adc3a20793ad319a9d2204e43807e76fea" + dependencies: + bn.js "4.11.6" + js-sha3 "0.5.5" + number-to-bn "1.7.0" + ethjs-util@^0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/ethjs-util/-/ethjs-util-0.1.4.tgz#1c8b6879257444ef4d3f3fbbac2ded12cd997d93" @@ -1705,73 +1342,6 @@ ethjs-util@^0.1.3: is-hex-prefixed "1.0.0" strip-hex-prefix "1.0.0" -ethpm-registry@0.0.8: - version "0.0.8" - resolved "https://registry.yarnpkg.com/ethpm-registry/-/ethpm-registry-0.0.8.tgz#9d94d08aa254e1502a074416d8c03d6f4cd065d3" - dependencies: - fs-extra "^2.0.0" - left-pad "^1.1.3" - semver "^5.3.0" - solidity-sha3 "^0.4.1" - truffle beta - truffle-artifactor "^2.1.2" - truffle-contract "^1.1.6" - web3 "^0.18.2" - yargs "^6.6.0" - -ethpm-registry@0.0.9: - version "0.0.9" - resolved "https://registry.yarnpkg.com/ethpm-registry/-/ethpm-registry-0.0.9.tgz#b76159a45cde351decbd21bf83be5bf7edfb14c1" - dependencies: - fs-extra "^2.0.0" - left-pad "^1.1.3" - semver "^5.3.0" - solidity-sha3 "^0.4.1" - truffle-artifactor "^2.1.2" - truffle-contract "^1.1.6" - web3 "^0.18.2" - -ethpm-spec@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/ethpm-spec/-/ethpm-spec-1.0.1.tgz#ad3c09ae0492ad3d3ec7b94b7f5fd8057d4deb91" - dependencies: - json-schema-to-markdown "^1.0.3" - -ethpm@0.0.10: - version "0.0.10" - resolved "https://registry.yarnpkg.com/ethpm/-/ethpm-0.0.10.tgz#ce7ed7ed1955e9c3bfa2e47a905118a27ad66cc4" - dependencies: - async "^2.1.2" - ethpm-spec "^1.0.0" - fs-extra "^1.0.0" - glob "^7.1.1" - ipfs "^0.18.0" - ipfs-api "^11.1.0" - jsonschema "^1.1.1" - lodash "^4.17.1" - node-dir "^0.1.16" - promisify-node "^0.4.0" - semver "^5.3.0" - wget-improved "^1.4.0" - -ethpm@0.0.9: - version "0.0.9" - resolved "https://registry.yarnpkg.com/ethpm/-/ethpm-0.0.9.tgz#4af5b993b8c2f5e194fb2b609a134497442b2e3a" - dependencies: - async "^2.1.2" - ethpm-spec "^1.0.0" - fs-extra "^1.0.0" - glob "^7.1.1" - ipfs "^0.18.0" - ipfs-api "^11.1.0" - jsonschema "^1.1.1" - lodash "^4.17.1" - node-dir "^0.1.16" - promisify-node "^0.4.0" - semver "^5.3.0" - wget-improved "^1.4.0" - yargs "^6.4.0" - evp_bytestokey@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.0.tgz#497b66ad9fef65cd7c08a6180824ba1476b66e53" @@ -1795,8 +1365,8 @@ expand-template@^1.0.2: resolved "https://registry.yarnpkg.com/expand-template/-/expand-template-1.0.3.tgz#6c303323177a62b1b22c070279f7861287b69b1a" extend@~3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.0.tgz#5a474353b9f3353ddd8176dfd37b91c83a46f1d4" + version "3.0.1" + resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444" extglob@^0.3.1: version "0.3.2" @@ -1808,24 +1378,15 @@ extsprintf@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.0.2.tgz#e1080e0658e300b06294990cc70e1502235fd550" -fake-merkle-patricia-tree@^1.0.1, fake-merkle-patricia-tree@~1.0.1: +fake-merkle-patricia-tree@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/fake-merkle-patricia-tree/-/fake-merkle-patricia-tree-1.0.1.tgz#4b8c3acfb520afadf9860b1f14cd8ce3402cddd3" dependencies: checkpoint-store "^1.1.0" -falafel@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/falafel/-/falafel-1.2.0.tgz#c18d24ef5091174a497f318cd24b026a25cddab4" - dependencies: - acorn "^1.0.3" - foreach "^2.0.5" - isarray "0.0.1" - object-keys "^1.0.6" - filename-regex@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.0.tgz#996e3e80479b98b9897f15a8a58b3d084e926775" + version "2.0.1" + resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" fill-range@^2.1.0: version "2.2.3" @@ -1837,19 +1398,6 @@ fill-range@^2.1.0: repeat-element "^1.1.2" repeat-string "^1.5.2" -filled-array@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/filled-array/-/filled-array-1.1.0.tgz#c3c4f6c663b923459a9aa29912d2d031f1507f84" - -finalhandler@^0.4.0: - version "0.4.1" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-0.4.1.tgz#85a17c6c59a94717d262d61230d4b0ebe3d4a14d" - dependencies: - debug "~2.2.0" - escape-html "~1.0.3" - on-finished "~2.3.0" - unpipe "~1.0.0" - find-up@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" @@ -1857,16 +1405,6 @@ find-up@^1.0.0: path-exists "^2.0.0" pinkie-promise "^2.0.0" -find-up@^2.0.0, find-up@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" - dependencies: - locate-path "^2.0.0" - -flatmap@0.0.3: - version "0.0.3" - resolved "https://registry.yarnpkg.com/flatmap/-/flatmap-0.0.3.tgz#1f18a4d938152d495965f9c958d923ab2dd669b4" - for-each@^0.3.2, for-each@~0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.2.tgz#2c40450b9348e97f281322593ba96704b9abd4d4" @@ -1892,26 +1430,13 @@ forever-agent@~0.6.1: resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" form-data@~2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.2.tgz#89c3534008b97eada4cbb157d58f6f5df025eae4" + version "2.1.4" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1" dependencies: asynckit "^0.4.0" combined-stream "^1.0.5" mime-types "^2.1.12" -fresh@0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.0.tgz#f474ca5e6a9246d6fd8e0953cfa9b9c805afa78e" - -fs-extra@^0.24.0: - version "0.24.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-0.24.0.tgz#d4e4342a96675cb7846633a6099249332b539952" - dependencies: - graceful-fs "^4.1.2" - jsonfile "^2.1.0" - path-is-absolute "^1.0.0" - rimraf "^2.2.8" - fs-extra@^0.30.0: version "0.30.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-0.30.0.tgz#f233ffcc08d4da7d432daa449776989db1df93f0" @@ -1922,31 +1447,6 @@ fs-extra@^0.30.0: path-is-absolute "^1.0.0" rimraf "^2.2.8" -fs-extra@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-1.0.0.tgz#cd3ce5f7e7cb6145883fcae3191e9877f8587950" - dependencies: - graceful-fs "^4.1.2" - jsonfile "^2.1.0" - klaw "^1.0.0" - -fs-extra@^2.0.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-2.1.2.tgz#046c70163cef9aad46b0e4a7fa467fb22d71de35" - dependencies: - graceful-fs "^4.1.2" - jsonfile "^2.1.0" - -fs-pull-blob-store@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/fs-pull-blob-store/-/fs-pull-blob-store-0.3.0.tgz#b489757b4445cdca8e2eab35a9744a44f3453b16" - dependencies: - mkdirp "^0.5.1" - pull-defer "^0.2.2" - pull-file "^0.5.0" - pull-stream "^3.4.3" - pull-write-file "^0.2.1" - fs-readdir-recursive@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-1.0.0.tgz#8cd1745c8b4f8a29c8caec392476921ba195f560" @@ -1956,11 +1456,11 @@ fs.realpath@^1.0.0: resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" fsevents@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.1.tgz#f19fd28f43eeaf761680e519a203c4d0b3d31aff" + version "1.1.2" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.2.tgz#3282b713fb3ad80ede0e9fcf4611b5aa6fc033f4" dependencies: nan "^2.3.0" - node-pre-gyp "^0.6.29" + node-pre-gyp "^0.6.36" fstream-ignore@^1.0.5: version "1.0.5" @@ -1987,9 +1487,9 @@ functional-red-black-tree@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" -gauge@~2.7.1: - version "2.7.3" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.3.tgz#1c23855f962f17b3ad3d0dc7443f304542edfe09" +gauge@~2.7.3: + version "2.7.4" + resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" dependencies: aproba "^1.0.3" console-control-strings "^1.0.0" @@ -2000,39 +1500,16 @@ gauge@~2.7.1: strip-ansi "^3.0.1" wide-align "^1.1.0" -generate-function@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74" - -generate-object-property@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0" - dependencies: - is-property "^1.0.0" - -get-browser-rtc@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/get-browser-rtc/-/get-browser-rtc-1.0.2.tgz#bbcd40c8451a7ed4ef5c373b8169a409dd1d11d9" - get-caller-file@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5" getpass@^0.1.1: - version "0.1.6" - resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.6.tgz#283ffd9fc1256840875311c1b60e8c40187110e6" + version "0.1.7" + resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" dependencies: assert-plus "^1.0.0" -github-download@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/github-download/-/github-download-0.5.0.tgz#f7647a70aac4326fb091e5786c8f66ae157da51b" - dependencies: - adm-zip "~0.4.3" - fs-extra "^0.24.0" - request "^2.12.0" - vcsurl "~0.1.0" - github-from-package@0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/github-from-package/-/github-from-package-0.0.0.tgz#97fb5d96bfde8973313f20e8288ef9a167fa64ce" @@ -2057,9 +1534,9 @@ glob@3.2.11: inherits "2" minimatch "0.3" -glob@7.0.5: - version "7.0.5" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.0.5.tgz#b4202a69099bbb4d292a7c1b95b6682b67ebdc95" +glob@7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.1.tgz#805211df04faaf1c63a3600306cdf5ade50b2ec8" dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" @@ -2068,70 +1545,29 @@ glob@7.0.5: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^6.0.1: - version "6.0.4" - resolved "https://registry.yarnpkg.com/glob/-/glob-6.0.4.tgz#0f08860f6a155127b2fadd4f9ce24b1aab6e4d22" - dependencies: - inflight "^1.0.4" - inherits "2" - minimatch "2 || 3" - once "^1.3.0" - path-is-absolute "^1.0.0" - -glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@~7.1.1: - version "7.1.1" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.1.tgz#805211df04faaf1c63a3600306cdf5ade50b2ec8" +glob@^7.0.0, glob@^7.0.5, glob@~7.1.2: + version "7.1.2" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" inherits "2" - minimatch "^3.0.2" + minimatch "^3.0.4" once "^1.3.0" path-is-absolute "^1.0.0" global@~4.3.0: - version "4.3.1" - resolved "https://registry.yarnpkg.com/global/-/global-4.3.1.tgz#5f757908c7cbabce54f386ae440e11e26b7916df" + version "4.3.2" + resolved "https://registry.yarnpkg.com/global/-/global-4.3.2.tgz#e76989268a6c74c38908b1305b10fc0e394e9d0f" dependencies: min-document "^2.19.0" process "~0.5.1" globals@^9.0.0: - version "9.17.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-9.17.0.tgz#0c0ca696d9b9bb694d2e5470bd37777caad50286" - -globby@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-5.0.0.tgz#ebd84667ca0dbb330b99bcfc68eac2bc54370e0d" - dependencies: - array-union "^1.0.1" - arrify "^1.0.0" - glob "^7.0.3" - object-assign "^4.0.1" - pify "^2.0.0" - pinkie-promise "^2.0.0" - -got@^5.0.0: - version "5.7.1" - resolved "https://registry.yarnpkg.com/got/-/got-5.7.1.tgz#5f81635a61e4a6589f180569ea4e381680a51f35" - dependencies: - create-error-class "^3.0.1" - duplexer2 "^0.1.4" - is-redirect "^1.0.0" - is-retry-allowed "^1.0.0" - is-stream "^1.0.0" - lowercase-keys "^1.0.0" - node-status-codes "^1.0.0" - object-assign "^4.0.1" - parse-json "^2.1.0" - pinkie-promise "^2.0.0" - read-all-stream "^3.0.0" - readable-stream "^2.0.5" - timed-out "^3.0.0" - unzip-response "^1.0.2" - url-parse-lax "^1.0.0" + version "9.18.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" -graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.4, graceful-fs@^4.1.6, graceful-fs@^4.1.9, graceful-fs@~4.1.2: +graceful-fs@^4.1.2, graceful-fs@^4.1.4, graceful-fs@^4.1.6, graceful-fs@^4.1.9: version "4.1.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" @@ -2139,43 +1575,10 @@ graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.4, graceful-fs@^4.1.6, version "1.0.1" resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" -graphlib@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/graphlib/-/graphlib-2.1.1.tgz#42352c52ba2f4d035cb566eb91f7395f76ebc951" - dependencies: - lodash "^4.11.1" - growl@1.9.2: version "1.9.2" resolved "https://registry.yarnpkg.com/growl/-/growl-1.9.2.tgz#0ea7743715db8d8de2c5ede1775e1b45ac85c02f" -hapi-set-header@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/hapi-set-header/-/hapi-set-header-1.0.2.tgz#2afae002c6719d6d54f3fa88462f822892d2df13" - -hapi@^15.0.3, hapi@^15.2.0: - version "15.2.0" - resolved "https://registry.yarnpkg.com/hapi/-/hapi-15.2.0.tgz#5704ca2c04b6386c03caf9ee901f1de080316d23" - dependencies: - accept "2.x.x" - ammo "2.x.x" - boom "4.x.x" - call "3.x.x" - catbox "7.x.x" - catbox-memory "2.x.x" - cryptiles "3.x.x" - heavy "4.x.x" - hoek "4.x.x" - iron "4.x.x" - items "2.x.x" - joi "9.x.x" - mimos "3.x.x" - podium "^1.2.x" - shot "3.x.x" - statehood "5.x.x" - subtext "^4.3.x" - topo "2.x.x" - har-schema@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e" @@ -2193,16 +1596,6 @@ has-ansi@^2.0.0: dependencies: ansi-regex "^2.0.0" -has-binary@0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/has-binary/-/has-binary-0.1.7.tgz#68e61eb16210c9545a0a5cce06a873912fe1e68c" - dependencies: - isarray "0.0.1" - -has-cors@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/has-cors/-/has-cors-1.1.0.tgz#5e474793f7ea9843d1bb99c23eef49ff126fff39" - has-flag@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" @@ -2211,18 +1604,25 @@ has-unicode@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" -has@^1.0.0, has@^1.0.1, has@~1.0.1: +has@^1.0.1, has@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28" dependencies: function-bind "^1.0.2" -hash.js@^1.0.0, hash.js@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.0.3.tgz#1332ff00156c0a0ffdd8236013d07b77a0451573" +hash-base@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-2.0.2.tgz#66ea1d856db4e8a5470cadf6fce23ae5244ef2e1" dependencies: inherits "^2.0.1" +hash.js@^1.0.0, hash.js@^1.0.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.3.tgz#340dedbe6290187151c1ea1d777a3448935df846" + dependencies: + inherits "^2.0.3" + minimalistic-assert "^1.0.0" + hawk@~3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4" @@ -2239,21 +1639,9 @@ hdkey@^0.7.0: coinstring "^2.0.0" secp256k1 "^3.0.1" -heap@^0.2.6, heap@~0.2.6: - version "0.2.6" - resolved "https://registry.yarnpkg.com/heap/-/heap-0.2.6.tgz#087e1f10b046932fc8594dd9e6d378afc9d1e5ac" - -heavy@4.x.x: - version "4.0.3" - resolved "https://registry.yarnpkg.com/heavy/-/heavy-4.0.3.tgz#976bba118b011b15fe904aa4f292a168bfc6232f" - dependencies: - boom "4.x.x" - hoek "4.x.x" - joi "10.x.x" - hmac-drbg@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.0.tgz#3db471f45aae4a994a0688322171f51b8b91bee5" + version "1.0.1" + resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" dependencies: hash.js "^1.0.3" minimalistic-assert "^1.0.0" @@ -2263,10 +1651,6 @@ hoek@2.x.x: version "2.16.3" resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" -hoek@4.x.x: - version "4.1.1" - resolved "https://registry.yarnpkg.com/hoek/-/hoek-4.1.1.tgz#9cc573ffba2b7b408fb5e9c2a13796be94cddce9" - home-or-tmp@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" @@ -2275,26 +1659,8 @@ home-or-tmp@^2.0.0: os-tmpdir "^1.0.1" hosted-git-info@^2.1.4: - version "2.4.1" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.4.1.tgz#4b0445e41c004a8bd1337773a4ff790ca40318c8" - -hpack.js@^2.1.6: - version "2.1.6" - resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" - dependencies: - inherits "^2.0.1" - obuf "^1.0.0" - readable-stream "^2.0.1" - wbuf "^1.1.0" - -http-errors@~1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.1.tgz#5f8b8ed98aca545656bf572997387f904a722257" - dependencies: - depd "1.1.0" - inherits "2.0.3" - setprototypeof "1.0.3" - statuses ">= 1.3.1 < 2" + version "2.5.0" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.5.0.tgz#6d60e34b3abbc8313062c3b798ef8d901a07af3c" http-signature@~1.1.0: version "1.1.1" @@ -2305,21 +1671,10 @@ http-signature@~1.1.0: sshpk "^1.7.0" iconv-lite@~0.4.13: - version "0.4.15" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.15.tgz#fe265a218ac6a57cfe854927e9d04c19825eddeb" + version "0.4.18" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.18.tgz#23d8656b16aae6742ac29732ea8f0336a4789cf2" -idb-pull-blob-store@^0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/idb-pull-blob-store/-/idb-pull-blob-store-0.5.1.tgz#9c13f9f10eb05aa3a9f20ef571513c47579f75d4" - dependencies: - dexie "^1.4.2" - pull-defer "^0.2.2" - pull-pushable "^2.0.1" - pull-window "^2.1.4" - pull-write "^1.0.2" - typedarray-to-buffer "^3.1.2" - -ieee754@^1.1.4, ieee754@^1.1.8: +ieee754@^1.1.4: version "1.1.8" resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.8.tgz#be33d40ac10ef1926701f6f08a2d86fbfd1ad3e4" @@ -2327,14 +1682,6 @@ immediate@^3.2.3: version "3.2.3" resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.2.3.tgz#d140fa8f614659bd6541233097ddaac25cdd991c" -imurmurhash@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" - -indexof@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" - inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -2342,11 +1689,11 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.3, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.3: +inherits@2, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" -inherits@=2.0.1, inherits@^2.0.1, inherits@~2.0.1: +inherits@=2.0.1, inherits@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" @@ -2354,22 +1701,6 @@ ini@~1.3.0: version "1.3.4" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e" -interface-connection@^0.3.0, interface-connection@~0.3.1, interface-connection@~0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/interface-connection/-/interface-connection-0.3.2.tgz#e4949883f6ea79fb7edd01ee3f4fca47a29fd2c4" - dependencies: - pull-defer "~0.2.2" - timed-tape "~0.1.1" - -interface-pull-blob-store@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/interface-pull-blob-store/-/interface-pull-blob-store-0.6.0.tgz#d4ca38bfa634d22c00f631c900d8939f33c85eb3" - dependencies: - chai "^3.5.0" - pull-stream "^3.4.3" - pull-write "^1.0.2" - run-series "^1.1.4" - invariant@^2.2.0: version "2.2.2" resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360" @@ -2380,266 +1711,6 @@ invert-kv@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" -ip-address@^5.8.6: - version "5.8.6" - resolved "https://registry.yarnpkg.com/ip-address/-/ip-address-5.8.6.tgz#666279e21a38f9c274fa503cacfc339fa6ee483f" - dependencies: - jsbn "0.1.0" - lodash.find "^4.6.0" - lodash.max "^4.0.1" - lodash.merge "^4.6.0" - lodash.padstart "^4.6.1" - lodash.repeat "^4.1.0" - sprintf-js "^1.0.3" - util-deprecate "^1.0.2" - -ip@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" - -ipfs-api@^11.1.0: - version "11.2.0" - resolved "https://registry.yarnpkg.com/ipfs-api/-/ipfs-api-11.2.0.tgz#06529d07e8025082b34bd87a05fc7167989fec98" - dependencies: - async "^2.1.2" - bl "^1.1.2" - bs58 "^3.0.0" - concat-stream "^1.5.2" - detect-node "^2.0.3" - flatmap "0.0.3" - glob "^7.1.1" - ipfs-block "^0.5.0" - ipld-dag-pb "^0.9.0" - is-ipfs "^0.2.1" - isstream "^0.1.2" - lru-cache "^4.0.1" - multiaddr "^2.0.3" - multipart-stream "^2.0.1" - ndjson "^1.4.3" - once "^1.4.0" - peer-id "^0.8.0" - peer-info "^0.8.0" - promisify-es6 "^1.0.2" - qs "^6.3.0" - readable-stream "^1.1.14" - stream-http "^2.5.0" - streamifier "^0.1.1" - tar-stream "^1.5.2" - -ipfs-bitswap@^0.8.1: - version "0.8.3" - resolved "https://registry.yarnpkg.com/ipfs-bitswap/-/ipfs-bitswap-0.8.3.tgz#3545d91011d3562a8ccf878fc787e3b7bb55e7e3" - dependencies: - async "^2.1.4" - cids "^0.3.4" - debug "^2.3.3" - heap "^0.2.6" - ipfs-block "^0.5.3" - lodash.debounce "^4.0.8" - lodash.isequalwith "^4.4.0" - lodash.isundefined "^3.0.1" - multihashes "^0.3.0" - protocol-buffers "^3.2.1" - pull-defer "^0.2.2" - pull-length-prefixed "^1.2.0" - pull-paramap "^1.2.1" - pull-pushable "^2.0.1" - pull-stream "^3.5.0" - -ipfs-block-service@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/ipfs-block-service/-/ipfs-block-service-0.6.0.tgz#e537a4624eb006587f6e61a06bc1750eae4cb74a" - dependencies: - cids "^0.2.0" - pull-stream "^3.4.5" - run-parallel-limit "^1.0.3" - -ipfs-block-service@^0.7.0: - version "0.7.2" - resolved "https://registry.yarnpkg.com/ipfs-block-service/-/ipfs-block-service-0.7.2.tgz#18592cf14819391d0dc7a1fdb3be6201d3c6fee2" - dependencies: - async "^2.1.4" - cids "^0.3.4" - -ipfs-block@^0.5.0, ipfs-block@^0.5.3, ipfs-block@~0.5.4, ipfs-block@~0.5.5: - version "0.5.5" - resolved "https://registry.yarnpkg.com/ipfs-block/-/ipfs-block-0.5.5.tgz#956a4d1a758c2574fb5362634655ccfa1c0ebd24" - dependencies: - async "^2.1.4" - multihashing-async "~0.4.2" - -ipfs-multipart@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/ipfs-multipart/-/ipfs-multipart-0.1.0.tgz#5a8ed13f42e82d8bef7d2e151d8eaf5e3a30e3ea" - dependencies: - content "^3.0.0" - dicer "^0.2.5" - -ipfs-repo@^0.11.0, ipfs-repo@^0.11.1: - version "0.11.3" - resolved "https://registry.yarnpkg.com/ipfs-repo/-/ipfs-repo-0.11.3.tgz#eb9219fa0909559cf72c0ccb6549e208a8087a4a" - dependencies: - async "^2.1.4" - base32.js "^0.1.0" - ipfs-block "~0.5.5" - lock "^0.1.3" - multihashes "~0.3.3" - pull-defer "^0.2.2" - pull-stream "^3.5.0" - pull-write "^1.1.1" - safe-buffer "^5.0.1" - -ipfs-unixfs-engine@^0.13.0: - version "0.13.0" - resolved "https://registry.yarnpkg.com/ipfs-unixfs-engine/-/ipfs-unixfs-engine-0.13.0.tgz#4600434e4872c5588daf2c4e04ebcf519d7f3f8a" - dependencies: - async "^2.1.2" - cids "^0.2.0" - ipfs-unixfs "^0.1.5" - ipld-dag-pb "^0.8.0" - ipld-resolver "^0.2.0" - is-ipfs "^0.2.1" - multihashes "^0.2.2" - pull-block "^1.0.2" - pull-paramap "^1.2.0" - pull-pushable "^2.0.1" - pull-stream "^3.5.0" - pull-traverse "^1.0.3" - pull-write "^1.1.1" - -ipfs-unixfs@^0.1.5: - version "0.1.11" - resolved "https://registry.yarnpkg.com/ipfs-unixfs/-/ipfs-unixfs-0.1.11.tgz#4597ea60d3a4c51ed3e05da107e0473b01844bd4" - dependencies: - protocol-buffers "^3.2.1" - -ipfs@^0.18.0: - version "0.18.0" - resolved "https://registry.yarnpkg.com/ipfs/-/ipfs-0.18.0.tgz#8a1254bbbd1e9cb3f77fc6c66aee856b566a9189" - dependencies: - async "^2.1.2" - bl "^1.1.2" - boom "^4.2.0" - debug "^2.3.2" - fs-pull-blob-store "^0.3.0" - glob "^7.1.1" - hapi "^15.2.0" - hapi-set-header "^1.0.2" - idb-pull-blob-store "^0.5.1" - ipfs-api "^11.1.0" - ipfs-bitswap "^0.8.1" - ipfs-block "^0.5.0" - ipfs-block-service "^0.7.0" - ipfs-multipart "^0.1.0" - ipfs-repo "^0.11.1" - ipfs-unixfs "^0.1.5" - ipfs-unixfs-engine "^0.13.0" - ipld-resolver "^0.2.0" - isstream "^0.1.2" - joi "^9.2.0" - libp2p-ipfs "^0.15.0" - libp2p-ipfs-browser "^0.16.0" - lodash.flatmap "^4.5.0" - lodash.get "^4.4.2" - lodash.has "^4.5.2" - lodash.set "^4.3.2" - lodash.sortby "^4.7.0" - lodash.values "^4.3.0" - mafmt "^2.1.2" - multiaddr "^2.0.3" - multihashes "^0.2.2" - path-exists "^3.0.0" - peer-book "^0.3.0" - peer-id "^0.8.0" - peer-info "^0.8.0" - promisify-es6 "^1.0.2" - pull-file "^1.0.0" - pull-paramap "^1.2.1" - pull-pushable "^2.0.1" - pull-sort "^1.0.0" - pull-stream "^3.5.0" - pull-stream-to-stream "^1.3.3" - pull-zip "^2.0.1" - read-pkg-up "^2.0.0" - readable-stream "^1.1.14" - stream-to-pull-stream "^1.7.2" - tar-stream "^1.5.2" - temp "^0.8.3" - through2 "^2.0.1" - update-notifier "^1.0.2" - yargs "^6.3.0" - -ipld-dag-cbor@^0.8.0: - version "0.8.6" - resolved "https://registry.yarnpkg.com/ipld-dag-cbor/-/ipld-dag-cbor-0.8.6.tgz#a0a93f4f54db6b26200edb17dd50be1fdbbbd5d6" - dependencies: - async "^2.1.4" - borc "^2.0.2" - bs58 "^4.0.0" - cids "^0.4.0" - is-circular "^1.0.1" - multihashes "^0.3.2" - multihashing-async "^0.4.0" - traverse "^0.6.6" - -ipld-dag-pb@^0.8.0: - version "0.8.0" - resolved "https://registry.yarnpkg.com/ipld-dag-pb/-/ipld-dag-pb-0.8.0.tgz#8ee35f2c681c6ac046300e8c81cc1ad9b840c4e2" - dependencies: - async "^2.1.2" - cids "^0.2.0" - ipfs-block "^0.5.0" - is-ipfs "^0.2.1" - multihashes "^0.2.2" - multihashing-async "^0.2.0" - protocol-buffers "^3.1.6" - pull-stream "^3.5.0" - pull-traverse "^1.0.3" - stable "^0.1.5" - -ipld-dag-pb@^0.9.0: - version "0.9.5" - resolved "https://registry.yarnpkg.com/ipld-dag-pb/-/ipld-dag-pb-0.9.5.tgz#e8c7dc61a4dd83a8658735559264ee4fedd8b635" - dependencies: - async "^2.1.4" - buffer-loader "0.0.1" - cids "~0.4.1" - ipfs-block "~0.5.4" - is-ipfs "~0.3.0" - multihashes "~0.3.3" - multihashing-async "~0.4.2" - protocol-buffers "^3.2.1" - pull-stream "^3.5.0" - pull-traverse "^1.0.3" - stable "^0.1.5" - -ipld-resolver@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/ipld-resolver/-/ipld-resolver-0.2.0.tgz#d278ed72a43a98a96df6119e543e512d6e25d1a2" - dependencies: - async "^2.1.2" - cids "^0.2.0" - interface-pull-blob-store "^0.6.0" - ipfs-block "^0.5.0" - ipfs-block-service "^0.6.0" - ipfs-repo "^0.11.0" - ipld-dag-cbor "^0.8.0" - ipld-dag-pb "^0.8.0" - is-ipfs "^0.2.1" - lodash.flatten "^4.4.0" - lodash.includes "^4.3.0" - multihashes "^0.2.2" - pull-stream "^3.5.0" - pull-traverse "^1.0.3" - -iron@4.x.x: - version "4.0.4" - resolved "https://registry.yarnpkg.com/iron/-/iron-4.0.4.tgz#c1f8cc4c91454194ab8920d9247ba882e528061a" - dependencies: - boom "4.x.x" - cryptiles "3.x.x" - hoek "4.x.x" - is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" @@ -2650,7 +1721,7 @@ is-binary-path@^1.0.0: dependencies: binary-extensions "^1.0.0" -is-buffer@^1.0.2: +is-buffer@^1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.5.tgz#1f3b26ef613b214b88cbca23cc6c01d87961eecc" @@ -2664,17 +1735,13 @@ is-callable@^1.1.1, is-callable@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2" -is-circular@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-circular/-/is-circular-1.0.1.tgz#65b0476a8588e546b8087c1d66d4c08d82a31679" - is-date-object@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" is-dotfile@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.2.tgz#2c132383f39199f8edc268ca01b9b007d205cc4d" + version "1.0.3" + resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" is-equal-shallow@^0.1.3: version "0.1.3" @@ -2716,49 +1783,17 @@ is-hex-prefixed@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz#7d8d37e6ad77e5d127148913c573e082d777f554" -is-ipfs@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-ipfs/-/is-ipfs-0.2.1.tgz#10357d3fddc7cded4b6ea6cc1da6fe7d8d84b438" - dependencies: - bs58 "^3.0.0" - multihashes "^0.2.0" - -is-ipfs@~0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/is-ipfs/-/is-ipfs-0.3.0.tgz#c9935f22b19df50a97e7b265f95ade4c291ad395" - dependencies: - bs58 "^4.0.0" - multihashes "^0.3.2" - -is-npm@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-1.0.0.tgz#f2fb63a65e4905b406c86072765a1a4dc793b9f4" - -is-number@^2.0.2, is-number@^2.1.0: +is-number@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" dependencies: kind-of "^3.0.2" -is-obj@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" - -is-path-cwd@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" - -is-path-in-cwd@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz#6477582b8214d602346094567003be8a9eac04dc" - dependencies: - is-path-inside "^1.0.0" - -is-path-inside@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.0.tgz#fc06e5a1683fbda13de667aff717bbc10a48f37f" +is-number@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" dependencies: - path-is-inside "^1.0.1" + kind-of "^3.0.2" is-posix-bracket@^0.1.0: version "0.1.1" @@ -2768,29 +1803,13 @@ is-primitive@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" -is-promise@~1, is-promise@~1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-1.0.1.tgz#31573761c057e33c2e91aab9e96da08cefbe76e5" - -is-property@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" - -is-redirect@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-redirect/-/is-redirect-1.0.0.tgz#1d03dded53bd8db0f30c26e4f95d36fc7c87dc24" - is-regex@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" dependencies: has "^1.0.1" -is-retry-allowed@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz#11a060568b67339444033d0125a61a20d564fb34" - -is-stream@^1.0.0, is-stream@^1.0.1: +is-stream@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" @@ -2798,7 +1817,7 @@ is-symbol@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572" -is-typedarray@^1.0.0, is-typedarray@~1.0.0: +is-typedarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" @@ -2814,10 +1833,6 @@ isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" -isemail@2.x.x: - version "2.2.1" - resolved "https://registry.yarnpkg.com/isemail/-/isemail-2.2.1.tgz#0353d3d9a62951080c262c2aa0a42b8ea8e9e2a6" - isobject@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" @@ -2831,14 +1846,10 @@ isomorphic-fetch@^2.2.0: node-fetch "^1.0.1" whatwg-fetch ">=0.10.0" -isstream@^0.1.2, isstream@~0.1.2: +isstream@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" -items@2.x.x: - version "2.1.1" - resolved "https://registry.yarnpkg.com/items/-/items-2.1.1.tgz#8bd16d9c83b19529de5aea321acaada78364a198" - jade@0.26.3: version "0.26.3" resolved "https://registry.yarnpkg.com/jade/-/jade-0.26.3.tgz#8f10d7977d8d79f2f6ff862a81b0513ccb25686c" @@ -2846,31 +1857,6 @@ jade@0.26.3: commander "0.6.1" mkdirp "0.3.0" -jodid25519@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/jodid25519/-/jodid25519-1.0.2.tgz#06d4912255093419477d425633606e0e90782967" - dependencies: - jsbn "~0.1.0" - -joi@10.x.x: - version "10.4.1" - resolved "https://registry.yarnpkg.com/joi/-/joi-10.4.1.tgz#a2fca1f0d603d1b843f2c1e086b52461f6be1f36" - dependencies: - hoek "4.x.x" - isemail "2.x.x" - items "2.x.x" - topo "2.x.x" - -joi@9.x.x, joi@^9.2.0: - version "9.2.0" - resolved "https://registry.yarnpkg.com/joi/-/joi-9.2.0.tgz#3385ac790192130cbe230e802ec02c9215bbfeda" - dependencies: - hoek "4.x.x" - isemail "2.x.x" - items "2.x.x" - moment "2.x.x" - topo "2.x.x" - js-sha3@0.5.5: version "0.5.5" resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.5.5.tgz#baf0c0e8c54ad5903447df96ade7a4a1bca79a4a" @@ -2879,17 +1865,9 @@ js-sha3@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.3.1.tgz#86122802142f0828502a0d1dee1d95e253bb0243" -js-sha3@^0.5.1, js-sha3@^0.5.7: - version "0.5.7" - resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.5.7.tgz#0d4ffd8002d5333aabaf4a23eed2f6374c9f28e7" - js-tokens@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.1.tgz#08e9f132484a2c45a30907e9dc4d5567b7f114d7" - -jsbn@0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.0.tgz#650987da0dd74f4ebf5a11377a2aa2d273e97dfd" + version "3.0.2" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" jsbn@~0.1.0: version "0.1.1" @@ -2903,10 +1881,6 @@ jsesc@~0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" -json-schema-to-markdown@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/json-schema-to-markdown/-/json-schema-to-markdown-1.0.3.tgz#4411ca222b2b6760e616663f0bb2bd76bb26ebb8" - json-schema@0.2.3: version "0.2.3" resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" @@ -2917,16 +1891,10 @@ json-stable-stringify@^1.0.1: dependencies: jsonify "~0.0.0" -json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1: +json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" -json-text-sequence@^0.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/json-text-sequence/-/json-text-sequence-0.1.1.tgz#a72f217dc4afc4629fff5feb304dc1bd51a2f3d2" - dependencies: - delimit-stream "0.1.0" - json3@3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.2.tgz#3c0434743df93e2f5c42aee7b19bcb483575f4e1" @@ -2945,10 +1913,6 @@ jsonify@~0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" -jsonschema@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/jsonschema/-/jsonschema-1.1.1.tgz#3cede8e3e411d377872eefbc9fdf26383cbc3ed9" - jsprim@^1.2.2: version "1.4.0" resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.0.tgz#a3b87e40298d8c380552d8cc7628a0bb95a22918" @@ -2959,13 +1923,14 @@ jsprim@^1.2.2: verror "1.3.6" keccak@^1.0.2: - version "1.2.0" - resolved "https://registry.yarnpkg.com/keccak/-/keccak-1.2.0.tgz#b53618fc7961b642f6e73f1546eec3329f7effe0" + version "1.3.0" + resolved "https://registry.yarnpkg.com/keccak/-/keccak-1.3.0.tgz#3681bd99ad3d0354ddb29b9040c1b6560cce08ac" dependencies: bindings "^1.2.1" inherits "^2.0.3" nan "^2.2.1" prebuild-install "^2.0.0" + safe-buffer "^5.1.0" keccakjs@^0.2.0: version "0.2.1" @@ -2974,15 +1939,17 @@ keccakjs@^0.2.0: browserify-sha3 "^0.0.1" sha3 "^1.1.0" -keypair@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/keypair/-/keypair-1.0.1.tgz#7603719270afb6564ed38a22087a06fc9aa4ea1b" - kind-of@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.1.0.tgz#475d698a5e49ff5e53d14e3e732429dc8bf4cf47" + version "3.2.2" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" + dependencies: + is-buffer "^1.1.5" + +kind-of@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" dependencies: - is-buffer "^1.0.2" + is-buffer "^1.1.5" klaw@^1.0.0: version "1.3.1" @@ -2990,16 +1957,6 @@ klaw@^1.0.0: optionalDependencies: graceful-fs "^4.1.9" -latest-version@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-2.0.0.tgz#56f8d6139620847b8017f8f1f4d78e211324168b" - dependencies: - package-json "^2.0.0" - -lazy-req@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/lazy-req/-/lazy-req-1.1.0.tgz#bdaebead30f8d824039ce0ce149d4daa07ba1fac" - lcid@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" @@ -3037,8 +1994,8 @@ level-ws@0.0.0: xtend "~2.1.1" levelup@^1.2.1: - version "1.3.5" - resolved "https://registry.yarnpkg.com/levelup/-/levelup-1.3.5.tgz#fa80a972b74011f2537c8b65678bd8b5188e4e66" + version "1.3.8" + resolved "https://registry.yarnpkg.com/levelup/-/levelup-1.3.8.tgz#fb442c488efbea1043f7eb9929a792a74fbd1da6" dependencies: deferred-leveldown "~1.2.1" level-codec "~6.1.0" @@ -3048,162 +2005,6 @@ levelup@^1.2.1: semver "~5.1.0" xtend "~4.0.0" -libp2p-crypto-secp256k1@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/libp2p-crypto-secp256k1/-/libp2p-crypto-secp256k1-0.1.4.tgz#211378fe3a859d89ad1203aa9e0d75d686c85bdf" - dependencies: - async "^2.1.4" - libp2p-crypto "~0.8.4" - multihashing-async "~0.4.2" - nodeify "^1.0.0" - safe-buffer "^5.0.1" - secp256k1 "^3.2.5" - -libp2p-crypto@~0.8.4, libp2p-crypto@~0.8.6, libp2p-crypto@~0.8.7: - version "0.8.7" - resolved "https://registry.yarnpkg.com/libp2p-crypto/-/libp2p-crypto-0.8.7.tgz#be122acf9c62813fea29682b2fc7144da6e503c2" - dependencies: - asn1.js "^4.9.1" - async "^2.1.5" - browserify-aes "^1.0.6" - keypair "^1.0.1" - libp2p-crypto-secp256k1 "^0.1.4" - multihashing-async "~0.4.4" - nodeify "^1.0.1" - pem-jwk "^1.5.1" - protocol-buffers "^3.2.1" - rsa-pem-to-jwk "^1.1.3" - safe-buffer "^5.0.1" - tweetnacl "^1.0.0-rc.1" - webcrypto-shim "github:dignifiedquire/webcrypto-shim#master" - optionalDependencies: - node-webcrypto-ossl "^1.0.21" - -libp2p-identify@~0.3.3: - version "0.3.3" - resolved "https://registry.yarnpkg.com/libp2p-identify/-/libp2p-identify-0.3.3.tgz#70e6c4d322b9ef475a75ce57b4bb6898adb75f29" - dependencies: - multiaddr "^2.2.2" - peer-id "~0.8.4" - peer-info "~0.8.4" - protocol-buffers "^3.2.1" - pull-length-prefixed "^1.2.0" - pull-stream "^3.5.0" - -libp2p-ipfs-browser@^0.16.0: - version "0.16.0" - resolved "https://registry.yarnpkg.com/libp2p-ipfs-browser/-/libp2p-ipfs-browser-0.16.0.tgz#fcb2c0b0dbca0a1c6175a9218d28f8861939c0f9" - dependencies: - libp2p-secio "^0.6.3" - libp2p-spdy "^0.10.0" - libp2p-swarm "^0.26.1" - libp2p-webrtc-star "^0.5.0" - libp2p-websockets "^0.9.1" - mafmt "^2.1.2" - multiaddr "^2.0.3" - peer-book "^0.3.0" - peer-id "^0.8.0" - peer-info "^0.8.0" - -libp2p-ipfs@^0.15.0: - version "0.15.0" - resolved "https://registry.yarnpkg.com/libp2p-ipfs/-/libp2p-ipfs-0.15.0.tgz#e2cba14185b04ebcf794886f9f48b04c48e390bb" - dependencies: - libp2p-secio "^0.6.2" - libp2p-spdy "^0.10.0" - libp2p-swarm "^0.26.0" - libp2p-tcp "^0.9.1" - libp2p-websockets "^0.9.0" - mafmt "^2.1.2" - multiaddr "^2.0.3" - peer-book "^0.3.0" - peer-id "^0.8.0" - peer-info "^0.8.0" - -libp2p-secio@^0.6.2, libp2p-secio@^0.6.3: - version "0.6.8" - resolved "https://registry.yarnpkg.com/libp2p-secio/-/libp2p-secio-0.6.8.tgz#29a44a7225a0f6149199fcc0bb09772ac915ee03" - dependencies: - async "^2.1.5" - debug "^2.6.3" - interface-connection "~0.3.2" - libp2p-crypto "~0.8.6" - multihashing-async "~0.4.4" - peer-id "~0.8.4" - protocol-buffers "^3.2.1" - pull-defer "^0.2.2" - pull-handshake "^1.1.4" - pull-length-prefixed "^1.2.0" - pull-stream "^3.5.0" - -libp2p-spdy@^0.10.0: - version "0.10.6" - resolved "https://registry.yarnpkg.com/libp2p-spdy/-/libp2p-spdy-0.10.6.tgz#a7c1828d1de61158e2c432f6c2d1dbc8e2538035" - dependencies: - browserify-zlib-next "^1.0.1" - interface-connection "~0.3.2" - lodash.noop "^3.0.1" - pull-stream-to-stream "^1.3.3" - spdy-transport "^2.0.18" - stream-to-pull-stream "^1.7.2" - -libp2p-swarm@^0.26.0, libp2p-swarm@^0.26.1: - version "0.26.19" - resolved "https://registry.yarnpkg.com/libp2p-swarm/-/libp2p-swarm-0.26.19.tgz#305fab108b6ebaeedaa190b1961a2cb0a224f97e" - dependencies: - async "^2.1.5" - browserify-zlib-next "^1.0.1" - debug "^2.6.3" - interface-connection "~0.3.2" - ip-address "^5.8.6" - libp2p-identify "~0.3.3" - lodash.includes "^4.3.0" - multiaddr "^2.2.2" - multistream-select "~0.13.5" - once "^1.4.0" - peer-id "~0.8.4" - peer-info "~0.8.4" - protocol-buffers "^3.2.1" - -libp2p-tcp@^0.9.1: - version "0.9.4" - resolved "https://registry.yarnpkg.com/libp2p-tcp/-/libp2p-tcp-0.9.4.tgz#9c0dc4177d3341e04f9f140bd55a4b8dc68772d8" - dependencies: - interface-connection "~0.3.2" - ip-address "^5.8.6" - lodash.includes "^4.3.0" - lodash.isfunction "^3.0.8" - mafmt "^2.1.6" - multiaddr "^2.2.2" - stream-to-pull-stream "^1.7.2" - -libp2p-webrtc-star@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/libp2p-webrtc-star/-/libp2p-webrtc-star-0.5.0.tgz#3cd1e55495100e4732f5e3fe78aaee28d8d0712a" - dependencies: - async "^2.1.2" - debug "^2.2.0" - hapi "^15.0.3" - interface-connection "^0.3.0" - mafmt "^2.1.0" - minimist "^1.2.0" - peer-id "^0.8.0" - peer-info "^0.8.0" - pull-stream "^3.4.3" - simple-peer "^6.0.4" - socket.io "^1.4.6" - socket.io-client "^1.4.6" - stream-to-pull-stream "^1.7.0" - -libp2p-websockets@^0.9.0, libp2p-websockets@^0.9.1: - version "0.9.6" - resolved "https://registry.yarnpkg.com/libp2p-websockets/-/libp2p-websockets-0.9.6.tgz#1edf2f543a94be1885ca7a56590d16cad567806b" - dependencies: - interface-connection "~0.3.2" - lodash.includes "^4.3.0" - mafmt "^2.1.6" - pull-ws "^3.2.8" - load-json-file@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" @@ -3214,26 +2015,6 @@ load-json-file@^1.0.0: pinkie-promise "^2.0.0" strip-bom "^2.0.0" -load-json-file@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - strip-bom "^3.0.0" - -locate-path@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" - dependencies: - p-locate "^2.0.0" - path-exists "^3.0.0" - -lock@^0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/lock/-/lock-0.1.3.tgz#f66c1caa0c41956e1426608039ed59b71bdf1854" - lodash._baseassign@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz#8c38a099500f215ad09e59f1722fd0c52bfe0a4e" @@ -3269,38 +2050,6 @@ lodash.create@3.1.1: lodash._basecreate "^3.0.0" lodash._isiterateecall "^3.0.0" -lodash.debounce@^4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" - -lodash.filter@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.filter/-/lodash.filter-4.6.0.tgz#668b1d4981603ae1cc5a6fa760143e480b4c4ace" - -lodash.find@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.find/-/lodash.find-4.6.0.tgz#cb0704d47ab71789ffa0de8b97dd926fb88b13b1" - -lodash.flatmap@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.flatmap/-/lodash.flatmap-4.5.0.tgz#ef8cbf408f6e48268663345305c6acc0b778702e" - -lodash.flatten@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz#f31c22225a9632d2bbf8e4addbef240aa765a61f" - -lodash.get@^4.4.2: - version "4.4.2" - resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" - -lodash.has@^4.5.2: - version "4.5.2" - resolved "https://registry.yarnpkg.com/lodash.has/-/lodash.has-4.5.2.tgz#d19f4dc1095058cccbe2b0cdf4ee0fe4aa37c862" - -lodash.includes@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/lodash.includes/-/lodash.includes-4.3.0.tgz#60bb98a87cb923c68ca1e51325483314849f553f" - lodash.isarguments@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" @@ -3309,18 +2058,6 @@ lodash.isarray@^3.0.0: version "3.0.4" resolved "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55" -lodash.isequalwith@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.isequalwith/-/lodash.isequalwith-4.4.0.tgz#266726ddd528f854f21f4ea98a065606e0fbc6b0" - -lodash.isfunction@^3.0.8: - version "3.0.8" - resolved "https://registry.yarnpkg.com/lodash.isfunction/-/lodash.isfunction-3.0.8.tgz#4db709fc81bc4a8fd7127a458a5346c5cdce2c6b" - -lodash.isundefined@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/lodash.isundefined/-/lodash.isundefined-3.0.1.tgz#23ef3d9535565203a66cefd5b830f848911afb48" - lodash.keys@^3.0.0: version "3.1.2" resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a" @@ -3329,97 +2066,28 @@ lodash.keys@^3.0.0: lodash.isarguments "^3.0.0" lodash.isarray "^3.0.0" -lodash.map@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.map/-/lodash.map-4.6.0.tgz#771ec7839e3473d9c4cde28b19394c3562f4f6d3" - -lodash.max@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/lodash.max/-/lodash.max-4.0.1.tgz#8735566c618b35a9f760520b487ae79658af136a" - -lodash.merge@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.0.tgz#69884ba144ac33fe699737a6086deffadd0f89c5" - -lodash.noop@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/lodash.noop/-/lodash.noop-3.0.1.tgz#38188f4d650a3a474258439b96ec45b32617133c" - -lodash.padstart@^4.6.1: - version "4.6.1" - resolved "https://registry.yarnpkg.com/lodash.padstart/-/lodash.padstart-4.6.1.tgz#d2e3eebff0d9d39ad50f5cbd1b52a7bce6bb611b" - -lodash.range@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/lodash.range/-/lodash.range-3.2.0.tgz#f461e588f66683f7eadeade513e38a69a565a15d" - -lodash.repeat@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/lodash.repeat/-/lodash.repeat-4.1.0.tgz#fc7de8131d8c8ac07e4b49f74ffe829d1f2bec44" - -lodash.set@^4.3.2: - version "4.3.2" - resolved "https://registry.yarnpkg.com/lodash.set/-/lodash.set-4.3.2.tgz#d8757b1da807dde24816b0d6a84bea1a76230b23" - -lodash.sortby@^4.7.0: - version "4.7.0" - resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" - -lodash.uniqby@^4.7.0: - version "4.7.0" - resolved "https://registry.yarnpkg.com/lodash.uniqby/-/lodash.uniqby-4.7.0.tgz#d99c07a669e9e6d24e1362dfe266c67616af1302" - -lodash.values@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/lodash.values/-/lodash.values-4.3.0.tgz#a3a6c2b0ebecc5c2cba1c17e6e620fe81b53d347" - lodash@=3.10.1: version "3.10.1" resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.10.1.tgz#5bf45e8e49ba4189e17d482789dfd15bd140b7b6" -lodash@^4.11.1, lodash@^4.11.2, lodash@^4.14.0, lodash@^4.17.1, lodash@^4.17.4, lodash@^4.2.0, lodash@^4.5.1: +lodash@^4.14.0, lodash@^4.14.2, lodash@^4.2.0: version "4.17.4" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" -looper@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/looper/-/looper-2.0.0.tgz#66cd0c774af3d4fedac53794f742db56da8f09ec" - -looper@^3.0.0, looper@~3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/looper/-/looper-3.0.0.tgz#2efa54c3b1cbaba9b94aee2e5914b0be57fbb749" - loose-envify@^1.0.0: version "1.3.1" resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848" dependencies: js-tokens "^3.0.0" -lowercase-keys@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.0.tgz#4e3366b39e7f5457e35f1324bdf6f88d0bfc7306" - lru-cache@2: version "2.7.3" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-2.7.3.tgz#6d4524e8b955f95d4f5b58851ce21dd72fb4e952" -lru-cache@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.0.2.tgz#1d17679c069cda5d040991a09dbc2c0db377e55e" - dependencies: - pseudomap "^1.0.1" - yallist "^2.0.0" - ltgt@~2.1.3: version "2.1.3" resolved "https://registry.yarnpkg.com/ltgt/-/ltgt-2.1.3.tgz#10851a06d9964b971178441c23c9e52698eece34" -mafmt@^2.1.0, mafmt@^2.1.2, mafmt@^2.1.6: - version "2.1.8" - resolved "https://registry.yarnpkg.com/mafmt/-/mafmt-2.1.8.tgz#d8b7f763be56db62a0343bc5c47d38ab2cbef45e" - dependencies: - multiaddr "^2.2.3" - memdown@^1.0.0: version "1.2.4" resolved "https://registry.yarnpkg.com/memdown/-/memdown-1.2.4.tgz#cd9a34aaf074d53445a271108eb4b8dd4ec0f27f" @@ -3434,7 +2102,7 @@ memorystream@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/memorystream/-/memorystream-0.3.1.tgz#86d7090b30ce455d63fbae12dda51a47ddcaf9b2" -merkle-patricia-tree@^2.1.2, merkle-patricia-tree@~2.1.2: +merkle-patricia-tree@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/merkle-patricia-tree/-/merkle-patricia-tree-2.1.2.tgz#724483d54b75631a48fedda55e114051706a7291" dependencies: @@ -3465,27 +2133,16 @@ micromatch@^2.1.5: parse-glob "^3.0.4" regex-cache "^0.4.2" -mime-db@1.x.x, mime-db@~1.27.0: +mime-db@~1.27.0: version "1.27.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.27.0.tgz#820f572296bbd20ec25ed55e5b5de869e5436eb1" -mime-types@^2.1.12, mime-types@~2.1.11, mime-types@~2.1.7: +mime-types@^2.1.12, mime-types@~2.1.7: version "2.1.15" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.15.tgz#a4ebf5064094569237b8cf70046776d09fc92aed" dependencies: mime-db "~1.27.0" -mime@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.4.tgz#115f9e3b6b3daf2959983cb38f149a2d40eb5d53" - -mimos@3.x.x: - version "3.0.3" - resolved "https://registry.yarnpkg.com/mimos/-/mimos-3.0.3.tgz#b9109072ad378c2b72f6a0101c43ddfb2b36641f" - dependencies: - hoek "4.x.x" - mime-db "1.x.x" - min-document@^2.19.0: version "2.19.0" resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685" @@ -3507,17 +2164,17 @@ minimatch@0.3: lru-cache "2" sigmund "~1.0.0" -"minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.3.tgz#2a4e4090b96b2db06a9d7df01055a62a77c9b774" +minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" dependencies: - brace-expansion "^1.0.0" + brace-expansion "^1.1.7" minimist@0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" -minimist@1.2.0, minimist@^1.1.3, minimist@^1.2.0, minimist@~1.2.0: +minimist@^1.2.0, minimist@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" @@ -3525,7 +2182,7 @@ mkdirp@0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.3.0.tgz#1bbf5ab1ba827af23575143490426455f481fe1e" -mkdirp@0.5.1, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0: +mkdirp@0.5.1, "mkdirp@>=0.5 0", mkdirp@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" dependencies: @@ -3546,26 +2203,22 @@ mocha@^2.4.5: supports-color "1.2.0" to-iso-string "0.0.2" -mocha@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-3.2.0.tgz#7dc4f45e5088075171a68896814e6ae9eb7a85e3" +mocha@^3.4.2: + version "3.4.2" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-3.4.2.tgz#d0ef4d332126dbf18d0d640c9b382dd48be97594" dependencies: browser-stdout "1.3.0" commander "2.9.0" - debug "2.2.0" - diff "1.4.0" + debug "2.6.0" + diff "3.2.0" escape-string-regexp "1.0.5" - glob "7.0.5" + glob "7.1.1" growl "1.9.2" json3 "3.3.2" lodash.create "3.1.1" mkdirp "0.5.1" supports-color "3.1.2" -moment@2.x.x: - version "2.18.1" - resolved "https://registry.yarnpkg.com/moment/-/moment-2.18.1.tgz#c36193dd3ce1c2eed2adb7c802dbbc77a81b1c0f" - ms@0.7.1: version "0.7.1" resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.1.tgz#9cd13c03adbff25b65effde7ce864ee952017098" @@ -3574,145 +2227,17 @@ ms@0.7.2: version "0.7.2" resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.2.tgz#ae25cf2512b3885a1d95d7f037868d8431124765" -multiaddr@^2.0.3, multiaddr@^2.2.2, multiaddr@^2.2.3: - version "2.3.0" - resolved "https://registry.yarnpkg.com/multiaddr/-/multiaddr-2.3.0.tgz#56634824f48bcbd8405fd5434c31b277424c62fc" - dependencies: - bs58 "^4.0.0" - ip "^1.1.5" - lodash.filter "^4.6.0" - lodash.map "^4.6.0" - varint "^5.0.0" - xtend "^4.0.1" - -multibase@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/multibase/-/multibase-0.2.0.tgz#8c0f9d5ff33f863dc4722ca7d06dc1dd9e5f006e" - dependencies: - bs58 "^3.0.0" - -multibase@^0.3.0, multibase@~0.3.4: - version "0.3.4" - resolved "https://registry.yarnpkg.com/multibase/-/multibase-0.3.4.tgz#fba8b0aac9724f62e24782557e2a062e30d3ae7f" - dependencies: - base-x "3.0.0" - -multicodec@0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/multicodec/-/multicodec-0.1.0.tgz#00067fcc0517d571bec1c6f325d2c987b3a74cc8" - dependencies: - varint "^4.0.1" - -multicodec@^0.1.3, multicodec@~0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/multicodec/-/multicodec-0.1.7.tgz#658f2d15f42fa19e66092fe917a051a1bf07e41e" - dependencies: - varint "^5.0.0" - -multihashes@^0.2.0, multihashes@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/multihashes/-/multihashes-0.2.2.tgz#8ccf2e3ba3d041e1146728de0d8a4da9e8b18251" - dependencies: - bs58 "^3.0.0" - -multihashes@^0.3.0, multihashes@^0.3.1, multihashes@^0.3.2, multihashes@~0.3.3: - version "0.3.3" - resolved "https://registry.yarnpkg.com/multihashes/-/multihashes-0.3.3.tgz#18d74d8c2393af39aaf0ac8f4fd6d888d43f2f29" - dependencies: - bs58 "^4.0.0" - -multihashes@~0.4.4, multihashes@~0.4.5: - version "0.4.5" - resolved "https://registry.yarnpkg.com/multihashes/-/multihashes-0.4.5.tgz#9b053c51fdc74d771edde20e1bc91d4bbec3fa69" - dependencies: - bs58 "^4.0.0" - varint "^5.0.0" - -multihashing-async@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/multihashing-async/-/multihashing-async-0.2.0.tgz#8dec195a20fe402cca38e2728d693607d1c5a37b" - dependencies: - browserify-sha3 "0.0.2" - multihashes "^0.2.2" - nodeify "^1.0.0" - sha3 "^1.2.0" - -multihashing-async@^0.4.0, multihashing-async@~0.4.2, multihashing-async@~0.4.4: - version "0.4.5" - resolved "https://registry.yarnpkg.com/multihashing-async/-/multihashing-async-0.4.5.tgz#e94b408a68c36c393180146e3fad9126108eb6a9" - dependencies: - async "^2.1.5" - blakejs "^1.0.1" - js-sha3 "^0.5.7" - multihashes "~0.4.5" - murmurhash3js "^3.0.1" - nodeify "^1.0.1" - -multipart-stream@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/multipart-stream/-/multipart-stream-2.0.1.tgz#195c9cb4b2c41e78c72a1e8f38c7d0eba1cd0ba0" - dependencies: - inherits "^2.0.1" - is-stream "^1.0.1" - sandwich-stream "^1.0.0" - -multistream-select@~0.13.5: - version "0.13.5" - resolved "https://registry.yarnpkg.com/multistream-select/-/multistream-select-0.13.5.tgz#fe33676202e64619054aeeb45336a881cc9c54e9" - dependencies: - async "^2.1.5" - debug "^2.6.3" - interface-connection "~0.3.1" - lodash.isfunction "^3.0.8" - lodash.range "^3.2.0" - once "^1.4.0" - pull-handshake "^1.1.4" - pull-length-prefixed "^1.2.0" - pull-stream "^3.5.0" - semver "^5.3.0" - varint "^5.0.0" - -murmurhash3js@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/murmurhash3js/-/murmurhash3js-3.0.1.tgz#3e983e5b47c2a06f43a713174e7e435ca044b998" - -nan@^2.0.5, nan@^2.0.8, nan@^2.2.1, nan@^2.3.0, nan@^2.5.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.6.1.tgz#8c84f7b14c96b89f57fbc838012180ec8ca39a01" - -ndjson@^1.4.3: - version "1.5.0" - resolved "https://registry.yarnpkg.com/ndjson/-/ndjson-1.5.0.tgz#ae603b36b134bcec347b452422b0bf98d5832ec8" - dependencies: - json-stringify-safe "^5.0.1" - minimist "^1.2.0" - split2 "^2.1.0" - through2 "^2.0.3" - -negotiator@0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" - -nigel@2.x.x: - version "2.0.2" - resolved "https://registry.yarnpkg.com/nigel/-/nigel-2.0.2.tgz#93a1866fb0c52d87390aa75e2b161f4b5c75e5b1" - dependencies: - hoek "4.x.x" - vise "2.x.x" +nan@^2.0.5, nan@^2.0.8, nan@^2.2.1, nan@^2.3.0: + version "2.6.2" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.6.2.tgz#e4ff34e6c95fdfb5aecc08de6596f43605a7db45" node-abi@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-2.0.0.tgz#443bfd151b599231028ae425e592e76cd31cb537" - -node-dir@^0.1.10, node-dir@^0.1.16: - version "0.1.16" - resolved "https://registry.yarnpkg.com/node-dir/-/node-dir-0.1.16.tgz#d2ef583aa50b90d93db8cdd26fcea58353957fe4" - dependencies: - minimatch "^3.0.2" + version "2.0.3" + resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-2.0.3.tgz#0ca67e5e667b8e1343549ca17153a815d0bbfdaa" node-fetch@^1.0.1: - version "1.6.3" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.6.3.tgz#dc234edd6489982d58e8f0db4f695029abcd8c04" + version "1.7.1" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.1.tgz#899cb3d0a3c92f952c47f1b876f4c8aeabd400d5" dependencies: encoding "^0.1.11" is-stream "^1.0.1" @@ -3738,9 +2263,9 @@ node-plantuml@^0.5.0: node-nailgun-server "^0.1.3" plantuml-encoder "^1.2.4" -node-pre-gyp@^0.6.29: - version "0.6.34" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.34.tgz#94ad1c798a11d7fc67381b50d47f8cc18d9799f7" +node-pre-gyp@^0.6.36: + version "0.6.36" + resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.36.tgz#db604112cb74e0d477554e9b505b17abddfab786" dependencies: mkdirp "^0.5.1" nopt "^4.0.1" @@ -3752,35 +2277,6 @@ node-pre-gyp@^0.6.29: tar "^2.2.1" tar-pack "^3.4.0" -node-status-codes@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/node-status-codes/-/node-status-codes-1.0.0.tgz#5ae5541d024645d32a58fcddc9ceecea7ae3ac2f" - -node-webcrypto-ossl@^1.0.21: - version "1.0.21" - resolved "https://registry.yarnpkg.com/node-webcrypto-ossl/-/node-webcrypto-ossl-1.0.21.tgz#70567a5dc09f36bd78682eb72c7e1437a137b6bf" - dependencies: - "@types/mkdirp" "^0.3.29" - "@types/node" "^6.0.45" - mkdirp "^0.5.1" - nan "^2.5.1" - tslib "^1.5.0" - typescript "^2" - webcrypto-core "^0" - -nodegit-promise@~4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/nodegit-promise/-/nodegit-promise-4.0.0.tgz#5722b184f2df7327161064a791d2e842c9167b34" - dependencies: - asap "~2.0.3" - -nodeify@^1.0.0, nodeify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/nodeify/-/nodeify-1.0.1.tgz#64ab69a7bdbaf03ce107b4f0335c87c0b9e91b1d" - dependencies: - is-promise "~1.0.0" - promise "~1.3.0" - noop-logger@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/noop-logger/-/noop-logger-0.1.1.tgz#94a2b1633c4f1317553007d8966fd0e841b6a4c2" @@ -3793,8 +2289,8 @@ nopt@^4.0.1: osenv "^0.1.4" normalize-package-data@^2.3.2: - version "2.3.6" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.3.6.tgz#498fa420c96401f787402ba21e600def9f981fff" + version "2.4.0" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" dependencies: hosted-git-info "^2.1.4" is-builtin-module "^1.0.0" @@ -3807,19 +2303,13 @@ normalize-path@^2.0.1: dependencies: remove-trailing-separator "^1.0.1" -npm-programmatic@0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/npm-programmatic/-/npm-programmatic-0.0.6.tgz#3c8f4dbb210efd65b99ee6a5ac76f27b4d5d6b78" - dependencies: - bluebird "^3.4.1" - npmlog@^4.0.1, npmlog@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.0.2.tgz#d03950e0e78ce1527ba26d2a7592e9348ac3e75f" + version "4.1.2" + resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" dependencies: are-we-there-yet "~1.1.2" console-control-strings "~1.1.0" - gauge "~2.7.1" + gauge "~2.7.3" set-blocking "~2.0.0" number-is-nan@^1.0.0: @@ -3837,31 +2327,15 @@ oauth-sign@~0.8.1: version "0.8.2" resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" -object-assign@4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.0.tgz#7a3b3d0e98063d43f4c03f2e8ae6cd51a86883a0" - -object-assign@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-2.1.1.tgz#43c36e5d569ff8e4816c4efa8be02d26967c18aa" - -object-assign@^4.0.1, object-assign@^4.1.0: +object-assign@^4.0.0, object-assign@^4.1.0: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" -object-component@0.0.3: - version "0.0.3" - resolved "https://registry.yarnpkg.com/object-component/-/object-component-0.0.3.tgz#f0c69aa50efc95b866c186f400a33769cb2f1291" - -object-inspect@~0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-0.4.0.tgz#f5157c116c1455b243b06ee97703392c5ad89fec" - -object-inspect@~1.2.1: +object-inspect@~1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.2.2.tgz#c82115e4fcc888aea14d64c22e4f17f6a70d5e5a" -object-keys@^1.0.6, object-keys@^1.0.8: +object-keys@^1.0.8: version "1.0.11" resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d" @@ -3876,31 +2350,15 @@ object.omit@^2.0.0: for-own "^0.1.4" is-extendable "^0.1.1" -obuf@^1.0.0, obuf@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.1.tgz#104124b6c602c6796881a042541d36db43a5264e" - -on-finished@~2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" - dependencies: - ee-first "1.1.1" - once@^1.3.0, once@^1.3.1, once@^1.3.3, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" dependencies: wrappy "1" -optimist@~0.3.5: - version "0.3.7" - resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.3.7.tgz#c90941ad59e4273328923074d2cf2e7cbc6ec0d9" - dependencies: - wordwrap "~0.0.2" - -options@>=0.0.5: - version "0.0.6" - resolved "https://registry.yarnpkg.com/options/-/options-0.0.6.tgz#ec22d312806bb53e731773e7cdaefcf1c643128f" +original-require@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/original-require/-/original-require-1.0.1.tgz#0f130471584cd33511c5ec38c8d59213f9ac5e20" os-homedir@^1.0.0, os-homedir@^1.0.1: version "1.0.2" @@ -3916,7 +2374,7 @@ os-tmpdir@^1.0.0, os-tmpdir@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" -osenv@^0.1.0, osenv@^0.1.4: +osenv@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.4.tgz#42fe6d5953df06c8064be6f176c3d05aaaa34644" dependencies: @@ -3931,33 +2389,10 @@ output-file-sync@^1.1.0: mkdirp "^0.5.1" object-assign "^4.1.0" -p-limit@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.1.0.tgz#b07ff2d9a5d88bec806035895a2bab66a27988bc" - -p-locate@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" - dependencies: - p-limit "^1.1.0" - -package-json@^2.0.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/package-json/-/package-json-2.4.0.tgz#0d15bd67d1cbbddbb2ca222ff2edb86bcb31a8bb" - dependencies: - got "^5.0.0" - registry-auth-token "^3.0.1" - registry-url "^3.0.3" - semver "^5.1.0" - pako@1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.3.tgz#5f515b0c6722e1982920ae8005eacb0b7ca73ccf" -pako@~1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.5.tgz#d2205dfe5b9da8af797e7c163db4d1f84e4600bc" - parse-glob@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" @@ -3974,51 +2409,25 @@ parse-headers@^2.0.0: for-each "^0.3.2" trim "0.0.1" -parse-json@^2.1.0, parse-json@^2.2.0: +parse-json@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" dependencies: error-ex "^1.2.0" -parsejson@0.0.3: - version "0.0.3" - resolved "https://registry.yarnpkg.com/parsejson/-/parsejson-0.0.3.tgz#ab7e3759f209ece99437973f7d0f1f64ae0e64ab" - dependencies: - better-assert "~1.0.0" - -parseqs@0.0.5: - version "0.0.5" - resolved "https://registry.yarnpkg.com/parseqs/-/parseqs-0.0.5.tgz#d5208a3738e46766e291ba2ea173684921a8b89d" - dependencies: - better-assert "~1.0.0" - -parseuri@0.0.5: - version "0.0.5" - resolved "https://registry.yarnpkg.com/parseuri/-/parseuri-0.0.5.tgz#80204a50d4dbb779bfdc6ebe2778d90e4bce320a" - dependencies: - better-assert "~1.0.0" - -parseurl@~1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.1.tgz#c8ab8c9223ba34888aa64a297b28853bec18da56" - path-exists@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" dependencies: pinkie-promise "^2.0.0" -path-exists@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" - path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" -path-is-inside@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" +path-parse@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1" path-type@^1.0.0: version "1.1.0" @@ -4028,65 +2437,24 @@ path-type@^1.0.0: pify "^2.0.0" pinkie-promise "^2.0.0" -path-type@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" - dependencies: - pify "^2.0.0" - -pbkdf2@^3.0.0, pbkdf2@^3.0.3: - version "3.0.9" - resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.9.tgz#f2c4b25a600058b3c3773c086c37dbbee1ffe693" - dependencies: - create-hmac "^1.1.2" - -peer-book@^0.3.0: - version "0.3.2" - resolved "https://registry.yarnpkg.com/peer-book/-/peer-book-0.3.2.tgz#2a5f42acb19bbc3170a13aeffb4b3310388feaf4" - dependencies: - bs58 "^4.0.0" - -peer-id@^0.8.0, peer-id@^0.8.5, peer-id@~0.8.4: - version "0.8.7" - resolved "https://registry.yarnpkg.com/peer-id/-/peer-id-0.8.7.tgz#c9bd9d1588d4ccce71752a9049afa9f10176a33d" - dependencies: - async "^2.3.0" - libp2p-crypto "~0.8.7" - lodash "^4.17.4" - multihashes "~0.4.5" - -peer-info@^0.8.0, peer-info@~0.8.4: - version "0.8.5" - resolved "https://registry.yarnpkg.com/peer-info/-/peer-info-0.8.5.tgz#b8fbee6376405c04c8b644610cd06231c4262a1e" +pbkdf2@^3.0.3, pbkdf2@^3.0.9: + version "3.0.12" + resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.12.tgz#be36785c5067ea48d806ff923288c5f750b6b8a2" dependencies: - lodash.uniqby "^4.7.0" - multiaddr "^2.2.3" - peer-id "^0.8.5" + create-hash "^1.1.2" + create-hmac "^1.1.4" + ripemd160 "^2.0.1" + safe-buffer "^5.0.1" + sha.js "^2.4.8" pegjs@^0.10.0: version "0.10.0" resolved "https://registry.yarnpkg.com/pegjs/-/pegjs-0.10.0.tgz#cf8bafae6eddff4b5a7efb185269eaaf4610ddbd" -pem-jwk@^1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/pem-jwk/-/pem-jwk-1.5.1.tgz#7a8637fd2f67a827e57c0c42e1c23c3fd52cfb01" - dependencies: - asn1.js "1.0.3" - performance-now@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5" -pez@2.x.x: - version "2.1.4" - resolved "https://registry.yarnpkg.com/pez/-/pez-2.1.4.tgz#73f822fa62d599d65c4606f490d54d345191bc7c" - dependencies: - b64 "3.x.x" - boom "4.x.x" - content "3.x.x" - hoek "4.x.x" - nigel "2.x.x" - pify@^2.0.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" @@ -4108,21 +2476,14 @@ plantuml-encoder@^1.2.4: pako "1.0.3" utf8-bytes "0.0.1" -podium@^1.2.x: - version "1.2.5" - resolved "https://registry.yarnpkg.com/podium/-/podium-1.2.5.tgz#87c566c2f0365bcf0a1ec7602c4d01948cdd2ad5" - dependencies: - hoek "4.x.x" - items "2.x.x" - joi "10.x.x" - prebuild-install@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-2.1.1.tgz#d0a77ea51b6a00f928cb71bc0ccea24f87ec171e" + version "2.2.0" + resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-2.2.0.tgz#55934756a32bac8747390ca44ff663cee8b99b69" dependencies: expand-template "^1.0.2" github-from-package "0.0.0" minimist "^1.2.0" + mkdirp "^0.5.1" node-abi "^2.0.0" noop-logger "^0.1.1" npmlog "^4.0.1" @@ -4131,13 +2492,9 @@ prebuild-install@^2.0.0: rc "^1.1.6" simple-get "^1.4.2" tar-fs "^1.13.0" - tunnel-agent "^0.4.3" + tunnel-agent "^0.6.0" xtend "4.0.1" -prepend-http@^1.0.1: - version "1.0.4" - resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" - preserve@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" @@ -4154,38 +2511,6 @@ process@~0.5.1: version "0.5.2" resolved "https://registry.yarnpkg.com/process/-/process-0.5.2.tgz#1638d8a8e34c2f440a91db95ab9aeb677fc185cf" -promise@~1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/promise/-/promise-1.3.0.tgz#e5cc9a4c8278e4664ffedc01c7da84842b040175" - dependencies: - is-promise "~1" - -promisify-es6@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/promisify-es6/-/promisify-es6-1.0.2.tgz#63093553e39be5036d757b455fb93d155da4b589" - -promisify-node@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/promisify-node/-/promisify-node-0.4.0.tgz#32803874ec411784e4786c339902a87a179a469c" - dependencies: - nodegit-promise "~4.0.0" - object-assign "^4.0.1" - -protocol-buffers-schema@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/protocol-buffers-schema/-/protocol-buffers-schema-3.1.1.tgz#b5e4800ce8adab7fb8ffe8770bb36e2a04359c78" - -protocol-buffers@^3.1.6, protocol-buffers@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/protocol-buffers/-/protocol-buffers-3.2.1.tgz#37258e17e24a082f06ebb17731e92851d1c76889" - dependencies: - brfs "^1.4.0" - generate-function "^2.0.0" - generate-object-property "^1.2.0" - protocol-buffers-schema "^3.1.1" - signed-varint "^2.0.0" - varint "^5.0.0" - prr@~0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/prr/-/prr-0.0.0.tgz#1a84b85908325501411853d0081ee3fa86e2926a" @@ -4194,124 +2519,6 @@ prr@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" -pseudomap@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" - -pull-block@^1.0.2: - version "1.1.0" - resolved "https://registry.yarnpkg.com/pull-block/-/pull-block-1.1.0.tgz#ea12536b80198107e97000a7228fd87c1264466f" - dependencies: - pull-through "^1.0.18" - -pull-cat@^1.1.11, pull-cat@^1.1.9: - version "1.1.11" - resolved "https://registry.yarnpkg.com/pull-cat/-/pull-cat-1.1.11.tgz#b642dd1255da376a706b6db4fa962f5fdb74c31b" - -pull-defer@^0.2.2, pull-defer@~0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/pull-defer/-/pull-defer-0.2.2.tgz#0887b0ffb30af32a56dbecfa72c1672271f07b13" - -pull-file@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/pull-file/-/pull-file-0.5.0.tgz#b3ca405306e082f9d4528288933badb2b656365b" - dependencies: - pull-utf8-decoder "^1.0.2" - -pull-file@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/pull-file/-/pull-file-1.0.0.tgz#5a0cb036d78ee10e3e0b4293dfcf6effa1036318" - dependencies: - pull-utf8-decoder "^1.0.2" - -pull-handshake@^1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/pull-handshake/-/pull-handshake-1.1.4.tgz#6000a0fd018884cdfd737254f8cc60ab2a637791" - dependencies: - pull-cat "^1.1.9" - pull-pair "~1.1.0" - pull-pushable "^2.0.0" - pull-reader "^1.2.3" - -pull-length-prefixed@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/pull-length-prefixed/-/pull-length-prefixed-1.2.0.tgz#e70b10327a726acc6ebb96e17cc9a70569c6e811" - dependencies: - pull-pushable "^2.0.1" - pull-reader "^1.2.8" - safe-buffer "^5.0.1" - varint "^4.0.1" - -pull-pair@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/pull-pair/-/pull-pair-1.1.0.tgz#7ee427263fdf4da825397ac0a05e1ab4b74bd76d" - -pull-paramap@^1.2.0, pull-paramap@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/pull-paramap/-/pull-paramap-1.2.1.tgz#ec533c90bbb1fcbc4ac94a94bf029f0615172172" - -pull-pushable@^2.0.0, pull-pushable@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pull-pushable/-/pull-pushable-2.0.1.tgz#02bdca51a39cf585f483fbecde2fc9378076f212" - -pull-reader@^1.2.3, pull-reader@^1.2.8: - version "1.2.9" - resolved "https://registry.yarnpkg.com/pull-reader/-/pull-reader-1.2.9.tgz#d2e9ad00bcfb54e62aa66d42c2dbbcb5eb6843b0" - -pull-sort@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/pull-sort/-/pull-sort-1.0.0.tgz#0e39fb9a38e54175befe418eaba21223f2c0e705" - -pull-stream-to-stream@^1.3.3: - version "1.3.4" - resolved "https://registry.yarnpkg.com/pull-stream-to-stream/-/pull-stream-to-stream-1.3.4.tgz#3f81d8216bd18d2bfd1a198190471180e2738399" - -pull-stream@^3.2.3, pull-stream@^3.4.3, pull-stream@^3.4.5, pull-stream@^3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/pull-stream/-/pull-stream-3.5.0.tgz#1ee5b6f76fd3b3a49a5afb6ded5c0320acb3cfc7" - -pull-through@^1.0.18: - version "1.0.18" - resolved "https://registry.yarnpkg.com/pull-through/-/pull-through-1.0.18.tgz#8dd62314263e59cf5096eafbb127a2b6ef310735" - dependencies: - looper "~3.0.0" - -pull-traverse@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/pull-traverse/-/pull-traverse-1.0.3.tgz#74fb5d7be7fa6bd7a78e97933e199b7945866938" - -pull-utf8-decoder@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/pull-utf8-decoder/-/pull-utf8-decoder-1.0.2.tgz#a7afa2384d1e6415a5d602054126cc8de3bcbce7" - -pull-window@^2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/pull-window/-/pull-window-2.1.4.tgz#fc3b86feebd1920c7ae297691e23f705f88552f0" - dependencies: - looper "^2.0.0" - -pull-write-file@^0.2.1: - version "0.2.4" - resolved "https://registry.yarnpkg.com/pull-write-file/-/pull-write-file-0.2.4.tgz#437344aeb2189f65e678ed1af37f0f760a5453ef" - -pull-write@^1.0.2, pull-write@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/pull-write/-/pull-write-1.1.1.tgz#52460417d6e63e1b0c76628d168bb673182df040" - dependencies: - pull-cat "^1.1.11" - pull-stream "^3.4.5" - -pull-ws@^3.2.8: - version "3.2.8" - resolved "https://registry.yarnpkg.com/pull-ws/-/pull-ws-3.2.8.tgz#0b3abebac15399e15d0db24cbedddc7dd8363f2e" - dependencies: - relative-url "^1.0.2" - ws "^1.1.0" - -pull-zip@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pull-zip/-/pull-zip-2.0.1.tgz#e0641ceaff964af27596daac0700e79b381028f5" - pump@^1.0.0, pump@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/pump/-/pump-1.0.2.tgz#3b3ee6512f94f0e575538c17995f9f16990a5d51" @@ -4323,41 +2530,24 @@ punycode@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" -qs@^6.3.0, qs@~6.4.0: +qs@~6.4.0: version "6.4.0" resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233" -quote-stream@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/quote-stream/-/quote-stream-1.0.2.tgz#84963f8c9c26b942e153feeb53aae74652b7e0b2" - dependencies: - buffer-equal "0.0.1" - minimist "^1.1.3" - through2 "^2.0.0" - -quote-stream@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/quote-stream/-/quote-stream-0.0.0.tgz#cde29e94c409b16e19dc7098b89b6658f9721d3b" - dependencies: - minimist "0.0.8" - through2 "~0.4.1" - randomatic@^1.1.3: - version "1.1.6" - resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.6.tgz#110dcabff397e9dcff7c0789ccc0a49adf1ec5bb" + version "1.1.7" + resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.7.tgz#c7abe9cc8b87c0baa876b19fde83fd464797e38c" dependencies: - is-number "^2.0.2" - kind-of "^3.0.2" - -randombytes@^2.0.1, randombytes@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.3.tgz#674c99760901c3c4112771a31e521dc349cc09ec" + is-number "^3.0.0" + kind-of "^4.0.0" -range-parser@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e" +randombytes@^2.0.1: + version "2.0.5" + resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.5.tgz#dc009a246b8d09a177b4b7a0ae77bc570f4b1b79" + dependencies: + safe-buffer "^5.1.0" -rc@^1.0.1, rc@^1.1.6, rc@^1.1.7: +rc@^1.1.6, rc@^1.1.7: version "1.2.1" resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.1.tgz#2e03e8e42ee450b8cb3dce65be1bf8974e1dfd95" dependencies: @@ -4366,13 +2556,6 @@ rc@^1.0.1, rc@^1.1.6, rc@^1.1.7: minimist "^1.2.0" strip-json-comments "~2.0.1" -read-all-stream@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/read-all-stream/-/read-all-stream-3.1.0.tgz#35c3e177f2078ef789ee4bfafa4373074eaef4fa" - dependencies: - pinkie-promise "^2.0.0" - readable-stream "^2.0.0" - read-pkg-up@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" @@ -4380,13 +2563,6 @@ read-pkg-up@^1.0.1: find-up "^1.0.0" read-pkg "^1.0.0" -read-pkg-up@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" - dependencies: - find-up "^2.0.0" - read-pkg "^2.0.0" - read-pkg@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" @@ -4395,44 +2571,27 @@ read-pkg@^1.0.0: normalize-package-data "^2.3.2" path-type "^1.0.0" -read-pkg@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" - dependencies: - load-json-file "^2.0.0" - normalize-package-data "^2.3.2" - path-type "^2.0.0" - -readable-stream@1.1.x, readable-stream@^1.0.33, readable-stream@^1.1.14, readable-stream@~1.1.9: - version "1.1.14" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" +readable-stream@^1.0.33, readable-stream@~1.0.15: + version "1.0.34" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" dependencies: core-util-is "~1.0.0" inherits "~2.0.1" isarray "0.0.1" string_decoder "~0.10.x" -readable-stream@^2.0.0, "readable-stream@^2.0.0 || ^1.1.13", readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.1.4, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.2.6: - version "2.2.8" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.8.tgz#ad28b686f3554c73d39bc32347fa058356624705" +readable-stream@^2.0.0, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.0.6, readable-stream@^2.1.4: + version "2.3.3" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c" dependencies: - buffer-shims "~1.0.0" core-util-is "~1.0.0" - inherits "~2.0.1" + inherits "~2.0.3" isarray "~1.0.0" process-nextick-args "~1.0.6" - string_decoder "~1.0.0" + safe-buffer "~5.1.1" + string_decoder "~1.0.3" util-deprecate "~1.0.1" -readable-stream@~1.0.15, readable-stream@~1.0.17, readable-stream@~1.0.27-1: - version "1.0.34" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "0.0.1" - string_decoder "~0.10.x" - readdirp@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.1.0.tgz#4ed0ad060df3073300c48440373f72d1cc642d78" @@ -4447,12 +2606,12 @@ regenerate@^1.2.1: resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.2.tgz#d1941c67bad437e1be76433add5b385f95b19260" regenerator-runtime@^0.10.0: - version "0.10.3" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.3.tgz#8c4367a904b51ea62a908ac310bf99ff90a82a3e" + version "0.10.5" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz#336c3efc1220adcedda2c9fab67b5a7955a33658" -regenerator-transform@0.9.8: - version "0.9.8" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.9.8.tgz#0f88bb2bc03932ddb7b6b7312e68078f01026d6c" +regenerator-transform@0.9.11: + version "0.9.11" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.9.11.tgz#3a7d067520cb7b7176769eb5ff868691befe1283" dependencies: babel-runtime "^6.18.0" babel-types "^6.19.0" @@ -4473,18 +2632,6 @@ regexpu-core@^2.0.0: regjsgen "^0.2.0" regjsparser "^0.1.4" -registry-auth-token@^3.0.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-3.1.1.tgz#1b93317b42527732f56f88c41b73b7bf855e05a5" - dependencies: - rc "^1.1.6" - -registry-url@^3.0.3: - version "3.1.0" - resolved "https://registry.yarnpkg.com/registry-url/-/registry-url-3.1.0.tgz#3d4ef870f73dde1d77f0cf9a381432444e174942" - dependencies: - rc "^1.0.1" - regjsgen@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" @@ -4495,13 +2642,9 @@ regjsparser@^0.1.4: dependencies: jsesc "~0.5.0" -relative-url@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/relative-url/-/relative-url-1.0.2.tgz#d21c52a72d6061018bcee9f9c9fc106bf7d65287" - remove-trailing-separator@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.0.1.tgz#615ebb96af559552d4bf4057c8436d486ab63cc4" + version "1.0.2" + resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.0.2.tgz#69b062d978727ad14dc6b56ba4ab772fd8d70511" repeat-element@^1.1.2: version "1.1.2" @@ -4517,7 +2660,7 @@ repeating@^2.0.0: dependencies: is-finite "^1.0.0" -request@^2.12.0, request@^2.67.0, request@^2.81.0: +request@^2.67.0, request@^2.81.0: version "2.81.0" resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0" dependencies: @@ -4556,13 +2699,11 @@ require-main-filename@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" -require-nocache@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/require-nocache/-/require-nocache-1.0.0.tgz#a665d0b60a07e8249875790a4d350219d3c85fa3" - -resolve@^1.1.5, resolve@~1.1.7: - version "1.1.7" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" +resolve@~1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.3.3.tgz#655907c3469a8680dc2de3a275a8fdd69691f0e5" + dependencies: + path-parse "^1.0.5" resumer@~0.0.0: version "0.0.0" @@ -4570,60 +2711,28 @@ resumer@~0.0.0: dependencies: through "~2.3.4" -rimraf@2, rimraf@^2.5.1, rimraf@^2.5.4, rimraf@^2.6.1: +rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.6.1: version "2.6.1" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.1.tgz#c2338ec643df7a1b7fe5c54fa86f57428a55f33d" dependencies: glob "^7.0.5" -rimraf@^2.2.8, rimraf@~2.4.3: - version "2.4.5" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.4.5.tgz#ee710ce5d93a8fdb856fb5ea8ff0e2d75934b2da" +ripemd160@^2.0.0, ripemd160@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.1.tgz#0f4584295c53a3628af7e6d79aca21ce57d1c6e7" dependencies: - glob "^6.0.1" - -rimraf@~2.2.6: - version "2.2.8" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.2.8.tgz#e439be2aaee327321952730f99a8929e4fc50582" - -ripemd160@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-1.0.1.tgz#93a4bbd4942bc574b69a8fa57c71de10ecca7d6e" + hash-base "^2.0.0" + inherits "^2.0.1" rlp@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/rlp/-/rlp-2.0.0.tgz#9db384ff4b89a8f61563d92395d8625b18f3afb0" -rsa-pem-to-jwk@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/rsa-pem-to-jwk/-/rsa-pem-to-jwk-1.1.3.tgz#245e76bdb7e7234cfee7ca032d31b54c38fab98e" - dependencies: - object-assign "^2.0.0" - rsa-unpack "0.0.6" - -rsa-unpack@0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/rsa-unpack/-/rsa-unpack-0.0.6.tgz#f50ebd56a628378e631f297161026ce9ab4eddba" - dependencies: - optimist "~0.3.5" - -run-parallel-limit@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/run-parallel-limit/-/run-parallel-limit-1.0.3.tgz#6c3930cc7c0b47d35ae7420109f660aade2401e3" - -run-series@^1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/run-series/-/run-series-1.1.4.tgz#89a73ddc5e75c9ef8ab6320c0a1600d6a41179b9" - -safe-buffer@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.0.1.tgz#d263ca54696cd8a306b5ca6551e92de57918fbe7" - -sandwich-stream@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/sandwich-stream/-/sandwich-stream-1.0.0.tgz#7830e45797b5933287f1f9b28f871907456262f2" +safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" -scrypt-async@^1.3.0: +scrypt-async@^1.2.0, scrypt-async@^1.3.0: version "1.3.1" resolved "https://registry.yarnpkg.com/scrypt-async/-/scrypt-async-1.3.1.tgz#a11fd6fac981b4b823ee01dee0221169500ddae9" @@ -4646,9 +2755,9 @@ scryptsy@^1.2.1: dependencies: pbkdf2 "^3.0.3" -secp256k1@^3.0.1, secp256k1@^3.2.0, secp256k1@^3.2.5: - version "3.2.5" - resolved "https://registry.yarnpkg.com/secp256k1/-/secp256k1-3.2.5.tgz#0dde5b27e5021665f6dffca7b2c3e010c6c13c93" +secp256k1@^3.0.1, secp256k1@^3.2.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/secp256k1/-/secp256k1-3.3.0.tgz#50ec9b201ba401403dd13ccbf21d31eeb3ff43cf" dependencies: bindings "^1.2.1" bip66 "^1.1.3" @@ -4658,22 +2767,13 @@ secp256k1@^3.0.1, secp256k1@^3.2.0, secp256k1@^3.2.5: elliptic "^6.2.3" nan "^2.2.1" prebuild-install "^2.0.0" - -seedrandom@~2.4.2: - version "2.4.2" - resolved "https://registry.yarnpkg.com/seedrandom/-/seedrandom-2.4.2.tgz#18d78c41287d13aff8eadb29e235938b248aa9ff" + safe-buffer "^5.1.0" semaphore@>=1.0.1, semaphore@^1.0.3: version "1.0.5" resolved "https://registry.yarnpkg.com/semaphore/-/semaphore-1.0.5.tgz#b492576e66af193db95d65e25ec53f5f19798d60" -semver-diff@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-2.1.0.tgz#4bbb8437c8d37e4b0cf1a68fd726ec6d645d6d36" - dependencies: - semver "^5.0.3" - -"semver@2 || 3 || 4 || 5", semver@^5.0.3, semver@^5.1.0, semver@^5.3.0: +"semver@2 || 3 || 4 || 5", semver@^5.3.0: version "5.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" @@ -4681,33 +2781,6 @@ semver@~5.1.0: version "5.1.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.1.1.tgz#a3292a373e6f3e0798da0b20641b9a9c5bc47e19" -send@0.15.1: - version "0.15.1" - resolved "https://registry.yarnpkg.com/send/-/send-0.15.1.tgz#8a02354c26e6f5cca700065f5f0cdeba90ec7b5f" - dependencies: - debug "2.6.1" - depd "~1.1.0" - destroy "~1.0.4" - encodeurl "~1.0.1" - escape-html "~1.0.3" - etag "~1.8.0" - fresh "0.5.0" - http-errors "~1.6.1" - mime "1.3.4" - ms "0.7.2" - on-finished "~2.3.0" - range-parser "~1.2.0" - statuses "~1.3.1" - -serve-static@^1.10.0: - version "1.12.1" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.12.1.tgz#7443a965e3ced647aceb5639fa06bf4d1bbe0039" - dependencies: - encodeurl "~1.0.1" - escape-html "~1.0.3" - parseurl "~1.3.1" - send "0.15.1" - set-blocking@^2.0.0, set-blocking@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" @@ -4716,37 +2789,18 @@ set-immediate-shim@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" -setprototypeof@1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.3.tgz#66567e37043eeb4f04d91bd658c0cbefb55b8e04" - -sha.js@^2.3.6: +sha.js@^2.4.0, sha.js@^2.4.8: version "2.4.8" resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.8.tgz#37068c2c476b6baf402d14a49c67f597921f634f" dependencies: inherits "^2.0.1" -sha3@^1.1.0, sha3@^1.2.0: +sha3@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/sha3/-/sha3-1.2.0.tgz#6989f1b70a498705876a373e2c62ace96aa9399a" dependencies: nan "^2.0.5" -shallow-copy@~0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/shallow-copy/-/shallow-copy-0.0.1.tgz#415f42702d73d810330292cc5ee86eae1a11a170" - -shelljs@~0.6.0: - version "0.6.1" - resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.6.1.tgz#ec6211bed1920442088fe0f70b2837232ed2c8a8" - -shot@3.x.x: - version "3.4.0" - resolved "https://registry.yarnpkg.com/shot/-/shot-3.4.0.tgz#e7125ee72575ae5218349e933636808d790d4b92" - dependencies: - hoek "4.x.x" - joi "10.x.x" - sigmund@~1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590" @@ -4755,12 +2809,6 @@ signal-exit@^3.0.0: version "3.0.2" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" -signed-varint@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/signed-varint/-/signed-varint-2.0.1.tgz#50a9989da7c98c2c61dad119bc97470ef8528129" - dependencies: - varint "~5.0.0" - simple-get@^1.4.2: version "1.4.3" resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-1.4.3.tgz#e9755eda407e96da40c5e5158c9ea37b33becbeb" @@ -4769,86 +2817,27 @@ simple-get@^1.4.2: unzip-response "^1.0.0" xtend "^4.0.0" -simple-peer@^6.0.4: - version "6.4.4" - resolved "https://registry.yarnpkg.com/simple-peer/-/simple-peer-6.4.4.tgz#4e421f485ac7b13b08077a4476934d52c5ba3bb3" - dependencies: - debug "^2.1.0" - get-browser-rtc "^1.0.0" - inherits "^2.0.1" - randombytes "^2.0.3" - readable-stream "^2.0.5" - slash@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" -slide@^1.1.5: - version "1.1.6" - resolved "https://registry.yarnpkg.com/slide/-/slide-1.1.6.tgz#56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707" - sntp@1.x.x: version "1.0.9" resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198" dependencies: hoek "2.x.x" -socket.io-adapter@0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/socket.io-adapter/-/socket.io-adapter-0.5.0.tgz#cb6d4bb8bec81e1078b99677f9ced0046066bb8b" - dependencies: - debug "2.3.3" - socket.io-parser "2.3.1" - -socket.io-client@1.7.3, socket.io-client@^1.4.6: - version "1.7.3" - resolved "https://registry.yarnpkg.com/socket.io-client/-/socket.io-client-1.7.3.tgz#b30e86aa10d5ef3546601c09cde4765e381da377" - dependencies: - backo2 "1.0.2" - component-bind "1.0.0" - component-emitter "1.2.1" - debug "2.3.3" - engine.io-client "1.8.3" - has-binary "0.1.7" - indexof "0.0.1" - object-component "0.0.3" - parseuri "0.0.5" - socket.io-parser "2.3.1" - to-array "0.1.4" - -socket.io-parser@2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-2.3.1.tgz#dd532025103ce429697326befd64005fcfe5b4a0" - dependencies: - component-emitter "1.1.2" - debug "2.2.0" - isarray "0.0.1" - json3 "3.3.2" - -socket.io@^1.4.6: - version "1.7.3" - resolved "https://registry.yarnpkg.com/socket.io/-/socket.io-1.7.3.tgz#b8af9caba00949e568e369f1327ea9be9ea2461b" - dependencies: - debug "2.3.3" - engine.io "1.8.3" - has-binary "0.1.7" - object-assign "4.1.0" - socket.io-adapter "0.5.0" - socket.io-client "1.7.3" - socket.io-parser "2.3.1" +sol-digger@0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/sol-digger/-/sol-digger-0.0.2.tgz#406c4a9d31e269e7f88eb1c2ea101318e5e09025" -solc@0.4.6, solc@^0.4.2: - version "0.4.6" - resolved "https://registry.yarnpkg.com/solc/-/solc-0.4.6.tgz#afa929a1ceafc0252cfbb4217c8e2b1dab139db7" - dependencies: - fs-extra "^0.30.0" - memorystream "^0.3.1" - require-from-string "^1.1.0" - yargs "^4.7.1" +sol-explore@^1.6.1: + version "1.6.2" + resolved "https://registry.yarnpkg.com/sol-explore/-/sol-explore-1.6.2.tgz#43ae8c419fd3ac056a05f8a9d1fb1022cd41ecc2" -solc@0.4.8: - version "0.4.8" - resolved "https://registry.yarnpkg.com/solc/-/solc-0.4.8.tgz#96abbee1266341ae97fb4bdc3abcc9bc1b5052ab" +solc@0.4.11, solc@^0.4.2: + version "0.4.11" + resolved "https://registry.yarnpkg.com/solc/-/solc-0.4.11.tgz#2522eb43e7c0419bac2060b96e20a2593bfb5e8b" dependencies: fs-extra "^0.30.0" memorystream "^0.3.1" @@ -4856,25 +2845,9 @@ solc@0.4.8: semver "^5.3.0" yargs "^4.7.1" -solidity-parser@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/solidity-parser/-/solidity-parser-0.2.0.tgz#317aa865ff71239bfc2f2d03e658ece1a196edca" - dependencies: - mocha "^2.4.5" - pegjs "^0.10.0" - yargs "^4.6.0" - -solidity-parser@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/solidity-parser/-/solidity-parser-0.3.0.tgz#cab04f8e406bdc1f3c16512eec6aa87a1072f8b9" - dependencies: - mocha "^2.4.5" - pegjs "^0.10.0" - yargs "^4.6.0" - -solidity-sha3@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/solidity-sha3/-/solidity-sha3-0.4.1.tgz#17577e93f6cfd58489c4ec7f2da3047530329ec1" +solidity-sha3@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/solidity-sha3/-/solidity-sha3-0.4.1.tgz#17577e93f6cfd58489c4ec7f2da3047530329ec1" dependencies: babel-cli "*" babel-preset-es2015 "*" @@ -4882,26 +2855,36 @@ solidity-sha3@^0.4.1: left-pad "^1.1.1" web3 "^0.16.0" +solium@^0.5.3: + version "0.5.3" + resolved "https://registry.yarnpkg.com/solium/-/solium-0.5.3.tgz#5736723dde08fe0e96a151d5bca7538d21f1f624" + dependencies: + chokidar "^1.6.0" + colors "^1.1.2" + commander "^2.9.0" + lodash "^4.14.2" + sol-digger "0.0.2" + sol-explore "^1.6.1" + solparse "^1.2.0" + +solparse@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/solparse/-/solparse-1.2.0.tgz#678304a86b0bb997eb172d00c0a35a9872b9d2ac" + dependencies: + mocha "^2.4.5" + pegjs "^0.10.0" + yargs "^4.6.0" + source-map-support@^0.4.2: - version "0.4.14" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.14.tgz#9d4463772598b86271b4f523f6c1f4e02a7d6aef" + version "0.4.15" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.15.tgz#03202df65c06d2bd8c7ec2362a193056fef8d3b1" dependencies: source-map "^0.5.6" -"source-map@>= 0.1.2", source-map@^0.5.0, source-map@^0.5.6: +source-map@^0.5.0, source-map@^0.5.6: version "0.5.6" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" -source-map@~0.1.33: - version "0.1.43" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346" - dependencies: - amdefine ">=0.0.4" - -spawn-args@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/spawn-args/-/spawn-args-0.1.0.tgz#3e0232a0571b387907f8b3f544aa531c6224848c" - spdx-correct@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40" @@ -4916,29 +2899,9 @@ spdx-license-ids@^1.0.2: version "1.2.2" resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57" -spdy-transport@^2.0.18: - version "2.0.18" - resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-2.0.18.tgz#43fc9c56be2cccc12bb3e2754aa971154e836ea6" - dependencies: - debug "^2.2.0" - hpack.js "^2.1.6" - obuf "^1.1.0" - readable-stream "^2.0.1" - wbuf "^1.4.0" - -split2@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/split2/-/split2-2.1.1.tgz#7a1f551e176a90ecd3345f7246a0cfe175ef4fd0" - dependencies: - through2 "^2.0.2" - -sprintf-js@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" - sshpk@^1.7.0: - version "1.11.0" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.11.0.tgz#2d8d5ebb4a6fab28ffba37fa62a90f4a3ea59d77" + version "1.13.1" + resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.13.1.tgz#512df6da6287144316dc4c18fe1cf1d940739be3" dependencies: asn1 "~0.2.3" assert-plus "^1.0.0" @@ -4947,76 +2910,9 @@ sshpk@^1.7.0: optionalDependencies: bcrypt-pbkdf "^1.0.0" ecc-jsbn "~0.1.1" - jodid25519 "^1.0.0" jsbn "~0.1.0" tweetnacl "~0.14.0" -stable@^0.1.5: - version "0.1.6" - resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.6.tgz#910f5d2aed7b520c6e777499c1f32e139fdecb10" - -statehood@5.x.x: - version "5.0.1" - resolved "https://registry.yarnpkg.com/statehood/-/statehood-5.0.1.tgz#fc13c97b37751c18e70513d2b97e896ac8b73005" - dependencies: - boom "4.x.x" - cryptiles "3.x.x" - hoek "4.x.x" - iron "4.x.x" - items "2.x.x" - joi "10.x.x" - -static-eval@~0.2.0: - version "0.2.4" - resolved "https://registry.yarnpkg.com/static-eval/-/static-eval-0.2.4.tgz#b7d34d838937b969f9641ca07d48f8ede263ea7b" - dependencies: - escodegen "~0.0.24" - -static-module@^1.1.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/static-module/-/static-module-1.3.1.tgz#79071d340e4419e4ab5ce87976a9eb67250c8493" - dependencies: - concat-stream "~1.4.5" - duplexer2 "~0.0.2" - escodegen "~1.3.2" - falafel "^1.0.0" - has "^1.0.0" - object-inspect "~0.4.0" - quote-stream "~0.0.0" - readable-stream "~1.0.27-1" - shallow-copy "~0.0.1" - static-eval "~0.2.0" - through2 "~0.4.1" - -"statuses@>= 1.3.1 < 2", statuses@~1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e" - -stream-http@^2.5.0: - version "2.7.0" - resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.7.0.tgz#cec1f4e3b494bc4a81b451808970f8b20b4ed5f6" - dependencies: - builtin-status-codes "^3.0.0" - inherits "^2.0.1" - readable-stream "^2.2.6" - to-arraybuffer "^1.0.0" - xtend "^4.0.0" - -stream-to-pull-stream@^1.7.0, stream-to-pull-stream@^1.7.2: - version "1.7.2" - resolved "https://registry.yarnpkg.com/stream-to-pull-stream/-/stream-to-pull-stream-1.7.2.tgz#757609ae1cebd33c7432d4afbe31ff78650b9dde" - dependencies: - looper "^3.0.0" - pull-stream "^3.2.3" - -streamifier@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/streamifier/-/streamifier-0.1.1.tgz#97e98d8fa4d105d62a2691d1dc07e820db8dfc4f" - -streamsearch@0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/streamsearch/-/streamsearch-0.1.2.tgz#808b9d0e56fc273d809ba57338e929919a1a9f1a" - string-width@^1.0.1, string-width@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" @@ -5037,11 +2933,11 @@ string_decoder@~0.10.x: version "0.10.31" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" -string_decoder@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.0.tgz#f06f41157b664d86069f84bdbdc9b0d8ab281667" +string_decoder@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab" dependencies: - buffer-shims "~1.0.0" + safe-buffer "~5.1.0" stringstream@~0.0.4: version "0.0.5" @@ -5059,10 +2955,6 @@ strip-bom@^2.0.0: dependencies: is-utf8 "^0.2.0" -strip-bom@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" - strip-hex-prefix@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz#0c5f155fef1151373377de9dbb588da05500e36f" @@ -5073,16 +2965,6 @@ strip-json-comments@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" -subtext@^4.3.x: - version "4.4.0" - resolved "https://registry.yarnpkg.com/subtext/-/subtext-4.4.0.tgz#0cf137965f47fe0e126a56a2488bb1c88dc93514" - dependencies: - boom "4.x.x" - content "3.x.x" - hoek "4.x.x" - pez "2.x.x" - wreck "10.x.x" - supports-color@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-1.2.0.tgz#ff1ed1e61169d06b3cf2d588e188b18d8847e17e" @@ -5098,26 +2980,26 @@ supports-color@^2.0.0: resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" tape@^4.4.0: - version "4.6.3" - resolved "https://registry.yarnpkg.com/tape/-/tape-4.6.3.tgz#637e77581e9ab2ce17577e9bd4ce4f575806d8b6" + version "4.7.0" + resolved "https://registry.yarnpkg.com/tape/-/tape-4.7.0.tgz#f3ebb214fef3d6907e5a57dbaafe3bd8a7cbed88" dependencies: deep-equal "~1.0.1" defined "~1.0.0" for-each "~0.3.2" function-bind "~1.1.0" - glob "~7.1.1" + glob "~7.1.2" has "~1.0.1" inherits "~2.0.3" minimist "~1.2.0" - object-inspect "~1.2.1" - resolve "~1.1.7" + object-inspect "~1.2.2" + resolve "~1.3.3" resumer "~0.0.0" string.prototype.trim "~1.1.2" through "~2.3.8" tar-fs@^1.13.0: - version "1.15.2" - resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-1.15.2.tgz#761f5b32932c7b39461a60d537faea0d8084830c" + version "1.15.3" + resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-1.15.3.tgz#eccf935e941493d8151028e636e51ce4c3ca7f20" dependencies: chownr "^1.0.1" mkdirp "^0.5.1" @@ -5137,9 +3019,9 @@ tar-pack@^3.4.0: tar "^2.2.1" uid-number "^0.0.6" -tar-stream@^1.1.2, tar-stream@^1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-1.5.2.tgz#fbc6c6e83c1a19d4cb48c7d96171fc248effc7bf" +tar-stream@^1.1.2: + version "1.5.4" + resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-1.5.4.tgz#36549cf04ed1aee9b2a30c0143252238daf94016" dependencies: bl "^1.0.0" end-of-stream "^1.0.0" @@ -5154,71 +3036,24 @@ tar@^2.2.1: fstream "^1.0.2" inherits "2" -temp@^0.8.3: - version "0.8.3" - resolved "https://registry.yarnpkg.com/temp/-/temp-0.8.3.tgz#e0c6bc4d26b903124410e4fed81103014dfc1f59" - dependencies: - os-tmpdir "^1.0.0" - rimraf "~2.2.6" - -through2@^2.0.0, through2@^2.0.1, through2@^2.0.2, through2@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" - dependencies: - readable-stream "^2.1.5" - xtend "~4.0.1" - -through2@~0.4.1: - version "0.4.2" - resolved "https://registry.yarnpkg.com/through2/-/through2-0.4.2.tgz#dbf5866031151ec8352bb6c4db64a2292a840b9b" - dependencies: - readable-stream "~1.0.17" - xtend "~2.1.1" - through@~2.3.4, through@~2.3.8: version "2.3.8" resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" -timed-out@^3.0.0: - version "3.1.3" - resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-3.1.3.tgz#95860bfcc5c76c277f8f8326fd0f5b2e20eba217" - -timed-tape@~0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/timed-tape/-/timed-tape-0.1.1.tgz#9b6e569f17e66c79f1eed2d25ff7962fc7418e49" - -to-array@0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/to-array/-/to-array-0.1.4.tgz#17e6c11f73dd4f3d74cda7a4ff3238e9ad9bf890" - -to-arraybuffer@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" - to-fast-properties@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.2.tgz#f3f5c0c3ba7299a7ef99427e44633257ade43320" + version "1.0.3" + resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" to-iso-string@0.0.2: version "0.0.2" resolved "https://registry.yarnpkg.com/to-iso-string/-/to-iso-string-0.0.2.tgz#4dc19e664dfccbe25bd8db508b00c6da158255d1" -topo@2.x.x: - version "2.0.2" - resolved "https://registry.yarnpkg.com/topo/-/topo-2.0.2.tgz#cd5615752539057c0dc0491a621c3bc6fbe1d182" - dependencies: - hoek "4.x.x" - tough-cookie@~2.3.0: version "2.3.2" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.2.tgz#f081f76e4c85720e6c37a5faced737150d84072a" dependencies: punycode "^1.4.1" -traverse@^0.6.6: - version "0.6.6" - resolved "https://registry.yarnpkg.com/traverse/-/traverse-0.6.6.tgz#cbdf560fd7b9af632502fed40f918c157ea97137" - trim-right@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" @@ -5227,93 +3062,19 @@ trim@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/trim/-/trim-0.0.1.tgz#5858547f6b290757ee95cccc666fb50084c460dd" -truffle-artifactor@^2.1.0, truffle-artifactor@^2.1.2, truffle-artifactor@~2.1.2, truffle-artifactor@~2.1.3: - version "2.1.4" - resolved "https://registry.yarnpkg.com/truffle-artifactor/-/truffle-artifactor-2.1.4.tgz#320b38e102a7f9abb7f2aa9af6781b99d735bd13" - dependencies: - async "^1.5.2" - fs-extra "^1.0.0" - lodash "^4.11.2" - truffle-contract "^2.0.0" - truffle-contract-schema "0.0.5" - truffle-blockchain-utils@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/truffle-blockchain-utils/-/truffle-blockchain-utils-0.0.1.tgz#07a58e55bb0555a64208c9119c0b04ffe1464aa4" dependencies: web3 "^0.18.0" -truffle-compile@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/truffle-compile/-/truffle-compile-1.0.0.tgz#a62b316affd0f0aa099e555738031ddfc5eb37d7" - dependencies: - async "^2.1.4" - colors "^1.1.2" - graphlib "^2.1.1" - solc "0.4.8" - solidity-parser "^0.2.0" - truffle-config "0.0.7" - truffle-contract-sources "^0.0.1" - truffle-error "0.0.2" - truffle-expect "0.0.3" - -truffle-compile@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/truffle-compile/-/truffle-compile-1.1.2.tgz#d2e2e6b8cc52fc49447405f930c0d8346ea85db8" - dependencies: - async "^2.1.4" - colors "^1.1.2" - graphlib "^2.1.1" - solc "0.4.8" - solidity-parser "^0.3.0" - truffle-config "0.0.7" - truffle-contract-sources "^0.0.1" - truffle-error "0.0.2" - truffle-expect "0.0.3" - -truffle-config@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/truffle-config/-/truffle-config-0.0.2.tgz#c41bccde798791244724c62b231f71e6777dbcfa" - dependencies: - find-up "^2.1.0" - lodash "^4.17.4" - require-nocache "^1.0.0" - truffle-error "0.0.1" - truffle-provider "0.0.1" - -truffle-config@0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/truffle-config/-/truffle-config-0.0.6.tgz#9bfceee29f0b62e1adef37f0305df313f63d456b" - dependencies: - find-up "^2.1.0" - lodash "^4.17.4" - require-nocache "^1.0.0" - truffle-error "0.0.1" - truffle-provider "0.0.1" - -truffle-config@0.0.7, truffle-config@~0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/truffle-config/-/truffle-config-0.0.7.tgz#03185bb9ddd88c62a6a306cfdfc495b3c715e7c4" - dependencies: - find-up "^2.1.0" - lodash "^4.17.4" - require-nocache "^1.0.0" - truffle-error "0.0.2" - truffle-provider "0.0.1" - truffle-contract-schema@0.0.5: version "0.0.5" resolved "https://registry.yarnpkg.com/truffle-contract-schema/-/truffle-contract-schema-0.0.5.tgz#5e9d20bd0bf2a27fe94310748249d484eee49961" dependencies: crypto-js "^3.1.9-1" -truffle-contract-sources@^0.0.1, truffle-contract-sources@~0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/truffle-contract-sources/-/truffle-contract-sources-0.0.1.tgz#29b6270366c86109cbb0eb307418fc6b2795d7fd" - dependencies: - node-dir "^0.1.16" - -truffle-contract@^1.0.3, truffle-contract@^1.1.10, truffle-contract@^1.1.6, truffle-contract@^1.1.8, truffle-contract@~1.1.11, truffle-contract@~1.1.8: +truffle-contract@^1.1.10: version "1.1.11" resolved "https://registry.yarnpkg.com/truffle-contract/-/truffle-contract-1.1.11.tgz#ce1fa787f797758aff572f45e8b1174527f6edaa" dependencies: @@ -5322,42 +3083,7 @@ truffle-contract@^1.0.3, truffle-contract@^1.1.10, truffle-contract@^1.1.6, truf truffle-contract-schema "0.0.5" web3 "^0.16.0" -truffle-contract@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/truffle-contract/-/truffle-contract-2.0.0.tgz#8536c06bb1172b143498121d135f96c10d3eb720" - dependencies: - ethjs-abi "0.1.8" - truffle-blockchain-utils "0.0.1" - truffle-contract-schema "0.0.5" - web3 "^0.18.0" - -truffle-deployer@0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/truffle-deployer/-/truffle-deployer-0.1.1.tgz#04fea783ac7bc32d7fe2a7606accb5f81e06d988" - dependencies: - truffle-contract "^1.0.3" - truffle-expect "^0.0.3" - -truffle-deployer@0.1.2, truffle-deployer@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/truffle-deployer/-/truffle-deployer-0.1.2.tgz#54241c28b19d2f6f1c7ba370d8f7439ee309873f" - dependencies: - truffle-contract "^1.0.3" - truffle-expect "^0.0.3" - -truffle-error@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/truffle-error/-/truffle-error-0.0.1.tgz#4b39badf54805a206e95fca72becabcec2c05a6f" - -truffle-error@0.0.2, truffle-error@~0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/truffle-error/-/truffle-error-0.0.2.tgz#01b189b78505566ae1689c239c7ca2dd121cfe4c" - -truffle-expect@0.0.3, truffle-expect@^0.0.3, truffle-expect@~0.0.3: - version "0.0.3" - resolved "https://registry.yarnpkg.com/truffle-expect/-/truffle-expect-0.0.3.tgz#9b75cef343bd596e7e5dbc878f5f1b2e318a944c" - -truffle-hdwallet-provider@^0.0.3: +truffle-hdwallet-provider@0.0.3: version "0.0.3" resolved "https://registry.yarnpkg.com/truffle-hdwallet-provider/-/truffle-hdwallet-provider-0.0.3.tgz#0e1de02104b73d3875e1cf7093305b4ea8a2d843" dependencies: @@ -5366,190 +3092,13 @@ truffle-hdwallet-provider@^0.0.3: web3 "^0.18.2" web3-provider-engine "^8.4.0" -truffle-init@~1.0.2, truffle-init@~1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/truffle-init/-/truffle-init-1.0.5.tgz#1694cee4a58bd1d14a0c7881d3faca8ca4185711" - dependencies: - fs-extra "^2.0.0" - github-download "^0.5.0" - npm-programmatic "0.0.6" - rimraf "^2.5.4" - temp "^0.8.3" - truffle-config "0.0.7" - -truffle-migrate@~0.0.5: - version "0.0.5" - resolved "https://registry.yarnpkg.com/truffle-migrate/-/truffle-migrate-0.0.5.tgz#b4a313924ed86b5c333adaa42f6353f50adbf12a" - dependencies: - async "^2.1.4" - node-dir "^0.1.16" - truffle-artifactor "^2.1.0" - truffle-deployer "0.1.1" - truffle-expect "0.0.3" - truffle-require "0.0.2" - web3 "^0.18.0" - -truffle-migrate@~1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/truffle-migrate/-/truffle-migrate-1.1.1.tgz#4214995a15e9cb569740bea8bf131dc0a0148087" - dependencies: - async "^2.1.4" - node-dir "^0.1.16" - truffle-deployer "0.1.2" - truffle-expect "0.0.3" - truffle-require "1.0.0" - web3 "^0.18.0" - -truffle-provider@0.0.1, truffle-provider@~0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/truffle-provider/-/truffle-provider-0.0.1.tgz#9d0ddb01131de1e3c59c4f8a0532bd2770811f1f" - dependencies: - web3 "^0.18.0" - -truffle-provisioner@^0.1.0, truffle-provisioner@~0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/truffle-provisioner/-/truffle-provisioner-0.1.0.tgz#029e5249c1015300738535e04fded931a53c4f62" - -truffle-require@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/truffle-require/-/truffle-require-0.0.2.tgz#f23eaccc407735a6049ecfd59e99183bc460136c" - dependencies: - truffle-config "0.0.2" - truffle-expect "0.0.3" - web3 "^0.18.0" - -truffle-require@1.0.0, truffle-require@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/truffle-require/-/truffle-require-1.0.0.tgz#b17aa5e3c27eb4b3a26ddcf76c55ccb01d62ead9" - dependencies: - truffle-config "0.0.6" - truffle-expect "0.0.3" - web3 "^0.18.0" - -truffle-require@~0.0.3: - version "0.0.3" - resolved "https://registry.yarnpkg.com/truffle-require/-/truffle-require-0.0.3.tgz#72c090822b9358979d82be6f4abbb5305af6d976" - dependencies: - truffle-config "0.0.6" - truffle-expect "0.0.3" - web3 "^0.18.0" - -truffle-resolver@~1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/truffle-resolver/-/truffle-resolver-1.0.1.tgz#b0cc16b8101c4c6b6a17bd371dfdba6932ef104a" +truffle@^3.4.3: + version "3.4.3" + resolved "https://registry.yarnpkg.com/truffle/-/truffle-3.4.3.tgz#6d9ea4abea758b452b2d3769669eb7109146229e" dependencies: - async "^2.1.4" - truffle-contract "^1.1.8" - truffle-expect "0.0.3" - truffle-provisioner "^0.1.0" - -truffle-resolver@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/truffle-resolver/-/truffle-resolver-2.0.0.tgz#323c3ab82450878e41dbdaf918c1aea5380dd025" - dependencies: - async "^2.1.4" - truffle-contract "^1.1.8" - truffle-expect "0.0.3" - truffle-provisioner "^0.1.0" - -truffle-solidity-utils@~0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/truffle-solidity-utils/-/truffle-solidity-utils-0.0.1.tgz#13a90e3bd979df01dbb3312e8f2ae0c3ef96d1b3" - dependencies: - solidity-parser "^0.2.0" - -truffle-solidity-utils@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/truffle-solidity-utils/-/truffle-solidity-utils-1.0.0.tgz#5320416dcd3702a775e4cca5c5731d465dab30ae" - dependencies: - solidity-parser "^0.3.0" - -truffle@3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/truffle/-/truffle-3.1.2.tgz#dacdd079995db46736e660d0ff8cef59e04bf2d7" - dependencies: - async "^1.4.2" - chai "^3.3.0" - chokidar "^1.4.2" - colors "^1.1.2" - cpr "^0.4.3" - del "^2.2.0" - ethpm "0.0.9" - ethpm-registry "0.0.8" - finalhandler "^0.4.0" - fs-extra "^2.0.0" - lodash "^4.5.1" - mkdirp "^0.5.1" - mocha "^3.2.0" - node-dir "^0.1.10" - serve-static "^1.10.0" - spawn-args "^0.1.0" - temp "^0.8.3" - truffle-artifactor "~2.1.2" - truffle-compile "~1.0.0" - truffle-config "~0.0.7" - truffle-contract "~1.1.8" - truffle-contract-sources "~0.0.1" - truffle-deployer "~0.1.2" - truffle-error "~0.0.2" - truffle-expect "~0.0.3" - truffle-init "~1.0.2" - truffle-migrate "~0.0.5" - truffle-provider "~0.0.1" - truffle-provisioner "~0.1.0" - truffle-require "~0.0.3" - truffle-resolver "~1.0.0" - truffle-solidity-utils "~0.0.1" - web3 "0.18.0" - yargs "^6.6.0" - -truffle@beta: - version "3.1.10" - resolved "https://registry.yarnpkg.com/truffle/-/truffle-3.1.10.tgz#093e0d64e450823e04287483ed13347e36054e4c" - dependencies: - async "^1.4.2" - chai "^3.3.0" - chokidar "^1.4.2" - colors "^1.1.2" - cpr "^0.4.3" - del "^2.2.0" - diff "1.4.0" - ethpm "0.0.10" - ethpm-registry "0.0.9" - finalhandler "^0.4.0" - fs-extra "^2.0.0" - lodash "^4.5.1" - mkdirp "^0.5.1" - mocha "^3.2.0" - node-dir "^0.1.10" - serve-static "^1.10.0" - spawn-args "^0.1.0" - temp "^0.8.3" - truffle-artifactor "~2.1.3" - truffle-compile "~1.1.2" - truffle-config "~0.0.7" - truffle-contract "~1.1.11" - truffle-contract-sources "~0.0.1" - truffle-deployer "~0.1.2" - truffle-error "~0.0.2" - truffle-expect "~0.0.3" - truffle-init "~1.0.5" - truffle-migrate "~1.1.0" - truffle-provider "~0.0.1" - truffle-provisioner "~0.1.0" - truffle-require "~1.0.0" - truffle-resolver "~2.0.0" - truffle-solidity-utils "~1.0.0" - web3 "^0.18.0" - yargs "^6.6.0" - -tslib@^1.5.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.6.0.tgz#cf36c93e02ae86a20fc131eae511162b869a6652" - -tunnel-agent@^0.4.3: - version "0.4.3" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb" + mocha "^3.4.2" + original-require "^1.0.1" + solc "0.4.11" tunnel-agent@^0.6.0: version "0.6.0" @@ -5557,83 +3106,30 @@ tunnel-agent@^0.6.0: dependencies: safe-buffer "^5.0.1" -tunnel@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/tunnel/-/tunnel-0.0.2.tgz#f23bcd8b7a7b8a864261b2084f66f93193396334" - tweetnacl-util@^0.13.3: version "0.13.5" resolved "https://registry.yarnpkg.com/tweetnacl-util/-/tweetnacl-util-0.13.5.tgz#e39cd5d99709ee7125a18b03895b45a1299e475f" +tweetnacl@0.13.2: + version "0.13.2" + resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.13.2.tgz#453161770469d45cd266c36404e2bc99a8fa9944" + tweetnacl@0.14.3, tweetnacl@^0.14.3, tweetnacl@~0.14.0: version "0.14.3" resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.3.tgz#3da382f670f25ded78d7b3d1792119bca0b7132d" -tweetnacl@^1.0.0-rc.1: - version "1.0.0-rc.1" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-1.0.0-rc.1.tgz#1198f1dfccb24859a4091c82787d5882425f0cde" - -type-detect@0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-0.1.1.tgz#0ba5ec2a885640e470ea4e8505971900dac58822" - -type-detect@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-1.0.0.tgz#762217cc06db258ec48908a1298e8b95121e8ea2" - -typedarray-to-buffer@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.2.tgz#1017b32d984ff556eba100f501589aba1ace2e04" - dependencies: - is-typedarray "^1.0.0" - -typedarray@^0.0.6, typedarray@~0.0.5: - version "0.0.6" - resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" - -typescript@^2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.2.2.tgz#606022508479b55ffa368b58fee963a03dfd7b0c" - uid-number@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" -ultron@1.0.x: - version "1.0.2" - resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.0.2.tgz#ace116ab557cd197386a4e88f4685378c8b2e4fa" - unorm@^1.3.3: version "1.4.1" resolved "https://registry.yarnpkg.com/unorm/-/unorm-1.4.1.tgz#364200d5f13646ca8bcd44490271335614792300" -unpipe@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" - -unzip-response@^1.0.0, unzip-response@^1.0.2: +unzip-response@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/unzip-response/-/unzip-response-1.0.2.tgz#b984f0877fc0a89c2c773cc1ef7b5b232b5b06fe" -update-notifier@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/update-notifier/-/update-notifier-1.0.3.tgz#8f92c515482bd6831b7c93013e70f87552c7cf5a" - dependencies: - boxen "^0.6.0" - chalk "^1.0.0" - configstore "^2.0.0" - is-npm "^1.0.0" - latest-version "^2.0.0" - lazy-req "^1.1.0" - semver-diff "^2.0.0" - xdg-basedir "^2.0.0" - -url-parse-lax@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-1.0.0.tgz#7af8f303645e9bd79a272e7a14ac68bc0609da73" - dependencies: - prepend-http "^1.0.1" - user-home@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/user-home/-/user-home-1.1.1.tgz#2b5be23a32b63a7c9deb8d0f28d485724a3df190" @@ -5646,7 +3142,7 @@ utf8@^2.1.1: version "2.1.2" resolved "https://registry.yarnpkg.com/utf8/-/utf8-2.1.2.tgz#1fa0d9270e9be850d9b05027f63519bf46457d96" -util-deprecate@^1.0.2, util-deprecate@~1.0.1: +util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" @@ -5655,12 +3151,12 @@ uuid@^2.0.1: resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.3.tgz#67e2e863797215530dff318e5bf9dcebfd47b21a" uuid@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.0.1.tgz#6544bba2dfda8c1cf17e629a3a305e2bb1fee6c1" + version "3.1.0" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.1.0.tgz#3dd3d3e790abc24d7b0d3a034ffababe28ebbc04" v8flags@^2.0.10: - version "2.0.12" - resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-2.0.12.tgz#73235d9f7176f8e8833fb286795445f7938d84e5" + version "2.1.1" + resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-2.1.1.tgz#aab1a1fa30d45f88dd321148875ac02c0b55e5b4" dependencies: user-home "^1.1.1" @@ -5671,36 +3167,12 @@ validate-npm-package-license@^3.0.1: spdx-correct "~1.0.0" spdx-expression-parse "~1.0.0" -varint@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/varint/-/varint-4.0.1.tgz#490829b942d248463b2b35097995c3bf737198e9" - -varint@^5.0.0, varint@~5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/varint/-/varint-5.0.0.tgz#d826b89f7490732fabc0c0ed693ed475dcb29ebf" - -vcsurl@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/vcsurl/-/vcsurl-0.1.1.tgz#5e00a109e7381b55b5d45b892533c8ec35c9320c" - verror@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/verror/-/verror-1.3.6.tgz#cff5df12946d297d2baaefaa2689e25be01c005c" dependencies: extsprintf "1.0.2" -vise@2.x.x: - version "2.0.2" - resolved "https://registry.yarnpkg.com/vise/-/vise-2.0.2.tgz#6b08e8fb4cb76e3a50cd6dd0ec37338e811a0d39" - dependencies: - hoek "4.x.x" - -wbuf@^1.1.0, wbuf@^1.4.0: - version "1.7.2" - resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.2.tgz#d697b99f1f59512df2751be42769c1580b5801fe" - dependencies: - minimalistic-assert "^1.0.0" - web3-provider-engine@^8.4.0: version "8.6.1" resolved "https://registry.yarnpkg.com/web3-provider-engine/-/web3-provider-engine-8.6.1.tgz#4d86e19e30caaf97df351511ec0f60136e5b30eb" @@ -5720,45 +3192,7 @@ web3-provider-engine@^8.4.0: xhr "^2.2.0" xtend "^4.0.1" -web3-provider-engine@~8.1.0: - version "8.1.19" - resolved "https://registry.yarnpkg.com/web3-provider-engine/-/web3-provider-engine-8.1.19.tgz#3ccae95adecef55632e2a73bf3bee64b7e62fcf7" - dependencies: - async "^2.1.2" - clone "^2.0.0" - ethereumjs-block "^1.2.2" - ethereumjs-tx "^1.2.0" - ethereumjs-util "^5.0.1" - ethereumjs-vm "^2.0.2" - isomorphic-fetch "^2.2.0" - request "^2.67.0" - semaphore "^1.0.3" - solc "^0.4.2" - tape "^4.4.0" - web3 "^0.16.0" - xhr "^2.2.0" - xtend "^4.0.1" - -web3@0.18.0: - version "0.18.0" - resolved "https://registry.yarnpkg.com/web3/-/web3-0.18.0.tgz#03e4471bc2853a8177f06212fcad6adf1b16736a" - dependencies: - bignumber.js "git+https://github.com/debris/bignumber.js.git#94d7146671b9719e00a09c29b01a691bc85048c2" - crypto-js "^3.1.4" - utf8 "^2.1.1" - xhr2 "*" - xmlhttprequest "*" - -web3@^0.15.3: - version "0.15.3" - resolved "https://registry.yarnpkg.com/web3/-/web3-0.15.3.tgz#f997ccda419fc528c0d6c5d8d5382212bfa74628" - dependencies: - bignumber.js "git+https://github.com/debris/bignumber.js#master" - crypto-js "^3.1.4" - utf8 "^2.1.1" - xmlhttprequest "*" - -web3@^0.16.0, web3@~0.16.0: +web3@^0.16.0: version "0.16.0" resolved "https://registry.yarnpkg.com/web3/-/web3-0.16.0.tgz#a4554175cd462943035b1f1d39432f741c6b6019" dependencies: @@ -5777,23 +3211,15 @@ web3@^0.18.0, web3@^0.18.2: xhr2 "*" xmlhttprequest "*" -webcrypto-core@^0: - version "0.1.14" - resolved "https://registry.yarnpkg.com/webcrypto-core/-/webcrypto-core-0.1.14.tgz#03ffb074de14a56235c17e3fb8316ecea5e6c77b" - dependencies: - "@types/node" "^6" - tslib "^1.5.0" - -"webcrypto-shim@github:dignifiedquire/webcrypto-shim#master": - version "0.1.1" - resolved "https://codeload.github.com/dignifiedquire/webcrypto-shim/tar.gz/effe03d3401ccbfb4837191bc393bb347e0c0f0a" - -wget-improved@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/wget-improved/-/wget-improved-1.4.0.tgz#a1e3c448bf9337900926fbfaba62502065f89725" +web3@^0.19.1: + version "0.19.1" + resolved "https://registry.yarnpkg.com/web3/-/web3-0.19.1.tgz#e763d5b1107c4bc24abd4f8cbee1ba3659e6eb31" dependencies: - minimist "1.2.0" - tunnel "0.0.2" + bignumber.js "^4.0.2" + crypto-js "^3.1.4" + utf8 "^2.1.1" + xhr2 "*" + xmlhttprequest "*" whatwg-fetch@>=0.10.0: version "2.0.3" @@ -5804,29 +3230,15 @@ which-module@^1.0.0: resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" wide-align@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.0.tgz#40edde802a71fea1f070da3e62dcda2e7add96ad" - dependencies: - string-width "^1.0.1" - -widest-line@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-1.0.0.tgz#0c09c85c2a94683d0d7eaf8ee097d564bf0e105c" + version "1.1.2" + resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.2.tgz#571e0f1b0604636ebc0dfc21b0339bbe31341710" dependencies: - string-width "^1.0.1" - -window-size@^0.1.2: - version "0.1.4" - resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.4.tgz#f8e1aa1ee5a53ec5bf151ffa09742a6ad7697876" + string-width "^1.0.2" window-size@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.2.0.tgz#b4315bb4214a3d7058ebeee892e13fa24d98b075" -wordwrap@~0.0.2: - version "0.0.3" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" - wrap-ansi@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" @@ -5838,45 +3250,6 @@ wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" -wreck@10.x.x: - version "10.0.0" - resolved "https://registry.yarnpkg.com/wreck/-/wreck-10.0.0.tgz#98ab882f85e16a526332507f101f5a7841162278" - dependencies: - boom "4.x.x" - hoek "4.x.x" - -write-file-atomic@^1.1.2: - version "1.3.1" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-1.3.1.tgz#7d45ba32316328dd1ec7d90f60ebc0d845bb759a" - dependencies: - graceful-fs "^4.1.11" - imurmurhash "^0.1.4" - slide "^1.1.5" - -ws@1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/ws/-/ws-1.1.2.tgz#8a244fa052401e08c9886cf44a85189e1fd4067f" - dependencies: - options ">=0.0.5" - ultron "1.0.x" - -ws@^1.1.0: - version "1.1.4" - resolved "https://registry.yarnpkg.com/ws/-/ws-1.1.4.tgz#57f40d036832e5f5055662a397c4de76ed66bf61" - dependencies: - options ">=0.0.5" - ultron "1.0.x" - -wtf-8@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/wtf-8/-/wtf-8-1.0.0.tgz#392d8ba2d0f1c34d1ee2d630f15d0efb68e1048a" - -xdg-basedir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-2.0.0.tgz#edbc903cc385fc04523d966a335504b5504d1bd2" - dependencies: - os-homedir "^1.0.0" - xhr2@*: version "0.1.4" resolved "https://registry.yarnpkg.com/xhr2/-/xhr2-0.1.4.tgz#7f87658847716db5026323812f818cadab387a5f" @@ -5890,15 +3263,11 @@ xhr@^2.2.0: parse-headers "^2.0.0" xtend "^4.0.0" -xmlhttprequest-ssl@1.5.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.3.tgz#185a888c04eca46c3e4070d99f7b49de3528992d" - xmlhttprequest@*: version "1.8.0" resolved "https://registry.yarnpkg.com/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz#67fe075c5c24fef39f9d65f5f7b7fe75171968fc" -xtend@4.0.1, xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.0, xtend@~4.0.1: +xtend@4.0.1, xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" @@ -5908,14 +3277,10 @@ xtend@~2.1.1: dependencies: object-keys "~0.4.0" -y18n@^3.2.0, y18n@^3.2.1: +y18n@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" -yallist@^2.0.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" - yargs-parser@^2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-2.4.1.tgz#85568de3cf150ff49fa51825f03a8c880ddcc5c4" @@ -5923,12 +3288,6 @@ yargs-parser@^2.4.1: camelcase "^3.0.0" lodash.assign "^4.0.6" -yargs-parser@^4.2.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-4.2.1.tgz#29cceac0dc4f03c6c87b4a9f217dd18c9f74871c" - dependencies: - camelcase "^3.0.0" - yargs@^4.6.0, yargs@^4.7.1: version "4.8.1" resolved "https://registry.yarnpkg.com/yargs/-/yargs-4.8.1.tgz#c0c42924ca4aaa6b0e6da1739dfb216439f9ddc0" @@ -5947,36 +3306,3 @@ yargs@^4.6.0, yargs@^4.7.1: window-size "^0.2.0" y18n "^3.2.1" yargs-parser "^2.4.1" - -yargs@^6.3.0, yargs@^6.4.0, yargs@^6.6.0: - version "6.6.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-6.6.0.tgz#782ec21ef403345f830a808ca3d513af56065208" - dependencies: - camelcase "^3.0.0" - cliui "^3.2.0" - decamelize "^1.1.1" - get-caller-file "^1.0.1" - os-locale "^1.4.0" - read-pkg-up "^1.0.1" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^1.0.2" - which-module "^1.0.0" - y18n "^3.2.1" - yargs-parser "^4.2.0" - -yargs@~3.29.0: - version "3.29.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.29.0.tgz#1aab9660eae79d8b8f675bcaeeab6ee34c2cf69c" - dependencies: - camelcase "^1.2.1" - cliui "^3.0.3" - decamelize "^1.0.0" - os-locale "^1.4.0" - window-size "^0.1.2" - y18n "^3.2.0" - -yeast@0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/yeast/-/yeast-0.1.2.tgz#008e06d8094320c372dbc2f8ed76a0ca6c8ac419"