From 0673fcaa5f465edc716e66611baf1e0acdeabde8 Mon Sep 17 00:00:00 2001 From: Graeme Date: Tue, 2 Oct 2018 15:20:08 -0700 Subject: [PATCH 1/5] feat: add new deployed artifacts --- artifacts/json/AddressUtils.json | 2 +- artifacts/json/BasicToken.json | 2 +- artifacts/json/ClockAuction.json | 2 +- artifacts/json/ClockAuctionBase.json | 2 +- ...ateralizedSimpleInterestTermsContract.json | 4 ++-- artifacts/json/Collateralizer.json | 4 ++-- artifacts/json/ContractRegistry.json | 4 ++-- artifacts/json/CreditorProxy.json | 4 ++-- artifacts/json/DebtKernel.json | 8 +++---- artifacts/json/DebtRegistry.json | 8 +++---- artifacts/json/DebtToken.json | 4 ++-- artifacts/json/DeprecatedERC721.json | 2 +- artifacts/json/DharmaMultiSigWallet.json | 4 ++-- artifacts/json/DummyContract.json | 4 ++-- artifacts/json/DummyToken.json | 2 +- artifacts/json/ERC165.json | 2 +- artifacts/json/ERC20.json | 2 +- artifacts/json/ERC20Basic.json | 2 +- artifacts/json/ERC721.json | 2 +- artifacts/json/ERC721Basic.json | 2 +- artifacts/json/ERC721BasicToken.json | 2 +- ...ateralizedSimpleInterestTermsContract.json | 4 ++-- artifacts/json/ERC721Collateralizer.json | 4 ++-- artifacts/json/ERC721Enumerable.json | 2 +- artifacts/json/ERC721Metadata.json | 2 +- artifacts/json/ERC721Receiver.json | 2 +- artifacts/json/ERC721Token.json | 7 ++++++- artifacts/json/ERC721TokenRegistry.json | 4 ++-- artifacts/json/GeneScienceInterface.json | 2 +- artifacts/json/IncompatibleTermsContract.json | 4 ++-- artifacts/json/KittiesERC721.json | 2 +- artifacts/json/KittiesERC721Metadata.json | 2 +- artifacts/json/KittiesOwnable.json | 2 +- artifacts/json/KittiesPausable.json | 2 +- artifacts/json/KittyAccessControl.json | 2 +- artifacts/json/KittyAuction.json | 2 +- artifacts/json/KittyBase.json | 2 +- artifacts/json/KittyBreeding.json | 2 +- artifacts/json/KittyCore.json | 4 ++-- artifacts/json/KittyMinting.json | 2 +- artifacts/json/KittyOwnership.json | 2 +- artifacts/json/Migrations.json | 4 ++-- artifacts/json/MintableERC721Token.json | 4 ++-- artifacts/json/MintableToken.json | 2 +- .../json/MockCollateralizedTermsContract.json | 4 ++-- artifacts/json/MockContract.json | 2 +- artifacts/json/MockDebtKernel.json | 2 +- artifacts/json/MockDebtRegistry.json | 4 ++-- artifacts/json/MockDebtToken.json | 4 ++-- artifacts/json/MockERC20Token.json | 4 ++-- artifacts/json/MockERC721Receiver.json | 4 ++-- artifacts/json/MockERC721Token.json | 4 ++-- artifacts/json/MockTermsContract.json | 4 ++-- artifacts/json/MockTokenRegistry.json | 4 ++-- artifacts/json/MockTokenTransferProxy.json | 4 ++-- artifacts/json/MultiSigWallet.json | 2 +- artifacts/json/Ownable.json | 2 +- artifacts/json/Pausable.json | 2 +- artifacts/json/PermissionEvents.json | 2 +- artifacts/json/PermissionsLib.json | 4 ++-- artifacts/json/RepaymentRouter.json | 4 ++-- artifacts/json/SafeMath.json | 2 +- artifacts/json/SaleClockAuction.json | 2 +- .../json/SimpleInterestTermsContract.json | 4 ++-- artifacts/json/SiringClockAuction.json | 2 +- artifacts/json/StandardToken.json | 2 +- artifacts/json/TermsContract.json | 2 +- artifacts/json/TokenRegistry.json | 4 ++-- artifacts/json/TokenTransferProxy.json | 4 ++-- artifacts/ts/AddressUtils.ts | 2 +- artifacts/ts/BasicToken.ts | 2 +- artifacts/ts/ClockAuction.ts | 2 +- artifacts/ts/ClockAuctionBase.ts | 2 +- ...llateralizedSimpleInterestTermsContract.ts | 4 ++-- artifacts/ts/Collateralizer.ts | 4 ++-- artifacts/ts/ContractRegistry.ts | 4 ++-- artifacts/ts/CreditorProxy.ts | 4 ++-- artifacts/ts/DebtKernel.ts | 8 +++---- artifacts/ts/DebtRegistry.ts | 8 +++---- artifacts/ts/DebtToken.ts | 4 ++-- artifacts/ts/DeprecatedERC721.ts | 2 +- artifacts/ts/DharmaMultiSigWallet.ts | 4 ++-- artifacts/ts/DummyContract.ts | 4 ++-- artifacts/ts/DummyToken.ts | 2 +- artifacts/ts/ERC165.ts | 2 +- artifacts/ts/ERC20.ts | 2 +- artifacts/ts/ERC20Basic.ts | 2 +- artifacts/ts/ERC721.ts | 2 +- artifacts/ts/ERC721Basic.ts | 2 +- artifacts/ts/ERC721BasicToken.ts | 2 +- ...llateralizedSimpleInterestTermsContract.ts | 4 ++-- artifacts/ts/ERC721Collateralizer.ts | 4 ++-- artifacts/ts/ERC721Enumerable.ts | 2 +- artifacts/ts/ERC721Metadata.ts | 2 +- artifacts/ts/ERC721Receiver.ts | 2 +- artifacts/ts/ERC721Token.ts | 7 ++++++- artifacts/ts/ERC721TokenRegistry.ts | 4 ++-- artifacts/ts/GeneScienceInterface.ts | 2 +- artifacts/ts/IncompatibleTermsContract.ts | 4 ++-- artifacts/ts/KittiesERC721.ts | 2 +- artifacts/ts/KittiesERC721Metadata.ts | 2 +- artifacts/ts/KittiesOwnable.ts | 2 +- artifacts/ts/KittiesPausable.ts | 2 +- artifacts/ts/KittyAccessControl.ts | 2 +- artifacts/ts/KittyAuction.ts | 2 +- artifacts/ts/KittyBase.ts | 2 +- artifacts/ts/KittyBreeding.ts | 2 +- artifacts/ts/KittyCore.ts | 4 ++-- artifacts/ts/KittyMinting.ts | 2 +- artifacts/ts/KittyOwnership.ts | 2 +- artifacts/ts/Migrations.ts | 4 ++-- artifacts/ts/MintableERC721Token.ts | 4 ++-- artifacts/ts/MintableToken.ts | 2 +- .../ts/MockCollateralizedTermsContract.ts | 4 ++-- artifacts/ts/MockContract.ts | 2 +- artifacts/ts/MockDebtKernel.ts | 2 +- artifacts/ts/MockDebtRegistry.ts | 4 ++-- artifacts/ts/MockDebtToken.ts | 4 ++-- artifacts/ts/MockERC20Token.ts | 4 ++-- artifacts/ts/MockERC721Receiver.ts | 4 ++-- artifacts/ts/MockERC721Token.ts | 4 ++-- artifacts/ts/MockTermsContract.ts | 4 ++-- artifacts/ts/MockTokenRegistry.ts | 4 ++-- artifacts/ts/MockTokenTransferProxy.ts | 4 ++-- artifacts/ts/MultiSigWallet.ts | 2 +- artifacts/ts/Ownable.ts | 2 +- artifacts/ts/Pausable.ts | 2 +- artifacts/ts/PermissionEvents.ts | 2 +- artifacts/ts/PermissionsLib.ts | 4 ++-- artifacts/ts/RepaymentRouter.ts | 4 ++-- artifacts/ts/SafeMath.ts | 2 +- artifacts/ts/SaleClockAuction.ts | 2 +- artifacts/ts/SimpleInterestTermsContract.ts | 4 ++-- artifacts/ts/SiringClockAuction.ts | 2 +- artifacts/ts/StandardToken.ts | 2 +- artifacts/ts/TermsContract.ts | 2 +- artifacts/ts/TokenRegistry.ts | 4 ++-- artifacts/ts/TokenTransferProxy.ts | 4 ++-- migrations/7_erc721_collateral.js | 21 +++++++++++++++++-- migrations/migration_constants.js | 5 ++++- migrations/utils.js | 1 + .../erc721_kovan_contracts.json | 7 +++++++ 142 files changed, 247 insertions(+), 209 deletions(-) create mode 100644 token_registry_data/erc721_kovan_contracts.json diff --git a/artifacts/json/AddressUtils.json b/artifacts/json/AddressUtils.json index af0979c5..91c6ab0d 100644 --- a/artifacts/json/AddressUtils.json +++ b/artifacts/json/AddressUtils.json @@ -287,5 +287,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.799Z" + "updatedAt": "2018-10-02T22:02:48.037Z" } \ No newline at end of file diff --git a/artifacts/json/BasicToken.json b/artifacts/json/BasicToken.json index 339722a2..7fdf5ee8 100644 --- a/artifacts/json/BasicToken.json +++ b/artifacts/json/BasicToken.json @@ -1435,5 +1435,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.823Z" + "updatedAt": "2018-10-02T22:02:48.048Z" } \ No newline at end of file diff --git a/artifacts/json/ClockAuction.json b/artifacts/json/ClockAuction.json index ffc71dee..69f78b63 100644 --- a/artifacts/json/ClockAuction.json +++ b/artifacts/json/ClockAuction.json @@ -51963,5 +51963,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.829Z" + "updatedAt": "2018-10-02T22:02:47.614Z" } \ No newline at end of file diff --git a/artifacts/json/ClockAuctionBase.json b/artifacts/json/ClockAuctionBase.json index 2f772786..51662399 100644 --- a/artifacts/json/ClockAuctionBase.json +++ b/artifacts/json/ClockAuctionBase.json @@ -51731,5 +51731,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.437Z" + "updatedAt": "2018-10-02T22:02:47.636Z" } \ No newline at end of file diff --git a/artifacts/json/CollateralizedSimpleInterestTermsContract.json b/artifacts/json/CollateralizedSimpleInterestTermsContract.json index 3846667c..c59b1094 100644 --- a/artifacts/json/CollateralizedSimpleInterestTermsContract.json +++ b/artifacts/json/CollateralizedSimpleInterestTermsContract.json @@ -1334,7 +1334,7 @@ "42": { "events": {}, "links": {}, - "address": "0x13763cf3eb3b6813fa800d4935725a0504c8eb8f" + "address": "0x670315b61825f2691084fb9387996675cf2c0225" }, "70": { "events": {}, @@ -1343,5 +1343,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.830Z" + "updatedAt": "2018-10-02T22:14:48.932Z" } \ No newline at end of file diff --git a/artifacts/json/Collateralizer.json b/artifacts/json/Collateralizer.json index e6a07fc4..07772632 100644 --- a/artifacts/json/Collateralizer.json +++ b/artifacts/json/Collateralizer.json @@ -9801,7 +9801,7 @@ } }, "links": {}, - "address": "0x4b86bbe375577262cb0b3b7893e3de0d11751dd6" + "address": "0xf5ff656bfeada48090daf7341a2d4e160d699d27" }, "70": { "events": { @@ -9950,5 +9950,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.192Z" + "updatedAt": "2018-10-02T22:15:01.357Z" } \ No newline at end of file diff --git a/artifacts/json/ContractRegistry.json b/artifacts/json/ContractRegistry.json index ed91ec64..0f6e1e01 100644 --- a/artifacts/json/ContractRegistry.json +++ b/artifacts/json/ContractRegistry.json @@ -4730,7 +4730,7 @@ } }, "links": {}, - "address": "0x506acb19a451cc6e2a5c76e65f6b65840406e5f9" + "address": "0x98090fb23948d09772840b7440e7cdd4c28c2c8d" }, "70": { "events": { @@ -4779,5 +4779,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:53:01.148Z" + "updatedAt": "2018-10-02T22:16:36.727Z" } \ No newline at end of file diff --git a/artifacts/json/CreditorProxy.json b/artifacts/json/CreditorProxy.json index b945add6..e92ddba6 100644 --- a/artifacts/json/CreditorProxy.json +++ b/artifacts/json/CreditorProxy.json @@ -8923,7 +8923,7 @@ } }, "links": {}, - "address": "0xfb9bf42c0ee81813155709ea1f9fe8dda8eeb57f" + "address": "0xd1c0be587dc75cb5d9c9c3856068717351c020d5" }, "70": { "events": { @@ -9023,5 +9023,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:53:01.160Z" + "updatedAt": "2018-10-02T22:16:36.732Z" } \ No newline at end of file diff --git a/artifacts/json/DebtKernel.json b/artifacts/json/DebtKernel.json index 8653d2de..440f36aa 100644 --- a/artifacts/json/DebtKernel.json +++ b/artifacts/json/DebtKernel.json @@ -17563,7 +17563,7 @@ "inputs": [ { "indexed": true, - "name": "_issuanceHash", + "name": "_agreementId", "type": "bytes32" }, { @@ -17605,7 +17605,7 @@ "inputs": [ { "indexed": true, - "name": "_issuanceHash", + "name": "_agreementId", "type": "bytes32" }, { @@ -17682,7 +17682,7 @@ } }, "links": {}, - "address": "0x755e131019e5ab3e213dc269a4020e3e82e06e20" + "address": "0xc01c57ffedca4d0644abb966f055f040cd63fd5b" }, "70": { "events": { @@ -17814,5 +17814,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.298Z" + "updatedAt": "2018-10-02T22:15:01.344Z" } \ No newline at end of file diff --git a/artifacts/json/DebtRegistry.json b/artifacts/json/DebtRegistry.json index 5c78e0cb..42f09f2a 100644 --- a/artifacts/json/DebtRegistry.json +++ b/artifacts/json/DebtRegistry.json @@ -7817,7 +7817,7 @@ "inputs": [ { "indexed": true, - "name": "issuanceHash", + "name": "agreementId", "type": "bytes32" }, { @@ -7854,7 +7854,7 @@ "inputs": [ { "indexed": true, - "name": "issuanceHash", + "name": "agreementId", "type": "bytes32" }, { @@ -7984,7 +7984,7 @@ } }, "links": {}, - "address": "0x9662d6cae0e6914a388cb96c1c161cc4d12c3d7a" + "address": "0x2bfd08581121530eba6b86eda5b2932bea8117d9" }, "70": { "events": { @@ -8164,5 +8164,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.130Z" + "updatedAt": "2018-10-02T22:15:01.319Z" } \ No newline at end of file diff --git a/artifacts/json/DebtToken.json b/artifacts/json/DebtToken.json index 6a9a54a5..8c30ac97 100644 --- a/artifacts/json/DebtToken.json +++ b/artifacts/json/DebtToken.json @@ -6202,7 +6202,7 @@ } }, "links": {}, - "address": "0x12c8615fd55bf6e1f5a298cebdc72e50f838df74" + "address": "0x3fd02c9e51dbf27b3f66e71ce1e5ce89ca1492d3" }, "70": { "events": { @@ -6341,5 +6341,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.110Z" + "updatedAt": "2018-10-02T22:16:13.726Z" } \ No newline at end of file diff --git a/artifacts/json/DeprecatedERC721.json b/artifacts/json/DeprecatedERC721.json index 36182b8e..e6451bc9 100644 --- a/artifacts/json/DeprecatedERC721.json +++ b/artifacts/json/DeprecatedERC721.json @@ -789,5 +789,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.805Z" + "updatedAt": "2018-10-02T22:02:48.049Z" } \ No newline at end of file diff --git a/artifacts/json/DharmaMultiSigWallet.json b/artifacts/json/DharmaMultiSigWallet.json index 98520637..6a71b1e1 100644 --- a/artifacts/json/DharmaMultiSigWallet.json +++ b/artifacts/json/DharmaMultiSigWallet.json @@ -5191,7 +5191,7 @@ "42": { "events": {}, "links": {}, - "address": "0x5e6d80063af17bf22b6828a7a61693ec37881563" + "address": "0xc6846f1c094c354055d5cf4c093127f398753546" }, "70": { "events": {}, @@ -5200,5 +5200,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:53:01.143Z" + "updatedAt": "2018-10-02T22:16:36.723Z" } \ No newline at end of file diff --git a/artifacts/json/DummyContract.json b/artifacts/json/DummyContract.json index 48c04cef..093071d1 100644 --- a/artifacts/json/DummyContract.json +++ b/artifacts/json/DummyContract.json @@ -1769,7 +1769,7 @@ "42": { "events": {}, "links": {}, - "address": "0x698966663bd661f008a4a3f2f8118e1d86a442e8" + "address": "0x6b5b54ab51ab15d4fd5e8991791c8dc1d90df5e2" }, "70": { "events": {}, @@ -1778,5 +1778,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.833Z" + "updatedAt": "2018-10-02T22:13:01.009Z" } \ No newline at end of file diff --git a/artifacts/json/DummyToken.json b/artifacts/json/DummyToken.json index d7db5a60..001baa8b 100644 --- a/artifacts/json/DummyToken.json +++ b/artifacts/json/DummyToken.json @@ -2152,5 +2152,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.853Z" + "updatedAt": "2018-10-02T22:11:37.139Z" } \ No newline at end of file diff --git a/artifacts/json/ERC165.json b/artifacts/json/ERC165.json index 71600524..66340bd4 100644 --- a/artifacts/json/ERC165.json +++ b/artifacts/json/ERC165.json @@ -171,5 +171,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.792Z" + "updatedAt": "2018-10-02T22:02:47.577Z" } \ No newline at end of file diff --git a/artifacts/json/ERC20.json b/artifacts/json/ERC20.json index bf79f4ee..c205c98b 100644 --- a/artifacts/json/ERC20.json +++ b/artifacts/json/ERC20.json @@ -741,5 +741,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.805Z" + "updatedAt": "2018-10-02T22:02:48.047Z" } \ No newline at end of file diff --git a/artifacts/json/ERC20Basic.json b/artifacts/json/ERC20Basic.json index 093ca9bf..db15da2a 100644 --- a/artifacts/json/ERC20Basic.json +++ b/artifacts/json/ERC20Basic.json @@ -510,5 +510,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.800Z" + "updatedAt": "2018-10-02T22:02:48.048Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721.json b/artifacts/json/ERC721.json index 01fbec75..5d9ba182 100644 --- a/artifacts/json/ERC721.json +++ b/artifacts/json/ERC721.json @@ -1110,5 +1110,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.810Z" + "updatedAt": "2018-10-02T22:02:48.049Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721Basic.json b/artifacts/json/ERC721Basic.json index ced21beb..fddc07ae 100644 --- a/artifacts/json/ERC721Basic.json +++ b/artifacts/json/ERC721Basic.json @@ -1663,5 +1663,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.822Z" + "updatedAt": "2018-10-02T22:02:48.052Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721BasicToken.json b/artifacts/json/ERC721BasicToken.json index 52ddf03e..d1e907e8 100644 --- a/artifacts/json/ERC721BasicToken.json +++ b/artifacts/json/ERC721BasicToken.json @@ -8709,5 +8709,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.139Z" + "updatedAt": "2018-10-02T22:02:48.056Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721CollateralizedSimpleInterestTermsContract.json b/artifacts/json/ERC721CollateralizedSimpleInterestTermsContract.json index bc75e0e7..9c1535a3 100644 --- a/artifacts/json/ERC721CollateralizedSimpleInterestTermsContract.json +++ b/artifacts/json/ERC721CollateralizedSimpleInterestTermsContract.json @@ -1445,7 +1445,7 @@ "42": { "events": {}, "links": {}, - "address": "0xeef7d84ab274d3d288e26538893fb3768bff7d12" + "address": "0x13a93b0e027f419556271a3cb1060ef7156103e6" }, "70": { "events": {}, @@ -1454,5 +1454,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.836Z" + "updatedAt": "2018-10-02T22:16:13.721Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721Collateralizer.json b/artifacts/json/ERC721Collateralizer.json index 2e7e70b7..71de413c 100644 --- a/artifacts/json/ERC721Collateralizer.json +++ b/artifacts/json/ERC721Collateralizer.json @@ -9498,7 +9498,7 @@ } }, "links": {}, - "address": "0x6114e5c837b6bc774399190a5368019ed332c54b" + "address": "0xc241691f9c1663b4452c3d867de6cb72ce4ccb4b" }, "70": { "events": { @@ -9647,5 +9647,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.181Z" + "updatedAt": "2018-10-02T22:16:13.736Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721Enumerable.json b/artifacts/json/ERC721Enumerable.json index 5fd1a200..995c7edf 100644 --- a/artifacts/json/ERC721Enumerable.json +++ b/artifacts/json/ERC721Enumerable.json @@ -1063,5 +1063,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.811Z" + "updatedAt": "2018-10-02T22:02:48.050Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721Metadata.json b/artifacts/json/ERC721Metadata.json index b87506a3..4a17c74f 100644 --- a/artifacts/json/ERC721Metadata.json +++ b/artifacts/json/ERC721Metadata.json @@ -1054,5 +1054,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.812Z" + "updatedAt": "2018-10-02T22:02:48.050Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721Receiver.json b/artifacts/json/ERC721Receiver.json index 9343a303..d89dafe7 100644 --- a/artifacts/json/ERC721Receiver.json +++ b/artifacts/json/ERC721Receiver.json @@ -274,5 +274,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.801Z" + "updatedAt": "2018-10-02T22:02:48.053Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721Token.json b/artifacts/json/ERC721Token.json index d6e6d24b..b10d6113 100644 --- a/artifacts/json/ERC721Token.json +++ b/artifacts/json/ERC721Token.json @@ -5396,6 +5396,11 @@ "version": "0.4.18+commit.9cf6e910.Emscripten.clang" }, "networks": { + "42": { + "events": {}, + "links": {}, + "address": "0x29fbda47ddc8b9853a0cf9bf0abf4611ff5f3abe" + }, "70": { "events": {}, "links": {}, @@ -5403,5 +5408,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.998Z" + "updatedAt": "2018-10-02T22:13:01.017Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721TokenRegistry.json b/artifacts/json/ERC721TokenRegistry.json index b1fd7350..5ce2f3ac 100644 --- a/artifacts/json/ERC721TokenRegistry.json +++ b/artifacts/json/ERC721TokenRegistry.json @@ -4183,7 +4183,7 @@ } }, "links": {}, - "address": "0x309d7ed18765fb72dc68d31621d9601cbb96c57e" + "address": "0xc7e95d984d2abdb012e25975c622477f31a0473f" }, "70": { "events": { @@ -4210,5 +4210,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.909Z" + "updatedAt": "2018-10-02T22:16:13.717Z" } \ No newline at end of file diff --git a/artifacts/json/GeneScienceInterface.json b/artifacts/json/GeneScienceInterface.json index 3e224fad..34953ef9 100644 --- a/artifacts/json/GeneScienceInterface.json +++ b/artifacts/json/GeneScienceInterface.json @@ -51683,5 +51683,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.516Z" + "updatedAt": "2018-10-02T22:02:47.655Z" } \ No newline at end of file diff --git a/artifacts/json/IncompatibleTermsContract.json b/artifacts/json/IncompatibleTermsContract.json index 91a070ed..0a76883d 100644 --- a/artifacts/json/IncompatibleTermsContract.json +++ b/artifacts/json/IncompatibleTermsContract.json @@ -987,7 +987,7 @@ "42": { "events": {}, "links": {}, - "address": "0xb2e179e109640107d9dd84fef76768219cdb9089" + "address": "0x265f2abbf5a568df8ed31644204b011eac0c1886" }, "70": { "events": {}, @@ -996,5 +996,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.814Z" + "updatedAt": "2018-10-02T22:13:36.849Z" } \ No newline at end of file diff --git a/artifacts/json/KittiesERC721.json b/artifacts/json/KittiesERC721.json index 3e31798a..307ff507 100644 --- a/artifacts/json/KittiesERC721.json +++ b/artifacts/json/KittiesERC721.json @@ -51815,5 +51815,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.476Z" + "updatedAt": "2018-10-02T22:02:47.673Z" } \ No newline at end of file diff --git a/artifacts/json/KittiesERC721Metadata.json b/artifacts/json/KittiesERC721Metadata.json index c250b415..e160dd67 100644 --- a/artifacts/json/KittiesERC721Metadata.json +++ b/artifacts/json/KittiesERC721Metadata.json @@ -51669,5 +51669,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.737Z" + "updatedAt": "2018-10-02T22:02:47.695Z" } \ No newline at end of file diff --git a/artifacts/json/KittiesOwnable.json b/artifacts/json/KittiesOwnable.json index 33df60e9..b3d33242 100644 --- a/artifacts/json/KittiesOwnable.json +++ b/artifacts/json/KittiesOwnable.json @@ -51676,5 +51676,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.622Z" + "updatedAt": "2018-10-02T22:02:47.713Z" } \ No newline at end of file diff --git a/artifacts/json/KittiesPausable.json b/artifacts/json/KittiesPausable.json index df965ce0..128e09e2 100644 --- a/artifacts/json/KittiesPausable.json +++ b/artifacts/json/KittiesPausable.json @@ -51724,5 +51724,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.548Z" + "updatedAt": "2018-10-02T22:02:47.731Z" } \ No newline at end of file diff --git a/artifacts/json/KittyAccessControl.json b/artifacts/json/KittyAccessControl.json index d25e2f77..b0b4a686 100644 --- a/artifacts/json/KittyAccessControl.json +++ b/artifacts/json/KittyAccessControl.json @@ -51770,5 +51770,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.708Z" + "updatedAt": "2018-10-02T22:02:47.755Z" } \ No newline at end of file diff --git a/artifacts/json/KittyAuction.json b/artifacts/json/KittyAuction.json index 0b5d5c28..4d0065c4 100644 --- a/artifacts/json/KittyAuction.json +++ b/artifacts/json/KittyAuction.json @@ -52525,5 +52525,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:33.056Z" + "updatedAt": "2018-10-02T22:02:47.781Z" } \ No newline at end of file diff --git a/artifacts/json/KittyBase.json b/artifacts/json/KittyBase.json index 711947b2..ddb61a05 100644 --- a/artifacts/json/KittyBase.json +++ b/artifacts/json/KittyBase.json @@ -51956,5 +51956,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.793Z" + "updatedAt": "2018-10-02T22:02:47.854Z" } \ No newline at end of file diff --git a/artifacts/json/KittyBreeding.json b/artifacts/json/KittyBreeding.json index fc53f48a..18276b7f 100644 --- a/artifacts/json/KittyBreeding.json +++ b/artifacts/json/KittyBreeding.json @@ -52418,5 +52418,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:33.020Z" + "updatedAt": "2018-10-02T22:02:47.809Z" } \ No newline at end of file diff --git a/artifacts/json/KittyCore.json b/artifacts/json/KittyCore.json index d7ca97ba..de1a2f48 100644 --- a/artifacts/json/KittyCore.json +++ b/artifacts/json/KittyCore.json @@ -52746,7 +52746,7 @@ "42": { "events": {}, "links": {}, - "address": "0xea57c693d9a923cf4398eba61ccfea43574471a3" + "address": "0xb5da2e05709786b89c6124c7a202dd13de2b8cd8" }, "70": { "events": {}, @@ -52755,5 +52755,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:33.212Z" + "updatedAt": "2018-10-02T22:16:13.792Z" } \ No newline at end of file diff --git a/artifacts/json/KittyMinting.json b/artifacts/json/KittyMinting.json index 127fc34b..4db9f8c8 100644 --- a/artifacts/json/KittyMinting.json +++ b/artifacts/json/KittyMinting.json @@ -52641,5 +52641,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:33.146Z" + "updatedAt": "2018-10-02T22:02:47.925Z" } \ No newline at end of file diff --git a/artifacts/json/KittyOwnership.json b/artifacts/json/KittyOwnership.json index 37da682b..0159696a 100644 --- a/artifacts/json/KittyOwnership.json +++ b/artifacts/json/KittyOwnership.json @@ -52205,5 +52205,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:33.113Z" + "updatedAt": "2018-10-02T22:02:47.947Z" } \ No newline at end of file diff --git a/artifacts/json/Migrations.json b/artifacts/json/Migrations.json index 86998ffb..01c10d92 100644 --- a/artifacts/json/Migrations.json +++ b/artifacts/json/Migrations.json @@ -818,7 +818,7 @@ "42": { "events": {}, "links": {}, - "address": "0x7ad092e0b8e9363189d86ddb7d8a0d47a7f66cd8" + "address": "0xf44e598f6ad5115151c1c331f5b2f8b02b06bb47" }, "70": { "events": {}, @@ -827,5 +827,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:53:01.138Z" + "updatedAt": "2018-10-02T22:16:36.720Z" } \ No newline at end of file diff --git a/artifacts/json/MintableERC721Token.json b/artifacts/json/MintableERC721Token.json index aa6c5b37..23a5fc33 100644 --- a/artifacts/json/MintableERC721Token.json +++ b/artifacts/json/MintableERC721Token.json @@ -1236,7 +1236,7 @@ "42": { "events": {}, "links": {}, - "address": "0x91ab1498428910eab1021a95c5a478af9814fb4b" + "address": "0x1db2f4774e0b0c84047a97e6c129abe7f9ed0d18" }, "70": { "events": {}, @@ -1245,5 +1245,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.832Z" + "updatedAt": "2018-10-02T22:16:13.730Z" } \ No newline at end of file diff --git a/artifacts/json/MintableToken.json b/artifacts/json/MintableToken.json index db91cba4..e6e1a16a 100644 --- a/artifacts/json/MintableToken.json +++ b/artifacts/json/MintableToken.json @@ -1664,5 +1664,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.839Z" + "updatedAt": "2018-10-02T22:02:48.049Z" } \ No newline at end of file diff --git a/artifacts/json/MockCollateralizedTermsContract.json b/artifacts/json/MockCollateralizedTermsContract.json index 50dffa67..9692f725 100644 --- a/artifacts/json/MockCollateralizedTermsContract.json +++ b/artifacts/json/MockCollateralizedTermsContract.json @@ -5722,7 +5722,7 @@ "42": { "events": {}, "links": {}, - "address": "0x7498f52b02bc0e695ebe8d8a82b43c60ece45cf8" + "address": "0xa125dc548b8b163b53d6b88f890766370b2350bd" }, "70": { "events": {}, @@ -5731,5 +5731,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.009Z" + "updatedAt": "2018-10-02T22:13:01.039Z" } \ No newline at end of file diff --git a/artifacts/json/MockContract.json b/artifacts/json/MockContract.json index 7f4f2d1e..5e7589f0 100644 --- a/artifacts/json/MockContract.json +++ b/artifacts/json/MockContract.json @@ -2543,5 +2543,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.858Z" + "updatedAt": "2018-10-02T22:02:47.986Z" } \ No newline at end of file diff --git a/artifacts/json/MockDebtKernel.json b/artifacts/json/MockDebtKernel.json index 905db4fe..079ae179 100644 --- a/artifacts/json/MockDebtKernel.json +++ b/artifacts/json/MockDebtKernel.json @@ -2230,5 +2230,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.855Z" + "updatedAt": "2018-10-02T22:02:48.018Z" } \ No newline at end of file diff --git a/artifacts/json/MockDebtRegistry.json b/artifacts/json/MockDebtRegistry.json index ec026c67..73e64ac4 100644 --- a/artifacts/json/MockDebtRegistry.json +++ b/artifacts/json/MockDebtRegistry.json @@ -5996,7 +5996,7 @@ "42": { "events": {}, "links": {}, - "address": "0x08759b086c70d80d7cad9d6a66a7528d4c0211c9" + "address": "0x14fd9ddb3cfc7a3fa9c44f910825c0d287be2e34" }, "70": { "events": {}, @@ -6005,5 +6005,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.020Z" + "updatedAt": "2018-10-02T22:13:01.024Z" } \ No newline at end of file diff --git a/artifacts/json/MockDebtToken.json b/artifacts/json/MockDebtToken.json index 6badf0cf..962feaac 100644 --- a/artifacts/json/MockDebtToken.json +++ b/artifacts/json/MockDebtToken.json @@ -4598,7 +4598,7 @@ "42": { "events": {}, "links": {}, - "address": "0xc5cb874d3aed510599e12bfa81800313d4a32dad" + "address": "0x124529e78bd31b7c187b7bc69069d5cbbebceb70" }, "70": { "events": {}, @@ -4607,5 +4607,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.925Z" + "updatedAt": "2018-10-02T22:13:01.030Z" } \ No newline at end of file diff --git a/artifacts/json/MockERC20Token.json b/artifacts/json/MockERC20Token.json index a7fa3531..9b900652 100644 --- a/artifacts/json/MockERC20Token.json +++ b/artifacts/json/MockERC20Token.json @@ -4016,7 +4016,7 @@ "42": { "events": {}, "links": {}, - "address": "0xf231f1d67e09b3166449a4fe043fa3d45a31b964" + "address": "0x7ac01104b3ddaf1d5ad092817b31a8442c140158" }, "70": { "events": {}, @@ -4025,5 +4025,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.901Z" + "updatedAt": "2018-10-02T22:13:01.027Z" } \ No newline at end of file diff --git a/artifacts/json/MockERC721Receiver.json b/artifacts/json/MockERC721Receiver.json index c8829235..37967e09 100644 --- a/artifacts/json/MockERC721Receiver.json +++ b/artifacts/json/MockERC721Receiver.json @@ -1844,7 +1844,7 @@ "42": { "events": {}, "links": {}, - "address": "0xb20ba587b34c71d886a4fd5cb1c6f09da611b578" + "address": "0x00714756c11727a071c47479c0d466f937331b8e" }, "70": { "events": {}, @@ -1853,5 +1853,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.842Z" + "updatedAt": "2018-10-02T22:13:01.020Z" } \ No newline at end of file diff --git a/artifacts/json/MockERC721Token.json b/artifacts/json/MockERC721Token.json index 4cccb398..e5ab2081 100644 --- a/artifacts/json/MockERC721Token.json +++ b/artifacts/json/MockERC721Token.json @@ -3994,7 +3994,7 @@ "42": { "events": {}, "links": {}, - "address": "0xb056e80737b8c5f8470e8b10e1630f4fcf22ecda" + "address": "0xa57d132d946d0ba4f7febd543763f18b3627dd10" }, "70": { "events": {}, @@ -4003,5 +4003,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.887Z" + "updatedAt": "2018-10-02T22:13:01.014Z" } \ No newline at end of file diff --git a/artifacts/json/MockTermsContract.json b/artifacts/json/MockTermsContract.json index a11a26c6..61745b6d 100644 --- a/artifacts/json/MockTermsContract.json +++ b/artifacts/json/MockTermsContract.json @@ -3394,7 +3394,7 @@ "42": { "events": {}, "links": {}, - "address": "0xfa94fb78b36fa2e194811fbffff450216f393c6d" + "address": "0xb0f7c5054eed756d6522d60fd02cd29be8b19a96" }, "70": { "events": {}, @@ -3403,5 +3403,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.880Z" + "updatedAt": "2018-10-02T22:13:01.034Z" } \ No newline at end of file diff --git a/artifacts/json/MockTokenRegistry.json b/artifacts/json/MockTokenRegistry.json index 9a0b625e..d61eb531 100644 --- a/artifacts/json/MockTokenRegistry.json +++ b/artifacts/json/MockTokenRegistry.json @@ -1587,7 +1587,7 @@ "42": { "events": {}, "links": {}, - "address": "0x1d3ca86a5d20201bce4f37369a523d5b7ce310c9" + "address": "0x7723ed4c29ba84d381dd389890ccb0c17cda7204" }, "70": { "events": {}, @@ -1596,5 +1596,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.838Z" + "updatedAt": "2018-10-02T22:13:01.033Z" } \ No newline at end of file diff --git a/artifacts/json/MockTokenTransferProxy.json b/artifacts/json/MockTokenTransferProxy.json index bbe91733..df568b52 100644 --- a/artifacts/json/MockTokenTransferProxy.json +++ b/artifacts/json/MockTokenTransferProxy.json @@ -1235,7 +1235,7 @@ "42": { "events": {}, "links": {}, - "address": "0x4a45acd21a64d0de37750a8513f73e23cdea47c1" + "address": "0xea14749d27f5eed380dbeab1afe18d4bc174b77c" }, "70": { "events": {}, @@ -1244,5 +1244,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.826Z" + "updatedAt": "2018-10-02T22:13:01.032Z" } \ No newline at end of file diff --git a/artifacts/json/MultiSigWallet.json b/artifacts/json/MultiSigWallet.json index d274b777..e8ada66d 100644 --- a/artifacts/json/MultiSigWallet.json +++ b/artifacts/json/MultiSigWallet.json @@ -13771,5 +13771,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.242Z" + "updatedAt": "2018-10-02T22:02:48.045Z" } \ No newline at end of file diff --git a/artifacts/json/Ownable.json b/artifacts/json/Ownable.json index 8dc22852..563e445e 100644 --- a/artifacts/json/Ownable.json +++ b/artifacts/json/Ownable.json @@ -837,5 +837,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.815Z" + "updatedAt": "2018-10-02T22:02:48.038Z" } \ No newline at end of file diff --git a/artifacts/json/Pausable.json b/artifacts/json/Pausable.json index 03ec40ef..1a200bee 100644 --- a/artifacts/json/Pausable.json +++ b/artifacts/json/Pausable.json @@ -879,5 +879,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.815Z" + "updatedAt": "2018-10-02T22:02:48.037Z" } \ No newline at end of file diff --git a/artifacts/json/PermissionEvents.json b/artifacts/json/PermissionEvents.json index 5881dc0c..ff7bd116 100644 --- a/artifacts/json/PermissionEvents.json +++ b/artifacts/json/PermissionEvents.json @@ -2969,5 +2969,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.862Z" + "updatedAt": "2018-10-02T22:02:47.597Z" } \ No newline at end of file diff --git a/artifacts/json/PermissionsLib.json b/artifacts/json/PermissionsLib.json index f98ab3a2..e70a244b 100644 --- a/artifacts/json/PermissionsLib.json +++ b/artifacts/json/PermissionsLib.json @@ -2976,7 +2976,7 @@ "42": { "events": {}, "links": {}, - "address": "0x0e7e2aace2ed2565777b420fd181b556971a8cb1" + "address": "0xaa5ce701623be22ff89ae25fc1f6cc923127ca4c" }, "70": { "events": {}, @@ -2985,5 +2985,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.864Z" + "updatedAt": "2018-10-02T22:16:13.720Z" } \ No newline at end of file diff --git a/artifacts/json/RepaymentRouter.json b/artifacts/json/RepaymentRouter.json index e87d839e..1ef21ad9 100644 --- a/artifacts/json/RepaymentRouter.json +++ b/artifacts/json/RepaymentRouter.json @@ -3301,7 +3301,7 @@ } }, "links": {}, - "address": "0x0688659d5e36896da7e5d44ebe3e10aa9d2c9968" + "address": "0xd2c8cf211f4753a10b145c90950add769a8a6bc2" }, "70": { "events": { @@ -3389,5 +3389,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.875Z" + "updatedAt": "2018-10-02T22:15:01.333Z" } \ No newline at end of file diff --git a/artifacts/json/SafeMath.json b/artifacts/json/SafeMath.json index b173dc37..7bb4828e 100644 --- a/artifacts/json/SafeMath.json +++ b/artifacts/json/SafeMath.json @@ -1343,5 +1343,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.820Z" + "updatedAt": "2018-10-02T22:02:48.038Z" } \ No newline at end of file diff --git a/artifacts/json/SaleClockAuction.json b/artifacts/json/SaleClockAuction.json index 4a14c5a3..22dd3cb1 100644 --- a/artifacts/json/SaleClockAuction.json +++ b/artifacts/json/SaleClockAuction.json @@ -52024,5 +52024,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.939Z" + "updatedAt": "2018-10-02T22:02:48.006Z" } \ No newline at end of file diff --git a/artifacts/json/SimpleInterestTermsContract.json b/artifacts/json/SimpleInterestTermsContract.json index eea71ba4..6ffdd07f 100644 --- a/artifacts/json/SimpleInterestTermsContract.json +++ b/artifacts/json/SimpleInterestTermsContract.json @@ -10512,7 +10512,7 @@ "42": { "events": {}, "links": {}, - "address": "0x4cad7ad79464628c07227928c851d3bc5ef3da0c" + "address": "0xe929d2b2fdd53531b8e11d85a4c249e504dd5868" }, "70": { "events": {}, @@ -10521,5 +10521,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.216Z" + "updatedAt": "2018-10-02T22:13:36.862Z" } \ No newline at end of file diff --git a/artifacts/json/SiringClockAuction.json b/artifacts/json/SiringClockAuction.json index c1b5400a..4b3cefb4 100644 --- a/artifacts/json/SiringClockAuction.json +++ b/artifacts/json/SiringClockAuction.json @@ -51977,5 +51977,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.872Z" + "updatedAt": "2018-10-02T22:02:47.968Z" } \ No newline at end of file diff --git a/artifacts/json/StandardToken.json b/artifacts/json/StandardToken.json index c611ec4c..ece5e038 100644 --- a/artifacts/json/StandardToken.json +++ b/artifacts/json/StandardToken.json @@ -3732,5 +3732,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.890Z" + "updatedAt": "2018-10-02T22:02:48.051Z" } \ No newline at end of file diff --git a/artifacts/json/TermsContract.json b/artifacts/json/TermsContract.json index 437040ca..80b7ea67 100644 --- a/artifacts/json/TermsContract.json +++ b/artifacts/json/TermsContract.json @@ -779,5 +779,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.808Z" + "updatedAt": "2018-10-02T22:02:47.591Z" } \ No newline at end of file diff --git a/artifacts/json/TokenRegistry.json b/artifacts/json/TokenRegistry.json index 588326ad..f7f8ddc9 100644 --- a/artifacts/json/TokenRegistry.json +++ b/artifacts/json/TokenRegistry.json @@ -5119,7 +5119,7 @@ } }, "links": {}, - "address": "0x6949948d93f3dbe50ec2fe54815fa33bfa284d35" + "address": "0xa6d8c45bbd164f0b1aacbd24cb18f8b19de9648a" }, "70": { "events": { @@ -5146,5 +5146,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.973Z" + "updatedAt": "2018-10-02T22:15:01.336Z" } \ No newline at end of file diff --git a/artifacts/json/TokenTransferProxy.json b/artifacts/json/TokenTransferProxy.json index 78ef50f7..6fbf09de 100644 --- a/artifacts/json/TokenTransferProxy.json +++ b/artifacts/json/TokenTransferProxy.json @@ -1612,7 +1612,7 @@ } }, "links": {}, - "address": "0x668beab2e4dfec1d8c0a70fb5e52987cb22c2f1a" + "address": "0xf302f9e270458b4242e7d0cba2f0816ed2193240" }, "70": { "events": { @@ -1685,5 +1685,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.828Z" + "updatedAt": "2018-10-02T22:15:01.329Z" } \ No newline at end of file diff --git a/artifacts/ts/AddressUtils.ts b/artifacts/ts/AddressUtils.ts index 9bb2daa5..4cee2543 100644 --- a/artifacts/ts/AddressUtils.ts +++ b/artifacts/ts/AddressUtils.ts @@ -288,5 +288,5 @@ export const AddressUtils = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.799Z" + "updatedAt": "2018-10-02T22:02:48.037Z" } \ No newline at end of file diff --git a/artifacts/ts/BasicToken.ts b/artifacts/ts/BasicToken.ts index 6b9bc7b4..a8e67588 100644 --- a/artifacts/ts/BasicToken.ts +++ b/artifacts/ts/BasicToken.ts @@ -1436,5 +1436,5 @@ export const BasicToken = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.823Z" + "updatedAt": "2018-10-02T22:02:48.048Z" } \ No newline at end of file diff --git a/artifacts/ts/ClockAuction.ts b/artifacts/ts/ClockAuction.ts index df9f07b1..f21490a4 100644 --- a/artifacts/ts/ClockAuction.ts +++ b/artifacts/ts/ClockAuction.ts @@ -51964,5 +51964,5 @@ export const ClockAuction = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.829Z" + "updatedAt": "2018-10-02T22:02:47.614Z" } \ No newline at end of file diff --git a/artifacts/ts/ClockAuctionBase.ts b/artifacts/ts/ClockAuctionBase.ts index 2df33101..23d7ec7f 100644 --- a/artifacts/ts/ClockAuctionBase.ts +++ b/artifacts/ts/ClockAuctionBase.ts @@ -51732,5 +51732,5 @@ export const ClockAuctionBase = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.437Z" + "updatedAt": "2018-10-02T22:02:47.636Z" } \ No newline at end of file diff --git a/artifacts/ts/CollateralizedSimpleInterestTermsContract.ts b/artifacts/ts/CollateralizedSimpleInterestTermsContract.ts index 674913d8..73f25c11 100644 --- a/artifacts/ts/CollateralizedSimpleInterestTermsContract.ts +++ b/artifacts/ts/CollateralizedSimpleInterestTermsContract.ts @@ -1335,7 +1335,7 @@ export const CollateralizedSimpleInterestTermsContract = "42": { "events": {}, "links": {}, - "address": "0x13763cf3eb3b6813fa800d4935725a0504c8eb8f" + "address": "0x670315b61825f2691084fb9387996675cf2c0225" }, "70": { "events": {}, @@ -1344,5 +1344,5 @@ export const CollateralizedSimpleInterestTermsContract = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.830Z" + "updatedAt": "2018-10-02T22:14:48.932Z" } \ No newline at end of file diff --git a/artifacts/ts/Collateralizer.ts b/artifacts/ts/Collateralizer.ts index 23ddfb37..60e02d23 100644 --- a/artifacts/ts/Collateralizer.ts +++ b/artifacts/ts/Collateralizer.ts @@ -9802,7 +9802,7 @@ export const Collateralizer = } }, "links": {}, - "address": "0x4b86bbe375577262cb0b3b7893e3de0d11751dd6" + "address": "0xf5ff656bfeada48090daf7341a2d4e160d699d27" }, "70": { "events": { @@ -9951,5 +9951,5 @@ export const Collateralizer = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.192Z" + "updatedAt": "2018-10-02T22:15:01.357Z" } \ No newline at end of file diff --git a/artifacts/ts/ContractRegistry.ts b/artifacts/ts/ContractRegistry.ts index ac260781..6c78dcb5 100644 --- a/artifacts/ts/ContractRegistry.ts +++ b/artifacts/ts/ContractRegistry.ts @@ -4731,7 +4731,7 @@ export const ContractRegistry = } }, "links": {}, - "address": "0x506acb19a451cc6e2a5c76e65f6b65840406e5f9" + "address": "0x98090fb23948d09772840b7440e7cdd4c28c2c8d" }, "70": { "events": { @@ -4780,5 +4780,5 @@ export const ContractRegistry = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:53:01.148Z" + "updatedAt": "2018-10-02T22:16:36.727Z" } \ No newline at end of file diff --git a/artifacts/ts/CreditorProxy.ts b/artifacts/ts/CreditorProxy.ts index 51fc0205..2171505f 100644 --- a/artifacts/ts/CreditorProxy.ts +++ b/artifacts/ts/CreditorProxy.ts @@ -8924,7 +8924,7 @@ export const CreditorProxy = } }, "links": {}, - "address": "0xfb9bf42c0ee81813155709ea1f9fe8dda8eeb57f" + "address": "0xd1c0be587dc75cb5d9c9c3856068717351c020d5" }, "70": { "events": { @@ -9024,5 +9024,5 @@ export const CreditorProxy = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:53:01.160Z" + "updatedAt": "2018-10-02T22:16:36.732Z" } \ No newline at end of file diff --git a/artifacts/ts/DebtKernel.ts b/artifacts/ts/DebtKernel.ts index 5e437330..153f9460 100644 --- a/artifacts/ts/DebtKernel.ts +++ b/artifacts/ts/DebtKernel.ts @@ -17564,7 +17564,7 @@ export const DebtKernel = "inputs": [ { "indexed": true, - "name": "_issuanceHash", + "name": "_agreementId", "type": "bytes32" }, { @@ -17606,7 +17606,7 @@ export const DebtKernel = "inputs": [ { "indexed": true, - "name": "_issuanceHash", + "name": "_agreementId", "type": "bytes32" }, { @@ -17683,7 +17683,7 @@ export const DebtKernel = } }, "links": {}, - "address": "0x755e131019e5ab3e213dc269a4020e3e82e06e20" + "address": "0xc01c57ffedca4d0644abb966f055f040cd63fd5b" }, "70": { "events": { @@ -17815,5 +17815,5 @@ export const DebtKernel = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.298Z" + "updatedAt": "2018-10-02T22:15:01.344Z" } \ No newline at end of file diff --git a/artifacts/ts/DebtRegistry.ts b/artifacts/ts/DebtRegistry.ts index 1e6ded9f..07ebcce8 100644 --- a/artifacts/ts/DebtRegistry.ts +++ b/artifacts/ts/DebtRegistry.ts @@ -7818,7 +7818,7 @@ export const DebtRegistry = "inputs": [ { "indexed": true, - "name": "issuanceHash", + "name": "agreementId", "type": "bytes32" }, { @@ -7855,7 +7855,7 @@ export const DebtRegistry = "inputs": [ { "indexed": true, - "name": "issuanceHash", + "name": "agreementId", "type": "bytes32" }, { @@ -7985,7 +7985,7 @@ export const DebtRegistry = } }, "links": {}, - "address": "0x9662d6cae0e6914a388cb96c1c161cc4d12c3d7a" + "address": "0x2bfd08581121530eba6b86eda5b2932bea8117d9" }, "70": { "events": { @@ -8165,5 +8165,5 @@ export const DebtRegistry = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.130Z" + "updatedAt": "2018-10-02T22:15:01.319Z" } \ No newline at end of file diff --git a/artifacts/ts/DebtToken.ts b/artifacts/ts/DebtToken.ts index ecc09667..42ed9dcb 100644 --- a/artifacts/ts/DebtToken.ts +++ b/artifacts/ts/DebtToken.ts @@ -6203,7 +6203,7 @@ export const DebtToken = } }, "links": {}, - "address": "0x12c8615fd55bf6e1f5a298cebdc72e50f838df74" + "address": "0x3fd02c9e51dbf27b3f66e71ce1e5ce89ca1492d3" }, "70": { "events": { @@ -6342,5 +6342,5 @@ export const DebtToken = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.110Z" + "updatedAt": "2018-10-02T22:16:13.726Z" } \ No newline at end of file diff --git a/artifacts/ts/DeprecatedERC721.ts b/artifacts/ts/DeprecatedERC721.ts index 83fb115f..909dac14 100644 --- a/artifacts/ts/DeprecatedERC721.ts +++ b/artifacts/ts/DeprecatedERC721.ts @@ -790,5 +790,5 @@ export const DeprecatedERC721 = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.805Z" + "updatedAt": "2018-10-02T22:02:48.049Z" } \ No newline at end of file diff --git a/artifacts/ts/DharmaMultiSigWallet.ts b/artifacts/ts/DharmaMultiSigWallet.ts index 7607fe51..c9464968 100644 --- a/artifacts/ts/DharmaMultiSigWallet.ts +++ b/artifacts/ts/DharmaMultiSigWallet.ts @@ -5192,7 +5192,7 @@ export const DharmaMultiSigWallet = "42": { "events": {}, "links": {}, - "address": "0x5e6d80063af17bf22b6828a7a61693ec37881563" + "address": "0xc6846f1c094c354055d5cf4c093127f398753546" }, "70": { "events": {}, @@ -5201,5 +5201,5 @@ export const DharmaMultiSigWallet = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:53:01.143Z" + "updatedAt": "2018-10-02T22:16:36.723Z" } \ No newline at end of file diff --git a/artifacts/ts/DummyContract.ts b/artifacts/ts/DummyContract.ts index 9ab03531..18a364c5 100644 --- a/artifacts/ts/DummyContract.ts +++ b/artifacts/ts/DummyContract.ts @@ -1770,7 +1770,7 @@ export const DummyContract = "42": { "events": {}, "links": {}, - "address": "0x698966663bd661f008a4a3f2f8118e1d86a442e8" + "address": "0x6b5b54ab51ab15d4fd5e8991791c8dc1d90df5e2" }, "70": { "events": {}, @@ -1779,5 +1779,5 @@ export const DummyContract = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.833Z" + "updatedAt": "2018-10-02T22:13:01.009Z" } \ No newline at end of file diff --git a/artifacts/ts/DummyToken.ts b/artifacts/ts/DummyToken.ts index 407095b3..82b6aea2 100644 --- a/artifacts/ts/DummyToken.ts +++ b/artifacts/ts/DummyToken.ts @@ -2153,5 +2153,5 @@ export const DummyToken = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.853Z" + "updatedAt": "2018-10-02T22:11:37.139Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC165.ts b/artifacts/ts/ERC165.ts index c4ee3405..28b178f1 100644 --- a/artifacts/ts/ERC165.ts +++ b/artifacts/ts/ERC165.ts @@ -172,5 +172,5 @@ export const ERC165 = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.792Z" + "updatedAt": "2018-10-02T22:02:47.577Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC20.ts b/artifacts/ts/ERC20.ts index e353ec4e..641b4430 100644 --- a/artifacts/ts/ERC20.ts +++ b/artifacts/ts/ERC20.ts @@ -742,5 +742,5 @@ export const ERC20 = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.805Z" + "updatedAt": "2018-10-02T22:02:48.047Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC20Basic.ts b/artifacts/ts/ERC20Basic.ts index 9b11b682..ded963b9 100644 --- a/artifacts/ts/ERC20Basic.ts +++ b/artifacts/ts/ERC20Basic.ts @@ -511,5 +511,5 @@ export const ERC20Basic = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.800Z" + "updatedAt": "2018-10-02T22:02:48.048Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721.ts b/artifacts/ts/ERC721.ts index a952ea35..79245c4e 100644 --- a/artifacts/ts/ERC721.ts +++ b/artifacts/ts/ERC721.ts @@ -1111,5 +1111,5 @@ export const ERC721 = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.810Z" + "updatedAt": "2018-10-02T22:02:48.049Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721Basic.ts b/artifacts/ts/ERC721Basic.ts index 28bc9690..a284a37c 100644 --- a/artifacts/ts/ERC721Basic.ts +++ b/artifacts/ts/ERC721Basic.ts @@ -1664,5 +1664,5 @@ export const ERC721Basic = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.822Z" + "updatedAt": "2018-10-02T22:02:48.052Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721BasicToken.ts b/artifacts/ts/ERC721BasicToken.ts index 012e6bd4..cf8bf861 100644 --- a/artifacts/ts/ERC721BasicToken.ts +++ b/artifacts/ts/ERC721BasicToken.ts @@ -8710,5 +8710,5 @@ export const ERC721BasicToken = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.139Z" + "updatedAt": "2018-10-02T22:02:48.056Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721CollateralizedSimpleInterestTermsContract.ts b/artifacts/ts/ERC721CollateralizedSimpleInterestTermsContract.ts index b1103d0f..a42fede1 100644 --- a/artifacts/ts/ERC721CollateralizedSimpleInterestTermsContract.ts +++ b/artifacts/ts/ERC721CollateralizedSimpleInterestTermsContract.ts @@ -1446,7 +1446,7 @@ export const ERC721CollateralizedSimpleInterestTermsContract = "42": { "events": {}, "links": {}, - "address": "0xeef7d84ab274d3d288e26538893fb3768bff7d12" + "address": "0x13a93b0e027f419556271a3cb1060ef7156103e6" }, "70": { "events": {}, @@ -1455,5 +1455,5 @@ export const ERC721CollateralizedSimpleInterestTermsContract = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.836Z" + "updatedAt": "2018-10-02T22:16:13.721Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721Collateralizer.ts b/artifacts/ts/ERC721Collateralizer.ts index 9c98fdd4..5cdc648d 100644 --- a/artifacts/ts/ERC721Collateralizer.ts +++ b/artifacts/ts/ERC721Collateralizer.ts @@ -9499,7 +9499,7 @@ export const ERC721Collateralizer = } }, "links": {}, - "address": "0x6114e5c837b6bc774399190a5368019ed332c54b" + "address": "0xc241691f9c1663b4452c3d867de6cb72ce4ccb4b" }, "70": { "events": { @@ -9648,5 +9648,5 @@ export const ERC721Collateralizer = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.181Z" + "updatedAt": "2018-10-02T22:16:13.736Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721Enumerable.ts b/artifacts/ts/ERC721Enumerable.ts index a4742577..d8bcc0a1 100644 --- a/artifacts/ts/ERC721Enumerable.ts +++ b/artifacts/ts/ERC721Enumerable.ts @@ -1064,5 +1064,5 @@ export const ERC721Enumerable = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.811Z" + "updatedAt": "2018-10-02T22:02:48.050Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721Metadata.ts b/artifacts/ts/ERC721Metadata.ts index e3e28251..34e865ee 100644 --- a/artifacts/ts/ERC721Metadata.ts +++ b/artifacts/ts/ERC721Metadata.ts @@ -1055,5 +1055,5 @@ export const ERC721Metadata = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.812Z" + "updatedAt": "2018-10-02T22:02:48.050Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721Receiver.ts b/artifacts/ts/ERC721Receiver.ts index 7a9267aa..21a67c1a 100644 --- a/artifacts/ts/ERC721Receiver.ts +++ b/artifacts/ts/ERC721Receiver.ts @@ -275,5 +275,5 @@ export const ERC721Receiver = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.801Z" + "updatedAt": "2018-10-02T22:02:48.053Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721Token.ts b/artifacts/ts/ERC721Token.ts index 19f28d9d..ada3cfa2 100644 --- a/artifacts/ts/ERC721Token.ts +++ b/artifacts/ts/ERC721Token.ts @@ -5397,6 +5397,11 @@ export const ERC721Token = "version": "0.4.18+commit.9cf6e910.Emscripten.clang" }, "networks": { + "42": { + "events": {}, + "links": {}, + "address": "0x29fbda47ddc8b9853a0cf9bf0abf4611ff5f3abe" + }, "70": { "events": {}, "links": {}, @@ -5404,5 +5409,5 @@ export const ERC721Token = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.998Z" + "updatedAt": "2018-10-02T22:13:01.017Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721TokenRegistry.ts b/artifacts/ts/ERC721TokenRegistry.ts index 781a830c..e883fcb3 100644 --- a/artifacts/ts/ERC721TokenRegistry.ts +++ b/artifacts/ts/ERC721TokenRegistry.ts @@ -4184,7 +4184,7 @@ export const ERC721TokenRegistry = } }, "links": {}, - "address": "0x309d7ed18765fb72dc68d31621d9601cbb96c57e" + "address": "0xc7e95d984d2abdb012e25975c622477f31a0473f" }, "70": { "events": { @@ -4211,5 +4211,5 @@ export const ERC721TokenRegistry = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.909Z" + "updatedAt": "2018-10-02T22:16:13.717Z" } \ No newline at end of file diff --git a/artifacts/ts/GeneScienceInterface.ts b/artifacts/ts/GeneScienceInterface.ts index 10aa64d3..15cc07f8 100644 --- a/artifacts/ts/GeneScienceInterface.ts +++ b/artifacts/ts/GeneScienceInterface.ts @@ -51684,5 +51684,5 @@ export const GeneScienceInterface = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.516Z" + "updatedAt": "2018-10-02T22:02:47.655Z" } \ No newline at end of file diff --git a/artifacts/ts/IncompatibleTermsContract.ts b/artifacts/ts/IncompatibleTermsContract.ts index b02ccf2c..ffb550c9 100644 --- a/artifacts/ts/IncompatibleTermsContract.ts +++ b/artifacts/ts/IncompatibleTermsContract.ts @@ -988,7 +988,7 @@ export const IncompatibleTermsContract = "42": { "events": {}, "links": {}, - "address": "0xb2e179e109640107d9dd84fef76768219cdb9089" + "address": "0x265f2abbf5a568df8ed31644204b011eac0c1886" }, "70": { "events": {}, @@ -997,5 +997,5 @@ export const IncompatibleTermsContract = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.814Z" + "updatedAt": "2018-10-02T22:13:36.849Z" } \ No newline at end of file diff --git a/artifacts/ts/KittiesERC721.ts b/artifacts/ts/KittiesERC721.ts index ee670e2f..7615a23b 100644 --- a/artifacts/ts/KittiesERC721.ts +++ b/artifacts/ts/KittiesERC721.ts @@ -51816,5 +51816,5 @@ export const KittiesERC721 = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.476Z" + "updatedAt": "2018-10-02T22:02:47.673Z" } \ No newline at end of file diff --git a/artifacts/ts/KittiesERC721Metadata.ts b/artifacts/ts/KittiesERC721Metadata.ts index a2b858b1..96b147ca 100644 --- a/artifacts/ts/KittiesERC721Metadata.ts +++ b/artifacts/ts/KittiesERC721Metadata.ts @@ -51670,5 +51670,5 @@ export const KittiesERC721Metadata = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.737Z" + "updatedAt": "2018-10-02T22:02:47.695Z" } \ No newline at end of file diff --git a/artifacts/ts/KittiesOwnable.ts b/artifacts/ts/KittiesOwnable.ts index 0a8a790b..8c47806a 100644 --- a/artifacts/ts/KittiesOwnable.ts +++ b/artifacts/ts/KittiesOwnable.ts @@ -51677,5 +51677,5 @@ export const KittiesOwnable = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.622Z" + "updatedAt": "2018-10-02T22:02:47.713Z" } \ No newline at end of file diff --git a/artifacts/ts/KittiesPausable.ts b/artifacts/ts/KittiesPausable.ts index e6f9ded9..6bf2b75e 100644 --- a/artifacts/ts/KittiesPausable.ts +++ b/artifacts/ts/KittiesPausable.ts @@ -51725,5 +51725,5 @@ export const KittiesPausable = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.548Z" + "updatedAt": "2018-10-02T22:02:47.731Z" } \ No newline at end of file diff --git a/artifacts/ts/KittyAccessControl.ts b/artifacts/ts/KittyAccessControl.ts index 5ed1e2e4..7e4d387d 100644 --- a/artifacts/ts/KittyAccessControl.ts +++ b/artifacts/ts/KittyAccessControl.ts @@ -51771,5 +51771,5 @@ export const KittyAccessControl = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.708Z" + "updatedAt": "2018-10-02T22:02:47.755Z" } \ No newline at end of file diff --git a/artifacts/ts/KittyAuction.ts b/artifacts/ts/KittyAuction.ts index 43d0d634..3d329a0e 100644 --- a/artifacts/ts/KittyAuction.ts +++ b/artifacts/ts/KittyAuction.ts @@ -52526,5 +52526,5 @@ export const KittyAuction = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:33.056Z" + "updatedAt": "2018-10-02T22:02:47.781Z" } \ No newline at end of file diff --git a/artifacts/ts/KittyBase.ts b/artifacts/ts/KittyBase.ts index 397f6645..00c7d76c 100644 --- a/artifacts/ts/KittyBase.ts +++ b/artifacts/ts/KittyBase.ts @@ -51957,5 +51957,5 @@ export const KittyBase = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.793Z" + "updatedAt": "2018-10-02T22:02:47.854Z" } \ No newline at end of file diff --git a/artifacts/ts/KittyBreeding.ts b/artifacts/ts/KittyBreeding.ts index bb41359d..2e8071c8 100644 --- a/artifacts/ts/KittyBreeding.ts +++ b/artifacts/ts/KittyBreeding.ts @@ -52419,5 +52419,5 @@ export const KittyBreeding = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:33.020Z" + "updatedAt": "2018-10-02T22:02:47.809Z" } \ No newline at end of file diff --git a/artifacts/ts/KittyCore.ts b/artifacts/ts/KittyCore.ts index c4ddb4af..58f38a43 100644 --- a/artifacts/ts/KittyCore.ts +++ b/artifacts/ts/KittyCore.ts @@ -52747,7 +52747,7 @@ export const KittyCore = "42": { "events": {}, "links": {}, - "address": "0xea57c693d9a923cf4398eba61ccfea43574471a3" + "address": "0xb5da2e05709786b89c6124c7a202dd13de2b8cd8" }, "70": { "events": {}, @@ -52756,5 +52756,5 @@ export const KittyCore = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:33.212Z" + "updatedAt": "2018-10-02T22:16:13.792Z" } \ No newline at end of file diff --git a/artifacts/ts/KittyMinting.ts b/artifacts/ts/KittyMinting.ts index 49961f06..62b24b60 100644 --- a/artifacts/ts/KittyMinting.ts +++ b/artifacts/ts/KittyMinting.ts @@ -52642,5 +52642,5 @@ export const KittyMinting = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:33.146Z" + "updatedAt": "2018-10-02T22:02:47.925Z" } \ No newline at end of file diff --git a/artifacts/ts/KittyOwnership.ts b/artifacts/ts/KittyOwnership.ts index ff4d0df1..b8d81a59 100644 --- a/artifacts/ts/KittyOwnership.ts +++ b/artifacts/ts/KittyOwnership.ts @@ -52206,5 +52206,5 @@ export const KittyOwnership = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:33.113Z" + "updatedAt": "2018-10-02T22:02:47.947Z" } \ No newline at end of file diff --git a/artifacts/ts/Migrations.ts b/artifacts/ts/Migrations.ts index d4fb5fdd..1c271869 100644 --- a/artifacts/ts/Migrations.ts +++ b/artifacts/ts/Migrations.ts @@ -819,7 +819,7 @@ export const Migrations = "42": { "events": {}, "links": {}, - "address": "0x7ad092e0b8e9363189d86ddb7d8a0d47a7f66cd8" + "address": "0xf44e598f6ad5115151c1c331f5b2f8b02b06bb47" }, "70": { "events": {}, @@ -828,5 +828,5 @@ export const Migrations = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:53:01.138Z" + "updatedAt": "2018-10-02T22:16:36.720Z" } \ No newline at end of file diff --git a/artifacts/ts/MintableERC721Token.ts b/artifacts/ts/MintableERC721Token.ts index 38df5555..6c4b8742 100644 --- a/artifacts/ts/MintableERC721Token.ts +++ b/artifacts/ts/MintableERC721Token.ts @@ -1237,7 +1237,7 @@ export const MintableERC721Token = "42": { "events": {}, "links": {}, - "address": "0x91ab1498428910eab1021a95c5a478af9814fb4b" + "address": "0x1db2f4774e0b0c84047a97e6c129abe7f9ed0d18" }, "70": { "events": {}, @@ -1246,5 +1246,5 @@ export const MintableERC721Token = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.832Z" + "updatedAt": "2018-10-02T22:16:13.730Z" } \ No newline at end of file diff --git a/artifacts/ts/MintableToken.ts b/artifacts/ts/MintableToken.ts index f25eeeff..038c91a5 100644 --- a/artifacts/ts/MintableToken.ts +++ b/artifacts/ts/MintableToken.ts @@ -1665,5 +1665,5 @@ export const MintableToken = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.839Z" + "updatedAt": "2018-10-02T22:02:48.049Z" } \ No newline at end of file diff --git a/artifacts/ts/MockCollateralizedTermsContract.ts b/artifacts/ts/MockCollateralizedTermsContract.ts index 64797e97..d295e119 100644 --- a/artifacts/ts/MockCollateralizedTermsContract.ts +++ b/artifacts/ts/MockCollateralizedTermsContract.ts @@ -5723,7 +5723,7 @@ export const MockCollateralizedTermsContract = "42": { "events": {}, "links": {}, - "address": "0x7498f52b02bc0e695ebe8d8a82b43c60ece45cf8" + "address": "0xa125dc548b8b163b53d6b88f890766370b2350bd" }, "70": { "events": {}, @@ -5732,5 +5732,5 @@ export const MockCollateralizedTermsContract = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.009Z" + "updatedAt": "2018-10-02T22:13:01.039Z" } \ No newline at end of file diff --git a/artifacts/ts/MockContract.ts b/artifacts/ts/MockContract.ts index 34660ea3..a8741773 100644 --- a/artifacts/ts/MockContract.ts +++ b/artifacts/ts/MockContract.ts @@ -2544,5 +2544,5 @@ export const MockContract = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.858Z" + "updatedAt": "2018-10-02T22:02:47.986Z" } \ No newline at end of file diff --git a/artifacts/ts/MockDebtKernel.ts b/artifacts/ts/MockDebtKernel.ts index 3c851312..08d1794d 100644 --- a/artifacts/ts/MockDebtKernel.ts +++ b/artifacts/ts/MockDebtKernel.ts @@ -2231,5 +2231,5 @@ export const MockDebtKernel = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.855Z" + "updatedAt": "2018-10-02T22:02:48.018Z" } \ No newline at end of file diff --git a/artifacts/ts/MockDebtRegistry.ts b/artifacts/ts/MockDebtRegistry.ts index f8e69043..98468714 100644 --- a/artifacts/ts/MockDebtRegistry.ts +++ b/artifacts/ts/MockDebtRegistry.ts @@ -5997,7 +5997,7 @@ export const MockDebtRegistry = "42": { "events": {}, "links": {}, - "address": "0x08759b086c70d80d7cad9d6a66a7528d4c0211c9" + "address": "0x14fd9ddb3cfc7a3fa9c44f910825c0d287be2e34" }, "70": { "events": {}, @@ -6006,5 +6006,5 @@ export const MockDebtRegistry = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.020Z" + "updatedAt": "2018-10-02T22:13:01.024Z" } \ No newline at end of file diff --git a/artifacts/ts/MockDebtToken.ts b/artifacts/ts/MockDebtToken.ts index 43e006e9..412ca4e2 100644 --- a/artifacts/ts/MockDebtToken.ts +++ b/artifacts/ts/MockDebtToken.ts @@ -4599,7 +4599,7 @@ export const MockDebtToken = "42": { "events": {}, "links": {}, - "address": "0xc5cb874d3aed510599e12bfa81800313d4a32dad" + "address": "0x124529e78bd31b7c187b7bc69069d5cbbebceb70" }, "70": { "events": {}, @@ -4608,5 +4608,5 @@ export const MockDebtToken = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.925Z" + "updatedAt": "2018-10-02T22:13:01.030Z" } \ No newline at end of file diff --git a/artifacts/ts/MockERC20Token.ts b/artifacts/ts/MockERC20Token.ts index f0c589d3..8c3528b4 100644 --- a/artifacts/ts/MockERC20Token.ts +++ b/artifacts/ts/MockERC20Token.ts @@ -4017,7 +4017,7 @@ export const MockERC20Token = "42": { "events": {}, "links": {}, - "address": "0xf231f1d67e09b3166449a4fe043fa3d45a31b964" + "address": "0x7ac01104b3ddaf1d5ad092817b31a8442c140158" }, "70": { "events": {}, @@ -4026,5 +4026,5 @@ export const MockERC20Token = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.901Z" + "updatedAt": "2018-10-02T22:13:01.027Z" } \ No newline at end of file diff --git a/artifacts/ts/MockERC721Receiver.ts b/artifacts/ts/MockERC721Receiver.ts index efa0a76a..9eb7ac99 100644 --- a/artifacts/ts/MockERC721Receiver.ts +++ b/artifacts/ts/MockERC721Receiver.ts @@ -1845,7 +1845,7 @@ export const MockERC721Receiver = "42": { "events": {}, "links": {}, - "address": "0xb20ba587b34c71d886a4fd5cb1c6f09da611b578" + "address": "0x00714756c11727a071c47479c0d466f937331b8e" }, "70": { "events": {}, @@ -1854,5 +1854,5 @@ export const MockERC721Receiver = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.842Z" + "updatedAt": "2018-10-02T22:13:01.020Z" } \ No newline at end of file diff --git a/artifacts/ts/MockERC721Token.ts b/artifacts/ts/MockERC721Token.ts index a9ca890b..1d02fcac 100644 --- a/artifacts/ts/MockERC721Token.ts +++ b/artifacts/ts/MockERC721Token.ts @@ -3995,7 +3995,7 @@ export const MockERC721Token = "42": { "events": {}, "links": {}, - "address": "0xb056e80737b8c5f8470e8b10e1630f4fcf22ecda" + "address": "0xa57d132d946d0ba4f7febd543763f18b3627dd10" }, "70": { "events": {}, @@ -4004,5 +4004,5 @@ export const MockERC721Token = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.887Z" + "updatedAt": "2018-10-02T22:13:01.014Z" } \ No newline at end of file diff --git a/artifacts/ts/MockTermsContract.ts b/artifacts/ts/MockTermsContract.ts index 6853770b..119f3826 100644 --- a/artifacts/ts/MockTermsContract.ts +++ b/artifacts/ts/MockTermsContract.ts @@ -3395,7 +3395,7 @@ export const MockTermsContract = "42": { "events": {}, "links": {}, - "address": "0xfa94fb78b36fa2e194811fbffff450216f393c6d" + "address": "0xb0f7c5054eed756d6522d60fd02cd29be8b19a96" }, "70": { "events": {}, @@ -3404,5 +3404,5 @@ export const MockTermsContract = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.880Z" + "updatedAt": "2018-10-02T22:13:01.034Z" } \ No newline at end of file diff --git a/artifacts/ts/MockTokenRegistry.ts b/artifacts/ts/MockTokenRegistry.ts index 4b60a50e..78b6fd6c 100644 --- a/artifacts/ts/MockTokenRegistry.ts +++ b/artifacts/ts/MockTokenRegistry.ts @@ -1588,7 +1588,7 @@ export const MockTokenRegistry = "42": { "events": {}, "links": {}, - "address": "0x1d3ca86a5d20201bce4f37369a523d5b7ce310c9" + "address": "0x7723ed4c29ba84d381dd389890ccb0c17cda7204" }, "70": { "events": {}, @@ -1597,5 +1597,5 @@ export const MockTokenRegistry = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.838Z" + "updatedAt": "2018-10-02T22:13:01.033Z" } \ No newline at end of file diff --git a/artifacts/ts/MockTokenTransferProxy.ts b/artifacts/ts/MockTokenTransferProxy.ts index 1def0a4a..b4fe59f7 100644 --- a/artifacts/ts/MockTokenTransferProxy.ts +++ b/artifacts/ts/MockTokenTransferProxy.ts @@ -1236,7 +1236,7 @@ export const MockTokenTransferProxy = "42": { "events": {}, "links": {}, - "address": "0x4a45acd21a64d0de37750a8513f73e23cdea47c1" + "address": "0xea14749d27f5eed380dbeab1afe18d4bc174b77c" }, "70": { "events": {}, @@ -1245,5 +1245,5 @@ export const MockTokenTransferProxy = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.826Z" + "updatedAt": "2018-10-02T22:13:01.032Z" } \ No newline at end of file diff --git a/artifacts/ts/MultiSigWallet.ts b/artifacts/ts/MultiSigWallet.ts index 6647e265..955b1e32 100644 --- a/artifacts/ts/MultiSigWallet.ts +++ b/artifacts/ts/MultiSigWallet.ts @@ -13772,5 +13772,5 @@ export const MultiSigWallet = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.242Z" + "updatedAt": "2018-10-02T22:02:48.045Z" } \ No newline at end of file diff --git a/artifacts/ts/Ownable.ts b/artifacts/ts/Ownable.ts index be8315c8..f779c401 100644 --- a/artifacts/ts/Ownable.ts +++ b/artifacts/ts/Ownable.ts @@ -838,5 +838,5 @@ export const Ownable = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.815Z" + "updatedAt": "2018-10-02T22:02:48.038Z" } \ No newline at end of file diff --git a/artifacts/ts/Pausable.ts b/artifacts/ts/Pausable.ts index c3f040a4..7f07fc55 100644 --- a/artifacts/ts/Pausable.ts +++ b/artifacts/ts/Pausable.ts @@ -880,5 +880,5 @@ export const Pausable = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.815Z" + "updatedAt": "2018-10-02T22:02:48.037Z" } \ No newline at end of file diff --git a/artifacts/ts/PermissionEvents.ts b/artifacts/ts/PermissionEvents.ts index 8eb85f2a..34b76a84 100644 --- a/artifacts/ts/PermissionEvents.ts +++ b/artifacts/ts/PermissionEvents.ts @@ -2970,5 +2970,5 @@ export const PermissionEvents = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.862Z" + "updatedAt": "2018-10-02T22:02:47.597Z" } \ No newline at end of file diff --git a/artifacts/ts/PermissionsLib.ts b/artifacts/ts/PermissionsLib.ts index 064c470d..1cd1e4fe 100644 --- a/artifacts/ts/PermissionsLib.ts +++ b/artifacts/ts/PermissionsLib.ts @@ -2977,7 +2977,7 @@ export const PermissionsLib = "42": { "events": {}, "links": {}, - "address": "0x0e7e2aace2ed2565777b420fd181b556971a8cb1" + "address": "0xaa5ce701623be22ff89ae25fc1f6cc923127ca4c" }, "70": { "events": {}, @@ -2986,5 +2986,5 @@ export const PermissionsLib = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.864Z" + "updatedAt": "2018-10-02T22:16:13.720Z" } \ No newline at end of file diff --git a/artifacts/ts/RepaymentRouter.ts b/artifacts/ts/RepaymentRouter.ts index b65d6b0d..13740631 100644 --- a/artifacts/ts/RepaymentRouter.ts +++ b/artifacts/ts/RepaymentRouter.ts @@ -3302,7 +3302,7 @@ export const RepaymentRouter = } }, "links": {}, - "address": "0x0688659d5e36896da7e5d44ebe3e10aa9d2c9968" + "address": "0xd2c8cf211f4753a10b145c90950add769a8a6bc2" }, "70": { "events": { @@ -3390,5 +3390,5 @@ export const RepaymentRouter = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.875Z" + "updatedAt": "2018-10-02T22:15:01.333Z" } \ No newline at end of file diff --git a/artifacts/ts/SafeMath.ts b/artifacts/ts/SafeMath.ts index 41df666c..7fed5504 100644 --- a/artifacts/ts/SafeMath.ts +++ b/artifacts/ts/SafeMath.ts @@ -1344,5 +1344,5 @@ export const SafeMath = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.820Z" + "updatedAt": "2018-10-02T22:02:48.038Z" } \ No newline at end of file diff --git a/artifacts/ts/SaleClockAuction.ts b/artifacts/ts/SaleClockAuction.ts index 7ae48b15..d086ff66 100644 --- a/artifacts/ts/SaleClockAuction.ts +++ b/artifacts/ts/SaleClockAuction.ts @@ -52025,5 +52025,5 @@ export const SaleClockAuction = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.939Z" + "updatedAt": "2018-10-02T22:02:48.006Z" } \ No newline at end of file diff --git a/artifacts/ts/SimpleInterestTermsContract.ts b/artifacts/ts/SimpleInterestTermsContract.ts index 6385c78c..678ad978 100644 --- a/artifacts/ts/SimpleInterestTermsContract.ts +++ b/artifacts/ts/SimpleInterestTermsContract.ts @@ -10513,7 +10513,7 @@ export const SimpleInterestTermsContract = "42": { "events": {}, "links": {}, - "address": "0x4cad7ad79464628c07227928c851d3bc5ef3da0c" + "address": "0xe929d2b2fdd53531b8e11d85a4c249e504dd5868" }, "70": { "events": {}, @@ -10522,5 +10522,5 @@ export const SimpleInterestTermsContract = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.216Z" + "updatedAt": "2018-10-02T22:13:36.862Z" } \ No newline at end of file diff --git a/artifacts/ts/SiringClockAuction.ts b/artifacts/ts/SiringClockAuction.ts index 8bf94a1d..9fbe7a29 100644 --- a/artifacts/ts/SiringClockAuction.ts +++ b/artifacts/ts/SiringClockAuction.ts @@ -51978,5 +51978,5 @@ export const SiringClockAuction = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:32.872Z" + "updatedAt": "2018-10-02T22:02:47.968Z" } \ No newline at end of file diff --git a/artifacts/ts/StandardToken.ts b/artifacts/ts/StandardToken.ts index 5ee4fd8f..286146b2 100644 --- a/artifacts/ts/StandardToken.ts +++ b/artifacts/ts/StandardToken.ts @@ -3733,5 +3733,5 @@ export const StandardToken = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.890Z" + "updatedAt": "2018-10-02T22:02:48.051Z" } \ No newline at end of file diff --git a/artifacts/ts/TermsContract.ts b/artifacts/ts/TermsContract.ts index 7d42a016..8d3658a6 100644 --- a/artifacts/ts/TermsContract.ts +++ b/artifacts/ts/TermsContract.ts @@ -780,5 +780,5 @@ export const TermsContract = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.808Z" + "updatedAt": "2018-10-02T22:02:47.591Z" } \ No newline at end of file diff --git a/artifacts/ts/TokenRegistry.ts b/artifacts/ts/TokenRegistry.ts index 10f55aad..62e96424 100644 --- a/artifacts/ts/TokenRegistry.ts +++ b/artifacts/ts/TokenRegistry.ts @@ -5120,7 +5120,7 @@ export const TokenRegistry = } }, "links": {}, - "address": "0x6949948d93f3dbe50ec2fe54815fa33bfa284d35" + "address": "0xa6d8c45bbd164f0b1aacbd24cb18f8b19de9648a" }, "70": { "events": { @@ -5147,5 +5147,5 @@ export const TokenRegistry = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.973Z" + "updatedAt": "2018-10-02T22:15:01.336Z" } \ No newline at end of file diff --git a/artifacts/ts/TokenTransferProxy.ts b/artifacts/ts/TokenTransferProxy.ts index 8234d93e..eb3154bb 100644 --- a/artifacts/ts/TokenTransferProxy.ts +++ b/artifacts/ts/TokenTransferProxy.ts @@ -1613,7 +1613,7 @@ export const TokenTransferProxy = } }, "links": {}, - "address": "0x668beab2e4dfec1d8c0a70fb5e52987cb22c2f1a" + "address": "0xf302f9e270458b4242e7d0cba2f0816ed2193240" }, "70": { "events": { @@ -1686,5 +1686,5 @@ export const TokenTransferProxy = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-08T22:52:31.828Z" + "updatedAt": "2018-10-02T22:15:01.329Z" } \ No newline at end of file diff --git a/migrations/7_erc721_collateral.js b/migrations/7_erc721_collateral.js index 01675a20..2e779283 100644 --- a/migrations/7_erc721_collateral.js +++ b/migrations/7_erc721_collateral.js @@ -1,4 +1,10 @@ -const { CRYPTOKITTIES_CONTRACT, ERC721_CONTRACT_DATA, LIVE_NETWORK_ID } = require("./migration_constants"); +const { + CRYPTOKITTIES_CONTRACT, + ERC721_CONTRACT_DATA, + ERC721_KOVAN_CONTRACT_DATA, + LIVE_NETWORK_ID, + KOVAN_NETWORK_ID, +} = require("./migration_constants"); module.exports = (deployer, network, accounts) => { // Constants @@ -83,9 +89,20 @@ module.exports = (deployer, network, accounts) => { * Initial Registry Contents * ********************************/ + if (network === KOVAN_NETWORK_ID) { + // Add the Kovan contracts to the registry. + ERC721_KOVAN_CONTRACT_DATA.map(async (contractData) => { + await tokenRegistry.setTokenAttributes( + contractData.symbol, + contractData.address, + contractData.name, + { from: CONTRACT_OWNER } + ); + }); + } + if (network !== LIVE_NETWORK_ID) { // Get and register ERC721s for test purposes. - const mintableToken = await MintableERC721Token.deployed(); const cryptoKittiesToken = await KittyCore.deployed(); const debtToken = await DebtToken.deployed(); diff --git a/migrations/migration_constants.js b/migrations/migration_constants.js index d2b6915b..5029000d 100644 --- a/migrations/migration_constants.js +++ b/migrations/migration_constants.js @@ -2,9 +2,11 @@ const fs = require("fs"); // The location of data files related to token contract addresses. const tokenDataDir = `${projectRoot()}/token_registry_data`; - const ERC20_TOKEN_LIST = readJsonSync(`${tokenDataDir}/erc20_tokens.json`); +// Contains contracts such as the mainnet Cryptokitties and DDT contracts. const ERC721_CONTRACT_DATA = readJsonSync(`${tokenDataDir}/erc721_contracts.json`); +// Contains contracts such as the Centrifuge ERC721 kovan contract. +const ERC721_KOVAN_CONTRACT_DATA = readJsonSync(`${tokenDataDir}/erc721_kovan_contracts.json`); const OWNER_ONE = "0x5d497982326f641e0b374585ff7c1c1be9878560"; const OWNER_TWO = "0x8f8c5ebde485dfcb64d8e6d1dea833b2d43fb9de"; @@ -115,6 +117,7 @@ module.exports = { ERC721_CONTRACT_DATA, CRYPTOKITTIES_CONTRACT: CRYPTOKITTIES_CONTRACT_ADDRESS, MULTISIG_PARAMS, + ERC721_KOVAN_CONTRACT_DATA, }; /** diff --git a/migrations/utils.js b/migrations/utils.js index 24a0e473..68c37681 100644 --- a/migrations/utils.js +++ b/migrations/utils.js @@ -96,6 +96,7 @@ function generateParamsForDharmaMultiSigWallet(network, accounts) { params = CONSTANTS.MULTISIG_PARAMS.live; break; case CONSTANTS.KOVAN_NETWORK_ID: + signatories = CONSTANTS.SIGNATORIES; params = CONSTANTS.MULTISIG_PARAMS.kovan; break; default: diff --git a/token_registry_data/erc721_kovan_contracts.json b/token_registry_data/erc721_kovan_contracts.json new file mode 100644 index 00000000..49e699c8 --- /dev/null +++ b/token_registry_data/erc721_kovan_contracts.json @@ -0,0 +1,7 @@ +[ + { + "name": "Centrifuge Payment Obligation", + "symbol": "CENT_PAY_OB", + "address": "0xab720cd0108ed70d10f943a51607f7161023c36e" + } +] From e71ba55c04ddf33332eae43d3a62cce48cf5e46d Mon Sep 17 00:00:00 2001 From: Chris Min Date: Tue, 9 Oct 2018 10:56:22 -0700 Subject: [PATCH 2/5] feat: add test net signatory --- migrations/migration_constants.js | 29 +++++++++++++++-------------- migrations/utils.js | 2 +- 2 files changed, 16 insertions(+), 15 deletions(-) diff --git a/migrations/migration_constants.js b/migrations/migration_constants.js index 5029000d..df935374 100644 --- a/migrations/migration_constants.js +++ b/migrations/migration_constants.js @@ -14,6 +14,8 @@ const OWNER_THREE = "0xb41411e8cfae259a6494ecdc81833b627f051be4"; const OWNER_FOUR = "0xfefdde6a490cd4095de204b6fe31ba1607b19e3f"; const OWNER_FIVE = "0xa32d732ab0096dbf837f3e5d358ac5b597dcbf73"; +const TEST_NET_OWNER = "0x14978f69aAAf6252ce62d6d50ED36130BD18aC43"; + /** * The amount of time that the multi-signature wallet should wait before executing a transaction. * Currently set to 7 days, expressed in seconds. @@ -35,20 +37,20 @@ const THRESHOLD = 1 / 2; * we deploy to. */ const MULTISIG_PARAMS = { - "live": { - threshold: THRESHOLD, - timelockInSeconds: TIMELOCK_IN_SECONDS, - }, - "kovan": { - // For the kovan network, we only require 1 signatory to execute a transaction. - threshold: 1 / 6, - // Only 1 minute is required before a transaction is executed. - timelockInSeconds: 60, - }, + live: { + threshold: THRESHOLD, + timelockInSeconds: TIMELOCK_IN_SECONDS, + }, + kovan: { + // For the kovan network, we only require 1 signatory to execute a transaction. + threshold: 1 / 6, + // Only 1 minute is required before a transaction is executed. + timelockInSeconds: 60, + }, }; const SIGNATORIES = [OWNER_ONE, OWNER_TWO, OWNER_THREE, OWNER_FOUR, OWNER_FIVE]; - +const TEST_NET_SIGNATORIES = [OWNER_ONE, OWNER_TWO, OWNER_THREE, OWNER_FOUR, TEST_NET_OWNER]; const LIVE_NETWORK_ID = "live"; const KOVAN_NETWORK_ID = "kovan"; @@ -103,6 +105,7 @@ const KOVAN_WETH_ADDRESS = "0xd0a1e359811322d97991e03f863a0c30c2cf029c"; module.exports = { SIGNATORIES, + TEST_NET_SIGNATORIES, THRESHOLD, TIMELOCK_IN_SECONDS, LIVE_NETWORK_ID, @@ -127,9 +130,7 @@ module.exports = { * @returns {any} */ function readJsonSync(path) { - return JSON.parse( - fs.readFileSync(path, "utf8"), - ); + return JSON.parse(fs.readFileSync(path, "utf8")); } /** diff --git a/migrations/utils.js b/migrations/utils.js index 68c37681..bf930eca 100644 --- a/migrations/utils.js +++ b/migrations/utils.js @@ -96,7 +96,7 @@ function generateParamsForDharmaMultiSigWallet(network, accounts) { params = CONSTANTS.MULTISIG_PARAMS.live; break; case CONSTANTS.KOVAN_NETWORK_ID: - signatories = CONSTANTS.SIGNATORIES; + signatories = CONSTANTS.TEST_NET_SIGNATORIES; params = CONSTANTS.MULTISIG_PARAMS.kovan; break; default: From 4af72154dc0ce1f920fbdfb03f432a4181c7aeab Mon Sep 17 00:00:00 2001 From: Chris Min Date: Tue, 9 Oct 2018 10:57:26 -0700 Subject: [PATCH 3/5] build: update artifacts --- artifacts/json/AddressUtils.json | 2 +- artifacts/json/BasicToken.json | 2 +- artifacts/json/ClockAuction.json | 2 +- artifacts/json/ClockAuctionBase.json | 2 +- ...ollateralizedSimpleInterestTermsContract.json | 6 +++--- artifacts/json/Collateralizer.json | 14 +++++++------- artifacts/json/ContractRegistry.json | 16 ++++++++-------- artifacts/json/CreditorProxy.json | 14 +++++++------- artifacts/json/DebtKernel.json | 10 +++++----- artifacts/json/DebtRegistry.json | 6 +++--- artifacts/json/DebtToken.json | 10 +++++----- artifacts/json/DeprecatedERC721.json | 2 +- artifacts/json/DharmaMultiSigWallet.json | 6 +++--- artifacts/json/DummyContract.json | 6 +++--- artifacts/json/DummyToken.json | 2 +- artifacts/json/ERC165.json | 2 +- artifacts/json/ERC20.json | 2 +- artifacts/json/ERC20Basic.json | 2 +- artifacts/json/ERC721.json | 2 +- artifacts/json/ERC721Basic.json | 2 +- artifacts/json/ERC721BasicToken.json | 2 +- ...ollateralizedSimpleInterestTermsContract.json | 8 ++++---- artifacts/json/ERC721Collateralizer.json | 12 ++++++------ artifacts/json/ERC721Enumerable.json | 2 +- artifacts/json/ERC721Metadata.json | 2 +- artifacts/json/ERC721Receiver.json | 2 +- artifacts/json/ERC721Token.json | 4 ++-- artifacts/json/ERC721TokenRegistry.json | 4 ++-- artifacts/json/GeneScienceInterface.json | 2 +- artifacts/json/IncompatibleTermsContract.json | 6 +++--- artifacts/json/KittiesERC721.json | 2 +- artifacts/json/KittiesERC721Metadata.json | 2 +- artifacts/json/KittiesOwnable.json | 2 +- artifacts/json/KittiesPausable.json | 2 +- artifacts/json/KittyAccessControl.json | 2 +- artifacts/json/KittyAuction.json | 2 +- artifacts/json/KittyBase.json | 2 +- artifacts/json/KittyBreeding.json | 2 +- artifacts/json/KittyCore.json | 4 ++-- artifacts/json/KittyMinting.json | 2 +- artifacts/json/KittyOwnership.json | 2 +- artifacts/json/Migrations.json | 4 ++-- artifacts/json/MintableERC721Token.json | 6 +++--- artifacts/json/MintableToken.json | 2 +- .../json/MockCollateralizedTermsContract.json | 6 +++--- artifacts/json/MockContract.json | 2 +- artifacts/json/MockDebtKernel.json | 4 ++-- artifacts/json/MockDebtRegistry.json | 6 +++--- artifacts/json/MockDebtToken.json | 6 +++--- artifacts/json/MockERC20Token.json | 6 +++--- artifacts/json/MockERC721Receiver.json | 6 +++--- artifacts/json/MockERC721Token.json | 6 +++--- artifacts/json/MockTermsContract.json | 6 +++--- artifacts/json/MockTokenRegistry.json | 6 +++--- artifacts/json/MockTokenTransferProxy.json | 6 +++--- artifacts/json/MultiSigWallet.json | 2 +- artifacts/json/Ownable.json | 2 +- artifacts/json/Pausable.json | 2 +- artifacts/json/PermissionEvents.json | 2 +- artifacts/json/PermissionsLib.json | 4 ++-- artifacts/json/RepaymentRouter.json | 10 +++++----- artifacts/json/SafeMath.json | 2 +- artifacts/json/SaleClockAuction.json | 2 +- artifacts/json/SimpleInterestTermsContract.json | 4 ++-- artifacts/json/SiringClockAuction.json | 2 +- artifacts/json/StandardToken.json | 2 +- artifacts/json/TermsContract.json | 2 +- artifacts/json/TokenRegistry.json | 4 ++-- artifacts/json/TokenTransferProxy.json | 8 ++++---- artifacts/ts/AddressUtils.ts | 2 +- artifacts/ts/BasicToken.ts | 2 +- artifacts/ts/ClockAuction.ts | 2 +- artifacts/ts/ClockAuctionBase.ts | 2 +- .../CollateralizedSimpleInterestTermsContract.ts | 6 +++--- artifacts/ts/Collateralizer.ts | 14 +++++++------- artifacts/ts/ContractRegistry.ts | 16 ++++++++-------- artifacts/ts/CreditorProxy.ts | 14 +++++++------- artifacts/ts/DebtKernel.ts | 10 +++++----- artifacts/ts/DebtRegistry.ts | 6 +++--- artifacts/ts/DebtToken.ts | 10 +++++----- artifacts/ts/DeprecatedERC721.ts | 2 +- artifacts/ts/DharmaMultiSigWallet.ts | 6 +++--- artifacts/ts/DummyContract.ts | 6 +++--- artifacts/ts/DummyToken.ts | 2 +- artifacts/ts/ERC165.ts | 2 +- artifacts/ts/ERC20.ts | 2 +- artifacts/ts/ERC20Basic.ts | 2 +- artifacts/ts/ERC721.ts | 2 +- artifacts/ts/ERC721Basic.ts | 2 +- artifacts/ts/ERC721BasicToken.ts | 2 +- ...1CollateralizedSimpleInterestTermsContract.ts | 8 ++++---- artifacts/ts/ERC721Collateralizer.ts | 12 ++++++------ artifacts/ts/ERC721Enumerable.ts | 2 +- artifacts/ts/ERC721Metadata.ts | 2 +- artifacts/ts/ERC721Receiver.ts | 2 +- artifacts/ts/ERC721Token.ts | 4 ++-- artifacts/ts/ERC721TokenRegistry.ts | 4 ++-- artifacts/ts/GeneScienceInterface.ts | 2 +- artifacts/ts/IncompatibleTermsContract.ts | 6 +++--- artifacts/ts/KittiesERC721.ts | 2 +- artifacts/ts/KittiesERC721Metadata.ts | 2 +- artifacts/ts/KittiesOwnable.ts | 2 +- artifacts/ts/KittiesPausable.ts | 2 +- artifacts/ts/KittyAccessControl.ts | 2 +- artifacts/ts/KittyAuction.ts | 2 +- artifacts/ts/KittyBase.ts | 2 +- artifacts/ts/KittyBreeding.ts | 2 +- artifacts/ts/KittyCore.ts | 4 ++-- artifacts/ts/KittyMinting.ts | 2 +- artifacts/ts/KittyOwnership.ts | 2 +- artifacts/ts/Migrations.ts | 4 ++-- artifacts/ts/MintableERC721Token.ts | 6 +++--- artifacts/ts/MintableToken.ts | 2 +- artifacts/ts/MockCollateralizedTermsContract.ts | 6 +++--- artifacts/ts/MockContract.ts | 2 +- artifacts/ts/MockDebtKernel.ts | 4 ++-- artifacts/ts/MockDebtRegistry.ts | 6 +++--- artifacts/ts/MockDebtToken.ts | 6 +++--- artifacts/ts/MockERC20Token.ts | 6 +++--- artifacts/ts/MockERC721Receiver.ts | 6 +++--- artifacts/ts/MockERC721Token.ts | 6 +++--- artifacts/ts/MockTermsContract.ts | 6 +++--- artifacts/ts/MockTokenRegistry.ts | 6 +++--- artifacts/ts/MockTokenTransferProxy.ts | 6 +++--- artifacts/ts/MultiSigWallet.ts | 2 +- artifacts/ts/Ownable.ts | 2 +- artifacts/ts/Pausable.ts | 2 +- artifacts/ts/PermissionEvents.ts | 2 +- artifacts/ts/PermissionsLib.ts | 4 ++-- artifacts/ts/RepaymentRouter.ts | 10 +++++----- artifacts/ts/SafeMath.ts | 2 +- artifacts/ts/SaleClockAuction.ts | 2 +- artifacts/ts/SimpleInterestTermsContract.ts | 4 ++-- artifacts/ts/SiringClockAuction.ts | 2 +- artifacts/ts/StandardToken.ts | 2 +- artifacts/ts/TermsContract.ts | 2 +- artifacts/ts/TokenRegistry.ts | 4 ++-- artifacts/ts/TokenTransferProxy.ts | 8 ++++---- 138 files changed, 298 insertions(+), 298 deletions(-) diff --git a/artifacts/json/AddressUtils.json b/artifacts/json/AddressUtils.json index 91c6ab0d..ac183cd2 100644 --- a/artifacts/json/AddressUtils.json +++ b/artifacts/json/AddressUtils.json @@ -287,5 +287,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.037Z" + "updatedAt": "2018-10-09T17:45:35.426Z" } \ No newline at end of file diff --git a/artifacts/json/BasicToken.json b/artifacts/json/BasicToken.json index 7fdf5ee8..df62aa3e 100644 --- a/artifacts/json/BasicToken.json +++ b/artifacts/json/BasicToken.json @@ -1435,5 +1435,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.048Z" + "updatedAt": "2018-10-09T17:45:35.453Z" } \ No newline at end of file diff --git a/artifacts/json/ClockAuction.json b/artifacts/json/ClockAuction.json index 69f78b63..ddfed8d0 100644 --- a/artifacts/json/ClockAuction.json +++ b/artifacts/json/ClockAuction.json @@ -51963,5 +51963,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.614Z" + "updatedAt": "2018-10-09T17:45:36.032Z" } \ No newline at end of file diff --git a/artifacts/json/ClockAuctionBase.json b/artifacts/json/ClockAuctionBase.json index 51662399..5bf7482e 100644 --- a/artifacts/json/ClockAuctionBase.json +++ b/artifacts/json/ClockAuctionBase.json @@ -51731,5 +51731,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.636Z" + "updatedAt": "2018-10-09T17:45:35.834Z" } \ No newline at end of file diff --git a/artifacts/json/CollateralizedSimpleInterestTermsContract.json b/artifacts/json/CollateralizedSimpleInterestTermsContract.json index c59b1094..1ce71c7d 100644 --- a/artifacts/json/CollateralizedSimpleInterestTermsContract.json +++ b/artifacts/json/CollateralizedSimpleInterestTermsContract.json @@ -411,7 +411,7 @@ }, { "attributes": { - "SourceUnit": 6061, + "SourceUnit": 6053, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/examples/SimpleInterestTermsContract.sol", "file": "./SimpleInterestTermsContract.sol", "scope": 5282, @@ -1334,7 +1334,7 @@ "42": { "events": {}, "links": {}, - "address": "0x670315b61825f2691084fb9387996675cf2c0225" + "address": "0x7b7be94999219352b02c70b62b7cc09f7179b3b0" }, "70": { "events": {}, @@ -1343,5 +1343,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:14:48.932Z" + "updatedAt": "2018-10-09T17:51:37.279Z" } \ No newline at end of file diff --git a/artifacts/json/Collateralizer.json b/artifacts/json/Collateralizer.json index 07772632..20bb2b24 100644 --- a/artifacts/json/Collateralizer.json +++ b/artifacts/json/Collateralizer.json @@ -526,7 +526,7 @@ }, { "attributes": { - "SourceUnit": 4766, + "SourceUnit": 4758, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TermsContract.sol", "file": "./TermsContract.sol", "scope": 615, @@ -541,7 +541,7 @@ }, { "attributes": { - "SourceUnit": 3167, + "SourceUnit": 3159, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtRegistry.sol", "file": "./DebtRegistry.sol", "scope": 615, @@ -556,7 +556,7 @@ }, { "attributes": { - "SourceUnit": 5122, + "SourceUnit": 5114, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TokenRegistry.sol", "file": "./TokenRegistry.sol", "scope": 615, @@ -571,7 +571,7 @@ }, { "attributes": { - "SourceUnit": 5215, + "SourceUnit": 5207, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TokenTransferProxy.sol", "file": "./TokenTransferProxy.sol", "scope": 615, @@ -586,7 +586,7 @@ }, { "attributes": { - "SourceUnit": 6280, + "SourceUnit": 6272, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/libraries/PermissionsLib.sol", "file": "./libraries/PermissionsLib.sol", "scope": 615, @@ -9801,7 +9801,7 @@ } }, "links": {}, - "address": "0xf5ff656bfeada48090daf7341a2d4e160d699d27" + "address": "0x39ab84786d3696677cb62181f56286c9496b490b" }, "70": { "events": { @@ -9950,5 +9950,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:15:01.357Z" + "updatedAt": "2018-10-09T17:51:53.173Z" } \ No newline at end of file diff --git a/artifacts/json/ContractRegistry.json b/artifacts/json/ContractRegistry.json index 0f6e1e01..20035e8e 100644 --- a/artifacts/json/ContractRegistry.json +++ b/artifacts/json/ContractRegistry.json @@ -280,7 +280,7 @@ }, { "attributes": { - "SourceUnit": 2639, + "SourceUnit": 2631, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtKernel.sol", "file": "./DebtKernel.sol", "scope": 924, @@ -295,7 +295,7 @@ }, { "attributes": { - "SourceUnit": 3167, + "SourceUnit": 3159, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtRegistry.sol", "file": "./DebtRegistry.sol", "scope": 924, @@ -310,7 +310,7 @@ }, { "attributes": { - "SourceUnit": 3549, + "SourceUnit": 3541, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtToken.sol", "file": "./DebtToken.sol", "scope": 924, @@ -325,7 +325,7 @@ }, { "attributes": { - "SourceUnit": 4716, + "SourceUnit": 4708, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/RepaymentRouter.sol", "file": "./RepaymentRouter.sol", "scope": 924, @@ -340,7 +340,7 @@ }, { "attributes": { - "SourceUnit": 5122, + "SourceUnit": 5114, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TokenRegistry.sol", "file": "./TokenRegistry.sol", "scope": 924, @@ -355,7 +355,7 @@ }, { "attributes": { - "SourceUnit": 5215, + "SourceUnit": 5207, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TokenTransferProxy.sol", "file": "./TokenTransferProxy.sol", "scope": 924, @@ -4730,7 +4730,7 @@ } }, "links": {}, - "address": "0x98090fb23948d09772840b7440e7cdd4c28c2c8d" + "address": "0x342e4778937a0fa5879aa594d0f57370f1a0e5d9" }, "70": { "events": { @@ -4779,5 +4779,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:16:36.727Z" + "updatedAt": "2018-10-09T17:53:24.840Z" } \ No newline at end of file diff --git a/artifacts/json/CreditorProxy.json b/artifacts/json/CreditorProxy.json index e92ddba6..c1474921 100644 --- a/artifacts/json/CreditorProxy.json +++ b/artifacts/json/CreditorProxy.json @@ -308,11 +308,11 @@ "type": "event" } ], - "bytecode": "0x606060405260008060146101000a81548160ff021916908315150217905550341561002957600080fd5b604051602080611d1483398101604052808051906020019091905050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611c3e806100d66000396000f3006060604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633f4ba83a146100bf57806347f7835d146100d45780635c975abb146102325780638456cb591461025f5780638da5cb5b146102745780638f18b00b146102c9578063a318b5f714610367578063abf410e5146103a6578063c1614d00146103fb578063e283040d1461043a578063f06bbf751461046b578063f2fde38b1461049c575b600080fd5b34156100ca57600080fd5b6100d26104d5565b005b34156100df57600080fd5b610214600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908060c0019060068060200260405190810160405280929190826006602002808284378201915050505050919080610100019060088060200260405190810160405280929190826008602002808284378201915050505050919080602001906001806020026040519081016040528092919082600160200280828437820191505050505091908060600190600380602002604051908101604052809291908260036020028082843782019150505050509190806060019060038060200260405190810160405280929190826003602002808284378201915050505050919080606001906003806020026040519081016040528092919082600360200280828437820191505050505091905050610593565b60405180826000191660001916815260200191505060405180910390f35b341561023d57600080fd5b610245610f75565b604051808215151515815260200191505060405180910390f35b341561026a57600080fd5b610272610f88565b005b341561027f57600080fd5b610287611048565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156102d457600080fd5b6103656004808060a0019060058060200260405190810160405280929190826005602002808284378201915050505050919080608001906004806020026040519081016040528092919082600460200280828437820191505050505091908060200190600180602002604051908101604052809291908260016020028082843782019150505050509190505061106d565b005b341561037257600080fd5b61038c600480803560001916906020019091905050611179565b604051808215151515815260200191505060405180910390f35b34156103b157600080fd5b6103b9611199565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561040657600080fd5b6104206004808035600019169060200190919050506111bf565b604051808215151515815260200191505060405180910390f35b341561044557600080fd5b61044d6111df565b60405180826000191660001916815260200191505060405180910390f35b341561047657600080fd5b61047e6111e7565b604051808261ffff1661ffff16815260200191505060405180910390f35b34156104a757600080fd5b6104d3600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506111ed565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561053057600080fd5b600060149054906101000a900460ff16151561054b57600080fd5b60008060146101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b600080600080600060149054906101000a900460ff161515156105b557600080fd5b61081160a0604051908101604052808d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663079dd4b76000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561068457600080fd5b6102c65a03f1151561069557600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c60006006811015156106df57fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600360068110151561072457fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600460068110151561076957fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152506080604051908101604052808c60016008811015156107b857fe5b602002015181526020018c60026008811015156107d157fe5b602002015181526020018c60056008811015156107ea57fe5b602002015181526020018c600760088110151561080357fe5b60200201518152508a611342565b925060036000846000191660001916815260200190815260200160002060009054906101000a900460ff16156108a55782600019168b73ffffffffffffffffffffffffffffffffffffffff166001600381111561086a57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b60026000846000191660001916815260200190815260200160002060009054906101000a900460ff16156109375782600019168b73ffffffffffffffffffffffffffffffffffffffff16600060038111156108fc57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b61097d8b8489600160038110151561094b57fe5b602002015189600160038110151561095f57fe5b602002015189600160038110151561097357fe5b6020020151611598565b15156109e75782600019168b73ffffffffffffffffffffffffffffffffffffffff16600260038111156109ac57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b610a208960056008811015156109f957fe5b60200201518a6002600881101515610a0d57fe5b602002015161169f90919063ffffffff16565b9150610a408b8b6004600681101515610a3557fe5b6020020151846116bd565b1515610aa95782600019168b73ffffffffffffffffffffffffffffffffffffffff16600380811115610a6e57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b6000821115610add57610ad18a6004600681101515610ac457fe5b60200201518c30856117d9565b1515610adc57600080fd5b5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663079dd4b76000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610b6b57600080fd5b6102c65a03f11515610b7c57600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663e6488fc9308c8c8c8c8c8c6000604051602001526040518863ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200187600660200280838360005b83811015610c39578082015181840152602081019050610c1e565b5050505090500186600860200280838360005b83811015610c67578082015181840152602081019050610c4c565b5050505090500185600160200280838360005b83811015610c95578082015181840152602081019050610c7a565b5050505090500184600360200280838360005b83811015610cc3578082015181840152602081019050610ca8565b5050505090500183600360200280838360005b83811015610cf1578082015181840152602081019050610cd6565b5050505090500182600360200280838360005b83811015610d1f578082015181840152602081019050610d04565b50505050905001975050505050505050602060405180830381600087803b1515610d4857600080fd5b6102c65a03f11515610d5957600080fd5b505050604051805190509050600060010260001916816000191614151515610d8057600080fd5b600160036000856000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f8d898986000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610e4257600080fd5b6102c65a03f11515610e5357600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8c83600190046040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1515610f0257600080fd5b6102c65a03f11515610f1357600080fd5b505050806000191683600019168c73ffffffffffffffffffffffffffffffffffffffff167f44bca8cc6f9375e3d800b6361e71fdde37e4fc86bdc3a72c4f8f69bbd19a01f360405160405180910390a48093505b505050979650505050505050565b600060149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610fe357600080fd5b600060149054906101000a900460ff16151515610fff57600080fd5b6001600060146101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060149054906101000a900460ff1615151561108a57600080fd5b83600060058110151561109957fe5b602002015173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156110d757600080fd5b6110e2848484611342565b9050600160026000836000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550806000191684600060058110151561112c57fe5b602002015173ffffffffffffffffffffffffffffffffffffffff167f07d3242876ac355520b94ab74873262d83b5b81dbd5da781118f78cee0bbe74760405160405180910390a350505050565b60026020528060005260406000206000915054906101000a900460ff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60036020528060005260406000206000915054906101000a900460ff1681565b600060010281565b611f4081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561124857600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561128457600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600083600060058110151561135357fe5b602002015184600160058110151561136757fe5b602002015185600260058110151561137b57fe5b602002015186600360058110151561138f57fe5b60200201518760046005811015156113a357fe5b60200201518760006004811015156113b757fe5b60200201518860016004811015156113cb57fe5b60200201518960026004811015156113df57fe5b60200201518a60036004811015156113f357fe5b60200201518a600060018110151561140757fe5b6020020151604051808b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c0100000000000000000000000002815260140186815260200185815260200184815260200183815260200182600019166000191681526020019a5050505050505050505050604051809103902090509392505050565b600060018560405180807f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250601c0182600019166000191681526020019150506040518091039020858585604051600081526020016040526000604051602001526040518085600019166000191681526020018460ff1660ff16815260200183600019166000191681526020018260001916600019168152602001945050505050602060405160208103908084039060008661646e5a03f1151561165d57600080fd5b50506020604051035173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614905095945050505050565b60008082840190508381101515156116b357fe5b8091505092915050565b6000806000806116ce8688306118df565b92506116da86886119d7565b9150848210806116e957508483105b156116f757600093506117cf565b6117aa8630600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561178a57600080fd5b6102c65a03f1151561179b57600080fd5b505050604051805190506118df565b9050848110156117ca576117be8686611a9a565b15156117c957600080fd5b5b600193505b5050509392505050565b60008473ffffffffffffffffffffffffffffffffffffffff166323b872dd8585856000604051602001526040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15156118ba57600080fd5b6102c65a03f115156118cb57600080fd5b505050604051805190509050949350505050565b60008373ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e611f4061ffff1685856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600088803b15156119b657600080fd5b87f115156119c357600080fd5b505050506040518051905090509392505050565b60008273ffffffffffffffffffffffffffffffffffffffff166370a08231611f4061ffff16846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600088803b1515611a7a57600080fd5b87f11515611a8757600080fd5b5050505060405180519050905092915050565b60008273ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515611b4657600080fd5b6102c65a03f11515611b5757600080fd5b50505060405180519050846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515611bef57600080fd5b6102c65a03f11515611c0057600080fd5b505050604051805190509050929150505600a165627a7a7230582051723af670e00f905ed79837151ff2f428c566a7778657a079e3873cc19020a10029", - "deployedBytecode": "0x6060604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633f4ba83a146100bf57806347f7835d146100d45780635c975abb146102325780638456cb591461025f5780638da5cb5b146102745780638f18b00b146102c9578063a318b5f714610367578063abf410e5146103a6578063c1614d00146103fb578063e283040d1461043a578063f06bbf751461046b578063f2fde38b1461049c575b600080fd5b34156100ca57600080fd5b6100d26104d5565b005b34156100df57600080fd5b610214600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908060c0019060068060200260405190810160405280929190826006602002808284378201915050505050919080610100019060088060200260405190810160405280929190826008602002808284378201915050505050919080602001906001806020026040519081016040528092919082600160200280828437820191505050505091908060600190600380602002604051908101604052809291908260036020028082843782019150505050509190806060019060038060200260405190810160405280929190826003602002808284378201915050505050919080606001906003806020026040519081016040528092919082600360200280828437820191505050505091905050610593565b60405180826000191660001916815260200191505060405180910390f35b341561023d57600080fd5b610245610f75565b604051808215151515815260200191505060405180910390f35b341561026a57600080fd5b610272610f88565b005b341561027f57600080fd5b610287611048565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156102d457600080fd5b6103656004808060a0019060058060200260405190810160405280929190826005602002808284378201915050505050919080608001906004806020026040519081016040528092919082600460200280828437820191505050505091908060200190600180602002604051908101604052809291908260016020028082843782019150505050509190505061106d565b005b341561037257600080fd5b61038c600480803560001916906020019091905050611179565b604051808215151515815260200191505060405180910390f35b34156103b157600080fd5b6103b9611199565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561040657600080fd5b6104206004808035600019169060200190919050506111bf565b604051808215151515815260200191505060405180910390f35b341561044557600080fd5b61044d6111df565b60405180826000191660001916815260200191505060405180910390f35b341561047657600080fd5b61047e6111e7565b604051808261ffff1661ffff16815260200191505060405180910390f35b34156104a757600080fd5b6104d3600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506111ed565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561053057600080fd5b600060149054906101000a900460ff16151561054b57600080fd5b60008060146101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b600080600080600060149054906101000a900460ff161515156105b557600080fd5b61081160a0604051908101604052808d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663079dd4b76000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561068457600080fd5b6102c65a03f1151561069557600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c60006006811015156106df57fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600360068110151561072457fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600460068110151561076957fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152506080604051908101604052808c60016008811015156107b857fe5b602002015181526020018c60026008811015156107d157fe5b602002015181526020018c60056008811015156107ea57fe5b602002015181526020018c600760088110151561080357fe5b60200201518152508a611342565b925060036000846000191660001916815260200190815260200160002060009054906101000a900460ff16156108a55782600019168b73ffffffffffffffffffffffffffffffffffffffff166001600381111561086a57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b60026000846000191660001916815260200190815260200160002060009054906101000a900460ff16156109375782600019168b73ffffffffffffffffffffffffffffffffffffffff16600060038111156108fc57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b61097d8b8489600160038110151561094b57fe5b602002015189600160038110151561095f57fe5b602002015189600160038110151561097357fe5b6020020151611598565b15156109e75782600019168b73ffffffffffffffffffffffffffffffffffffffff16600260038111156109ac57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b610a208960056008811015156109f957fe5b60200201518a6002600881101515610a0d57fe5b602002015161169f90919063ffffffff16565b9150610a408b8b6004600681101515610a3557fe5b6020020151846116bd565b1515610aa95782600019168b73ffffffffffffffffffffffffffffffffffffffff16600380811115610a6e57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b6000821115610add57610ad18a6004600681101515610ac457fe5b60200201518c30856117d9565b1515610adc57600080fd5b5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663079dd4b76000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610b6b57600080fd5b6102c65a03f11515610b7c57600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663e6488fc9308c8c8c8c8c8c6000604051602001526040518863ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200187600660200280838360005b83811015610c39578082015181840152602081019050610c1e565b5050505090500186600860200280838360005b83811015610c67578082015181840152602081019050610c4c565b5050505090500185600160200280838360005b83811015610c95578082015181840152602081019050610c7a565b5050505090500184600360200280838360005b83811015610cc3578082015181840152602081019050610ca8565b5050505090500183600360200280838360005b83811015610cf1578082015181840152602081019050610cd6565b5050505090500182600360200280838360005b83811015610d1f578082015181840152602081019050610d04565b50505050905001975050505050505050602060405180830381600087803b1515610d4857600080fd5b6102c65a03f11515610d5957600080fd5b505050604051805190509050600060010260001916816000191614151515610d8057600080fd5b600160036000856000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f8d898986000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610e4257600080fd5b6102c65a03f11515610e5357600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8c83600190046040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1515610f0257600080fd5b6102c65a03f11515610f1357600080fd5b505050806000191683600019168c73ffffffffffffffffffffffffffffffffffffffff167f44bca8cc6f9375e3d800b6361e71fdde37e4fc86bdc3a72c4f8f69bbd19a01f360405160405180910390a48093505b505050979650505050505050565b600060149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610fe357600080fd5b600060149054906101000a900460ff16151515610fff57600080fd5b6001600060146101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060149054906101000a900460ff1615151561108a57600080fd5b83600060058110151561109957fe5b602002015173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156110d757600080fd5b6110e2848484611342565b9050600160026000836000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550806000191684600060058110151561112c57fe5b602002015173ffffffffffffffffffffffffffffffffffffffff167f07d3242876ac355520b94ab74873262d83b5b81dbd5da781118f78cee0bbe74760405160405180910390a350505050565b60026020528060005260406000206000915054906101000a900460ff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60036020528060005260406000206000915054906101000a900460ff1681565b600060010281565b611f4081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561124857600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561128457600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600083600060058110151561135357fe5b602002015184600160058110151561136757fe5b602002015185600260058110151561137b57fe5b602002015186600360058110151561138f57fe5b60200201518760046005811015156113a357fe5b60200201518760006004811015156113b757fe5b60200201518860016004811015156113cb57fe5b60200201518960026004811015156113df57fe5b60200201518a60036004811015156113f357fe5b60200201518a600060018110151561140757fe5b6020020151604051808b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c0100000000000000000000000002815260140186815260200185815260200184815260200183815260200182600019166000191681526020019a5050505050505050505050604051809103902090509392505050565b600060018560405180807f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250601c0182600019166000191681526020019150506040518091039020858585604051600081526020016040526000604051602001526040518085600019166000191681526020018460ff1660ff16815260200183600019166000191681526020018260001916600019168152602001945050505050602060405160208103908084039060008661646e5a03f1151561165d57600080fd5b50506020604051035173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614905095945050505050565b60008082840190508381101515156116b357fe5b8091505092915050565b6000806000806116ce8688306118df565b92506116da86886119d7565b9150848210806116e957508483105b156116f757600093506117cf565b6117aa8630600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561178a57600080fd5b6102c65a03f1151561179b57600080fd5b505050604051805190506118df565b9050848110156117ca576117be8686611a9a565b15156117c957600080fd5b5b600193505b5050509392505050565b60008473ffffffffffffffffffffffffffffffffffffffff166323b872dd8585856000604051602001526040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15156118ba57600080fd5b6102c65a03f115156118cb57600080fd5b505050604051805190509050949350505050565b60008373ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e611f4061ffff1685856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600088803b15156119b657600080fd5b87f115156119c357600080fd5b505050506040518051905090509392505050565b60008273ffffffffffffffffffffffffffffffffffffffff166370a08231611f4061ffff16846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600088803b1515611a7a57600080fd5b87f11515611a8757600080fd5b5050505060405180519050905092915050565b60008273ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515611b4657600080fd5b6102c65a03f11515611b5757600080fd5b50505060405180519050846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515611bef57600080fd5b6102c65a03f11515611c0057600080fd5b505050604051805190509050929150505600a165627a7a7230582051723af670e00f905ed79837151ff2f428c566a7778657a079e3873cc19020a10029", - "sourceMap": "1086:10007:2:-;;;268:5:37;247:26;;;;;;;;;;;;;;;;;;;;2040:140:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;509:10:39;501:5;;:18;;;;;;;;;;;;;;;;;;2155:17:2;2119:16;;:54;;;;;;;;;;;;;;;;;;2040:140;1086:10007;;;;;;", - "deployedSourceMap": "1086:10007:2:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;833:87:37;;;;;;;;;;;;;;2398:3551:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;247:26:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;666:85;;;;;;;;;;;;;;238:20:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6048:607:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1502:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1333:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1559:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1380:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1441:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;832:169:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;833:87:37;653:5:39;;;;;;;;;;;639:19;;:10;:19;;;631:28;;;;;;;;568:6:37;;;;;;;;;;;560:15;;;;;;;;895:5;886:6;;:14;;;;;;;;;;;;;;;;;;906:9;;;;;;;;;;833:87::o;2398:3551:2:-;2835:20;2872:30;4402:25;5343:19;416:6:37;;;;;;;;;;;415:7;407:16;;;;;;;;2905:647:2;;;;;;;;;;2962:8;2905:647;;;;;;;;2996:16;;;;;;;;;;;:27;;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2905:647;;;;;;;;3067:14;3082:1;3067:17;;;;;;;;;;;;;2905:647;;;;;;;;3130:14;3145:1;3130:17;;;;;;;;;;;;;2905:647;;;;;;;;3191:14;3206:1;3191:17;;;;;;;;;;;;;2905:647;;;;;;;;;;;;;;;;3283:11;3295:1;3283:14;;;;;;;;;;;;;2905:647;;;;3323:11;3335:1;3323:14;;;;;;;;;;;;;2905:647;;;;3375:11;3387:1;3375:14;;;;;;;;;;;;;2905:647;;;;3423:11;3435:1;3423:14;;;;;;;;;;;;;2905:647;;;3503:12;2905:25;:647::i;:::-;2872:680;;3567:15;:39;3583:22;3567:39;;;;;;;;;;;;;;;;;;;;;;;;;;;3563:192;;;3682:22;3622:83;;;3672:8;3622:83;;3637:32;3631:39;;;;;;;;3622:83;;;;;;;;;;;;1433:1;1425:10;;3719:25;;;;3563:192;3769:18;:42;3788:22;3769:42;;;;;;;;;;;;;;;;;;;;;;;;;;;3765:190;;;3882:22;3827:78;;;3872:8;3827:78;;3842:27;3836:34;;;;;;;;3827:78;;;;;;;;;;;;1433:1;1425:10;;3919:25;;;;3765:190;3970:168;4000:8;4022:22;4058:11;4070:1;4058:14;;;;;;;;;;;;;4086:11;4098:1;4086:14;;;;;;;;;;;;;4114:11;4126:1;4114:14;;;;;;;;;;;;;3970:16;:168::i;:::-;3969:169;3965:384;;;4263:22;4154:145;;;4237:8;4154:145;;4186:32;4180:39;;;;;;;;4154:145;;;;;;;;;;;;1433:1;1425:10;;4313:25;;;;3965:384;4430:34;4449:11;4461:1;4449:14;;;;;;;;;;;;;4430:11;4442:1;4430:14;;;;;;;;;;;;;:18;;:34;;;;:::i;:::-;4402:62;;4480:129;4526:8;4548:14;4563:1;4548:17;;;;;;;;;;;;;4579:20;4480:32;:129::i;:::-;4479:130;4475:362;;;4751:22;4625:162;;;4725:8;4625:162;;4657:49;4651:56;;;;;;;;4625:162;;;;;;;;;;;;1433:1;1425:10;;4801:25;;;;4475:362;4935:1;4912:20;:24;4908:276;;;4977:182;5017:14;5032:1;5017:17;;;;;;;;;;;;;5056:8;5094:4;5121:20;4977:18;:182::i;:::-;4952:221;;;;;;;;4908:276;5365:16;;;;;;;;;;;:27;;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:43;;;5430:4;5449:14;5477:11;5502:12;5528:11;5553;5578;5365:234;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5343:256:2;;1433:1;1425:10;;5618:33;;;:11;:33;;;;;5610:42;;;;;;;;5705:4;5663:15;:39;5679:22;5663:39;;;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;5768:16;;;;;;;;;;;:26;;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:37;;;5806:8;5824:11;5816:20;;;5768:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5901:11;5848:65;;;5877:22;5848:65;;;5867:8;5848:65;;;;;;;;;;;;5931:11;5924:18;;429:1:37;2398:3551:2;;;;;;;;;;;;:::o;247:26:37:-;;;;;;;;;;;;;:::o;666:85::-;653:5:39;;;;;;;;;;;639:19;;:10;:19;;;631:28;;;;;;;;416:6:37;;;;;;;;;;;415:7;407:16;;;;;;;;729:4;720:6;;:13;;;;;;;;;;;;;;;;;;739:7;;;;;;;;;;666:85::o;238:20:39:-;;;;;;;;;;;;;:::o;6048:607:2:-;6342:30;416:6:37;;;;;;;;;;;415:7;407:16;;;;;;;;6309:19:2;6329:1;6309:22;;;;;;;;;;;;;6295:36;;:10;:36;;;6287:45;;;;;;;;6375:135;6414:19;6447:16;6477:23;6375:25;:135::i;:::-;6342:168;;6565:4;6520:18;:42;6539:22;6520:42;;;;;;;;;;;;;;;;;;:49;;;;;;;;;;;;;;;;;;6625:22;6579:69;;;6601:19;6621:1;6601:22;;;;;;;;;;;;;6579:69;;;;;;;;;;;;6048:607;;;;:::o;1502:51::-;;;;;;;;;;;;;;;;;;;;;;:::o;1333:40::-;;;;;;;;;;;;;:::o;1559:48::-;;;;;;;;;;;;;;;;;;;;;;:::o;1380:55::-;1433:1;1425:10;;1380:55;:::o;1441:54::-;1491:4;1441:54;:::o;832:169:39:-;653:5;;;;;;;;;;;639:19;;:10;:19;;;631:28;;;;;;;;928:1;908:22;;:8;:22;;;;900:31;;;;;;;;965:8;937:37;;958:5;;;;;;;;;;;937:37;;;;;;;;;;;;988:8;980:5;;:16;;;;;;;;;;;;;;;;;;832:169;:::o;6845:865:2:-;7051:31;7128:19;7148:1;7128:22;;;;;;;;;;;;;7176:19;7196:1;7176:22;;;;;;;;;;;;;7235:19;7255:1;7235:22;;;;;;;;;;;;;7299:19;7319:1;7299:22;;;;;;;;;;;;;7361:19;7381:1;7361:22;;;;;;;;;;;;;7424:16;7441:1;7424:19;;;;;;;;;;;;;7465:16;7482:1;7465:19;;;;;;;;;;;;;7518:16;7535:1;7518:19;;;;;;;;;;;;;7567:16;7584:1;7567:19;;;;;;;;;;;;;7638:23;7662:1;7638:26;;;;;;;;;;;;;7105:598;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7098:605;;6845:865;;;;;:::o;9165:360::-;9345:11;9389:129;9458:4;9412:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9477:1;9492;9507;9389:129;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9379:139;;:6;:139;;;9372:146;;9165:360;;;;;;;:::o;1007:129:38:-;1065:7;1080:9;1096:1;1092;:5;1080:17;;1115:1;1110;:6;;1103:14;;;;;;1130:1;1123:8;;1007:129;;;;;:::o;7921:1107:2:-;8096:37;8222:19;8307:20;8596:27;8244:53;8257:14;8273:8;8291:4;8244:12;:53::i;:::-;8222:75;;8330:36;8341:14;8357:8;8330:10;:36::i;:::-;8307:59;;8399:20;8381:15;:38;:79;;;;8440:20;8423:14;:37;8381:79;8377:122;;;8483:5;8476:12;;;;8377:122;8626:128;8652:14;8688:4;8707:16;;;;;;;;;;;:35;;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8626:12;:128::i;:::-;8596:158;;8881:20;8856:22;:45;8852:148;;;8925:63;8951:14;8967:20;8925:25;:63::i;:::-;8917:72;;;;;;;;8852:148;9017:4;9010:11;;7921:1107;;;;;;;;;:::o;10843:248::-;11001:13;11043:6;11037:26;;;11064:5;11071:3;11076:7;11037:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11030:54;;10843:248;;;;;;:::o;10004:337::-;10150:15;10238:5;10232:22;;;1491:4;10232:52;;10298:5;10317:7;10232:102;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10225:109;;10004:337;;;;;:::o;9621:265::-;9740:13;9826:5;9820:22;;;1491:4;9820:52;;9873:5;9820:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9813:66;;9621:265;;;;:::o;10458:272::-;10577:13;10619:5;10613:20;;;10655:16;;;;;;;;;;;:35;;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10707:6;10613:110;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10606:117;;10458:272;;;;:::o", - "source": "/*\n\n Copyright 2017 Dharma Labs Inc.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n*/\n\npragma solidity 0.4.18;\n\nimport \"./ContractRegistry.sol\";\nimport \"zeppelin-solidity/contracts/lifecycle/Pausable.sol\";\nimport \"zeppelin-solidity/contracts/math/SafeMath.sol\";\nimport \"zeppelin-solidity/contracts/token/ERC20/ERC20.sol\";\n\n\n/**\n * The CreditorProxy is a thin wrapper around the DebtKernel\n * It implements creditor-driven loans as specified by DIP-1\n *\n * Authors: Bo Henderson & Shivani Gupta & Dharma Team\n * DIP: https://github.com/dharmaprotocol/DIPs/issues/1\n */\ncontract CreditorProxy is Pausable {\n using SafeMath for uint;\n\n enum Errors {\n DEBT_OFFER_CANCELLED,\n DEBT_OFFER_ALREADY_FILLED,\n DEBT_OFFER_NON_CONSENSUAL,\n CREDITOR_BALANCE_OR_ALLOWANCE_INSUFFICIENT\n }\n\n ContractRegistry public contractRegistry;\n\n bytes32 constant public NULL_ISSUANCE_HASH = bytes32(0);\n uint16 constant public EXTERNAL_QUERY_GAS_LIMIT = 8000;\n\n mapping (bytes32 => bool) public debtOfferCancelled;\n mapping (bytes32 => bool) public debtOfferFilled;\n\n event LogDebtOfferCancelled(\n address indexed _creditor,\n bytes32 indexed _creditorCommitmentHash\n );\n\n event LogDebtOfferFilled(\n address indexed _creditor,\n bytes32 indexed _creditorCommitmentHash,\n bytes32 indexed _agreementId\n );\n\n event LogError(\n uint8 indexed _errorId,\n address indexed _creditor,\n bytes32 indexed _creditorCommitmentHash\n );\n\n function CreditorProxy(address _contractRegistry)\n public\n {\n contractRegistry = ContractRegistry(_contractRegistry);\n }\n\n /*\n * Submit debt order to DebtKernel if it is consensual with creditor's request\n * Creditor signature in arguments is only used internally,\n * It will not be verified by the Debt Kernel\n */\n function fillDebtOffer(\n address creditor,\n address[6] orderAddresses, // repayment-router, debtor, uw, tc, p-token, relayer\n uint[8] orderValues, // rr, salt, pa, uwFee, rFee, cFee, dFee, expTime\n bytes32[1] orderBytes32, // tcParams\n uint8[3] signaturesV, // debtV, credV, uwV\n bytes32[3] signaturesR,\n bytes32[3] signaturesS\n )\n public\n whenNotPaused\n returns (bytes32 _agreementId)\n {\n\n bytes32 creditorCommitmentHash = getCreditorCommitmentHash(\n [\n creditor,\n address(contractRegistry.debtKernel()), // debt kernel version\n orderAddresses[0], // repayment router version\n orderAddresses[3], // terms contract address\n orderAddresses[4] // principal token adddress\n\n ],\n [\n orderValues[1], // salt\n orderValues[2], // principal amount\n orderValues[5], // creditor fee\n orderValues[7] // commitmentExpirationTimestampInSec\n ],\n orderBytes32 // termsContractParameters\n );\n\n if (debtOfferFilled[creditorCommitmentHash]) {\n LogError(uint8(Errors.DEBT_OFFER_ALREADY_FILLED), creditor, creditorCommitmentHash);\n return NULL_ISSUANCE_HASH;\n }\n\n if (debtOfferCancelled[creditorCommitmentHash]) {\n LogError(uint8(Errors.DEBT_OFFER_CANCELLED), creditor, creditorCommitmentHash);\n return NULL_ISSUANCE_HASH;\n }\n\n if (!isValidSignature(\n creditor,\n creditorCommitmentHash,\n signaturesV[1],\n signaturesR[1],\n signaturesS[1]\n )) {\n LogError(\n uint8(Errors.DEBT_OFFER_NON_CONSENSUAL),\n creditor,\n creditorCommitmentHash\n );\n return NULL_ISSUANCE_HASH;\n }\n\n // principal amount + creditor fee\n uint totalCreditorPayment = orderValues[2].add(orderValues[5]);\n\n if (!hasSufficientBalanceAndAllowance(\n creditor,\n orderAddresses[4],\n totalCreditorPayment\n )) {\n LogError(\n uint8(Errors.CREDITOR_BALANCE_OR_ALLOWANCE_INSUFFICIENT),\n creditor,\n creditorCommitmentHash\n );\n return NULL_ISSUANCE_HASH;\n }\n\n // Transfer principal from creditor to CreditorProxy\n if (totalCreditorPayment > 0) {\n require(\n transferTokensFrom(\n orderAddresses[4],\n creditor,\n address(this),\n totalCreditorPayment\n )\n );\n }\n\n // Grant allowance to the TokenTransferProxy for this contract.\n\n\n // Fill debt order with this contract playing the role of creditor\n bytes32 agreementId = contractRegistry.debtKernel().fillDebtOrder(\n address(this),\n orderAddresses,\n orderValues,\n orderBytes32,\n signaturesV,\n signaturesR,\n signaturesS\n );\n\n require(agreementId != NULL_ISSUANCE_HASH);\n\n debtOfferFilled[creditorCommitmentHash] = true;\n\n // transfer debt token to real creditor\n contractRegistry.debtToken().transfer(creditor, uint256(agreementId));\n\n LogDebtOfferFilled(creditor, creditorCommitmentHash, agreementId);\n\n return agreementId;\n }\n\n /**\n * Allows creditor to prevent a debt offer from being used in the future\n */\n function cancelDebtOffer(\n address[5] commitmentAddresses,\n uint[4] commitmentValues,\n bytes32[1] termsContractParameters\n )\n public\n whenNotPaused\n {\n // sender must be the creditor\n require(msg.sender == commitmentAddresses[0]);\n bytes32 creditorCommitmentHash = getCreditorCommitmentHash(\n commitmentAddresses,\n commitmentValues,\n termsContractParameters\n );\n debtOfferCancelled[creditorCommitmentHash] = true;\n LogDebtOfferCancelled(commitmentAddresses[0], creditorCommitmentHash);\n }\n\n ////////////////////////\n // INTERNAL FUNCTIONS //\n ////////////////////////\n\n /**\n * Returns the messaged signed by the creditor to indicate their commitment\n */\n function getCreditorCommitmentHash(\n address[5] commitmentAddresses,\n uint[4] commitmentValues,\n bytes32[1] termsContractParameters\n )\n internal\n pure\n returns (bytes32 _creditorCommitmentHash)\n {\n return keccak256(\n commitmentAddresses[0], // creditor\n commitmentAddresses[1], // debt kernel version\n commitmentAddresses[2], // repayment router version\n commitmentAddresses[3], // terms contract address\n commitmentAddresses[4], // principal token address\n commitmentValues[0], // salt\n commitmentValues[1], // principal amount\n commitmentValues[2], // creditor fee\n commitmentValues[3], // commitmentExpirationTimestampInSec\n termsContractParameters[0] // terms contract parameters\n );\n }\n\n\n /**\n * Assert that the creditor has a sufficient token balance and has granted the token transfer\n * proxy contract sufficient allowance to suffice for the principal and creditor fee.\n */\n function hasSufficientBalanceAndAllowance(\n address creditor,\n address principalToken,\n uint totalCreditorPayment\n )\n internal\n returns (bool _isBalanceAndAllowanceSufficient)\n {\n // The allowance that this contract has for a creditor's tokens.\n uint proxyAllowance = getAllowance(principalToken, creditor, address(this));\n uint creditorBalance = getBalance(principalToken, creditor);\n\n if (creditorBalance < totalCreditorPayment || proxyAllowance < totalCreditorPayment) {\n return false;\n }\n\n // The allowance that the token transfer proxy has for this contract's tokens.\n uint tokenTransferAllowance = getAllowance(\n principalToken,\n address(this),\n contractRegistry.tokenTransferProxy()\n );\n\n // Ensure the token transfer proxy can transfer tokens from the creditor proxy\n if (tokenTransferAllowance < totalCreditorPayment) {\n require(setTokenTransferAllowance(principalToken, totalCreditorPayment));\n }\n\n return true;\n }\n\n /**\n * Given a hashed message, a signer's address, and a signature,\n * returns whether the signature is valid.\n */\n function isValidSignature(\n address signer,\n bytes32 hash,\n uint8 v,\n bytes32 r,\n bytes32 s\n )\n internal\n pure\n returns (bool _valid)\n {\n return signer == ecrecover(\n keccak256(\"\\x19Ethereum Signed Message:\\n32\", hash),\n v,\n r,\n s\n );\n }\n\n /**\n * Helper function for querying an address' balance on a given token.\n */\n function getBalance(\n address token,\n address owner\n )\n internal\n view\n returns (uint _balance)\n {\n // Limit gas to prevent reentrancy.\n return ERC20(token).balanceOf.gas(EXTERNAL_QUERY_GAS_LIMIT)(owner);\n }\n\n /**\n * Helper function for querying this contract's allowance for transferring the given token.\n */\n function getAllowance(\n address token,\n address owner,\n address granter\n )\n internal\n view\n returns (uint _allowance)\n {\n // Limit gas to prevent reentrancy.\n return ERC20(token).allowance.gas(EXTERNAL_QUERY_GAS_LIMIT)(\n owner,\n granter\n );\n }\n\n /**\n * Helper function for approving this address' allowance to Dharma's token transfer proxy.\n */\n function setTokenTransferAllowance(\n address token,\n uint amount\n )\n internal\n returns (bool _success)\n {\n return ERC20(token).approve(\n address(contractRegistry.tokenTransferProxy()),\n amount\n );\n }\n\n\n /**\n * Helper function for transferring a specified amount of tokens between two parties.\n */\n function transferTokensFrom(\n address _token,\n address _from,\n address _to,\n uint _amount\n )\n internal\n returns (bool _success)\n {\n return ERC20(_token).transferFrom(_from, _to, _amount);\n }\n}\n", + "bytecode": "0x606060405260008060146101000a81548160ff021916908315150217905550341561002957600080fd5b604051602080611be483398101604052808051906020019091905050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611b0e806100d66000396000f3006060604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633c1c90a7146100bf5780633f4ba83a1461015d57806347f7835d146101725780635c975abb146102d05780638456cb59146102fd5780638da5cb5b14610312578063a318b5f714610367578063abf410e5146103a6578063c1614d00146103fb578063e283040d1461043a578063f06bbf751461046b578063f2fde38b1461049c575b600080fd5b34156100ca57600080fd5b61015b60048080608001906004806020026040519081016040528092919082600460200280828437820191505050505091908060800190600480602002604051908101604052809291908260046020028082843782019150505050509190806020019060018060200260405190810160405280929190826001602002808284378201915050505050919050506104d5565b005b341561016857600080fd5b6101706105e1565b005b341561017d57600080fd5b6102b2600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908060c001906006806020026040519081016040528092919082600660200280828437820191505050505091908061010001906008806020026040519081016040528092919082600860200280828437820191505050505091908060200190600180602002604051908101604052809291908260016020028082843782019150505050509190806060019060038060200260405190810160405280929190826003602002808284378201915050505050919080606001906003806020026040519081016040528092919082600360200280828437820191505050505091908060600190600380602002604051908101604052809291908260036020028082843782019150505050509190505061069f565b60405180826000191660001916815260200191505060405180910390f35b34156102db57600080fd5b6102e3610fa7565b604051808215151515815260200191505060405180910390f35b341561030857600080fd5b610310610fba565b005b341561031d57600080fd5b61032561107a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561037257600080fd5b61038c60048080356000191690602001909190505061109f565b604051808215151515815260200191505060405180910390f35b34156103b157600080fd5b6103b96110bf565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561040657600080fd5b6104206004808035600019169060200190919050506110e5565b604051808215151515815260200191505060405180910390f35b341561044557600080fd5b61044d611105565b60405180826000191660001916815260200191505060405180910390f35b341561047657600080fd5b61047e61110d565b604051808261ffff1661ffff16815260200191505060405180910390f35b34156104a757600080fd5b6104d3600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611113565b005b60008060149054906101000a900460ff161515156104f257600080fd5b83600060048110151561050157fe5b602002015173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561053f57600080fd5b61054a848484611268565b9050600160026000836000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550806000191684600060048110151561059457fe5b602002015173ffffffffffffffffffffffffffffffffffffffff167f07d3242876ac355520b94ab74873262d83b5b81dbd5da781118f78cee0bbe74760405160405180910390a350505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561063c57600080fd5b600060149054906101000a900460ff16151561065757600080fd5b60008060146101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b600080600080600060149054906101000a900460ff161515156106c157600080fd5b6108436080604051908101604052808d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600060068110151561071157fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600260068110151561075657fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600360068110151561079b57fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152506080604051908101604052808c60056008811015156107ea57fe5b602002015181526020018c600060088110151561080357fe5b602002015181526020018c600760088110151561081c57fe5b602002015181526020018c600160088110151561083557fe5b60200201518152508a611268565b925060036000846000191660001916815260200190815260200160002060009054906101000a900460ff16156108d75782600019168b73ffffffffffffffffffffffffffffffffffffffff166001600381111561089c57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b60026000846000191660001916815260200190815260200160002060009054906101000a900460ff16156109695782600019168b73ffffffffffffffffffffffffffffffffffffffff166000600381111561092e57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b6109af8b8489600160038110151561097d57fe5b602002015189600160038110151561099157fe5b60200201518960016003811015156109a557fe5b6020020151611468565b1515610a195782600019168b73ffffffffffffffffffffffffffffffffffffffff16600260038111156109de57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b610a52896005600881101515610a2b57fe5b60200201518a6002600881101515610a3f57fe5b602002015161156f90919063ffffffff16565b9150610a728b8b6004600681101515610a6757fe5b60200201518461158d565b1515610adb5782600019168b73ffffffffffffffffffffffffffffffffffffffff16600380811115610aa057fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b6000821115610b0f57610b038a6004600681101515610af657fe5b60200201518c30856116a9565b1515610b0e57600080fd5b5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663079dd4b76000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610b9d57600080fd5b6102c65a03f11515610bae57600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663e6488fc9308c8c8c8c8c8c6000604051602001526040518863ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200187600660200280838360005b83811015610c6b578082015181840152602081019050610c50565b5050505090500186600860200280838360005b83811015610c99578082015181840152602081019050610c7e565b5050505090500185600160200280838360005b83811015610cc7578082015181840152602081019050610cac565b5050505090500184600360200280838360005b83811015610cf5578082015181840152602081019050610cda565b5050505090500183600360200280838360005b83811015610d23578082015181840152602081019050610d08565b5050505090500182600360200280838360005b83811015610d51578082015181840152602081019050610d36565b50505050905001975050505050505050602060405180830381600087803b1515610d7a57600080fd5b6102c65a03f11515610d8b57600080fd5b505050604051805190509050600060010260001916816000191614151515610db257600080fd5b600160036000856000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f8d898986000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610e7457600080fd5b6102c65a03f11515610e8557600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8c83600190046040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1515610f3457600080fd5b6102c65a03f11515610f4557600080fd5b505050806000191683600019168c73ffffffffffffffffffffffffffffffffffffffff167f44bca8cc6f9375e3d800b6361e71fdde37e4fc86bdc3a72c4f8f69bbd19a01f360405160405180910390a48093505b505050979650505050505050565b600060149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561101557600080fd5b600060149054906101000a900460ff1615151561103157600080fd5b6001600060146101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60026020528060005260406000206000915054906101000a900460ff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60036020528060005260406000206000915054906101000a900460ff1681565b600060010281565b611f4081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561116e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156111aa57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600083600060048110151561127957fe5b602002015184600160048110151561128d57fe5b60200201518460006004811015156112a157fe5b60200201518660026004811015156112b557fe5b60200201518660016004811015156112c957fe5b60200201518860036004811015156112dd57fe5b60200201518760006001811015156112f157fe5b602002015189600260048110151561130557fe5b60200201518a600360048110151561131957fe5b6020020151604051808a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018881526020018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c0100000000000000000000000002815260140184600019166000191681526020018381526020018281526020019950505050505050505050604051809103902090509392505050565b600060018560405180807f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250601c0182600019166000191681526020019150506040518091039020858585604051600081526020016040526000604051602001526040518085600019166000191681526020018460ff1660ff16815260200183600019166000191681526020018260001916600019168152602001945050505050602060405160208103908084039060008661646e5a03f1151561152d57600080fd5b50506020604051035173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614905095945050505050565b600080828401905083811015151561158357fe5b8091505092915050565b60008060008061159e8688306117af565b92506115aa86886118a7565b9150848210806115b957508483105b156115c7576000935061169f565b61167a8630600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561165a57600080fd5b6102c65a03f1151561166b57600080fd5b505050604051805190506117af565b90508481101561169a5761168e868661196a565b151561169957600080fd5b5b600193505b5050509392505050565b60008473ffffffffffffffffffffffffffffffffffffffff166323b872dd8585856000604051602001526040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b151561178a57600080fd5b6102c65a03f1151561179b57600080fd5b505050604051805190509050949350505050565b60008373ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e611f4061ffff1685856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600088803b151561188657600080fd5b87f1151561189357600080fd5b505050506040518051905090509392505050565b60008273ffffffffffffffffffffffffffffffffffffffff166370a08231611f4061ffff16846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600088803b151561194a57600080fd5b87f1151561195757600080fd5b5050505060405180519050905092915050565b60008273ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515611a1657600080fd5b6102c65a03f11515611a2757600080fd5b50505060405180519050846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515611abf57600080fd5b6102c65a03f11515611ad057600080fd5b505050604051805190509050929150505600a165627a7a72305820627f64d2f5e59580e881310ad781c1c18c95e290f478ac08b283c8661b5071d90029", + "deployedBytecode": "0x6060604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633c1c90a7146100bf5780633f4ba83a1461015d57806347f7835d146101725780635c975abb146102d05780638456cb59146102fd5780638da5cb5b14610312578063a318b5f714610367578063abf410e5146103a6578063c1614d00146103fb578063e283040d1461043a578063f06bbf751461046b578063f2fde38b1461049c575b600080fd5b34156100ca57600080fd5b61015b60048080608001906004806020026040519081016040528092919082600460200280828437820191505050505091908060800190600480602002604051908101604052809291908260046020028082843782019150505050509190806020019060018060200260405190810160405280929190826001602002808284378201915050505050919050506104d5565b005b341561016857600080fd5b6101706105e1565b005b341561017d57600080fd5b6102b2600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908060c001906006806020026040519081016040528092919082600660200280828437820191505050505091908061010001906008806020026040519081016040528092919082600860200280828437820191505050505091908060200190600180602002604051908101604052809291908260016020028082843782019150505050509190806060019060038060200260405190810160405280929190826003602002808284378201915050505050919080606001906003806020026040519081016040528092919082600360200280828437820191505050505091908060600190600380602002604051908101604052809291908260036020028082843782019150505050509190505061069f565b60405180826000191660001916815260200191505060405180910390f35b34156102db57600080fd5b6102e3610fa7565b604051808215151515815260200191505060405180910390f35b341561030857600080fd5b610310610fba565b005b341561031d57600080fd5b61032561107a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561037257600080fd5b61038c60048080356000191690602001909190505061109f565b604051808215151515815260200191505060405180910390f35b34156103b157600080fd5b6103b96110bf565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561040657600080fd5b6104206004808035600019169060200190919050506110e5565b604051808215151515815260200191505060405180910390f35b341561044557600080fd5b61044d611105565b60405180826000191660001916815260200191505060405180910390f35b341561047657600080fd5b61047e61110d565b604051808261ffff1661ffff16815260200191505060405180910390f35b34156104a757600080fd5b6104d3600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611113565b005b60008060149054906101000a900460ff161515156104f257600080fd5b83600060048110151561050157fe5b602002015173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561053f57600080fd5b61054a848484611268565b9050600160026000836000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550806000191684600060048110151561059457fe5b602002015173ffffffffffffffffffffffffffffffffffffffff167f07d3242876ac355520b94ab74873262d83b5b81dbd5da781118f78cee0bbe74760405160405180910390a350505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561063c57600080fd5b600060149054906101000a900460ff16151561065757600080fd5b60008060146101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b600080600080600060149054906101000a900460ff161515156106c157600080fd5b6108436080604051908101604052808d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600060068110151561071157fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600260068110151561075657fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600360068110151561079b57fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152506080604051908101604052808c60056008811015156107ea57fe5b602002015181526020018c600060088110151561080357fe5b602002015181526020018c600760088110151561081c57fe5b602002015181526020018c600160088110151561083557fe5b60200201518152508a611268565b925060036000846000191660001916815260200190815260200160002060009054906101000a900460ff16156108d75782600019168b73ffffffffffffffffffffffffffffffffffffffff166001600381111561089c57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b60026000846000191660001916815260200190815260200160002060009054906101000a900460ff16156109695782600019168b73ffffffffffffffffffffffffffffffffffffffff166000600381111561092e57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b6109af8b8489600160038110151561097d57fe5b602002015189600160038110151561099157fe5b60200201518960016003811015156109a557fe5b6020020151611468565b1515610a195782600019168b73ffffffffffffffffffffffffffffffffffffffff16600260038111156109de57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b610a52896005600881101515610a2b57fe5b60200201518a6002600881101515610a3f57fe5b602002015161156f90919063ffffffff16565b9150610a728b8b6004600681101515610a6757fe5b60200201518461158d565b1515610adb5782600019168b73ffffffffffffffffffffffffffffffffffffffff16600380811115610aa057fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b6000821115610b0f57610b038a6004600681101515610af657fe5b60200201518c30856116a9565b1515610b0e57600080fd5b5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663079dd4b76000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610b9d57600080fd5b6102c65a03f11515610bae57600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663e6488fc9308c8c8c8c8c8c6000604051602001526040518863ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200187600660200280838360005b83811015610c6b578082015181840152602081019050610c50565b5050505090500186600860200280838360005b83811015610c99578082015181840152602081019050610c7e565b5050505090500185600160200280838360005b83811015610cc7578082015181840152602081019050610cac565b5050505090500184600360200280838360005b83811015610cf5578082015181840152602081019050610cda565b5050505090500183600360200280838360005b83811015610d23578082015181840152602081019050610d08565b5050505090500182600360200280838360005b83811015610d51578082015181840152602081019050610d36565b50505050905001975050505050505050602060405180830381600087803b1515610d7a57600080fd5b6102c65a03f11515610d8b57600080fd5b505050604051805190509050600060010260001916816000191614151515610db257600080fd5b600160036000856000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f8d898986000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610e7457600080fd5b6102c65a03f11515610e8557600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8c83600190046040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1515610f3457600080fd5b6102c65a03f11515610f4557600080fd5b505050806000191683600019168c73ffffffffffffffffffffffffffffffffffffffff167f44bca8cc6f9375e3d800b6361e71fdde37e4fc86bdc3a72c4f8f69bbd19a01f360405160405180910390a48093505b505050979650505050505050565b600060149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561101557600080fd5b600060149054906101000a900460ff1615151561103157600080fd5b6001600060146101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60026020528060005260406000206000915054906101000a900460ff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60036020528060005260406000206000915054906101000a900460ff1681565b600060010281565b611f4081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561116e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156111aa57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600083600060048110151561127957fe5b602002015184600160048110151561128d57fe5b60200201518460006004811015156112a157fe5b60200201518660026004811015156112b557fe5b60200201518660016004811015156112c957fe5b60200201518860036004811015156112dd57fe5b60200201518760006001811015156112f157fe5b602002015189600260048110151561130557fe5b60200201518a600360048110151561131957fe5b6020020151604051808a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018881526020018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c0100000000000000000000000002815260140184600019166000191681526020018381526020018281526020019950505050505050505050604051809103902090509392505050565b600060018560405180807f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250601c0182600019166000191681526020019150506040518091039020858585604051600081526020016040526000604051602001526040518085600019166000191681526020018460ff1660ff16815260200183600019166000191681526020018260001916600019168152602001945050505050602060405160208103908084039060008661646e5a03f1151561152d57600080fd5b50506020604051035173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614905095945050505050565b600080828401905083811015151561158357fe5b8091505092915050565b60008060008061159e8688306117af565b92506115aa86886118a7565b9150848210806115b957508483105b156115c7576000935061169f565b61167a8630600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561165a57600080fd5b6102c65a03f1151561166b57600080fd5b505050604051805190506117af565b90508481101561169a5761168e868661196a565b151561169957600080fd5b5b600193505b5050509392505050565b60008473ffffffffffffffffffffffffffffffffffffffff166323b872dd8585856000604051602001526040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b151561178a57600080fd5b6102c65a03f1151561179b57600080fd5b505050604051805190509050949350505050565b60008373ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e611f4061ffff1685856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600088803b151561188657600080fd5b87f1151561189357600080fd5b505050506040518051905090509392505050565b60008273ffffffffffffffffffffffffffffffffffffffff166370a08231611f4061ffff16846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600088803b151561194a57600080fd5b87f1151561195757600080fd5b5050505060405180519050905092915050565b60008273ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515611a1657600080fd5b6102c65a03f11515611a2757600080fd5b50505060405180519050846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515611abf57600080fd5b6102c65a03f11515611ad057600080fd5b505050604051805190509050929150505600a165627a7a72305820627f64d2f5e59580e881310ad781c1c18c95e290f478ac08b283c8661b5071d90029", + "sourceMap": "1086:9807:2:-;;;268:5:37;247:26;;;;;;;;;;;;;;;;;;;;2040:140:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;509:10:39;501:5;;:18;;;;;;;;;;;;;;;;;;2155:17:2;2119:16;;:54;;;;;;;;;;;;;;;;;;2040:140;1086:9807;;;;;;", + "deployedSourceMap": "1086:9807:2:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5952:607;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;833:87:37;;;;;;;;;;;;;;2398:3455:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;247:26:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;666:85;;;;;;;;;;;;;;238:20:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1502:51:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1333:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1559:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1380:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1441:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;832:169:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;5952:607:2;6246:30;416:6:37;;;;;;;;;;;415:7;407:16;;;;;;;;6213:19:2;6233:1;6213:22;;;;;;;;;;;;;6199:36;;:10;:36;;;6191:45;;;;;;;;6279:135;6318:19;6351:16;6381:23;6279:25;:135::i;:::-;6246:168;;6469:4;6424:18;:42;6443:22;6424:42;;;;;;;;;;;;;;;;;;:49;;;;;;;;;;;;;;;;;;6529:22;6483:69;;;6505:19;6525:1;6505:22;;;;;;;;;;;;;6483:69;;;;;;;;;;;;5952:607;;;;:::o;833:87:37:-;653:5:39;;;;;;;;;;;639:19;;:10;:19;;;631:28;;;;;;;;568:6:37;;;;;;;;;;;560:15;;;;;;;;895:5;886:6;;:14;;;;;;;;;;;;;;;;;;906:9;;;;;;;;;;833:87::o;2398:3455:2:-;2835:20;2872:30;4306:25;5247:19;416:6:37;;;;;;;;;;;415:7;407:16;;;;;;;;2905:550:2;;;;;;;;;;2962:8;2905:550;;;;;;;;2988:14;3003:1;2988:17;;;;;;;;;;;;;2905:550;;;;;;;;3051:14;3066:1;3051:17;;;;;;;;;;;;;2905:550;;;;;;;;3101:14;3116:1;3101:17;;;;;;;;;;;;;2905:550;;;;;;;;;;;;;;;;3181:11;3193:1;3181:14;;;;;;;;;;;;;2905:550;;;;3229:11;3241:1;3229:14;;;;;;;;;;;;;2905:550;;;;3286:11;3298:1;3286:14;;;;;;;;;;;;;2905:550;;;;3356:11;3368:1;3356:14;;;;;;;;;;;;;2905:550;;;3406:12;2905:25;:550::i;:::-;2872:583;;3470:15;:39;3486:22;3470:39;;;;;;;;;;;;;;;;;;;;;;;;;;;3466:192;;;3585:22;3525:83;;;3575:8;3525:83;;3540:32;3534:39;;;;;;;;3525:83;;;;;;;;;;;;1433:1;1425:10;;3622:25;;;;3466:192;3672:18;:42;3691:22;3672:42;;;;;;;;;;;;;;;;;;;;;;;;;;;3668:191;;;3785:22;3730:78;;;3775:8;3730:78;;3745:27;3739:34;;;;;;;;3730:78;;;;;;;;;;;;1433:1;1425:10;;3822:25;;;;3668:191;3874:168;3904:8;3926:22;3962:11;3974:1;3962:14;;;;;;;;;;;;;3990:11;4002:1;3990:14;;;;;;;;;;;;;4018:11;4030:1;4018:14;;;;;;;;;;;;;3874:16;:168::i;:::-;3873:169;3869:384;;;4167:22;4058:145;;;4141:8;4058:145;;4090:32;4084:39;;;;;;;;4058:145;;;;;;;;;;;;1433:1;1425:10;;4217:25;;;;3869:384;4334:34;4353:11;4365:1;4353:14;;;;;;;;;;;;;4334:11;4346:1;4334:14;;;;;;;;;;;;;:18;;:34;;;;:::i;:::-;4306:62;;4384:129;4430:8;4452:14;4467:1;4452:17;;;;;;;;;;;;;4483:20;4384:32;:129::i;:::-;4383:130;4379:362;;;4655:22;4529:162;;;4629:8;4529:162;;4561:49;4555:56;;;;;;;;4529:162;;;;;;;;;;;;1433:1;1425:10;;4705:25;;;;4379:362;4839:1;4816:20;:24;4812:276;;;4881:182;4921:14;4936:1;4921:17;;;;;;;;;;;;;4960:8;4998:4;5025:20;4881:18;:182::i;:::-;4856:221;;;;;;;;4812:276;5269:16;;;;;;;;;;;:27;;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:43;;;5334:4;5353:14;5381:11;5406:12;5432:11;5457;5482;5269:234;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5247:256:2;;1433:1;1425:10;;5522:33;;;:11;:33;;;;;5514:42;;;;;;;;5609:4;5567:15;:39;5583:22;5567:39;;;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;5672:16;;;;;;;;;;;:26;;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:37;;;5710:8;5728:11;5720:20;;;5672:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5805:11;5752:65;;;5781:22;5752:65;;;5771:8;5752:65;;;;;;;;;;;;5835:11;5828:18;;429:1:37;2398:3455:2;;;;;;;;;;;;:::o;247:26:37:-;;;;;;;;;;;;;:::o;666:85::-;653:5:39;;;;;;;;;;;639:19;;:10;:19;;;631:28;;;;;;;;416:6:37;;;;;;;;;;;415:7;407:16;;;;;;;;729:4;720:6;;:13;;;;;;;;;;;;;;;;;;739:7;;;;;;;;;;666:85::o;238:20:39:-;;;;;;;;;;;;;:::o;1502:51:2:-;;;;;;;;;;;;;;;;;;;;;;:::o;1333:40::-;;;;;;;;;;;;;:::o;1559:48::-;;;;;;;;;;;;;;;;;;;;;;:::o;1380:55::-;1433:1;1425:10;;1380:55;:::o;1441:54::-;1491:4;1441:54;:::o;832:169:39:-;653:5;;;;;;;;;;;639:19;;:10;:19;;;631:28;;;;;;;;928:1;908:22;;:8;:22;;;;900:31;;;;;;;;965:8;937:37;;958:5;;;;;;;;;;;937:37;;;;;;;;;;;;988:8;980:5;;:16;;;;;;;;;;;;;;;;;;832:169;:::o;6749:761:2:-;6955:31;7032:19;7052:1;7032:22;;;;;;;;;;;;;7080:19;7100:1;7080:22;;;;;;;;;;;;;7144:16;7161:1;7144:19;;;;;;;;;;;;;7193;7213:1;7193:22;;;;;;;;;;;;;7244:16;7261:1;7244:19;;;;;;;;;;;;;7302;7322:1;7302:22;;;;;;;;;;;;;7355:23;7379:1;7355:26;;;;;;;;;;;;;7395:16;7412:1;7395:19;;;;;;;;;;;;;7466:16;7483:1;7466:19;;;;;;;;;;;;;7009:494;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7002:501;;6749:761;;;;;:::o;8965:360::-;9145:11;9189:129;9258:4;9212:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9277:1;9292;9307;9189:129;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9179:139;;:6;:139;;;9172:146;;8965:360;;;;;;;:::o;1007:129:38:-;1065:7;1080:9;1096:1;1092;:5;1080:17;;1115:1;1110;:6;;1103:14;;;;;;1130:1;1123:8;;1007:129;;;;;:::o;7721:1107:2:-;7896:37;8022:19;8107:20;8396:27;8044:53;8057:14;8073:8;8091:4;8044:12;:53::i;:::-;8022:75;;8130:36;8141:14;8157:8;8130:10;:36::i;:::-;8107:59;;8199:20;8181:15;:38;:79;;;;8240:20;8223:14;:37;8181:79;8177:122;;;8283:5;8276:12;;;;8177:122;8426:128;8452:14;8488:4;8507:16;;;;;;;;;;;:35;;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8426:12;:128::i;:::-;8396:158;;8681:20;8656:22;:45;8652:148;;;8725:63;8751:14;8767:20;8725:25;:63::i;:::-;8717:72;;;;;;;;8652:148;8817:4;8810:11;;7721:1107;;;;;;;;;:::o;10643:248::-;10801:13;10843:6;10837:26;;;10864:5;10871:3;10876:7;10837:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10830:54;;10643:248;;;;;;:::o;9804:337::-;9950:15;10038:5;10032:22;;;1491:4;10032:52;;10098:5;10117:7;10032:102;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10025:109;;9804:337;;;;;:::o;9421:265::-;9540:13;9626:5;9620:22;;;1491:4;9620:52;;9673:5;9620:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9613:66;;9421:265;;;;:::o;10258:272::-;10377:13;10419:5;10413:20;;;10455:16;;;;;;;;;;;:35;;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10507:6;10413:110;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10406:117;;10258:272;;;;:::o", + "source": "/*\n\n Copyright 2017 Dharma Labs Inc.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n*/\n\npragma solidity 0.4.18;\n\nimport \"./ContractRegistry.sol\";\nimport \"zeppelin-solidity/contracts/lifecycle/Pausable.sol\";\nimport \"zeppelin-solidity/contracts/math/SafeMath.sol\";\nimport \"zeppelin-solidity/contracts/token/ERC20/ERC20.sol\";\n\n\n/**\n * The CreditorProxy is a thin wrapper around the DebtKernel\n * It implements creditor-driven loans as specified by DIP-1\n *\n * Authors: Bo Henderson & Shivani Gupta & Dharma Team\n * DIP: https://github.com/dharmaprotocol/DIPs/issues/1\n */\ncontract CreditorProxy is Pausable {\n using SafeMath for uint;\n\n enum Errors {\n DEBT_OFFER_CANCELLED,\n DEBT_OFFER_ALREADY_FILLED,\n DEBT_OFFER_NON_CONSENSUAL,\n CREDITOR_BALANCE_OR_ALLOWANCE_INSUFFICIENT\n }\n\n ContractRegistry public contractRegistry;\n\n bytes32 constant public NULL_ISSUANCE_HASH = bytes32(0);\n uint16 constant public EXTERNAL_QUERY_GAS_LIMIT = 8000;\n\n mapping (bytes32 => bool) public debtOfferCancelled;\n mapping (bytes32 => bool) public debtOfferFilled;\n\n event LogDebtOfferCancelled(\n address indexed _creditor,\n bytes32 indexed _creditorCommitmentHash\n );\n\n event LogDebtOfferFilled(\n address indexed _creditor,\n bytes32 indexed _creditorCommitmentHash,\n bytes32 indexed _agreementId\n );\n\n event LogError(\n uint8 indexed _errorId,\n address indexed _creditor,\n bytes32 indexed _creditorCommitmentHash\n );\n\n function CreditorProxy(address _contractRegistry)\n public\n {\n contractRegistry = ContractRegistry(_contractRegistry);\n }\n\n /*\n * Submit debt order to DebtKernel if it is consensual with creditor's request\n * Creditor signature in arguments is only used internally,\n * It will not be verified by the Debt Kernel\n */\n function fillDebtOffer(\n address creditor,\n address[6] orderAddresses, // repayment-router, debtor, uw, tc, p-token, relayer\n uint[8] orderValues, // rr, salt, pa, uwFee, rFee, cFee, dFee, expTime\n bytes32[1] orderBytes32, // tcParams\n uint8[3] signaturesV, // debtV, credV, uwV\n bytes32[3] signaturesR,\n bytes32[3] signaturesS\n )\n public\n whenNotPaused\n returns (bytes32 _agreementId)\n {\n\n bytes32 creditorCommitmentHash = getCreditorCommitmentHash(\n [\n creditor,\n orderAddresses[0], // repayment router version\n orderAddresses[2], // underwriter\n orderAddresses[3] // termsContract\n ],\n [\n orderValues[5], // creditor fee\n orderValues[0], // underwriterRiskRating\n orderValues[7], // commitmentExpirationTimestampInSec\n orderValues[1] // salt\n ],\n orderBytes32 // termsContractParameters\n );\n\n if (debtOfferFilled[creditorCommitmentHash]) {\n LogError(uint8(Errors.DEBT_OFFER_ALREADY_FILLED), creditor, creditorCommitmentHash);\n return NULL_ISSUANCE_HASH;\n }\n\n if (debtOfferCancelled[creditorCommitmentHash]) {\n LogError(uint8(Errors.DEBT_OFFER_CANCELLED), creditor, creditorCommitmentHash);\n return NULL_ISSUANCE_HASH; \n }\n\n if (!isValidSignature(\n creditor,\n creditorCommitmentHash,\n signaturesV[1],\n signaturesR[1],\n signaturesS[1]\n )) {\n LogError(\n uint8(Errors.DEBT_OFFER_NON_CONSENSUAL),\n creditor,\n creditorCommitmentHash\n );\n return NULL_ISSUANCE_HASH;\n }\n\n // principal amount + creditor fee\n uint totalCreditorPayment = orderValues[2].add(orderValues[5]);\n\n if (!hasSufficientBalanceAndAllowance(\n creditor,\n orderAddresses[4],\n totalCreditorPayment\n )) {\n LogError(\n uint8(Errors.CREDITOR_BALANCE_OR_ALLOWANCE_INSUFFICIENT),\n creditor,\n creditorCommitmentHash\n );\n return NULL_ISSUANCE_HASH;\n }\n\n // Transfer principal from creditor to CreditorProxy\n if (totalCreditorPayment > 0) {\n require(\n transferTokensFrom(\n orderAddresses[4],\n creditor,\n address(this),\n totalCreditorPayment\n )\n );\n }\n\n // Grant allowance to the TokenTransferProxy for this contract.\n\n\n // Fill debt order with this contract playing the role of creditor\n bytes32 agreementId = contractRegistry.debtKernel().fillDebtOrder(\n address(this),\n orderAddresses,\n orderValues,\n orderBytes32,\n signaturesV,\n signaturesR,\n signaturesS\n );\n\n require(agreementId != NULL_ISSUANCE_HASH);\n\n debtOfferFilled[creditorCommitmentHash] = true;\n\n // transfer debt token to real creditor\n contractRegistry.debtToken().transfer(creditor, uint256(agreementId));\n\n LogDebtOfferFilled(creditor, creditorCommitmentHash, agreementId);\n\n return agreementId;\n }\n\n /**\n * Allows creditor to prevent a debt offer from being used in the future\n */\n function cancelDebtOffer(\n address[4] commitmentAddresses,\n uint[4] commitmentValues,\n bytes32[1] termsContractParameters\n )\n public\n whenNotPaused\n {\n // sender must be the creditor\n require(msg.sender == commitmentAddresses[0]);\n bytes32 creditorCommitmentHash = getCreditorCommitmentHash(\n commitmentAddresses,\n commitmentValues,\n termsContractParameters\n );\n debtOfferCancelled[creditorCommitmentHash] = true;\n LogDebtOfferCancelled(commitmentAddresses[0], creditorCommitmentHash);\n }\n\n ////////////////////////\n // INTERNAL FUNCTIONS //\n ////////////////////////\n\n /**\n * Returns the messaged signed by the creditor to indicate their commitment\n */\n function getCreditorCommitmentHash(\n address[4] commitmentAddresses,\n uint[4] commitmentValues,\n bytes32[1] termsContractParameters\n )\n internal\n pure\n returns (bytes32 _creditorCommitmentHash)\n {\n return keccak256(\n commitmentAddresses[0], // creditor\n commitmentAddresses[1], // repayment router version\n commitmentValues[0], // creditor fee\n commitmentAddresses[2], // underwriter\n commitmentValues[1], // underwriterRiskRating\n commitmentAddresses[3], // termsContract\n termsContractParameters[0],\n commitmentValues[2], // commitmentExpirationTimestampInSec\n commitmentValues[3] // salt\n );\n }\n\n\n /**\n * Assert that the creditor has a sufficient token balance and has granted the token transfer\n * proxy contract sufficient allowance to suffice for the principal and creditor fee.\n */\n function hasSufficientBalanceAndAllowance(\n address creditor,\n address principalToken,\n uint totalCreditorPayment\n )\n internal\n returns (bool _isBalanceAndAllowanceSufficient)\n {\n // The allowance that this contract has for a creditor's tokens.\n uint proxyAllowance = getAllowance(principalToken, creditor, address(this));\n uint creditorBalance = getBalance(principalToken, creditor);\n\n if (creditorBalance < totalCreditorPayment || proxyAllowance < totalCreditorPayment) {\n return false;\n }\n\n // The allowance that the token transfer proxy has for this contract's tokens.\n uint tokenTransferAllowance = getAllowance(\n principalToken,\n address(this),\n contractRegistry.tokenTransferProxy()\n );\n\n // Ensure the token transfer proxy can transfer tokens from the creditor proxy\n if (tokenTransferAllowance < totalCreditorPayment) {\n require(setTokenTransferAllowance(principalToken, totalCreditorPayment));\n }\n\n return true;\n }\n\n /**\n * Given a hashed message, a signer's address, and a signature,\n * returns whether the signature is valid.\n */\n function isValidSignature(\n address signer,\n bytes32 hash,\n uint8 v,\n bytes32 r,\n bytes32 s\n )\n internal\n pure\n returns (bool _valid)\n {\n return signer == ecrecover(\n keccak256(\"\\x19Ethereum Signed Message:\\n32\", hash),\n v,\n r,\n s\n );\n }\n\n /**\n * Helper function for querying an address' balance on a given token.\n */\n function getBalance(\n address token,\n address owner\n )\n internal\n view\n returns (uint _balance)\n {\n // Limit gas to prevent reentrancy.\n return ERC20(token).balanceOf.gas(EXTERNAL_QUERY_GAS_LIMIT)(owner);\n }\n\n /**\n * Helper function for querying this contract's allowance for transferring the given token.\n */\n function getAllowance(\n address token,\n address owner,\n address granter\n )\n internal\n view\n returns (uint _allowance)\n {\n // Limit gas to prevent reentrancy.\n return ERC20(token).allowance.gas(EXTERNAL_QUERY_GAS_LIMIT)(\n owner,\n granter\n );\n }\n\n /**\n * Helper function for approving this address' allowance to Dharma's token transfer proxy.\n */\n function setTokenTransferAllowance(\n address token,\n uint amount\n )\n internal\n returns (bool _success)\n {\n return ERC20(token).approve(\n address(contractRegistry.tokenTransferProxy()),\n amount\n );\n }\n\n\n /**\n * Helper function for transferring a specified amount of tokens between two parties.\n */\n function transferTokensFrom(\n address _token,\n address _from,\n address _to,\n uint _amount\n )\n internal\n returns (bool _success)\n {\n return ERC20(_token).transferFrom(_from, _to, _amount);\n }\n}\n", "sourcePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/CreditorProxy.sol", "ast": { "attributes": { @@ -8923,7 +8923,7 @@ } }, "links": {}, - "address": "0xd1c0be587dc75cb5d9c9c3856068717351c020d5" + "address": "0xd9b303da12a84a405c482c91592b5bd00a2317e2" }, "70": { "events": { @@ -9023,5 +9023,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:16:36.732Z" + "updatedAt": "2018-10-09T17:53:24.855Z" } \ No newline at end of file diff --git a/artifacts/json/DebtKernel.json b/artifacts/json/DebtKernel.json index 440f36aa..c167c09b 100644 --- a/artifacts/json/DebtKernel.json +++ b/artifacts/json/DebtKernel.json @@ -436,7 +436,7 @@ }, { "attributes": { - "SourceUnit": 3549, + "SourceUnit": 3541, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtToken.sol", "file": "./DebtToken.sol", "scope": 2639, @@ -451,7 +451,7 @@ }, { "attributes": { - "SourceUnit": 4766, + "SourceUnit": 4758, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TermsContract.sol", "file": "./TermsContract.sol", "scope": 2639, @@ -466,7 +466,7 @@ }, { "attributes": { - "SourceUnit": 5215, + "SourceUnit": 5207, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TokenTransferProxy.sol", "file": "./TokenTransferProxy.sol", "scope": 2639, @@ -17682,7 +17682,7 @@ } }, "links": {}, - "address": "0xc01c57ffedca4d0644abb966f055f040cd63fd5b" + "address": "0x4a42fbdae13791341361f9d2dd69873d83e4b816" }, "70": { "events": { @@ -17814,5 +17814,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:15:01.344Z" + "updatedAt": "2018-10-09T17:51:53.185Z" } \ No newline at end of file diff --git a/artifacts/json/DebtRegistry.json b/artifacts/json/DebtRegistry.json index 42f09f2a..048ed442 100644 --- a/artifacts/json/DebtRegistry.json +++ b/artifacts/json/DebtRegistry.json @@ -571,7 +571,7 @@ }, { "attributes": { - "SourceUnit": 6280, + "SourceUnit": 6272, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/libraries/PermissionsLib.sol", "file": "./libraries/PermissionsLib.sol", "scope": 3167, @@ -7984,7 +7984,7 @@ } }, "links": {}, - "address": "0x2bfd08581121530eba6b86eda5b2932bea8117d9" + "address": "0x0db51854d2b302e35d8f0f7a4fabb2415f9e42a5" }, "70": { "events": { @@ -8164,5 +8164,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:15:01.319Z" + "updatedAt": "2018-10-09T17:51:53.167Z" } \ No newline at end of file diff --git a/artifacts/json/DebtToken.json b/artifacts/json/DebtToken.json index 8c30ac97..7112b83f 100644 --- a/artifacts/json/DebtToken.json +++ b/artifacts/json/DebtToken.json @@ -768,7 +768,7 @@ }, { "attributes": { - "SourceUnit": 3167, + "SourceUnit": 3159, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtRegistry.sol", "file": "./DebtRegistry.sol", "scope": 3549, @@ -783,7 +783,7 @@ }, { "attributes": { - "SourceUnit": 3559, + "SourceUnit": 3551, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/ERC165.sol", "file": "./ERC165.sol", "scope": 3549, @@ -798,7 +798,7 @@ }, { "attributes": { - "SourceUnit": 6280, + "SourceUnit": 6272, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/libraries/PermissionsLib.sol", "file": "./libraries/PermissionsLib.sol", "scope": 3549, @@ -6202,7 +6202,7 @@ } }, "links": {}, - "address": "0x3fd02c9e51dbf27b3f66e71ce1e5ce89ca1492d3" + "address": "0xa99e0834ce4ac707371cbd6d938773b660552b91" }, "70": { "events": { @@ -6341,5 +6341,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:16:13.726Z" + "updatedAt": "2018-10-09T17:53:04.888Z" } \ No newline at end of file diff --git a/artifacts/json/DeprecatedERC721.json b/artifacts/json/DeprecatedERC721.json index e6451bc9..d76c06de 100644 --- a/artifacts/json/DeprecatedERC721.json +++ b/artifacts/json/DeprecatedERC721.json @@ -789,5 +789,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.049Z" + "updatedAt": "2018-10-09T17:45:35.433Z" } \ No newline at end of file diff --git a/artifacts/json/DharmaMultiSigWallet.json b/artifacts/json/DharmaMultiSigWallet.json index 6a71b1e1..7b6035e6 100644 --- a/artifacts/json/DharmaMultiSigWallet.json +++ b/artifacts/json/DharmaMultiSigWallet.json @@ -657,7 +657,7 @@ }, { "attributes": { - "SourceUnit": 13927, + "SourceUnit": 13919, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/wallet/MultiSigWallet.sol", "file": "./MultiSigWallet.sol", "scope": 12937, @@ -5191,7 +5191,7 @@ "42": { "events": {}, "links": {}, - "address": "0xc6846f1c094c354055d5cf4c093127f398753546" + "address": "0x73b8e624c2e0e55e7eaf5ff669a7c63f95781bb4" }, "70": { "events": {}, @@ -5200,5 +5200,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:16:36.723Z" + "updatedAt": "2018-10-09T17:53:24.844Z" } \ No newline at end of file diff --git a/artifacts/json/DummyContract.json b/artifacts/json/DummyContract.json index 093071d1..b15a666d 100644 --- a/artifacts/json/DummyContract.json +++ b/artifacts/json/DummyContract.json @@ -216,7 +216,7 @@ }, { "attributes": { - "SourceUnit": 6280, + "SourceUnit": 6272, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/libraries/PermissionsLib.sol", "file": "../libraries/PermissionsLib.sol", "scope": 9944, @@ -1769,7 +1769,7 @@ "42": { "events": {}, "links": {}, - "address": "0x6b5b54ab51ab15d4fd5e8991791c8dc1d90df5e2" + "address": "0x64481c13201a7baabd3a440eeba57170336f0e70" }, "70": { "events": {}, @@ -1778,5 +1778,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:01.009Z" + "updatedAt": "2018-10-09T17:50:01.258Z" } \ No newline at end of file diff --git a/artifacts/json/DummyToken.json b/artifacts/json/DummyToken.json index 001baa8b..f6a09e18 100644 --- a/artifacts/json/DummyToken.json +++ b/artifacts/json/DummyToken.json @@ -2152,5 +2152,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:11:37.139Z" + "updatedAt": "2018-10-09T17:48:16.849Z" } \ No newline at end of file diff --git a/artifacts/json/ERC165.json b/artifacts/json/ERC165.json index 66340bd4..b58933db 100644 --- a/artifacts/json/ERC165.json +++ b/artifacts/json/ERC165.json @@ -171,5 +171,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.577Z" + "updatedAt": "2018-10-09T17:45:35.420Z" } \ No newline at end of file diff --git a/artifacts/json/ERC20.json b/artifacts/json/ERC20.json index c205c98b..ff4b5980 100644 --- a/artifacts/json/ERC20.json +++ b/artifacts/json/ERC20.json @@ -741,5 +741,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.047Z" + "updatedAt": "2018-10-09T17:45:35.433Z" } \ No newline at end of file diff --git a/artifacts/json/ERC20Basic.json b/artifacts/json/ERC20Basic.json index db15da2a..c8fd4704 100644 --- a/artifacts/json/ERC20Basic.json +++ b/artifacts/json/ERC20Basic.json @@ -510,5 +510,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.048Z" + "updatedAt": "2018-10-09T17:45:35.427Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721.json b/artifacts/json/ERC721.json index 5d9ba182..979c1171 100644 --- a/artifacts/json/ERC721.json +++ b/artifacts/json/ERC721.json @@ -1110,5 +1110,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.049Z" + "updatedAt": "2018-10-09T17:45:35.439Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721Basic.json b/artifacts/json/ERC721Basic.json index fddc07ae..284717af 100644 --- a/artifacts/json/ERC721Basic.json +++ b/artifacts/json/ERC721Basic.json @@ -1663,5 +1663,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.052Z" + "updatedAt": "2018-10-09T17:45:35.452Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721BasicToken.json b/artifacts/json/ERC721BasicToken.json index d1e907e8..1b7e3e95 100644 --- a/artifacts/json/ERC721BasicToken.json +++ b/artifacts/json/ERC721BasicToken.json @@ -8709,5 +8709,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.056Z" + "updatedAt": "2018-10-09T17:45:35.625Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721CollateralizedSimpleInterestTermsContract.json b/artifacts/json/ERC721CollateralizedSimpleInterestTermsContract.json index 9c1535a3..d2894ee4 100644 --- a/artifacts/json/ERC721CollateralizedSimpleInterestTermsContract.json +++ b/artifacts/json/ERC721CollateralizedSimpleInterestTermsContract.json @@ -429,7 +429,7 @@ }, { "attributes": { - "SourceUnit": 6061, + "SourceUnit": 6053, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/examples/SimpleInterestTermsContract.sol", "file": "./SimpleInterestTermsContract.sol", "scope": 5357, @@ -444,7 +444,7 @@ }, { "attributes": { - "SourceUnit": 4175, + "SourceUnit": 4167, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/ERC721Collateralizer.sol", "file": "../ERC721Collateralizer.sol", "scope": 5357, @@ -1445,7 +1445,7 @@ "42": { "events": {}, "links": {}, - "address": "0x13a93b0e027f419556271a3cb1060ef7156103e6" + "address": "0xe44c8dbcb6dab51c4d5291788ec3fb82d2fbad12" }, "70": { "events": {}, @@ -1454,5 +1454,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:16:13.721Z" + "updatedAt": "2018-10-09T17:53:04.862Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721Collateralizer.json b/artifacts/json/ERC721Collateralizer.json index 71de413c..4fd8da94 100644 --- a/artifacts/json/ERC721Collateralizer.json +++ b/artifacts/json/ERC721Collateralizer.json @@ -516,7 +516,7 @@ }, { "attributes": { - "SourceUnit": 4766, + "SourceUnit": 4758, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TermsContract.sol", "file": "./TermsContract.sol", "scope": 4175, @@ -531,7 +531,7 @@ }, { "attributes": { - "SourceUnit": 3167, + "SourceUnit": 3159, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtRegistry.sol", "file": "./DebtRegistry.sol", "scope": 4175, @@ -561,7 +561,7 @@ }, { "attributes": { - "SourceUnit": 4466, + "SourceUnit": 4458, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/ERC721TokenRegistry.sol", "file": "./ERC721TokenRegistry.sol", "scope": 4175, @@ -576,7 +576,7 @@ }, { "attributes": { - "SourceUnit": 6280, + "SourceUnit": 6272, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/libraries/PermissionsLib.sol", "file": "./libraries/PermissionsLib.sol", "scope": 4175, @@ -9498,7 +9498,7 @@ } }, "links": {}, - "address": "0xc241691f9c1663b4452c3d867de6cb72ce4ccb4b" + "address": "0xf3abfc01a071e8bbf3f820c2629510b9bc5e3229" }, "70": { "events": { @@ -9647,5 +9647,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:16:13.736Z" + "updatedAt": "2018-10-09T17:53:04.896Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721Enumerable.json b/artifacts/json/ERC721Enumerable.json index 995c7edf..0d273dce 100644 --- a/artifacts/json/ERC721Enumerable.json +++ b/artifacts/json/ERC721Enumerable.json @@ -1063,5 +1063,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.050Z" + "updatedAt": "2018-10-09T17:45:35.440Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721Metadata.json b/artifacts/json/ERC721Metadata.json index 4a17c74f..335493ab 100644 --- a/artifacts/json/ERC721Metadata.json +++ b/artifacts/json/ERC721Metadata.json @@ -1054,5 +1054,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.050Z" + "updatedAt": "2018-10-09T17:45:35.441Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721Receiver.json b/artifacts/json/ERC721Receiver.json index d89dafe7..7060df18 100644 --- a/artifacts/json/ERC721Receiver.json +++ b/artifacts/json/ERC721Receiver.json @@ -274,5 +274,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.053Z" + "updatedAt": "2018-10-09T17:45:35.427Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721Token.json b/artifacts/json/ERC721Token.json index b10d6113..419f43a3 100644 --- a/artifacts/json/ERC721Token.json +++ b/artifacts/json/ERC721Token.json @@ -5399,7 +5399,7 @@ "42": { "events": {}, "links": {}, - "address": "0x29fbda47ddc8b9853a0cf9bf0abf4611ff5f3abe" + "address": "0xebc1a917d464d779ad5eba480de9935bf4ce9760" }, "70": { "events": {}, @@ -5408,5 +5408,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:01.017Z" + "updatedAt": "2018-10-09T17:50:01.301Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721TokenRegistry.json b/artifacts/json/ERC721TokenRegistry.json index 5ce2f3ac..b90e031d 100644 --- a/artifacts/json/ERC721TokenRegistry.json +++ b/artifacts/json/ERC721TokenRegistry.json @@ -4183,7 +4183,7 @@ } }, "links": {}, - "address": "0xc7e95d984d2abdb012e25975c622477f31a0473f" + "address": "0xd1ec79ec665dddf7a65024c44dd75f625e88271f" }, "70": { "events": { @@ -4210,5 +4210,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:16:13.717Z" + "updatedAt": "2018-10-09T17:53:04.870Z" } \ No newline at end of file diff --git a/artifacts/json/GeneScienceInterface.json b/artifacts/json/GeneScienceInterface.json index 34953ef9..3289d871 100644 --- a/artifacts/json/GeneScienceInterface.json +++ b/artifacts/json/GeneScienceInterface.json @@ -51683,5 +51683,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.655Z" + "updatedAt": "2018-10-09T17:45:35.863Z" } \ No newline at end of file diff --git a/artifacts/json/IncompatibleTermsContract.json b/artifacts/json/IncompatibleTermsContract.json index 0a76883d..3618cdfe 100644 --- a/artifacts/json/IncompatibleTermsContract.json +++ b/artifacts/json/IncompatibleTermsContract.json @@ -151,7 +151,7 @@ }, { "attributes": { - "SourceUnit": 4766, + "SourceUnit": 4758, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TermsContract.sol", "file": "../../TermsContract.sol", "scope": 12594, @@ -987,7 +987,7 @@ "42": { "events": {}, "links": {}, - "address": "0x265f2abbf5a568df8ed31644204b011eac0c1886" + "address": "0xc8d55fd3717f8c3f8d31456504ab84b11b80520e" }, "70": { "events": {}, @@ -996,5 +996,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:36.849Z" + "updatedAt": "2018-10-09T17:50:25.365Z" } \ No newline at end of file diff --git a/artifacts/json/KittiesERC721.json b/artifacts/json/KittiesERC721.json index 307ff507..1f18bb5d 100644 --- a/artifacts/json/KittiesERC721.json +++ b/artifacts/json/KittiesERC721.json @@ -51815,5 +51815,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.673Z" + "updatedAt": "2018-10-09T17:45:35.810Z" } \ No newline at end of file diff --git a/artifacts/json/KittiesERC721Metadata.json b/artifacts/json/KittiesERC721Metadata.json index e160dd67..76b05352 100644 --- a/artifacts/json/KittiesERC721Metadata.json +++ b/artifacts/json/KittiesERC721Metadata.json @@ -51669,5 +51669,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.695Z" + "updatedAt": "2018-10-09T17:45:35.886Z" } \ No newline at end of file diff --git a/artifacts/json/KittiesOwnable.json b/artifacts/json/KittiesOwnable.json index b3d33242..ad0d1c79 100644 --- a/artifacts/json/KittiesOwnable.json +++ b/artifacts/json/KittiesOwnable.json @@ -51676,5 +51676,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.713Z" + "updatedAt": "2018-10-09T17:45:35.914Z" } \ No newline at end of file diff --git a/artifacts/json/KittiesPausable.json b/artifacts/json/KittiesPausable.json index 128e09e2..1ae35d45 100644 --- a/artifacts/json/KittiesPausable.json +++ b/artifacts/json/KittiesPausable.json @@ -51724,5 +51724,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.731Z" + "updatedAt": "2018-10-09T17:45:35.995Z" } \ No newline at end of file diff --git a/artifacts/json/KittyAccessControl.json b/artifacts/json/KittyAccessControl.json index b0b4a686..e721103a 100644 --- a/artifacts/json/KittyAccessControl.json +++ b/artifacts/json/KittyAccessControl.json @@ -51770,5 +51770,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.755Z" + "updatedAt": "2018-10-09T17:45:35.953Z" } \ No newline at end of file diff --git a/artifacts/json/KittyAuction.json b/artifacts/json/KittyAuction.json index 4d0065c4..bffd0e59 100644 --- a/artifacts/json/KittyAuction.json +++ b/artifacts/json/KittyAuction.json @@ -52525,5 +52525,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.781Z" + "updatedAt": "2018-10-09T17:45:36.264Z" } \ No newline at end of file diff --git a/artifacts/json/KittyBase.json b/artifacts/json/KittyBase.json index ddb61a05..bb533635 100644 --- a/artifacts/json/KittyBase.json +++ b/artifacts/json/KittyBase.json @@ -51956,5 +51956,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.854Z" + "updatedAt": "2018-10-09T17:45:36.187Z" } \ No newline at end of file diff --git a/artifacts/json/KittyBreeding.json b/artifacts/json/KittyBreeding.json index 18276b7f..cb6fb5f6 100644 --- a/artifacts/json/KittyBreeding.json +++ b/artifacts/json/KittyBreeding.json @@ -52418,5 +52418,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.809Z" + "updatedAt": "2018-10-09T17:45:36.217Z" } \ No newline at end of file diff --git a/artifacts/json/KittyCore.json b/artifacts/json/KittyCore.json index de1a2f48..09b172c6 100644 --- a/artifacts/json/KittyCore.json +++ b/artifacts/json/KittyCore.json @@ -52746,7 +52746,7 @@ "42": { "events": {}, "links": {}, - "address": "0xb5da2e05709786b89c6124c7a202dd13de2b8cd8" + "address": "0x116a62dad694e694f17cbccc917739c3f0c51666" }, "70": { "events": {}, @@ -52755,5 +52755,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:16:13.792Z" + "updatedAt": "2018-10-09T17:53:04.937Z" } \ No newline at end of file diff --git a/artifacts/json/KittyMinting.json b/artifacts/json/KittyMinting.json index 4db9f8c8..537e8ea4 100644 --- a/artifacts/json/KittyMinting.json +++ b/artifacts/json/KittyMinting.json @@ -52641,5 +52641,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.925Z" + "updatedAt": "2018-10-09T17:45:36.305Z" } \ No newline at end of file diff --git a/artifacts/json/KittyOwnership.json b/artifacts/json/KittyOwnership.json index 0159696a..81c68859 100644 --- a/artifacts/json/KittyOwnership.json +++ b/artifacts/json/KittyOwnership.json @@ -52205,5 +52205,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.947Z" + "updatedAt": "2018-10-09T17:45:36.421Z" } \ No newline at end of file diff --git a/artifacts/json/Migrations.json b/artifacts/json/Migrations.json index 01c10d92..24aea637 100644 --- a/artifacts/json/Migrations.json +++ b/artifacts/json/Migrations.json @@ -818,7 +818,7 @@ "42": { "events": {}, "links": {}, - "address": "0xf44e598f6ad5115151c1c331f5b2f8b02b06bb47" + "address": "0x4c4bd0258c47645a61a55c66c40168e61dcb19b2" }, "70": { "events": {}, @@ -827,5 +827,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:16:36.720Z" + "updatedAt": "2018-10-09T17:53:24.835Z" } \ No newline at end of file diff --git a/artifacts/json/MintableERC721Token.json b/artifacts/json/MintableERC721Token.json index 23a5fc33..844a38e3 100644 --- a/artifacts/json/MintableERC721Token.json +++ b/artifacts/json/MintableERC721Token.json @@ -482,7 +482,7 @@ }, { "attributes": { - "SourceUnit": 3559, + "SourceUnit": 3551, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/ERC165.sol", "file": "../ERC165.sol", "scope": 10001, @@ -1236,7 +1236,7 @@ "42": { "events": {}, "links": {}, - "address": "0x1db2f4774e0b0c84047a97e6c129abe7f9ed0d18" + "address": "0x67b0b219faf38b7a862c480213b2860e645c264f" }, "70": { "events": {}, @@ -1245,5 +1245,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:16:13.730Z" + "updatedAt": "2018-10-09T17:53:04.860Z" } \ No newline at end of file diff --git a/artifacts/json/MintableToken.json b/artifacts/json/MintableToken.json index e6e1a16a..ce7e439e 100644 --- a/artifacts/json/MintableToken.json +++ b/artifacts/json/MintableToken.json @@ -1664,5 +1664,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.049Z" + "updatedAt": "2018-10-09T17:45:35.471Z" } \ No newline at end of file diff --git a/artifacts/json/MockCollateralizedTermsContract.json b/artifacts/json/MockCollateralizedTermsContract.json index 9692f725..274e2827 100644 --- a/artifacts/json/MockCollateralizedTermsContract.json +++ b/artifacts/json/MockCollateralizedTermsContract.json @@ -371,7 +371,7 @@ }, { "attributes": { - "SourceUnit": 10701, + "SourceUnit": 10693, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 10516, @@ -5722,7 +5722,7 @@ "42": { "events": {}, "links": {}, - "address": "0xa125dc548b8b163b53d6b88f890766370b2350bd" + "address": "0x67d4984f33adaa13b879dc532a49bc7a46140353" }, "70": { "events": {}, @@ -5731,5 +5731,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:01.039Z" + "updatedAt": "2018-10-09T17:50:01.318Z" } \ No newline at end of file diff --git a/artifacts/json/MockContract.json b/artifacts/json/MockContract.json index 5e7589f0..02a2223b 100644 --- a/artifacts/json/MockContract.json +++ b/artifacts/json/MockContract.json @@ -2543,5 +2543,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.986Z" + "updatedAt": "2018-10-09T17:45:35.500Z" } \ No newline at end of file diff --git a/artifacts/json/MockDebtKernel.json b/artifacts/json/MockDebtKernel.json index 079ae179..f4247e5c 100644 --- a/artifacts/json/MockDebtKernel.json +++ b/artifacts/json/MockDebtKernel.json @@ -186,7 +186,7 @@ }, { "attributes": { - "SourceUnit": 10701, + "SourceUnit": 10693, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 10844, @@ -2230,5 +2230,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.018Z" + "updatedAt": "2018-10-09T17:45:35.497Z" } \ No newline at end of file diff --git a/artifacts/json/MockDebtRegistry.json b/artifacts/json/MockDebtRegistry.json index 73e64ac4..4ac80d6d 100644 --- a/artifacts/json/MockDebtRegistry.json +++ b/artifacts/json/MockDebtRegistry.json @@ -465,7 +465,7 @@ }, { "attributes": { - "SourceUnit": 10701, + "SourceUnit": 10693, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 11222, @@ -5996,7 +5996,7 @@ "42": { "events": {}, "links": {}, - "address": "0x14fd9ddb3cfc7a3fa9c44f910825c0d287be2e34" + "address": "0x7593f653e23985ac6371a1e2d0a681f6e5534007" }, "70": { "events": {}, @@ -6005,5 +6005,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:01.024Z" + "updatedAt": "2018-10-09T17:50:01.328Z" } \ No newline at end of file diff --git a/artifacts/json/MockDebtToken.json b/artifacts/json/MockDebtToken.json index 962feaac..e30f3b5b 100644 --- a/artifacts/json/MockDebtToken.json +++ b/artifacts/json/MockDebtToken.json @@ -352,7 +352,7 @@ }, { "attributes": { - "SourceUnit": 10701, + "SourceUnit": 10693, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 11511, @@ -4598,7 +4598,7 @@ "42": { "events": {}, "links": {}, - "address": "0x124529e78bd31b7c187b7bc69069d5cbbebceb70" + "address": "0xf655449119757b6fd26c45702718812dbbd51356" }, "70": { "events": {}, @@ -4607,5 +4607,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:01.030Z" + "updatedAt": "2018-10-09T17:50:01.286Z" } \ No newline at end of file diff --git a/artifacts/json/MockERC20Token.json b/artifacts/json/MockERC20Token.json index 9b900652..939f70b6 100644 --- a/artifacts/json/MockERC20Token.json +++ b/artifacts/json/MockERC20Token.json @@ -314,7 +314,7 @@ }, { "attributes": { - "SourceUnit": 10701, + "SourceUnit": 10693, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 11767, @@ -4016,7 +4016,7 @@ "42": { "events": {}, "links": {}, - "address": "0x7ac01104b3ddaf1d5ad092817b31a8442c140158" + "address": "0x80bd8dc16d0b1bee8ce941ce2fb9108177a7dc85" }, "70": { "events": {}, @@ -4025,5 +4025,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:01.027Z" + "updatedAt": "2018-10-09T17:50:01.281Z" } \ No newline at end of file diff --git a/artifacts/json/MockERC721Receiver.json b/artifacts/json/MockERC721Receiver.json index 37967e09..3f5c8b30 100644 --- a/artifacts/json/MockERC721Receiver.json +++ b/artifacts/json/MockERC721Receiver.json @@ -168,7 +168,7 @@ }, { "attributes": { - "SourceUnit": 10701, + "SourceUnit": 10693, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 11888, @@ -1844,7 +1844,7 @@ "42": { "events": {}, "links": {}, - "address": "0x00714756c11727a071c47479c0d466f937331b8e" + "address": "0xeadebe1479a642dc27a2874233e5e2b6703a0442" }, "70": { "events": {}, @@ -1853,5 +1853,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:01.020Z" + "updatedAt": "2018-10-09T17:50:01.261Z" } \ No newline at end of file diff --git a/artifacts/json/MockERC721Token.json b/artifacts/json/MockERC721Token.json index e5ab2081..1885a065 100644 --- a/artifacts/json/MockERC721Token.json +++ b/artifacts/json/MockERC721Token.json @@ -311,7 +311,7 @@ }, { "attributes": { - "SourceUnit": 10701, + "SourceUnit": 10693, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 12142, @@ -3994,7 +3994,7 @@ "42": { "events": {}, "links": {}, - "address": "0xa57d132d946d0ba4f7febd543763f18b3627dd10" + "address": "0x5ff98c9ca70a7d2fdd1107c1a80d20c5fc8a3e40" }, "70": { "events": {}, @@ -4003,5 +4003,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:01.014Z" + "updatedAt": "2018-10-09T17:50:01.278Z" } \ No newline at end of file diff --git a/artifacts/json/MockTermsContract.json b/artifacts/json/MockTermsContract.json index 61745b6d..7c0892f5 100644 --- a/artifacts/json/MockTermsContract.json +++ b/artifacts/json/MockTermsContract.json @@ -275,7 +275,7 @@ }, { "attributes": { - "SourceUnit": 10701, + "SourceUnit": 10693, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 12354, @@ -3394,7 +3394,7 @@ "42": { "events": {}, "links": {}, - "address": "0xb0f7c5054eed756d6522d60fd02cd29be8b19a96" + "address": "0x76dcdc1df7af00e87bb5dd8f600e5637053fc0e1" }, "70": { "events": {}, @@ -3403,5 +3403,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:01.034Z" + "updatedAt": "2018-10-09T17:50:01.274Z" } \ No newline at end of file diff --git a/artifacts/json/MockTokenRegistry.json b/artifacts/json/MockTokenRegistry.json index d61eb531..13981a23 100644 --- a/artifacts/json/MockTokenRegistry.json +++ b/artifacts/json/MockTokenRegistry.json @@ -160,7 +160,7 @@ }, { "attributes": { - "SourceUnit": 10701, + "SourceUnit": 10693, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 12450, @@ -1587,7 +1587,7 @@ "42": { "events": {}, "links": {}, - "address": "0x7723ed4c29ba84d381dd389890ccb0c17cda7204" + "address": "0x8d60b63345a4394a627672aca9f0f2541057d0ba" }, "70": { "events": {}, @@ -1596,5 +1596,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:01.033Z" + "updatedAt": "2018-10-09T17:50:01.268Z" } \ No newline at end of file diff --git a/artifacts/json/MockTokenTransferProxy.json b/artifacts/json/MockTokenTransferProxy.json index df568b52..9c47af91 100644 --- a/artifacts/json/MockTokenTransferProxy.json +++ b/artifacts/json/MockTokenTransferProxy.json @@ -148,7 +148,7 @@ }, { "attributes": { - "SourceUnit": 10701, + "SourceUnit": 10693, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 12526, @@ -1235,7 +1235,7 @@ "42": { "events": {}, "links": {}, - "address": "0xea14749d27f5eed380dbeab1afe18d4bc174b77c" + "address": "0xe73f46c08eb3a1d218af468c6dbefbc5967bb6bd" }, "70": { "events": {}, @@ -1244,5 +1244,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:01.032Z" + "updatedAt": "2018-10-09T17:50:01.252Z" } \ No newline at end of file diff --git a/artifacts/json/MultiSigWallet.json b/artifacts/json/MultiSigWallet.json index e8ada66d..e4cb6848 100644 --- a/artifacts/json/MultiSigWallet.json +++ b/artifacts/json/MultiSigWallet.json @@ -13771,5 +13771,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.045Z" + "updatedAt": "2018-10-09T17:45:35.685Z" } \ No newline at end of file diff --git a/artifacts/json/Ownable.json b/artifacts/json/Ownable.json index 563e445e..b9481b9e 100644 --- a/artifacts/json/Ownable.json +++ b/artifacts/json/Ownable.json @@ -837,5 +837,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.038Z" + "updatedAt": "2018-10-09T17:45:35.443Z" } \ No newline at end of file diff --git a/artifacts/json/Pausable.json b/artifacts/json/Pausable.json index 1a200bee..b9c75863 100644 --- a/artifacts/json/Pausable.json +++ b/artifacts/json/Pausable.json @@ -879,5 +879,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.037Z" + "updatedAt": "2018-10-09T17:45:35.444Z" } \ No newline at end of file diff --git a/artifacts/json/PermissionEvents.json b/artifacts/json/PermissionEvents.json index ff7bd116..13b8cba8 100644 --- a/artifacts/json/PermissionEvents.json +++ b/artifacts/json/PermissionEvents.json @@ -2969,5 +2969,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.597Z" + "updatedAt": "2018-10-09T17:45:35.509Z" } \ No newline at end of file diff --git a/artifacts/json/PermissionsLib.json b/artifacts/json/PermissionsLib.json index e70a244b..b8fb9433 100644 --- a/artifacts/json/PermissionsLib.json +++ b/artifacts/json/PermissionsLib.json @@ -2976,7 +2976,7 @@ "42": { "events": {}, "links": {}, - "address": "0xaa5ce701623be22ff89ae25fc1f6cc923127ca4c" + "address": "0x7852987ebd814ccb8ae63ff0ebbebaf12b8b45ab" }, "70": { "events": {}, @@ -2985,5 +2985,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:16:13.720Z" + "updatedAt": "2018-10-09T17:53:04.866Z" } \ No newline at end of file diff --git a/artifacts/json/RepaymentRouter.json b/artifacts/json/RepaymentRouter.json index 1ef21ad9..2b8ccec1 100644 --- a/artifacts/json/RepaymentRouter.json +++ b/artifacts/json/RepaymentRouter.json @@ -240,7 +240,7 @@ }, { "attributes": { - "SourceUnit": 3167, + "SourceUnit": 3159, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtRegistry.sol", "file": "./DebtRegistry.sol", "scope": 4716, @@ -255,7 +255,7 @@ }, { "attributes": { - "SourceUnit": 4766, + "SourceUnit": 4758, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TermsContract.sol", "file": "./TermsContract.sol", "scope": 4716, @@ -270,7 +270,7 @@ }, { "attributes": { - "SourceUnit": 5215, + "SourceUnit": 5207, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TokenTransferProxy.sol", "file": "./TokenTransferProxy.sol", "scope": 4716, @@ -3301,7 +3301,7 @@ } }, "links": {}, - "address": "0xd2c8cf211f4753a10b145c90950add769a8a6bc2" + "address": "0x03ff589c02e794dbb55394ba86c62ba68e399688" }, "70": { "events": { @@ -3389,5 +3389,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:15:01.333Z" + "updatedAt": "2018-10-09T17:51:53.137Z" } \ No newline at end of file diff --git a/artifacts/json/SafeMath.json b/artifacts/json/SafeMath.json index 7bb4828e..57147ba1 100644 --- a/artifacts/json/SafeMath.json +++ b/artifacts/json/SafeMath.json @@ -1343,5 +1343,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.038Z" + "updatedAt": "2018-10-09T17:45:35.450Z" } \ No newline at end of file diff --git a/artifacts/json/SaleClockAuction.json b/artifacts/json/SaleClockAuction.json index 22dd3cb1..adae014f 100644 --- a/artifacts/json/SaleClockAuction.json +++ b/artifacts/json/SaleClockAuction.json @@ -52024,5 +52024,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.006Z" + "updatedAt": "2018-10-09T17:45:36.391Z" } \ No newline at end of file diff --git a/artifacts/json/SimpleInterestTermsContract.json b/artifacts/json/SimpleInterestTermsContract.json index 6ffdd07f..5acc09a5 100644 --- a/artifacts/json/SimpleInterestTermsContract.json +++ b/artifacts/json/SimpleInterestTermsContract.json @@ -10512,7 +10512,7 @@ "42": { "events": {}, "links": {}, - "address": "0xe929d2b2fdd53531b8e11d85a4c249e504dd5868" + "address": "0x1cde816b6e0437f5b1b49edb58c4a8bf1dbda2d3" }, "70": { "events": {}, @@ -10521,5 +10521,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:36.862Z" + "updatedAt": "2018-10-09T17:50:25.381Z" } \ No newline at end of file diff --git a/artifacts/json/SiringClockAuction.json b/artifacts/json/SiringClockAuction.json index 4b3cefb4..21e2329b 100644 --- a/artifacts/json/SiringClockAuction.json +++ b/artifacts/json/SiringClockAuction.json @@ -51977,5 +51977,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.968Z" + "updatedAt": "2018-10-09T17:45:36.126Z" } \ No newline at end of file diff --git a/artifacts/json/StandardToken.json b/artifacts/json/StandardToken.json index ece5e038..9bfc50ae 100644 --- a/artifacts/json/StandardToken.json +++ b/artifacts/json/StandardToken.json @@ -3732,5 +3732,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.051Z" + "updatedAt": "2018-10-09T17:45:35.529Z" } \ No newline at end of file diff --git a/artifacts/json/TermsContract.json b/artifacts/json/TermsContract.json index 80b7ea67..901bdfc4 100644 --- a/artifacts/json/TermsContract.json +++ b/artifacts/json/TermsContract.json @@ -779,5 +779,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.591Z" + "updatedAt": "2018-10-09T17:45:35.436Z" } \ No newline at end of file diff --git a/artifacts/json/TokenRegistry.json b/artifacts/json/TokenRegistry.json index f7f8ddc9..3a66a2eb 100644 --- a/artifacts/json/TokenRegistry.json +++ b/artifacts/json/TokenRegistry.json @@ -5119,7 +5119,7 @@ } }, "links": {}, - "address": "0xa6d8c45bbd164f0b1aacbd24cb18f8b19de9648a" + "address": "0xb6cf5855a7598441e02e7cd4ffffb6e0426984ff" }, "70": { "events": { @@ -5146,5 +5146,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:15:01.336Z" + "updatedAt": "2018-10-09T17:51:53.143Z" } \ No newline at end of file diff --git a/artifacts/json/TokenTransferProxy.json b/artifacts/json/TokenTransferProxy.json index 6fbf09de..461d4ca6 100644 --- a/artifacts/json/TokenTransferProxy.json +++ b/artifacts/json/TokenTransferProxy.json @@ -242,7 +242,7 @@ }, { "attributes": { - "SourceUnit": 3167, + "SourceUnit": 3159, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtRegistry.sol", "file": "./DebtRegistry.sol", "scope": 5215, @@ -257,7 +257,7 @@ }, { "attributes": { - "SourceUnit": 6280, + "SourceUnit": 6272, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/libraries/PermissionsLib.sol", "file": "./libraries/PermissionsLib.sol", "scope": 5215, @@ -1612,7 +1612,7 @@ } }, "links": {}, - "address": "0xf302f9e270458b4242e7d0cba2f0816ed2193240" + "address": "0xf8181406f844d5c947481ec67c835b1384013c7e" }, "70": { "events": { @@ -1685,5 +1685,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:15:01.329Z" + "updatedAt": "2018-10-09T17:51:53.131Z" } \ No newline at end of file diff --git a/artifacts/ts/AddressUtils.ts b/artifacts/ts/AddressUtils.ts index 4cee2543..bc1df997 100644 --- a/artifacts/ts/AddressUtils.ts +++ b/artifacts/ts/AddressUtils.ts @@ -288,5 +288,5 @@ export const AddressUtils = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.037Z" + "updatedAt": "2018-10-09T17:45:35.426Z" } \ No newline at end of file diff --git a/artifacts/ts/BasicToken.ts b/artifacts/ts/BasicToken.ts index a8e67588..d89fe22a 100644 --- a/artifacts/ts/BasicToken.ts +++ b/artifacts/ts/BasicToken.ts @@ -1436,5 +1436,5 @@ export const BasicToken = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.048Z" + "updatedAt": "2018-10-09T17:45:35.453Z" } \ No newline at end of file diff --git a/artifacts/ts/ClockAuction.ts b/artifacts/ts/ClockAuction.ts index f21490a4..0fdd7fe0 100644 --- a/artifacts/ts/ClockAuction.ts +++ b/artifacts/ts/ClockAuction.ts @@ -51964,5 +51964,5 @@ export const ClockAuction = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.614Z" + "updatedAt": "2018-10-09T17:45:36.032Z" } \ No newline at end of file diff --git a/artifacts/ts/ClockAuctionBase.ts b/artifacts/ts/ClockAuctionBase.ts index 23d7ec7f..89bc31b5 100644 --- a/artifacts/ts/ClockAuctionBase.ts +++ b/artifacts/ts/ClockAuctionBase.ts @@ -51732,5 +51732,5 @@ export const ClockAuctionBase = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.636Z" + "updatedAt": "2018-10-09T17:45:35.834Z" } \ No newline at end of file diff --git a/artifacts/ts/CollateralizedSimpleInterestTermsContract.ts b/artifacts/ts/CollateralizedSimpleInterestTermsContract.ts index 73f25c11..1e4d788d 100644 --- a/artifacts/ts/CollateralizedSimpleInterestTermsContract.ts +++ b/artifacts/ts/CollateralizedSimpleInterestTermsContract.ts @@ -412,7 +412,7 @@ export const CollateralizedSimpleInterestTermsContract = }, { "attributes": { - "SourceUnit": 6061, + "SourceUnit": 6053, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/examples/SimpleInterestTermsContract.sol", "file": "./SimpleInterestTermsContract.sol", "scope": 5282, @@ -1335,7 +1335,7 @@ export const CollateralizedSimpleInterestTermsContract = "42": { "events": {}, "links": {}, - "address": "0x670315b61825f2691084fb9387996675cf2c0225" + "address": "0x7b7be94999219352b02c70b62b7cc09f7179b3b0" }, "70": { "events": {}, @@ -1344,5 +1344,5 @@ export const CollateralizedSimpleInterestTermsContract = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:14:48.932Z" + "updatedAt": "2018-10-09T17:51:37.279Z" } \ No newline at end of file diff --git a/artifacts/ts/Collateralizer.ts b/artifacts/ts/Collateralizer.ts index 60e02d23..0b6ce753 100644 --- a/artifacts/ts/Collateralizer.ts +++ b/artifacts/ts/Collateralizer.ts @@ -527,7 +527,7 @@ export const Collateralizer = }, { "attributes": { - "SourceUnit": 4766, + "SourceUnit": 4758, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TermsContract.sol", "file": "./TermsContract.sol", "scope": 615, @@ -542,7 +542,7 @@ export const Collateralizer = }, { "attributes": { - "SourceUnit": 3167, + "SourceUnit": 3159, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtRegistry.sol", "file": "./DebtRegistry.sol", "scope": 615, @@ -557,7 +557,7 @@ export const Collateralizer = }, { "attributes": { - "SourceUnit": 5122, + "SourceUnit": 5114, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TokenRegistry.sol", "file": "./TokenRegistry.sol", "scope": 615, @@ -572,7 +572,7 @@ export const Collateralizer = }, { "attributes": { - "SourceUnit": 5215, + "SourceUnit": 5207, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TokenTransferProxy.sol", "file": "./TokenTransferProxy.sol", "scope": 615, @@ -587,7 +587,7 @@ export const Collateralizer = }, { "attributes": { - "SourceUnit": 6280, + "SourceUnit": 6272, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/libraries/PermissionsLib.sol", "file": "./libraries/PermissionsLib.sol", "scope": 615, @@ -9802,7 +9802,7 @@ export const Collateralizer = } }, "links": {}, - "address": "0xf5ff656bfeada48090daf7341a2d4e160d699d27" + "address": "0x39ab84786d3696677cb62181f56286c9496b490b" }, "70": { "events": { @@ -9951,5 +9951,5 @@ export const Collateralizer = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:15:01.357Z" + "updatedAt": "2018-10-09T17:51:53.173Z" } \ No newline at end of file diff --git a/artifacts/ts/ContractRegistry.ts b/artifacts/ts/ContractRegistry.ts index 6c78dcb5..cff30b89 100644 --- a/artifacts/ts/ContractRegistry.ts +++ b/artifacts/ts/ContractRegistry.ts @@ -281,7 +281,7 @@ export const ContractRegistry = }, { "attributes": { - "SourceUnit": 2639, + "SourceUnit": 2631, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtKernel.sol", "file": "./DebtKernel.sol", "scope": 924, @@ -296,7 +296,7 @@ export const ContractRegistry = }, { "attributes": { - "SourceUnit": 3167, + "SourceUnit": 3159, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtRegistry.sol", "file": "./DebtRegistry.sol", "scope": 924, @@ -311,7 +311,7 @@ export const ContractRegistry = }, { "attributes": { - "SourceUnit": 3549, + "SourceUnit": 3541, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtToken.sol", "file": "./DebtToken.sol", "scope": 924, @@ -326,7 +326,7 @@ export const ContractRegistry = }, { "attributes": { - "SourceUnit": 4716, + "SourceUnit": 4708, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/RepaymentRouter.sol", "file": "./RepaymentRouter.sol", "scope": 924, @@ -341,7 +341,7 @@ export const ContractRegistry = }, { "attributes": { - "SourceUnit": 5122, + "SourceUnit": 5114, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TokenRegistry.sol", "file": "./TokenRegistry.sol", "scope": 924, @@ -356,7 +356,7 @@ export const ContractRegistry = }, { "attributes": { - "SourceUnit": 5215, + "SourceUnit": 5207, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TokenTransferProxy.sol", "file": "./TokenTransferProxy.sol", "scope": 924, @@ -4731,7 +4731,7 @@ export const ContractRegistry = } }, "links": {}, - "address": "0x98090fb23948d09772840b7440e7cdd4c28c2c8d" + "address": "0x342e4778937a0fa5879aa594d0f57370f1a0e5d9" }, "70": { "events": { @@ -4780,5 +4780,5 @@ export const ContractRegistry = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:16:36.727Z" + "updatedAt": "2018-10-09T17:53:24.840Z" } \ No newline at end of file diff --git a/artifacts/ts/CreditorProxy.ts b/artifacts/ts/CreditorProxy.ts index 2171505f..a6600cbe 100644 --- a/artifacts/ts/CreditorProxy.ts +++ b/artifacts/ts/CreditorProxy.ts @@ -309,11 +309,11 @@ export const CreditorProxy = "type": "event" } ], - "bytecode": "0x606060405260008060146101000a81548160ff021916908315150217905550341561002957600080fd5b604051602080611d1483398101604052808051906020019091905050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611c3e806100d66000396000f3006060604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633f4ba83a146100bf57806347f7835d146100d45780635c975abb146102325780638456cb591461025f5780638da5cb5b146102745780638f18b00b146102c9578063a318b5f714610367578063abf410e5146103a6578063c1614d00146103fb578063e283040d1461043a578063f06bbf751461046b578063f2fde38b1461049c575b600080fd5b34156100ca57600080fd5b6100d26104d5565b005b34156100df57600080fd5b610214600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908060c0019060068060200260405190810160405280929190826006602002808284378201915050505050919080610100019060088060200260405190810160405280929190826008602002808284378201915050505050919080602001906001806020026040519081016040528092919082600160200280828437820191505050505091908060600190600380602002604051908101604052809291908260036020028082843782019150505050509190806060019060038060200260405190810160405280929190826003602002808284378201915050505050919080606001906003806020026040519081016040528092919082600360200280828437820191505050505091905050610593565b60405180826000191660001916815260200191505060405180910390f35b341561023d57600080fd5b610245610f75565b604051808215151515815260200191505060405180910390f35b341561026a57600080fd5b610272610f88565b005b341561027f57600080fd5b610287611048565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156102d457600080fd5b6103656004808060a0019060058060200260405190810160405280929190826005602002808284378201915050505050919080608001906004806020026040519081016040528092919082600460200280828437820191505050505091908060200190600180602002604051908101604052809291908260016020028082843782019150505050509190505061106d565b005b341561037257600080fd5b61038c600480803560001916906020019091905050611179565b604051808215151515815260200191505060405180910390f35b34156103b157600080fd5b6103b9611199565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561040657600080fd5b6104206004808035600019169060200190919050506111bf565b604051808215151515815260200191505060405180910390f35b341561044557600080fd5b61044d6111df565b60405180826000191660001916815260200191505060405180910390f35b341561047657600080fd5b61047e6111e7565b604051808261ffff1661ffff16815260200191505060405180910390f35b34156104a757600080fd5b6104d3600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506111ed565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561053057600080fd5b600060149054906101000a900460ff16151561054b57600080fd5b60008060146101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b600080600080600060149054906101000a900460ff161515156105b557600080fd5b61081160a0604051908101604052808d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663079dd4b76000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561068457600080fd5b6102c65a03f1151561069557600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c60006006811015156106df57fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600360068110151561072457fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600460068110151561076957fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152506080604051908101604052808c60016008811015156107b857fe5b602002015181526020018c60026008811015156107d157fe5b602002015181526020018c60056008811015156107ea57fe5b602002015181526020018c600760088110151561080357fe5b60200201518152508a611342565b925060036000846000191660001916815260200190815260200160002060009054906101000a900460ff16156108a55782600019168b73ffffffffffffffffffffffffffffffffffffffff166001600381111561086a57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b60026000846000191660001916815260200190815260200160002060009054906101000a900460ff16156109375782600019168b73ffffffffffffffffffffffffffffffffffffffff16600060038111156108fc57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b61097d8b8489600160038110151561094b57fe5b602002015189600160038110151561095f57fe5b602002015189600160038110151561097357fe5b6020020151611598565b15156109e75782600019168b73ffffffffffffffffffffffffffffffffffffffff16600260038111156109ac57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b610a208960056008811015156109f957fe5b60200201518a6002600881101515610a0d57fe5b602002015161169f90919063ffffffff16565b9150610a408b8b6004600681101515610a3557fe5b6020020151846116bd565b1515610aa95782600019168b73ffffffffffffffffffffffffffffffffffffffff16600380811115610a6e57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b6000821115610add57610ad18a6004600681101515610ac457fe5b60200201518c30856117d9565b1515610adc57600080fd5b5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663079dd4b76000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610b6b57600080fd5b6102c65a03f11515610b7c57600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663e6488fc9308c8c8c8c8c8c6000604051602001526040518863ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200187600660200280838360005b83811015610c39578082015181840152602081019050610c1e565b5050505090500186600860200280838360005b83811015610c67578082015181840152602081019050610c4c565b5050505090500185600160200280838360005b83811015610c95578082015181840152602081019050610c7a565b5050505090500184600360200280838360005b83811015610cc3578082015181840152602081019050610ca8565b5050505090500183600360200280838360005b83811015610cf1578082015181840152602081019050610cd6565b5050505090500182600360200280838360005b83811015610d1f578082015181840152602081019050610d04565b50505050905001975050505050505050602060405180830381600087803b1515610d4857600080fd5b6102c65a03f11515610d5957600080fd5b505050604051805190509050600060010260001916816000191614151515610d8057600080fd5b600160036000856000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f8d898986000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610e4257600080fd5b6102c65a03f11515610e5357600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8c83600190046040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1515610f0257600080fd5b6102c65a03f11515610f1357600080fd5b505050806000191683600019168c73ffffffffffffffffffffffffffffffffffffffff167f44bca8cc6f9375e3d800b6361e71fdde37e4fc86bdc3a72c4f8f69bbd19a01f360405160405180910390a48093505b505050979650505050505050565b600060149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610fe357600080fd5b600060149054906101000a900460ff16151515610fff57600080fd5b6001600060146101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060149054906101000a900460ff1615151561108a57600080fd5b83600060058110151561109957fe5b602002015173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156110d757600080fd5b6110e2848484611342565b9050600160026000836000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550806000191684600060058110151561112c57fe5b602002015173ffffffffffffffffffffffffffffffffffffffff167f07d3242876ac355520b94ab74873262d83b5b81dbd5da781118f78cee0bbe74760405160405180910390a350505050565b60026020528060005260406000206000915054906101000a900460ff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60036020528060005260406000206000915054906101000a900460ff1681565b600060010281565b611f4081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561124857600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561128457600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600083600060058110151561135357fe5b602002015184600160058110151561136757fe5b602002015185600260058110151561137b57fe5b602002015186600360058110151561138f57fe5b60200201518760046005811015156113a357fe5b60200201518760006004811015156113b757fe5b60200201518860016004811015156113cb57fe5b60200201518960026004811015156113df57fe5b60200201518a60036004811015156113f357fe5b60200201518a600060018110151561140757fe5b6020020151604051808b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c0100000000000000000000000002815260140186815260200185815260200184815260200183815260200182600019166000191681526020019a5050505050505050505050604051809103902090509392505050565b600060018560405180807f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250601c0182600019166000191681526020019150506040518091039020858585604051600081526020016040526000604051602001526040518085600019166000191681526020018460ff1660ff16815260200183600019166000191681526020018260001916600019168152602001945050505050602060405160208103908084039060008661646e5a03f1151561165d57600080fd5b50506020604051035173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614905095945050505050565b60008082840190508381101515156116b357fe5b8091505092915050565b6000806000806116ce8688306118df565b92506116da86886119d7565b9150848210806116e957508483105b156116f757600093506117cf565b6117aa8630600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561178a57600080fd5b6102c65a03f1151561179b57600080fd5b505050604051805190506118df565b9050848110156117ca576117be8686611a9a565b15156117c957600080fd5b5b600193505b5050509392505050565b60008473ffffffffffffffffffffffffffffffffffffffff166323b872dd8585856000604051602001526040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15156118ba57600080fd5b6102c65a03f115156118cb57600080fd5b505050604051805190509050949350505050565b60008373ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e611f4061ffff1685856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600088803b15156119b657600080fd5b87f115156119c357600080fd5b505050506040518051905090509392505050565b60008273ffffffffffffffffffffffffffffffffffffffff166370a08231611f4061ffff16846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600088803b1515611a7a57600080fd5b87f11515611a8757600080fd5b5050505060405180519050905092915050565b60008273ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515611b4657600080fd5b6102c65a03f11515611b5757600080fd5b50505060405180519050846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515611bef57600080fd5b6102c65a03f11515611c0057600080fd5b505050604051805190509050929150505600a165627a7a7230582051723af670e00f905ed79837151ff2f428c566a7778657a079e3873cc19020a10029", - "deployedBytecode": "0x6060604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633f4ba83a146100bf57806347f7835d146100d45780635c975abb146102325780638456cb591461025f5780638da5cb5b146102745780638f18b00b146102c9578063a318b5f714610367578063abf410e5146103a6578063c1614d00146103fb578063e283040d1461043a578063f06bbf751461046b578063f2fde38b1461049c575b600080fd5b34156100ca57600080fd5b6100d26104d5565b005b34156100df57600080fd5b610214600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908060c0019060068060200260405190810160405280929190826006602002808284378201915050505050919080610100019060088060200260405190810160405280929190826008602002808284378201915050505050919080602001906001806020026040519081016040528092919082600160200280828437820191505050505091908060600190600380602002604051908101604052809291908260036020028082843782019150505050509190806060019060038060200260405190810160405280929190826003602002808284378201915050505050919080606001906003806020026040519081016040528092919082600360200280828437820191505050505091905050610593565b60405180826000191660001916815260200191505060405180910390f35b341561023d57600080fd5b610245610f75565b604051808215151515815260200191505060405180910390f35b341561026a57600080fd5b610272610f88565b005b341561027f57600080fd5b610287611048565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156102d457600080fd5b6103656004808060a0019060058060200260405190810160405280929190826005602002808284378201915050505050919080608001906004806020026040519081016040528092919082600460200280828437820191505050505091908060200190600180602002604051908101604052809291908260016020028082843782019150505050509190505061106d565b005b341561037257600080fd5b61038c600480803560001916906020019091905050611179565b604051808215151515815260200191505060405180910390f35b34156103b157600080fd5b6103b9611199565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561040657600080fd5b6104206004808035600019169060200190919050506111bf565b604051808215151515815260200191505060405180910390f35b341561044557600080fd5b61044d6111df565b60405180826000191660001916815260200191505060405180910390f35b341561047657600080fd5b61047e6111e7565b604051808261ffff1661ffff16815260200191505060405180910390f35b34156104a757600080fd5b6104d3600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506111ed565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561053057600080fd5b600060149054906101000a900460ff16151561054b57600080fd5b60008060146101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b600080600080600060149054906101000a900460ff161515156105b557600080fd5b61081160a0604051908101604052808d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663079dd4b76000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561068457600080fd5b6102c65a03f1151561069557600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c60006006811015156106df57fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600360068110151561072457fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600460068110151561076957fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152506080604051908101604052808c60016008811015156107b857fe5b602002015181526020018c60026008811015156107d157fe5b602002015181526020018c60056008811015156107ea57fe5b602002015181526020018c600760088110151561080357fe5b60200201518152508a611342565b925060036000846000191660001916815260200190815260200160002060009054906101000a900460ff16156108a55782600019168b73ffffffffffffffffffffffffffffffffffffffff166001600381111561086a57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b60026000846000191660001916815260200190815260200160002060009054906101000a900460ff16156109375782600019168b73ffffffffffffffffffffffffffffffffffffffff16600060038111156108fc57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b61097d8b8489600160038110151561094b57fe5b602002015189600160038110151561095f57fe5b602002015189600160038110151561097357fe5b6020020151611598565b15156109e75782600019168b73ffffffffffffffffffffffffffffffffffffffff16600260038111156109ac57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b610a208960056008811015156109f957fe5b60200201518a6002600881101515610a0d57fe5b602002015161169f90919063ffffffff16565b9150610a408b8b6004600681101515610a3557fe5b6020020151846116bd565b1515610aa95782600019168b73ffffffffffffffffffffffffffffffffffffffff16600380811115610a6e57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b6000821115610add57610ad18a6004600681101515610ac457fe5b60200201518c30856117d9565b1515610adc57600080fd5b5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663079dd4b76000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610b6b57600080fd5b6102c65a03f11515610b7c57600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663e6488fc9308c8c8c8c8c8c6000604051602001526040518863ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200187600660200280838360005b83811015610c39578082015181840152602081019050610c1e565b5050505090500186600860200280838360005b83811015610c67578082015181840152602081019050610c4c565b5050505090500185600160200280838360005b83811015610c95578082015181840152602081019050610c7a565b5050505090500184600360200280838360005b83811015610cc3578082015181840152602081019050610ca8565b5050505090500183600360200280838360005b83811015610cf1578082015181840152602081019050610cd6565b5050505090500182600360200280838360005b83811015610d1f578082015181840152602081019050610d04565b50505050905001975050505050505050602060405180830381600087803b1515610d4857600080fd5b6102c65a03f11515610d5957600080fd5b505050604051805190509050600060010260001916816000191614151515610d8057600080fd5b600160036000856000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f8d898986000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610e4257600080fd5b6102c65a03f11515610e5357600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8c83600190046040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1515610f0257600080fd5b6102c65a03f11515610f1357600080fd5b505050806000191683600019168c73ffffffffffffffffffffffffffffffffffffffff167f44bca8cc6f9375e3d800b6361e71fdde37e4fc86bdc3a72c4f8f69bbd19a01f360405160405180910390a48093505b505050979650505050505050565b600060149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610fe357600080fd5b600060149054906101000a900460ff16151515610fff57600080fd5b6001600060146101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060149054906101000a900460ff1615151561108a57600080fd5b83600060058110151561109957fe5b602002015173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156110d757600080fd5b6110e2848484611342565b9050600160026000836000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550806000191684600060058110151561112c57fe5b602002015173ffffffffffffffffffffffffffffffffffffffff167f07d3242876ac355520b94ab74873262d83b5b81dbd5da781118f78cee0bbe74760405160405180910390a350505050565b60026020528060005260406000206000915054906101000a900460ff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60036020528060005260406000206000915054906101000a900460ff1681565b600060010281565b611f4081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561124857600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561128457600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600083600060058110151561135357fe5b602002015184600160058110151561136757fe5b602002015185600260058110151561137b57fe5b602002015186600360058110151561138f57fe5b60200201518760046005811015156113a357fe5b60200201518760006004811015156113b757fe5b60200201518860016004811015156113cb57fe5b60200201518960026004811015156113df57fe5b60200201518a60036004811015156113f357fe5b60200201518a600060018110151561140757fe5b6020020151604051808b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c0100000000000000000000000002815260140186815260200185815260200184815260200183815260200182600019166000191681526020019a5050505050505050505050604051809103902090509392505050565b600060018560405180807f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250601c0182600019166000191681526020019150506040518091039020858585604051600081526020016040526000604051602001526040518085600019166000191681526020018460ff1660ff16815260200183600019166000191681526020018260001916600019168152602001945050505050602060405160208103908084039060008661646e5a03f1151561165d57600080fd5b50506020604051035173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614905095945050505050565b60008082840190508381101515156116b357fe5b8091505092915050565b6000806000806116ce8688306118df565b92506116da86886119d7565b9150848210806116e957508483105b156116f757600093506117cf565b6117aa8630600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561178a57600080fd5b6102c65a03f1151561179b57600080fd5b505050604051805190506118df565b9050848110156117ca576117be8686611a9a565b15156117c957600080fd5b5b600193505b5050509392505050565b60008473ffffffffffffffffffffffffffffffffffffffff166323b872dd8585856000604051602001526040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15156118ba57600080fd5b6102c65a03f115156118cb57600080fd5b505050604051805190509050949350505050565b60008373ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e611f4061ffff1685856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600088803b15156119b657600080fd5b87f115156119c357600080fd5b505050506040518051905090509392505050565b60008273ffffffffffffffffffffffffffffffffffffffff166370a08231611f4061ffff16846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600088803b1515611a7a57600080fd5b87f11515611a8757600080fd5b5050505060405180519050905092915050565b60008273ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515611b4657600080fd5b6102c65a03f11515611b5757600080fd5b50505060405180519050846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515611bef57600080fd5b6102c65a03f11515611c0057600080fd5b505050604051805190509050929150505600a165627a7a7230582051723af670e00f905ed79837151ff2f428c566a7778657a079e3873cc19020a10029", - "sourceMap": "1086:10007:2:-;;;268:5:37;247:26;;;;;;;;;;;;;;;;;;;;2040:140:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;509:10:39;501:5;;:18;;;;;;;;;;;;;;;;;;2155:17:2;2119:16;;:54;;;;;;;;;;;;;;;;;;2040:140;1086:10007;;;;;;", - "deployedSourceMap": "1086:10007:2:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;833:87:37;;;;;;;;;;;;;;2398:3551:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;247:26:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;666:85;;;;;;;;;;;;;;238:20:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6048:607:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1502:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1333:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1559:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1380:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1441:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;832:169:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;833:87:37;653:5:39;;;;;;;;;;;639:19;;:10;:19;;;631:28;;;;;;;;568:6:37;;;;;;;;;;;560:15;;;;;;;;895:5;886:6;;:14;;;;;;;;;;;;;;;;;;906:9;;;;;;;;;;833:87::o;2398:3551:2:-;2835:20;2872:30;4402:25;5343:19;416:6:37;;;;;;;;;;;415:7;407:16;;;;;;;;2905:647:2;;;;;;;;;;2962:8;2905:647;;;;;;;;2996:16;;;;;;;;;;;:27;;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2905:647;;;;;;;;3067:14;3082:1;3067:17;;;;;;;;;;;;;2905:647;;;;;;;;3130:14;3145:1;3130:17;;;;;;;;;;;;;2905:647;;;;;;;;3191:14;3206:1;3191:17;;;;;;;;;;;;;2905:647;;;;;;;;;;;;;;;;3283:11;3295:1;3283:14;;;;;;;;;;;;;2905:647;;;;3323:11;3335:1;3323:14;;;;;;;;;;;;;2905:647;;;;3375:11;3387:1;3375:14;;;;;;;;;;;;;2905:647;;;;3423:11;3435:1;3423:14;;;;;;;;;;;;;2905:647;;;3503:12;2905:25;:647::i;:::-;2872:680;;3567:15;:39;3583:22;3567:39;;;;;;;;;;;;;;;;;;;;;;;;;;;3563:192;;;3682:22;3622:83;;;3672:8;3622:83;;3637:32;3631:39;;;;;;;;3622:83;;;;;;;;;;;;1433:1;1425:10;;3719:25;;;;3563:192;3769:18;:42;3788:22;3769:42;;;;;;;;;;;;;;;;;;;;;;;;;;;3765:190;;;3882:22;3827:78;;;3872:8;3827:78;;3842:27;3836:34;;;;;;;;3827:78;;;;;;;;;;;;1433:1;1425:10;;3919:25;;;;3765:190;3970:168;4000:8;4022:22;4058:11;4070:1;4058:14;;;;;;;;;;;;;4086:11;4098:1;4086:14;;;;;;;;;;;;;4114:11;4126:1;4114:14;;;;;;;;;;;;;3970:16;:168::i;:::-;3969:169;3965:384;;;4263:22;4154:145;;;4237:8;4154:145;;4186:32;4180:39;;;;;;;;4154:145;;;;;;;;;;;;1433:1;1425:10;;4313:25;;;;3965:384;4430:34;4449:11;4461:1;4449:14;;;;;;;;;;;;;4430:11;4442:1;4430:14;;;;;;;;;;;;;:18;;:34;;;;:::i;:::-;4402:62;;4480:129;4526:8;4548:14;4563:1;4548:17;;;;;;;;;;;;;4579:20;4480:32;:129::i;:::-;4479:130;4475:362;;;4751:22;4625:162;;;4725:8;4625:162;;4657:49;4651:56;;;;;;;;4625:162;;;;;;;;;;;;1433:1;1425:10;;4801:25;;;;4475:362;4935:1;4912:20;:24;4908:276;;;4977:182;5017:14;5032:1;5017:17;;;;;;;;;;;;;5056:8;5094:4;5121:20;4977:18;:182::i;:::-;4952:221;;;;;;;;4908:276;5365:16;;;;;;;;;;;:27;;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:43;;;5430:4;5449:14;5477:11;5502:12;5528:11;5553;5578;5365:234;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5343:256:2;;1433:1;1425:10;;5618:33;;;:11;:33;;;;;5610:42;;;;;;;;5705:4;5663:15;:39;5679:22;5663:39;;;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;5768:16;;;;;;;;;;;:26;;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:37;;;5806:8;5824:11;5816:20;;;5768:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5901:11;5848:65;;;5877:22;5848:65;;;5867:8;5848:65;;;;;;;;;;;;5931:11;5924:18;;429:1:37;2398:3551:2;;;;;;;;;;;;:::o;247:26:37:-;;;;;;;;;;;;;:::o;666:85::-;653:5:39;;;;;;;;;;;639:19;;:10;:19;;;631:28;;;;;;;;416:6:37;;;;;;;;;;;415:7;407:16;;;;;;;;729:4;720:6;;:13;;;;;;;;;;;;;;;;;;739:7;;;;;;;;;;666:85::o;238:20:39:-;;;;;;;;;;;;;:::o;6048:607:2:-;6342:30;416:6:37;;;;;;;;;;;415:7;407:16;;;;;;;;6309:19:2;6329:1;6309:22;;;;;;;;;;;;;6295:36;;:10;:36;;;6287:45;;;;;;;;6375:135;6414:19;6447:16;6477:23;6375:25;:135::i;:::-;6342:168;;6565:4;6520:18;:42;6539:22;6520:42;;;;;;;;;;;;;;;;;;:49;;;;;;;;;;;;;;;;;;6625:22;6579:69;;;6601:19;6621:1;6601:22;;;;;;;;;;;;;6579:69;;;;;;;;;;;;6048:607;;;;:::o;1502:51::-;;;;;;;;;;;;;;;;;;;;;;:::o;1333:40::-;;;;;;;;;;;;;:::o;1559:48::-;;;;;;;;;;;;;;;;;;;;;;:::o;1380:55::-;1433:1;1425:10;;1380:55;:::o;1441:54::-;1491:4;1441:54;:::o;832:169:39:-;653:5;;;;;;;;;;;639:19;;:10;:19;;;631:28;;;;;;;;928:1;908:22;;:8;:22;;;;900:31;;;;;;;;965:8;937:37;;958:5;;;;;;;;;;;937:37;;;;;;;;;;;;988:8;980:5;;:16;;;;;;;;;;;;;;;;;;832:169;:::o;6845:865:2:-;7051:31;7128:19;7148:1;7128:22;;;;;;;;;;;;;7176:19;7196:1;7176:22;;;;;;;;;;;;;7235:19;7255:1;7235:22;;;;;;;;;;;;;7299:19;7319:1;7299:22;;;;;;;;;;;;;7361:19;7381:1;7361:22;;;;;;;;;;;;;7424:16;7441:1;7424:19;;;;;;;;;;;;;7465:16;7482:1;7465:19;;;;;;;;;;;;;7518:16;7535:1;7518:19;;;;;;;;;;;;;7567:16;7584:1;7567:19;;;;;;;;;;;;;7638:23;7662:1;7638:26;;;;;;;;;;;;;7105:598;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7098:605;;6845:865;;;;;:::o;9165:360::-;9345:11;9389:129;9458:4;9412:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9477:1;9492;9507;9389:129;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9379:139;;:6;:139;;;9372:146;;9165:360;;;;;;;:::o;1007:129:38:-;1065:7;1080:9;1096:1;1092;:5;1080:17;;1115:1;1110;:6;;1103:14;;;;;;1130:1;1123:8;;1007:129;;;;;:::o;7921:1107:2:-;8096:37;8222:19;8307:20;8596:27;8244:53;8257:14;8273:8;8291:4;8244:12;:53::i;:::-;8222:75;;8330:36;8341:14;8357:8;8330:10;:36::i;:::-;8307:59;;8399:20;8381:15;:38;:79;;;;8440:20;8423:14;:37;8381:79;8377:122;;;8483:5;8476:12;;;;8377:122;8626:128;8652:14;8688:4;8707:16;;;;;;;;;;;:35;;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8626:12;:128::i;:::-;8596:158;;8881:20;8856:22;:45;8852:148;;;8925:63;8951:14;8967:20;8925:25;:63::i;:::-;8917:72;;;;;;;;8852:148;9017:4;9010:11;;7921:1107;;;;;;;;;:::o;10843:248::-;11001:13;11043:6;11037:26;;;11064:5;11071:3;11076:7;11037:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11030:54;;10843:248;;;;;;:::o;10004:337::-;10150:15;10238:5;10232:22;;;1491:4;10232:52;;10298:5;10317:7;10232:102;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10225:109;;10004:337;;;;;:::o;9621:265::-;9740:13;9826:5;9820:22;;;1491:4;9820:52;;9873:5;9820:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9813:66;;9621:265;;;;:::o;10458:272::-;10577:13;10619:5;10613:20;;;10655:16;;;;;;;;;;;:35;;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10707:6;10613:110;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10606:117;;10458:272;;;;:::o", - "source": "/*\n\n Copyright 2017 Dharma Labs Inc.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n*/\n\npragma solidity 0.4.18;\n\nimport \"./ContractRegistry.sol\";\nimport \"zeppelin-solidity/contracts/lifecycle/Pausable.sol\";\nimport \"zeppelin-solidity/contracts/math/SafeMath.sol\";\nimport \"zeppelin-solidity/contracts/token/ERC20/ERC20.sol\";\n\n\n/**\n * The CreditorProxy is a thin wrapper around the DebtKernel\n * It implements creditor-driven loans as specified by DIP-1\n *\n * Authors: Bo Henderson & Shivani Gupta & Dharma Team\n * DIP: https://github.com/dharmaprotocol/DIPs/issues/1\n */\ncontract CreditorProxy is Pausable {\n using SafeMath for uint;\n\n enum Errors {\n DEBT_OFFER_CANCELLED,\n DEBT_OFFER_ALREADY_FILLED,\n DEBT_OFFER_NON_CONSENSUAL,\n CREDITOR_BALANCE_OR_ALLOWANCE_INSUFFICIENT\n }\n\n ContractRegistry public contractRegistry;\n\n bytes32 constant public NULL_ISSUANCE_HASH = bytes32(0);\n uint16 constant public EXTERNAL_QUERY_GAS_LIMIT = 8000;\n\n mapping (bytes32 => bool) public debtOfferCancelled;\n mapping (bytes32 => bool) public debtOfferFilled;\n\n event LogDebtOfferCancelled(\n address indexed _creditor,\n bytes32 indexed _creditorCommitmentHash\n );\n\n event LogDebtOfferFilled(\n address indexed _creditor,\n bytes32 indexed _creditorCommitmentHash,\n bytes32 indexed _agreementId\n );\n\n event LogError(\n uint8 indexed _errorId,\n address indexed _creditor,\n bytes32 indexed _creditorCommitmentHash\n );\n\n function CreditorProxy(address _contractRegistry)\n public\n {\n contractRegistry = ContractRegistry(_contractRegistry);\n }\n\n /*\n * Submit debt order to DebtKernel if it is consensual with creditor's request\n * Creditor signature in arguments is only used internally,\n * It will not be verified by the Debt Kernel\n */\n function fillDebtOffer(\n address creditor,\n address[6] orderAddresses, // repayment-router, debtor, uw, tc, p-token, relayer\n uint[8] orderValues, // rr, salt, pa, uwFee, rFee, cFee, dFee, expTime\n bytes32[1] orderBytes32, // tcParams\n uint8[3] signaturesV, // debtV, credV, uwV\n bytes32[3] signaturesR,\n bytes32[3] signaturesS\n )\n public\n whenNotPaused\n returns (bytes32 _agreementId)\n {\n\n bytes32 creditorCommitmentHash = getCreditorCommitmentHash(\n [\n creditor,\n address(contractRegistry.debtKernel()), // debt kernel version\n orderAddresses[0], // repayment router version\n orderAddresses[3], // terms contract address\n orderAddresses[4] // principal token adddress\n\n ],\n [\n orderValues[1], // salt\n orderValues[2], // principal amount\n orderValues[5], // creditor fee\n orderValues[7] // commitmentExpirationTimestampInSec\n ],\n orderBytes32 // termsContractParameters\n );\n\n if (debtOfferFilled[creditorCommitmentHash]) {\n LogError(uint8(Errors.DEBT_OFFER_ALREADY_FILLED), creditor, creditorCommitmentHash);\n return NULL_ISSUANCE_HASH;\n }\n\n if (debtOfferCancelled[creditorCommitmentHash]) {\n LogError(uint8(Errors.DEBT_OFFER_CANCELLED), creditor, creditorCommitmentHash);\n return NULL_ISSUANCE_HASH;\n }\n\n if (!isValidSignature(\n creditor,\n creditorCommitmentHash,\n signaturesV[1],\n signaturesR[1],\n signaturesS[1]\n )) {\n LogError(\n uint8(Errors.DEBT_OFFER_NON_CONSENSUAL),\n creditor,\n creditorCommitmentHash\n );\n return NULL_ISSUANCE_HASH;\n }\n\n // principal amount + creditor fee\n uint totalCreditorPayment = orderValues[2].add(orderValues[5]);\n\n if (!hasSufficientBalanceAndAllowance(\n creditor,\n orderAddresses[4],\n totalCreditorPayment\n )) {\n LogError(\n uint8(Errors.CREDITOR_BALANCE_OR_ALLOWANCE_INSUFFICIENT),\n creditor,\n creditorCommitmentHash\n );\n return NULL_ISSUANCE_HASH;\n }\n\n // Transfer principal from creditor to CreditorProxy\n if (totalCreditorPayment > 0) {\n require(\n transferTokensFrom(\n orderAddresses[4],\n creditor,\n address(this),\n totalCreditorPayment\n )\n );\n }\n\n // Grant allowance to the TokenTransferProxy for this contract.\n\n\n // Fill debt order with this contract playing the role of creditor\n bytes32 agreementId = contractRegistry.debtKernel().fillDebtOrder(\n address(this),\n orderAddresses,\n orderValues,\n orderBytes32,\n signaturesV,\n signaturesR,\n signaturesS\n );\n\n require(agreementId != NULL_ISSUANCE_HASH);\n\n debtOfferFilled[creditorCommitmentHash] = true;\n\n // transfer debt token to real creditor\n contractRegistry.debtToken().transfer(creditor, uint256(agreementId));\n\n LogDebtOfferFilled(creditor, creditorCommitmentHash, agreementId);\n\n return agreementId;\n }\n\n /**\n * Allows creditor to prevent a debt offer from being used in the future\n */\n function cancelDebtOffer(\n address[5] commitmentAddresses,\n uint[4] commitmentValues,\n bytes32[1] termsContractParameters\n )\n public\n whenNotPaused\n {\n // sender must be the creditor\n require(msg.sender == commitmentAddresses[0]);\n bytes32 creditorCommitmentHash = getCreditorCommitmentHash(\n commitmentAddresses,\n commitmentValues,\n termsContractParameters\n );\n debtOfferCancelled[creditorCommitmentHash] = true;\n LogDebtOfferCancelled(commitmentAddresses[0], creditorCommitmentHash);\n }\n\n ////////////////////////\n // INTERNAL FUNCTIONS //\n ////////////////////////\n\n /**\n * Returns the messaged signed by the creditor to indicate their commitment\n */\n function getCreditorCommitmentHash(\n address[5] commitmentAddresses,\n uint[4] commitmentValues,\n bytes32[1] termsContractParameters\n )\n internal\n pure\n returns (bytes32 _creditorCommitmentHash)\n {\n return keccak256(\n commitmentAddresses[0], // creditor\n commitmentAddresses[1], // debt kernel version\n commitmentAddresses[2], // repayment router version\n commitmentAddresses[3], // terms contract address\n commitmentAddresses[4], // principal token address\n commitmentValues[0], // salt\n commitmentValues[1], // principal amount\n commitmentValues[2], // creditor fee\n commitmentValues[3], // commitmentExpirationTimestampInSec\n termsContractParameters[0] // terms contract parameters\n );\n }\n\n\n /**\n * Assert that the creditor has a sufficient token balance and has granted the token transfer\n * proxy contract sufficient allowance to suffice for the principal and creditor fee.\n */\n function hasSufficientBalanceAndAllowance(\n address creditor,\n address principalToken,\n uint totalCreditorPayment\n )\n internal\n returns (bool _isBalanceAndAllowanceSufficient)\n {\n // The allowance that this contract has for a creditor's tokens.\n uint proxyAllowance = getAllowance(principalToken, creditor, address(this));\n uint creditorBalance = getBalance(principalToken, creditor);\n\n if (creditorBalance < totalCreditorPayment || proxyAllowance < totalCreditorPayment) {\n return false;\n }\n\n // The allowance that the token transfer proxy has for this contract's tokens.\n uint tokenTransferAllowance = getAllowance(\n principalToken,\n address(this),\n contractRegistry.tokenTransferProxy()\n );\n\n // Ensure the token transfer proxy can transfer tokens from the creditor proxy\n if (tokenTransferAllowance < totalCreditorPayment) {\n require(setTokenTransferAllowance(principalToken, totalCreditorPayment));\n }\n\n return true;\n }\n\n /**\n * Given a hashed message, a signer's address, and a signature,\n * returns whether the signature is valid.\n */\n function isValidSignature(\n address signer,\n bytes32 hash,\n uint8 v,\n bytes32 r,\n bytes32 s\n )\n internal\n pure\n returns (bool _valid)\n {\n return signer == ecrecover(\n keccak256(\"\\x19Ethereum Signed Message:\\n32\", hash),\n v,\n r,\n s\n );\n }\n\n /**\n * Helper function for querying an address' balance on a given token.\n */\n function getBalance(\n address token,\n address owner\n )\n internal\n view\n returns (uint _balance)\n {\n // Limit gas to prevent reentrancy.\n return ERC20(token).balanceOf.gas(EXTERNAL_QUERY_GAS_LIMIT)(owner);\n }\n\n /**\n * Helper function for querying this contract's allowance for transferring the given token.\n */\n function getAllowance(\n address token,\n address owner,\n address granter\n )\n internal\n view\n returns (uint _allowance)\n {\n // Limit gas to prevent reentrancy.\n return ERC20(token).allowance.gas(EXTERNAL_QUERY_GAS_LIMIT)(\n owner,\n granter\n );\n }\n\n /**\n * Helper function for approving this address' allowance to Dharma's token transfer proxy.\n */\n function setTokenTransferAllowance(\n address token,\n uint amount\n )\n internal\n returns (bool _success)\n {\n return ERC20(token).approve(\n address(contractRegistry.tokenTransferProxy()),\n amount\n );\n }\n\n\n /**\n * Helper function for transferring a specified amount of tokens between two parties.\n */\n function transferTokensFrom(\n address _token,\n address _from,\n address _to,\n uint _amount\n )\n internal\n returns (bool _success)\n {\n return ERC20(_token).transferFrom(_from, _to, _amount);\n }\n}\n", + "bytecode": "0x606060405260008060146101000a81548160ff021916908315150217905550341561002957600080fd5b604051602080611be483398101604052808051906020019091905050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611b0e806100d66000396000f3006060604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633c1c90a7146100bf5780633f4ba83a1461015d57806347f7835d146101725780635c975abb146102d05780638456cb59146102fd5780638da5cb5b14610312578063a318b5f714610367578063abf410e5146103a6578063c1614d00146103fb578063e283040d1461043a578063f06bbf751461046b578063f2fde38b1461049c575b600080fd5b34156100ca57600080fd5b61015b60048080608001906004806020026040519081016040528092919082600460200280828437820191505050505091908060800190600480602002604051908101604052809291908260046020028082843782019150505050509190806020019060018060200260405190810160405280929190826001602002808284378201915050505050919050506104d5565b005b341561016857600080fd5b6101706105e1565b005b341561017d57600080fd5b6102b2600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908060c001906006806020026040519081016040528092919082600660200280828437820191505050505091908061010001906008806020026040519081016040528092919082600860200280828437820191505050505091908060200190600180602002604051908101604052809291908260016020028082843782019150505050509190806060019060038060200260405190810160405280929190826003602002808284378201915050505050919080606001906003806020026040519081016040528092919082600360200280828437820191505050505091908060600190600380602002604051908101604052809291908260036020028082843782019150505050509190505061069f565b60405180826000191660001916815260200191505060405180910390f35b34156102db57600080fd5b6102e3610fa7565b604051808215151515815260200191505060405180910390f35b341561030857600080fd5b610310610fba565b005b341561031d57600080fd5b61032561107a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561037257600080fd5b61038c60048080356000191690602001909190505061109f565b604051808215151515815260200191505060405180910390f35b34156103b157600080fd5b6103b96110bf565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561040657600080fd5b6104206004808035600019169060200190919050506110e5565b604051808215151515815260200191505060405180910390f35b341561044557600080fd5b61044d611105565b60405180826000191660001916815260200191505060405180910390f35b341561047657600080fd5b61047e61110d565b604051808261ffff1661ffff16815260200191505060405180910390f35b34156104a757600080fd5b6104d3600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611113565b005b60008060149054906101000a900460ff161515156104f257600080fd5b83600060048110151561050157fe5b602002015173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561053f57600080fd5b61054a848484611268565b9050600160026000836000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550806000191684600060048110151561059457fe5b602002015173ffffffffffffffffffffffffffffffffffffffff167f07d3242876ac355520b94ab74873262d83b5b81dbd5da781118f78cee0bbe74760405160405180910390a350505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561063c57600080fd5b600060149054906101000a900460ff16151561065757600080fd5b60008060146101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b600080600080600060149054906101000a900460ff161515156106c157600080fd5b6108436080604051908101604052808d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600060068110151561071157fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600260068110151561075657fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600360068110151561079b57fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152506080604051908101604052808c60056008811015156107ea57fe5b602002015181526020018c600060088110151561080357fe5b602002015181526020018c600760088110151561081c57fe5b602002015181526020018c600160088110151561083557fe5b60200201518152508a611268565b925060036000846000191660001916815260200190815260200160002060009054906101000a900460ff16156108d75782600019168b73ffffffffffffffffffffffffffffffffffffffff166001600381111561089c57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b60026000846000191660001916815260200190815260200160002060009054906101000a900460ff16156109695782600019168b73ffffffffffffffffffffffffffffffffffffffff166000600381111561092e57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b6109af8b8489600160038110151561097d57fe5b602002015189600160038110151561099157fe5b60200201518960016003811015156109a557fe5b6020020151611468565b1515610a195782600019168b73ffffffffffffffffffffffffffffffffffffffff16600260038111156109de57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b610a52896005600881101515610a2b57fe5b60200201518a6002600881101515610a3f57fe5b602002015161156f90919063ffffffff16565b9150610a728b8b6004600681101515610a6757fe5b60200201518461158d565b1515610adb5782600019168b73ffffffffffffffffffffffffffffffffffffffff16600380811115610aa057fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b6000821115610b0f57610b038a6004600681101515610af657fe5b60200201518c30856116a9565b1515610b0e57600080fd5b5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663079dd4b76000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610b9d57600080fd5b6102c65a03f11515610bae57600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663e6488fc9308c8c8c8c8c8c6000604051602001526040518863ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200187600660200280838360005b83811015610c6b578082015181840152602081019050610c50565b5050505090500186600860200280838360005b83811015610c99578082015181840152602081019050610c7e565b5050505090500185600160200280838360005b83811015610cc7578082015181840152602081019050610cac565b5050505090500184600360200280838360005b83811015610cf5578082015181840152602081019050610cda565b5050505090500183600360200280838360005b83811015610d23578082015181840152602081019050610d08565b5050505090500182600360200280838360005b83811015610d51578082015181840152602081019050610d36565b50505050905001975050505050505050602060405180830381600087803b1515610d7a57600080fd5b6102c65a03f11515610d8b57600080fd5b505050604051805190509050600060010260001916816000191614151515610db257600080fd5b600160036000856000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f8d898986000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610e7457600080fd5b6102c65a03f11515610e8557600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8c83600190046040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1515610f3457600080fd5b6102c65a03f11515610f4557600080fd5b505050806000191683600019168c73ffffffffffffffffffffffffffffffffffffffff167f44bca8cc6f9375e3d800b6361e71fdde37e4fc86bdc3a72c4f8f69bbd19a01f360405160405180910390a48093505b505050979650505050505050565b600060149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561101557600080fd5b600060149054906101000a900460ff1615151561103157600080fd5b6001600060146101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60026020528060005260406000206000915054906101000a900460ff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60036020528060005260406000206000915054906101000a900460ff1681565b600060010281565b611f4081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561116e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156111aa57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600083600060048110151561127957fe5b602002015184600160048110151561128d57fe5b60200201518460006004811015156112a157fe5b60200201518660026004811015156112b557fe5b60200201518660016004811015156112c957fe5b60200201518860036004811015156112dd57fe5b60200201518760006001811015156112f157fe5b602002015189600260048110151561130557fe5b60200201518a600360048110151561131957fe5b6020020151604051808a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018881526020018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c0100000000000000000000000002815260140184600019166000191681526020018381526020018281526020019950505050505050505050604051809103902090509392505050565b600060018560405180807f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250601c0182600019166000191681526020019150506040518091039020858585604051600081526020016040526000604051602001526040518085600019166000191681526020018460ff1660ff16815260200183600019166000191681526020018260001916600019168152602001945050505050602060405160208103908084039060008661646e5a03f1151561152d57600080fd5b50506020604051035173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614905095945050505050565b600080828401905083811015151561158357fe5b8091505092915050565b60008060008061159e8688306117af565b92506115aa86886118a7565b9150848210806115b957508483105b156115c7576000935061169f565b61167a8630600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561165a57600080fd5b6102c65a03f1151561166b57600080fd5b505050604051805190506117af565b90508481101561169a5761168e868661196a565b151561169957600080fd5b5b600193505b5050509392505050565b60008473ffffffffffffffffffffffffffffffffffffffff166323b872dd8585856000604051602001526040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b151561178a57600080fd5b6102c65a03f1151561179b57600080fd5b505050604051805190509050949350505050565b60008373ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e611f4061ffff1685856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600088803b151561188657600080fd5b87f1151561189357600080fd5b505050506040518051905090509392505050565b60008273ffffffffffffffffffffffffffffffffffffffff166370a08231611f4061ffff16846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600088803b151561194a57600080fd5b87f1151561195757600080fd5b5050505060405180519050905092915050565b60008273ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515611a1657600080fd5b6102c65a03f11515611a2757600080fd5b50505060405180519050846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515611abf57600080fd5b6102c65a03f11515611ad057600080fd5b505050604051805190509050929150505600a165627a7a72305820627f64d2f5e59580e881310ad781c1c18c95e290f478ac08b283c8661b5071d90029", + "deployedBytecode": "0x6060604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633c1c90a7146100bf5780633f4ba83a1461015d57806347f7835d146101725780635c975abb146102d05780638456cb59146102fd5780638da5cb5b14610312578063a318b5f714610367578063abf410e5146103a6578063c1614d00146103fb578063e283040d1461043a578063f06bbf751461046b578063f2fde38b1461049c575b600080fd5b34156100ca57600080fd5b61015b60048080608001906004806020026040519081016040528092919082600460200280828437820191505050505091908060800190600480602002604051908101604052809291908260046020028082843782019150505050509190806020019060018060200260405190810160405280929190826001602002808284378201915050505050919050506104d5565b005b341561016857600080fd5b6101706105e1565b005b341561017d57600080fd5b6102b2600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908060c001906006806020026040519081016040528092919082600660200280828437820191505050505091908061010001906008806020026040519081016040528092919082600860200280828437820191505050505091908060200190600180602002604051908101604052809291908260016020028082843782019150505050509190806060019060038060200260405190810160405280929190826003602002808284378201915050505050919080606001906003806020026040519081016040528092919082600360200280828437820191505050505091908060600190600380602002604051908101604052809291908260036020028082843782019150505050509190505061069f565b60405180826000191660001916815260200191505060405180910390f35b34156102db57600080fd5b6102e3610fa7565b604051808215151515815260200191505060405180910390f35b341561030857600080fd5b610310610fba565b005b341561031d57600080fd5b61032561107a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561037257600080fd5b61038c60048080356000191690602001909190505061109f565b604051808215151515815260200191505060405180910390f35b34156103b157600080fd5b6103b96110bf565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561040657600080fd5b6104206004808035600019169060200190919050506110e5565b604051808215151515815260200191505060405180910390f35b341561044557600080fd5b61044d611105565b60405180826000191660001916815260200191505060405180910390f35b341561047657600080fd5b61047e61110d565b604051808261ffff1661ffff16815260200191505060405180910390f35b34156104a757600080fd5b6104d3600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611113565b005b60008060149054906101000a900460ff161515156104f257600080fd5b83600060048110151561050157fe5b602002015173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561053f57600080fd5b61054a848484611268565b9050600160026000836000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550806000191684600060048110151561059457fe5b602002015173ffffffffffffffffffffffffffffffffffffffff167f07d3242876ac355520b94ab74873262d83b5b81dbd5da781118f78cee0bbe74760405160405180910390a350505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561063c57600080fd5b600060149054906101000a900460ff16151561065757600080fd5b60008060146101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b600080600080600060149054906101000a900460ff161515156106c157600080fd5b6108436080604051908101604052808d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600060068110151561071157fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600260068110151561075657fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600360068110151561079b57fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152506080604051908101604052808c60056008811015156107ea57fe5b602002015181526020018c600060088110151561080357fe5b602002015181526020018c600760088110151561081c57fe5b602002015181526020018c600160088110151561083557fe5b60200201518152508a611268565b925060036000846000191660001916815260200190815260200160002060009054906101000a900460ff16156108d75782600019168b73ffffffffffffffffffffffffffffffffffffffff166001600381111561089c57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b60026000846000191660001916815260200190815260200160002060009054906101000a900460ff16156109695782600019168b73ffffffffffffffffffffffffffffffffffffffff166000600381111561092e57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b6109af8b8489600160038110151561097d57fe5b602002015189600160038110151561099157fe5b60200201518960016003811015156109a557fe5b6020020151611468565b1515610a195782600019168b73ffffffffffffffffffffffffffffffffffffffff16600260038111156109de57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b610a52896005600881101515610a2b57fe5b60200201518a6002600881101515610a3f57fe5b602002015161156f90919063ffffffff16565b9150610a728b8b6004600681101515610a6757fe5b60200201518461158d565b1515610adb5782600019168b73ffffffffffffffffffffffffffffffffffffffff16600380811115610aa057fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b6000821115610b0f57610b038a6004600681101515610af657fe5b60200201518c30856116a9565b1515610b0e57600080fd5b5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663079dd4b76000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610b9d57600080fd5b6102c65a03f11515610bae57600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663e6488fc9308c8c8c8c8c8c6000604051602001526040518863ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200187600660200280838360005b83811015610c6b578082015181840152602081019050610c50565b5050505090500186600860200280838360005b83811015610c99578082015181840152602081019050610c7e565b5050505090500185600160200280838360005b83811015610cc7578082015181840152602081019050610cac565b5050505090500184600360200280838360005b83811015610cf5578082015181840152602081019050610cda565b5050505090500183600360200280838360005b83811015610d23578082015181840152602081019050610d08565b5050505090500182600360200280838360005b83811015610d51578082015181840152602081019050610d36565b50505050905001975050505050505050602060405180830381600087803b1515610d7a57600080fd5b6102c65a03f11515610d8b57600080fd5b505050604051805190509050600060010260001916816000191614151515610db257600080fd5b600160036000856000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f8d898986000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610e7457600080fd5b6102c65a03f11515610e8557600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8c83600190046040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1515610f3457600080fd5b6102c65a03f11515610f4557600080fd5b505050806000191683600019168c73ffffffffffffffffffffffffffffffffffffffff167f44bca8cc6f9375e3d800b6361e71fdde37e4fc86bdc3a72c4f8f69bbd19a01f360405160405180910390a48093505b505050979650505050505050565b600060149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561101557600080fd5b600060149054906101000a900460ff1615151561103157600080fd5b6001600060146101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60026020528060005260406000206000915054906101000a900460ff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60036020528060005260406000206000915054906101000a900460ff1681565b600060010281565b611f4081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561116e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156111aa57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600083600060048110151561127957fe5b602002015184600160048110151561128d57fe5b60200201518460006004811015156112a157fe5b60200201518660026004811015156112b557fe5b60200201518660016004811015156112c957fe5b60200201518860036004811015156112dd57fe5b60200201518760006001811015156112f157fe5b602002015189600260048110151561130557fe5b60200201518a600360048110151561131957fe5b6020020151604051808a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018881526020018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c0100000000000000000000000002815260140184600019166000191681526020018381526020018281526020019950505050505050505050604051809103902090509392505050565b600060018560405180807f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250601c0182600019166000191681526020019150506040518091039020858585604051600081526020016040526000604051602001526040518085600019166000191681526020018460ff1660ff16815260200183600019166000191681526020018260001916600019168152602001945050505050602060405160208103908084039060008661646e5a03f1151561152d57600080fd5b50506020604051035173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614905095945050505050565b600080828401905083811015151561158357fe5b8091505092915050565b60008060008061159e8688306117af565b92506115aa86886118a7565b9150848210806115b957508483105b156115c7576000935061169f565b61167a8630600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561165a57600080fd5b6102c65a03f1151561166b57600080fd5b505050604051805190506117af565b90508481101561169a5761168e868661196a565b151561169957600080fd5b5b600193505b5050509392505050565b60008473ffffffffffffffffffffffffffffffffffffffff166323b872dd8585856000604051602001526040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b151561178a57600080fd5b6102c65a03f1151561179b57600080fd5b505050604051805190509050949350505050565b60008373ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e611f4061ffff1685856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600088803b151561188657600080fd5b87f1151561189357600080fd5b505050506040518051905090509392505050565b60008273ffffffffffffffffffffffffffffffffffffffff166370a08231611f4061ffff16846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600088803b151561194a57600080fd5b87f1151561195757600080fd5b5050505060405180519050905092915050565b60008273ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515611a1657600080fd5b6102c65a03f11515611a2757600080fd5b50505060405180519050846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515611abf57600080fd5b6102c65a03f11515611ad057600080fd5b505050604051805190509050929150505600a165627a7a72305820627f64d2f5e59580e881310ad781c1c18c95e290f478ac08b283c8661b5071d90029", + "sourceMap": "1086:9807:2:-;;;268:5:37;247:26;;;;;;;;;;;;;;;;;;;;2040:140:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;509:10:39;501:5;;:18;;;;;;;;;;;;;;;;;;2155:17:2;2119:16;;:54;;;;;;;;;;;;;;;;;;2040:140;1086:9807;;;;;;", + "deployedSourceMap": "1086:9807:2:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5952:607;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;833:87:37;;;;;;;;;;;;;;2398:3455:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;247:26:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;666:85;;;;;;;;;;;;;;238:20:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1502:51:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1333:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1559:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1380:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1441:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;832:169:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;5952:607:2;6246:30;416:6:37;;;;;;;;;;;415:7;407:16;;;;;;;;6213:19:2;6233:1;6213:22;;;;;;;;;;;;;6199:36;;:10;:36;;;6191:45;;;;;;;;6279:135;6318:19;6351:16;6381:23;6279:25;:135::i;:::-;6246:168;;6469:4;6424:18;:42;6443:22;6424:42;;;;;;;;;;;;;;;;;;:49;;;;;;;;;;;;;;;;;;6529:22;6483:69;;;6505:19;6525:1;6505:22;;;;;;;;;;;;;6483:69;;;;;;;;;;;;5952:607;;;;:::o;833:87:37:-;653:5:39;;;;;;;;;;;639:19;;:10;:19;;;631:28;;;;;;;;568:6:37;;;;;;;;;;;560:15;;;;;;;;895:5;886:6;;:14;;;;;;;;;;;;;;;;;;906:9;;;;;;;;;;833:87::o;2398:3455:2:-;2835:20;2872:30;4306:25;5247:19;416:6:37;;;;;;;;;;;415:7;407:16;;;;;;;;2905:550:2;;;;;;;;;;2962:8;2905:550;;;;;;;;2988:14;3003:1;2988:17;;;;;;;;;;;;;2905:550;;;;;;;;3051:14;3066:1;3051:17;;;;;;;;;;;;;2905:550;;;;;;;;3101:14;3116:1;3101:17;;;;;;;;;;;;;2905:550;;;;;;;;;;;;;;;;3181:11;3193:1;3181:14;;;;;;;;;;;;;2905:550;;;;3229:11;3241:1;3229:14;;;;;;;;;;;;;2905:550;;;;3286:11;3298:1;3286:14;;;;;;;;;;;;;2905:550;;;;3356:11;3368:1;3356:14;;;;;;;;;;;;;2905:550;;;3406:12;2905:25;:550::i;:::-;2872:583;;3470:15;:39;3486:22;3470:39;;;;;;;;;;;;;;;;;;;;;;;;;;;3466:192;;;3585:22;3525:83;;;3575:8;3525:83;;3540:32;3534:39;;;;;;;;3525:83;;;;;;;;;;;;1433:1;1425:10;;3622:25;;;;3466:192;3672:18;:42;3691:22;3672:42;;;;;;;;;;;;;;;;;;;;;;;;;;;3668:191;;;3785:22;3730:78;;;3775:8;3730:78;;3745:27;3739:34;;;;;;;;3730:78;;;;;;;;;;;;1433:1;1425:10;;3822:25;;;;3668:191;3874:168;3904:8;3926:22;3962:11;3974:1;3962:14;;;;;;;;;;;;;3990:11;4002:1;3990:14;;;;;;;;;;;;;4018:11;4030:1;4018:14;;;;;;;;;;;;;3874:16;:168::i;:::-;3873:169;3869:384;;;4167:22;4058:145;;;4141:8;4058:145;;4090:32;4084:39;;;;;;;;4058:145;;;;;;;;;;;;1433:1;1425:10;;4217:25;;;;3869:384;4334:34;4353:11;4365:1;4353:14;;;;;;;;;;;;;4334:11;4346:1;4334:14;;;;;;;;;;;;;:18;;:34;;;;:::i;:::-;4306:62;;4384:129;4430:8;4452:14;4467:1;4452:17;;;;;;;;;;;;;4483:20;4384:32;:129::i;:::-;4383:130;4379:362;;;4655:22;4529:162;;;4629:8;4529:162;;4561:49;4555:56;;;;;;;;4529:162;;;;;;;;;;;;1433:1;1425:10;;4705:25;;;;4379:362;4839:1;4816:20;:24;4812:276;;;4881:182;4921:14;4936:1;4921:17;;;;;;;;;;;;;4960:8;4998:4;5025:20;4881:18;:182::i;:::-;4856:221;;;;;;;;4812:276;5269:16;;;;;;;;;;;:27;;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:43;;;5334:4;5353:14;5381:11;5406:12;5432:11;5457;5482;5269:234;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5247:256:2;;1433:1;1425:10;;5522:33;;;:11;:33;;;;;5514:42;;;;;;;;5609:4;5567:15;:39;5583:22;5567:39;;;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;5672:16;;;;;;;;;;;:26;;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:37;;;5710:8;5728:11;5720:20;;;5672:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5805:11;5752:65;;;5781:22;5752:65;;;5771:8;5752:65;;;;;;;;;;;;5835:11;5828:18;;429:1:37;2398:3455:2;;;;;;;;;;;;:::o;247:26:37:-;;;;;;;;;;;;;:::o;666:85::-;653:5:39;;;;;;;;;;;639:19;;:10;:19;;;631:28;;;;;;;;416:6:37;;;;;;;;;;;415:7;407:16;;;;;;;;729:4;720:6;;:13;;;;;;;;;;;;;;;;;;739:7;;;;;;;;;;666:85::o;238:20:39:-;;;;;;;;;;;;;:::o;1502:51:2:-;;;;;;;;;;;;;;;;;;;;;;:::o;1333:40::-;;;;;;;;;;;;;:::o;1559:48::-;;;;;;;;;;;;;;;;;;;;;;:::o;1380:55::-;1433:1;1425:10;;1380:55;:::o;1441:54::-;1491:4;1441:54;:::o;832:169:39:-;653:5;;;;;;;;;;;639:19;;:10;:19;;;631:28;;;;;;;;928:1;908:22;;:8;:22;;;;900:31;;;;;;;;965:8;937:37;;958:5;;;;;;;;;;;937:37;;;;;;;;;;;;988:8;980:5;;:16;;;;;;;;;;;;;;;;;;832:169;:::o;6749:761:2:-;6955:31;7032:19;7052:1;7032:22;;;;;;;;;;;;;7080:19;7100:1;7080:22;;;;;;;;;;;;;7144:16;7161:1;7144:19;;;;;;;;;;;;;7193;7213:1;7193:22;;;;;;;;;;;;;7244:16;7261:1;7244:19;;;;;;;;;;;;;7302;7322:1;7302:22;;;;;;;;;;;;;7355:23;7379:1;7355:26;;;;;;;;;;;;;7395:16;7412:1;7395:19;;;;;;;;;;;;;7466:16;7483:1;7466:19;;;;;;;;;;;;;7009:494;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7002:501;;6749:761;;;;;:::o;8965:360::-;9145:11;9189:129;9258:4;9212:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9277:1;9292;9307;9189:129;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9179:139;;:6;:139;;;9172:146;;8965:360;;;;;;;:::o;1007:129:38:-;1065:7;1080:9;1096:1;1092;:5;1080:17;;1115:1;1110;:6;;1103:14;;;;;;1130:1;1123:8;;1007:129;;;;;:::o;7721:1107:2:-;7896:37;8022:19;8107:20;8396:27;8044:53;8057:14;8073:8;8091:4;8044:12;:53::i;:::-;8022:75;;8130:36;8141:14;8157:8;8130:10;:36::i;:::-;8107:59;;8199:20;8181:15;:38;:79;;;;8240:20;8223:14;:37;8181:79;8177:122;;;8283:5;8276:12;;;;8177:122;8426:128;8452:14;8488:4;8507:16;;;;;;;;;;;:35;;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8426:12;:128::i;:::-;8396:158;;8681:20;8656:22;:45;8652:148;;;8725:63;8751:14;8767:20;8725:25;:63::i;:::-;8717:72;;;;;;;;8652:148;8817:4;8810:11;;7721:1107;;;;;;;;;:::o;10643:248::-;10801:13;10843:6;10837:26;;;10864:5;10871:3;10876:7;10837:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10830:54;;10643:248;;;;;;:::o;9804:337::-;9950:15;10038:5;10032:22;;;1491:4;10032:52;;10098:5;10117:7;10032:102;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10025:109;;9804:337;;;;;:::o;9421:265::-;9540:13;9626:5;9620:22;;;1491:4;9620:52;;9673:5;9620:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9613:66;;9421:265;;;;:::o;10258:272::-;10377:13;10419:5;10413:20;;;10455:16;;;;;;;;;;;:35;;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10507:6;10413:110;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10406:117;;10258:272;;;;:::o", + "source": "/*\n\n Copyright 2017 Dharma Labs Inc.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n*/\n\npragma solidity 0.4.18;\n\nimport \"./ContractRegistry.sol\";\nimport \"zeppelin-solidity/contracts/lifecycle/Pausable.sol\";\nimport \"zeppelin-solidity/contracts/math/SafeMath.sol\";\nimport \"zeppelin-solidity/contracts/token/ERC20/ERC20.sol\";\n\n\n/**\n * The CreditorProxy is a thin wrapper around the DebtKernel\n * It implements creditor-driven loans as specified by DIP-1\n *\n * Authors: Bo Henderson & Shivani Gupta & Dharma Team\n * DIP: https://github.com/dharmaprotocol/DIPs/issues/1\n */\ncontract CreditorProxy is Pausable {\n using SafeMath for uint;\n\n enum Errors {\n DEBT_OFFER_CANCELLED,\n DEBT_OFFER_ALREADY_FILLED,\n DEBT_OFFER_NON_CONSENSUAL,\n CREDITOR_BALANCE_OR_ALLOWANCE_INSUFFICIENT\n }\n\n ContractRegistry public contractRegistry;\n\n bytes32 constant public NULL_ISSUANCE_HASH = bytes32(0);\n uint16 constant public EXTERNAL_QUERY_GAS_LIMIT = 8000;\n\n mapping (bytes32 => bool) public debtOfferCancelled;\n mapping (bytes32 => bool) public debtOfferFilled;\n\n event LogDebtOfferCancelled(\n address indexed _creditor,\n bytes32 indexed _creditorCommitmentHash\n );\n\n event LogDebtOfferFilled(\n address indexed _creditor,\n bytes32 indexed _creditorCommitmentHash,\n bytes32 indexed _agreementId\n );\n\n event LogError(\n uint8 indexed _errorId,\n address indexed _creditor,\n bytes32 indexed _creditorCommitmentHash\n );\n\n function CreditorProxy(address _contractRegistry)\n public\n {\n contractRegistry = ContractRegistry(_contractRegistry);\n }\n\n /*\n * Submit debt order to DebtKernel if it is consensual with creditor's request\n * Creditor signature in arguments is only used internally,\n * It will not be verified by the Debt Kernel\n */\n function fillDebtOffer(\n address creditor,\n address[6] orderAddresses, // repayment-router, debtor, uw, tc, p-token, relayer\n uint[8] orderValues, // rr, salt, pa, uwFee, rFee, cFee, dFee, expTime\n bytes32[1] orderBytes32, // tcParams\n uint8[3] signaturesV, // debtV, credV, uwV\n bytes32[3] signaturesR,\n bytes32[3] signaturesS\n )\n public\n whenNotPaused\n returns (bytes32 _agreementId)\n {\n\n bytes32 creditorCommitmentHash = getCreditorCommitmentHash(\n [\n creditor,\n orderAddresses[0], // repayment router version\n orderAddresses[2], // underwriter\n orderAddresses[3] // termsContract\n ],\n [\n orderValues[5], // creditor fee\n orderValues[0], // underwriterRiskRating\n orderValues[7], // commitmentExpirationTimestampInSec\n orderValues[1] // salt\n ],\n orderBytes32 // termsContractParameters\n );\n\n if (debtOfferFilled[creditorCommitmentHash]) {\n LogError(uint8(Errors.DEBT_OFFER_ALREADY_FILLED), creditor, creditorCommitmentHash);\n return NULL_ISSUANCE_HASH;\n }\n\n if (debtOfferCancelled[creditorCommitmentHash]) {\n LogError(uint8(Errors.DEBT_OFFER_CANCELLED), creditor, creditorCommitmentHash);\n return NULL_ISSUANCE_HASH; \n }\n\n if (!isValidSignature(\n creditor,\n creditorCommitmentHash,\n signaturesV[1],\n signaturesR[1],\n signaturesS[1]\n )) {\n LogError(\n uint8(Errors.DEBT_OFFER_NON_CONSENSUAL),\n creditor,\n creditorCommitmentHash\n );\n return NULL_ISSUANCE_HASH;\n }\n\n // principal amount + creditor fee\n uint totalCreditorPayment = orderValues[2].add(orderValues[5]);\n\n if (!hasSufficientBalanceAndAllowance(\n creditor,\n orderAddresses[4],\n totalCreditorPayment\n )) {\n LogError(\n uint8(Errors.CREDITOR_BALANCE_OR_ALLOWANCE_INSUFFICIENT),\n creditor,\n creditorCommitmentHash\n );\n return NULL_ISSUANCE_HASH;\n }\n\n // Transfer principal from creditor to CreditorProxy\n if (totalCreditorPayment > 0) {\n require(\n transferTokensFrom(\n orderAddresses[4],\n creditor,\n address(this),\n totalCreditorPayment\n )\n );\n }\n\n // Grant allowance to the TokenTransferProxy for this contract.\n\n\n // Fill debt order with this contract playing the role of creditor\n bytes32 agreementId = contractRegistry.debtKernel().fillDebtOrder(\n address(this),\n orderAddresses,\n orderValues,\n orderBytes32,\n signaturesV,\n signaturesR,\n signaturesS\n );\n\n require(agreementId != NULL_ISSUANCE_HASH);\n\n debtOfferFilled[creditorCommitmentHash] = true;\n\n // transfer debt token to real creditor\n contractRegistry.debtToken().transfer(creditor, uint256(agreementId));\n\n LogDebtOfferFilled(creditor, creditorCommitmentHash, agreementId);\n\n return agreementId;\n }\n\n /**\n * Allows creditor to prevent a debt offer from being used in the future\n */\n function cancelDebtOffer(\n address[4] commitmentAddresses,\n uint[4] commitmentValues,\n bytes32[1] termsContractParameters\n )\n public\n whenNotPaused\n {\n // sender must be the creditor\n require(msg.sender == commitmentAddresses[0]);\n bytes32 creditorCommitmentHash = getCreditorCommitmentHash(\n commitmentAddresses,\n commitmentValues,\n termsContractParameters\n );\n debtOfferCancelled[creditorCommitmentHash] = true;\n LogDebtOfferCancelled(commitmentAddresses[0], creditorCommitmentHash);\n }\n\n ////////////////////////\n // INTERNAL FUNCTIONS //\n ////////////////////////\n\n /**\n * Returns the messaged signed by the creditor to indicate their commitment\n */\n function getCreditorCommitmentHash(\n address[4] commitmentAddresses,\n uint[4] commitmentValues,\n bytes32[1] termsContractParameters\n )\n internal\n pure\n returns (bytes32 _creditorCommitmentHash)\n {\n return keccak256(\n commitmentAddresses[0], // creditor\n commitmentAddresses[1], // repayment router version\n commitmentValues[0], // creditor fee\n commitmentAddresses[2], // underwriter\n commitmentValues[1], // underwriterRiskRating\n commitmentAddresses[3], // termsContract\n termsContractParameters[0],\n commitmentValues[2], // commitmentExpirationTimestampInSec\n commitmentValues[3] // salt\n );\n }\n\n\n /**\n * Assert that the creditor has a sufficient token balance and has granted the token transfer\n * proxy contract sufficient allowance to suffice for the principal and creditor fee.\n */\n function hasSufficientBalanceAndAllowance(\n address creditor,\n address principalToken,\n uint totalCreditorPayment\n )\n internal\n returns (bool _isBalanceAndAllowanceSufficient)\n {\n // The allowance that this contract has for a creditor's tokens.\n uint proxyAllowance = getAllowance(principalToken, creditor, address(this));\n uint creditorBalance = getBalance(principalToken, creditor);\n\n if (creditorBalance < totalCreditorPayment || proxyAllowance < totalCreditorPayment) {\n return false;\n }\n\n // The allowance that the token transfer proxy has for this contract's tokens.\n uint tokenTransferAllowance = getAllowance(\n principalToken,\n address(this),\n contractRegistry.tokenTransferProxy()\n );\n\n // Ensure the token transfer proxy can transfer tokens from the creditor proxy\n if (tokenTransferAllowance < totalCreditorPayment) {\n require(setTokenTransferAllowance(principalToken, totalCreditorPayment));\n }\n\n return true;\n }\n\n /**\n * Given a hashed message, a signer's address, and a signature,\n * returns whether the signature is valid.\n */\n function isValidSignature(\n address signer,\n bytes32 hash,\n uint8 v,\n bytes32 r,\n bytes32 s\n )\n internal\n pure\n returns (bool _valid)\n {\n return signer == ecrecover(\n keccak256(\"\\x19Ethereum Signed Message:\\n32\", hash),\n v,\n r,\n s\n );\n }\n\n /**\n * Helper function for querying an address' balance on a given token.\n */\n function getBalance(\n address token,\n address owner\n )\n internal\n view\n returns (uint _balance)\n {\n // Limit gas to prevent reentrancy.\n return ERC20(token).balanceOf.gas(EXTERNAL_QUERY_GAS_LIMIT)(owner);\n }\n\n /**\n * Helper function for querying this contract's allowance for transferring the given token.\n */\n function getAllowance(\n address token,\n address owner,\n address granter\n )\n internal\n view\n returns (uint _allowance)\n {\n // Limit gas to prevent reentrancy.\n return ERC20(token).allowance.gas(EXTERNAL_QUERY_GAS_LIMIT)(\n owner,\n granter\n );\n }\n\n /**\n * Helper function for approving this address' allowance to Dharma's token transfer proxy.\n */\n function setTokenTransferAllowance(\n address token,\n uint amount\n )\n internal\n returns (bool _success)\n {\n return ERC20(token).approve(\n address(contractRegistry.tokenTransferProxy()),\n amount\n );\n }\n\n\n /**\n * Helper function for transferring a specified amount of tokens between two parties.\n */\n function transferTokensFrom(\n address _token,\n address _from,\n address _to,\n uint _amount\n )\n internal\n returns (bool _success)\n {\n return ERC20(_token).transferFrom(_from, _to, _amount);\n }\n}\n", "sourcePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/CreditorProxy.sol", "ast": { "attributes": { @@ -8924,7 +8924,7 @@ export const CreditorProxy = } }, "links": {}, - "address": "0xd1c0be587dc75cb5d9c9c3856068717351c020d5" + "address": "0xd9b303da12a84a405c482c91592b5bd00a2317e2" }, "70": { "events": { @@ -9024,5 +9024,5 @@ export const CreditorProxy = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:16:36.732Z" + "updatedAt": "2018-10-09T17:53:24.855Z" } \ No newline at end of file diff --git a/artifacts/ts/DebtKernel.ts b/artifacts/ts/DebtKernel.ts index 153f9460..3dedee10 100644 --- a/artifacts/ts/DebtKernel.ts +++ b/artifacts/ts/DebtKernel.ts @@ -437,7 +437,7 @@ export const DebtKernel = }, { "attributes": { - "SourceUnit": 3549, + "SourceUnit": 3541, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtToken.sol", "file": "./DebtToken.sol", "scope": 2639, @@ -452,7 +452,7 @@ export const DebtKernel = }, { "attributes": { - "SourceUnit": 4766, + "SourceUnit": 4758, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TermsContract.sol", "file": "./TermsContract.sol", "scope": 2639, @@ -467,7 +467,7 @@ export const DebtKernel = }, { "attributes": { - "SourceUnit": 5215, + "SourceUnit": 5207, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TokenTransferProxy.sol", "file": "./TokenTransferProxy.sol", "scope": 2639, @@ -17683,7 +17683,7 @@ export const DebtKernel = } }, "links": {}, - "address": "0xc01c57ffedca4d0644abb966f055f040cd63fd5b" + "address": "0x4a42fbdae13791341361f9d2dd69873d83e4b816" }, "70": { "events": { @@ -17815,5 +17815,5 @@ export const DebtKernel = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:15:01.344Z" + "updatedAt": "2018-10-09T17:51:53.185Z" } \ No newline at end of file diff --git a/artifacts/ts/DebtRegistry.ts b/artifacts/ts/DebtRegistry.ts index 07ebcce8..f6d3134a 100644 --- a/artifacts/ts/DebtRegistry.ts +++ b/artifacts/ts/DebtRegistry.ts @@ -572,7 +572,7 @@ export const DebtRegistry = }, { "attributes": { - "SourceUnit": 6280, + "SourceUnit": 6272, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/libraries/PermissionsLib.sol", "file": "./libraries/PermissionsLib.sol", "scope": 3167, @@ -7985,7 +7985,7 @@ export const DebtRegistry = } }, "links": {}, - "address": "0x2bfd08581121530eba6b86eda5b2932bea8117d9" + "address": "0x0db51854d2b302e35d8f0f7a4fabb2415f9e42a5" }, "70": { "events": { @@ -8165,5 +8165,5 @@ export const DebtRegistry = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:15:01.319Z" + "updatedAt": "2018-10-09T17:51:53.167Z" } \ No newline at end of file diff --git a/artifacts/ts/DebtToken.ts b/artifacts/ts/DebtToken.ts index 42ed9dcb..fb14c3ea 100644 --- a/artifacts/ts/DebtToken.ts +++ b/artifacts/ts/DebtToken.ts @@ -769,7 +769,7 @@ export const DebtToken = }, { "attributes": { - "SourceUnit": 3167, + "SourceUnit": 3159, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtRegistry.sol", "file": "./DebtRegistry.sol", "scope": 3549, @@ -784,7 +784,7 @@ export const DebtToken = }, { "attributes": { - "SourceUnit": 3559, + "SourceUnit": 3551, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/ERC165.sol", "file": "./ERC165.sol", "scope": 3549, @@ -799,7 +799,7 @@ export const DebtToken = }, { "attributes": { - "SourceUnit": 6280, + "SourceUnit": 6272, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/libraries/PermissionsLib.sol", "file": "./libraries/PermissionsLib.sol", "scope": 3549, @@ -6203,7 +6203,7 @@ export const DebtToken = } }, "links": {}, - "address": "0x3fd02c9e51dbf27b3f66e71ce1e5ce89ca1492d3" + "address": "0xa99e0834ce4ac707371cbd6d938773b660552b91" }, "70": { "events": { @@ -6342,5 +6342,5 @@ export const DebtToken = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:16:13.726Z" + "updatedAt": "2018-10-09T17:53:04.888Z" } \ No newline at end of file diff --git a/artifacts/ts/DeprecatedERC721.ts b/artifacts/ts/DeprecatedERC721.ts index 909dac14..82e60a06 100644 --- a/artifacts/ts/DeprecatedERC721.ts +++ b/artifacts/ts/DeprecatedERC721.ts @@ -790,5 +790,5 @@ export const DeprecatedERC721 = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.049Z" + "updatedAt": "2018-10-09T17:45:35.433Z" } \ No newline at end of file diff --git a/artifacts/ts/DharmaMultiSigWallet.ts b/artifacts/ts/DharmaMultiSigWallet.ts index c9464968..d1966799 100644 --- a/artifacts/ts/DharmaMultiSigWallet.ts +++ b/artifacts/ts/DharmaMultiSigWallet.ts @@ -658,7 +658,7 @@ export const DharmaMultiSigWallet = }, { "attributes": { - "SourceUnit": 13927, + "SourceUnit": 13919, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/wallet/MultiSigWallet.sol", "file": "./MultiSigWallet.sol", "scope": 12937, @@ -5192,7 +5192,7 @@ export const DharmaMultiSigWallet = "42": { "events": {}, "links": {}, - "address": "0xc6846f1c094c354055d5cf4c093127f398753546" + "address": "0x73b8e624c2e0e55e7eaf5ff669a7c63f95781bb4" }, "70": { "events": {}, @@ -5201,5 +5201,5 @@ export const DharmaMultiSigWallet = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:16:36.723Z" + "updatedAt": "2018-10-09T17:53:24.844Z" } \ No newline at end of file diff --git a/artifacts/ts/DummyContract.ts b/artifacts/ts/DummyContract.ts index 18a364c5..a556e820 100644 --- a/artifacts/ts/DummyContract.ts +++ b/artifacts/ts/DummyContract.ts @@ -217,7 +217,7 @@ export const DummyContract = }, { "attributes": { - "SourceUnit": 6280, + "SourceUnit": 6272, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/libraries/PermissionsLib.sol", "file": "../libraries/PermissionsLib.sol", "scope": 9944, @@ -1770,7 +1770,7 @@ export const DummyContract = "42": { "events": {}, "links": {}, - "address": "0x6b5b54ab51ab15d4fd5e8991791c8dc1d90df5e2" + "address": "0x64481c13201a7baabd3a440eeba57170336f0e70" }, "70": { "events": {}, @@ -1779,5 +1779,5 @@ export const DummyContract = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:01.009Z" + "updatedAt": "2018-10-09T17:50:01.258Z" } \ No newline at end of file diff --git a/artifacts/ts/DummyToken.ts b/artifacts/ts/DummyToken.ts index 82b6aea2..06a643af 100644 --- a/artifacts/ts/DummyToken.ts +++ b/artifacts/ts/DummyToken.ts @@ -2153,5 +2153,5 @@ export const DummyToken = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:11:37.139Z" + "updatedAt": "2018-10-09T17:48:16.849Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC165.ts b/artifacts/ts/ERC165.ts index 28b178f1..eb803e81 100644 --- a/artifacts/ts/ERC165.ts +++ b/artifacts/ts/ERC165.ts @@ -172,5 +172,5 @@ export const ERC165 = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.577Z" + "updatedAt": "2018-10-09T17:45:35.420Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC20.ts b/artifacts/ts/ERC20.ts index 641b4430..b13e5057 100644 --- a/artifacts/ts/ERC20.ts +++ b/artifacts/ts/ERC20.ts @@ -742,5 +742,5 @@ export const ERC20 = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.047Z" + "updatedAt": "2018-10-09T17:45:35.433Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC20Basic.ts b/artifacts/ts/ERC20Basic.ts index ded963b9..54f34773 100644 --- a/artifacts/ts/ERC20Basic.ts +++ b/artifacts/ts/ERC20Basic.ts @@ -511,5 +511,5 @@ export const ERC20Basic = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.048Z" + "updatedAt": "2018-10-09T17:45:35.427Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721.ts b/artifacts/ts/ERC721.ts index 79245c4e..cff60308 100644 --- a/artifacts/ts/ERC721.ts +++ b/artifacts/ts/ERC721.ts @@ -1111,5 +1111,5 @@ export const ERC721 = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.049Z" + "updatedAt": "2018-10-09T17:45:35.439Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721Basic.ts b/artifacts/ts/ERC721Basic.ts index a284a37c..de553412 100644 --- a/artifacts/ts/ERC721Basic.ts +++ b/artifacts/ts/ERC721Basic.ts @@ -1664,5 +1664,5 @@ export const ERC721Basic = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.052Z" + "updatedAt": "2018-10-09T17:45:35.452Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721BasicToken.ts b/artifacts/ts/ERC721BasicToken.ts index cf8bf861..724fce61 100644 --- a/artifacts/ts/ERC721BasicToken.ts +++ b/artifacts/ts/ERC721BasicToken.ts @@ -8710,5 +8710,5 @@ export const ERC721BasicToken = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.056Z" + "updatedAt": "2018-10-09T17:45:35.625Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721CollateralizedSimpleInterestTermsContract.ts b/artifacts/ts/ERC721CollateralizedSimpleInterestTermsContract.ts index a42fede1..19e1fbc1 100644 --- a/artifacts/ts/ERC721CollateralizedSimpleInterestTermsContract.ts +++ b/artifacts/ts/ERC721CollateralizedSimpleInterestTermsContract.ts @@ -430,7 +430,7 @@ export const ERC721CollateralizedSimpleInterestTermsContract = }, { "attributes": { - "SourceUnit": 6061, + "SourceUnit": 6053, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/examples/SimpleInterestTermsContract.sol", "file": "./SimpleInterestTermsContract.sol", "scope": 5357, @@ -445,7 +445,7 @@ export const ERC721CollateralizedSimpleInterestTermsContract = }, { "attributes": { - "SourceUnit": 4175, + "SourceUnit": 4167, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/ERC721Collateralizer.sol", "file": "../ERC721Collateralizer.sol", "scope": 5357, @@ -1446,7 +1446,7 @@ export const ERC721CollateralizedSimpleInterestTermsContract = "42": { "events": {}, "links": {}, - "address": "0x13a93b0e027f419556271a3cb1060ef7156103e6" + "address": "0xe44c8dbcb6dab51c4d5291788ec3fb82d2fbad12" }, "70": { "events": {}, @@ -1455,5 +1455,5 @@ export const ERC721CollateralizedSimpleInterestTermsContract = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:16:13.721Z" + "updatedAt": "2018-10-09T17:53:04.862Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721Collateralizer.ts b/artifacts/ts/ERC721Collateralizer.ts index 5cdc648d..73ebdf03 100644 --- a/artifacts/ts/ERC721Collateralizer.ts +++ b/artifacts/ts/ERC721Collateralizer.ts @@ -517,7 +517,7 @@ export const ERC721Collateralizer = }, { "attributes": { - "SourceUnit": 4766, + "SourceUnit": 4758, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TermsContract.sol", "file": "./TermsContract.sol", "scope": 4175, @@ -532,7 +532,7 @@ export const ERC721Collateralizer = }, { "attributes": { - "SourceUnit": 3167, + "SourceUnit": 3159, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtRegistry.sol", "file": "./DebtRegistry.sol", "scope": 4175, @@ -562,7 +562,7 @@ export const ERC721Collateralizer = }, { "attributes": { - "SourceUnit": 4466, + "SourceUnit": 4458, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/ERC721TokenRegistry.sol", "file": "./ERC721TokenRegistry.sol", "scope": 4175, @@ -577,7 +577,7 @@ export const ERC721Collateralizer = }, { "attributes": { - "SourceUnit": 6280, + "SourceUnit": 6272, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/libraries/PermissionsLib.sol", "file": "./libraries/PermissionsLib.sol", "scope": 4175, @@ -9499,7 +9499,7 @@ export const ERC721Collateralizer = } }, "links": {}, - "address": "0xc241691f9c1663b4452c3d867de6cb72ce4ccb4b" + "address": "0xf3abfc01a071e8bbf3f820c2629510b9bc5e3229" }, "70": { "events": { @@ -9648,5 +9648,5 @@ export const ERC721Collateralizer = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:16:13.736Z" + "updatedAt": "2018-10-09T17:53:04.896Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721Enumerable.ts b/artifacts/ts/ERC721Enumerable.ts index d8bcc0a1..69ea9d81 100644 --- a/artifacts/ts/ERC721Enumerable.ts +++ b/artifacts/ts/ERC721Enumerable.ts @@ -1064,5 +1064,5 @@ export const ERC721Enumerable = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.050Z" + "updatedAt": "2018-10-09T17:45:35.440Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721Metadata.ts b/artifacts/ts/ERC721Metadata.ts index 34e865ee..9876c535 100644 --- a/artifacts/ts/ERC721Metadata.ts +++ b/artifacts/ts/ERC721Metadata.ts @@ -1055,5 +1055,5 @@ export const ERC721Metadata = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.050Z" + "updatedAt": "2018-10-09T17:45:35.441Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721Receiver.ts b/artifacts/ts/ERC721Receiver.ts index 21a67c1a..546d13ee 100644 --- a/artifacts/ts/ERC721Receiver.ts +++ b/artifacts/ts/ERC721Receiver.ts @@ -275,5 +275,5 @@ export const ERC721Receiver = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.053Z" + "updatedAt": "2018-10-09T17:45:35.427Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721Token.ts b/artifacts/ts/ERC721Token.ts index ada3cfa2..f4fdc93a 100644 --- a/artifacts/ts/ERC721Token.ts +++ b/artifacts/ts/ERC721Token.ts @@ -5400,7 +5400,7 @@ export const ERC721Token = "42": { "events": {}, "links": {}, - "address": "0x29fbda47ddc8b9853a0cf9bf0abf4611ff5f3abe" + "address": "0xebc1a917d464d779ad5eba480de9935bf4ce9760" }, "70": { "events": {}, @@ -5409,5 +5409,5 @@ export const ERC721Token = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:01.017Z" + "updatedAt": "2018-10-09T17:50:01.301Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721TokenRegistry.ts b/artifacts/ts/ERC721TokenRegistry.ts index e883fcb3..460559a1 100644 --- a/artifacts/ts/ERC721TokenRegistry.ts +++ b/artifacts/ts/ERC721TokenRegistry.ts @@ -4184,7 +4184,7 @@ export const ERC721TokenRegistry = } }, "links": {}, - "address": "0xc7e95d984d2abdb012e25975c622477f31a0473f" + "address": "0xd1ec79ec665dddf7a65024c44dd75f625e88271f" }, "70": { "events": { @@ -4211,5 +4211,5 @@ export const ERC721TokenRegistry = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:16:13.717Z" + "updatedAt": "2018-10-09T17:53:04.870Z" } \ No newline at end of file diff --git a/artifacts/ts/GeneScienceInterface.ts b/artifacts/ts/GeneScienceInterface.ts index 15cc07f8..72aa8950 100644 --- a/artifacts/ts/GeneScienceInterface.ts +++ b/artifacts/ts/GeneScienceInterface.ts @@ -51684,5 +51684,5 @@ export const GeneScienceInterface = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.655Z" + "updatedAt": "2018-10-09T17:45:35.863Z" } \ No newline at end of file diff --git a/artifacts/ts/IncompatibleTermsContract.ts b/artifacts/ts/IncompatibleTermsContract.ts index ffb550c9..85dd95ff 100644 --- a/artifacts/ts/IncompatibleTermsContract.ts +++ b/artifacts/ts/IncompatibleTermsContract.ts @@ -152,7 +152,7 @@ export const IncompatibleTermsContract = }, { "attributes": { - "SourceUnit": 4766, + "SourceUnit": 4758, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TermsContract.sol", "file": "../../TermsContract.sol", "scope": 12594, @@ -988,7 +988,7 @@ export const IncompatibleTermsContract = "42": { "events": {}, "links": {}, - "address": "0x265f2abbf5a568df8ed31644204b011eac0c1886" + "address": "0xc8d55fd3717f8c3f8d31456504ab84b11b80520e" }, "70": { "events": {}, @@ -997,5 +997,5 @@ export const IncompatibleTermsContract = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:36.849Z" + "updatedAt": "2018-10-09T17:50:25.365Z" } \ No newline at end of file diff --git a/artifacts/ts/KittiesERC721.ts b/artifacts/ts/KittiesERC721.ts index 7615a23b..bd6edbce 100644 --- a/artifacts/ts/KittiesERC721.ts +++ b/artifacts/ts/KittiesERC721.ts @@ -51816,5 +51816,5 @@ export const KittiesERC721 = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.673Z" + "updatedAt": "2018-10-09T17:45:35.810Z" } \ No newline at end of file diff --git a/artifacts/ts/KittiesERC721Metadata.ts b/artifacts/ts/KittiesERC721Metadata.ts index 96b147ca..e2be13a9 100644 --- a/artifacts/ts/KittiesERC721Metadata.ts +++ b/artifacts/ts/KittiesERC721Metadata.ts @@ -51670,5 +51670,5 @@ export const KittiesERC721Metadata = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.695Z" + "updatedAt": "2018-10-09T17:45:35.886Z" } \ No newline at end of file diff --git a/artifacts/ts/KittiesOwnable.ts b/artifacts/ts/KittiesOwnable.ts index 8c47806a..04c33158 100644 --- a/artifacts/ts/KittiesOwnable.ts +++ b/artifacts/ts/KittiesOwnable.ts @@ -51677,5 +51677,5 @@ export const KittiesOwnable = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.713Z" + "updatedAt": "2018-10-09T17:45:35.914Z" } \ No newline at end of file diff --git a/artifacts/ts/KittiesPausable.ts b/artifacts/ts/KittiesPausable.ts index 6bf2b75e..fbd1fb79 100644 --- a/artifacts/ts/KittiesPausable.ts +++ b/artifacts/ts/KittiesPausable.ts @@ -51725,5 +51725,5 @@ export const KittiesPausable = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.731Z" + "updatedAt": "2018-10-09T17:45:35.995Z" } \ No newline at end of file diff --git a/artifacts/ts/KittyAccessControl.ts b/artifacts/ts/KittyAccessControl.ts index 7e4d387d..ac12df76 100644 --- a/artifacts/ts/KittyAccessControl.ts +++ b/artifacts/ts/KittyAccessControl.ts @@ -51771,5 +51771,5 @@ export const KittyAccessControl = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.755Z" + "updatedAt": "2018-10-09T17:45:35.953Z" } \ No newline at end of file diff --git a/artifacts/ts/KittyAuction.ts b/artifacts/ts/KittyAuction.ts index 3d329a0e..d5f57a22 100644 --- a/artifacts/ts/KittyAuction.ts +++ b/artifacts/ts/KittyAuction.ts @@ -52526,5 +52526,5 @@ export const KittyAuction = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.781Z" + "updatedAt": "2018-10-09T17:45:36.264Z" } \ No newline at end of file diff --git a/artifacts/ts/KittyBase.ts b/artifacts/ts/KittyBase.ts index 00c7d76c..2be3ecef 100644 --- a/artifacts/ts/KittyBase.ts +++ b/artifacts/ts/KittyBase.ts @@ -51957,5 +51957,5 @@ export const KittyBase = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.854Z" + "updatedAt": "2018-10-09T17:45:36.187Z" } \ No newline at end of file diff --git a/artifacts/ts/KittyBreeding.ts b/artifacts/ts/KittyBreeding.ts index 2e8071c8..e0631a3c 100644 --- a/artifacts/ts/KittyBreeding.ts +++ b/artifacts/ts/KittyBreeding.ts @@ -52419,5 +52419,5 @@ export const KittyBreeding = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.809Z" + "updatedAt": "2018-10-09T17:45:36.217Z" } \ No newline at end of file diff --git a/artifacts/ts/KittyCore.ts b/artifacts/ts/KittyCore.ts index 58f38a43..132e3869 100644 --- a/artifacts/ts/KittyCore.ts +++ b/artifacts/ts/KittyCore.ts @@ -52747,7 +52747,7 @@ export const KittyCore = "42": { "events": {}, "links": {}, - "address": "0xb5da2e05709786b89c6124c7a202dd13de2b8cd8" + "address": "0x116a62dad694e694f17cbccc917739c3f0c51666" }, "70": { "events": {}, @@ -52756,5 +52756,5 @@ export const KittyCore = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:16:13.792Z" + "updatedAt": "2018-10-09T17:53:04.937Z" } \ No newline at end of file diff --git a/artifacts/ts/KittyMinting.ts b/artifacts/ts/KittyMinting.ts index 62b24b60..5e0ec4cf 100644 --- a/artifacts/ts/KittyMinting.ts +++ b/artifacts/ts/KittyMinting.ts @@ -52642,5 +52642,5 @@ export const KittyMinting = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.925Z" + "updatedAt": "2018-10-09T17:45:36.305Z" } \ No newline at end of file diff --git a/artifacts/ts/KittyOwnership.ts b/artifacts/ts/KittyOwnership.ts index b8d81a59..e924c401 100644 --- a/artifacts/ts/KittyOwnership.ts +++ b/artifacts/ts/KittyOwnership.ts @@ -52206,5 +52206,5 @@ export const KittyOwnership = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.947Z" + "updatedAt": "2018-10-09T17:45:36.421Z" } \ No newline at end of file diff --git a/artifacts/ts/Migrations.ts b/artifacts/ts/Migrations.ts index 1c271869..e73ffbe2 100644 --- a/artifacts/ts/Migrations.ts +++ b/artifacts/ts/Migrations.ts @@ -819,7 +819,7 @@ export const Migrations = "42": { "events": {}, "links": {}, - "address": "0xf44e598f6ad5115151c1c331f5b2f8b02b06bb47" + "address": "0x4c4bd0258c47645a61a55c66c40168e61dcb19b2" }, "70": { "events": {}, @@ -828,5 +828,5 @@ export const Migrations = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:16:36.720Z" + "updatedAt": "2018-10-09T17:53:24.835Z" } \ No newline at end of file diff --git a/artifacts/ts/MintableERC721Token.ts b/artifacts/ts/MintableERC721Token.ts index 6c4b8742..c0294e99 100644 --- a/artifacts/ts/MintableERC721Token.ts +++ b/artifacts/ts/MintableERC721Token.ts @@ -483,7 +483,7 @@ export const MintableERC721Token = }, { "attributes": { - "SourceUnit": 3559, + "SourceUnit": 3551, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/ERC165.sol", "file": "../ERC165.sol", "scope": 10001, @@ -1237,7 +1237,7 @@ export const MintableERC721Token = "42": { "events": {}, "links": {}, - "address": "0x1db2f4774e0b0c84047a97e6c129abe7f9ed0d18" + "address": "0x67b0b219faf38b7a862c480213b2860e645c264f" }, "70": { "events": {}, @@ -1246,5 +1246,5 @@ export const MintableERC721Token = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:16:13.730Z" + "updatedAt": "2018-10-09T17:53:04.860Z" } \ No newline at end of file diff --git a/artifacts/ts/MintableToken.ts b/artifacts/ts/MintableToken.ts index 038c91a5..3edf2d40 100644 --- a/artifacts/ts/MintableToken.ts +++ b/artifacts/ts/MintableToken.ts @@ -1665,5 +1665,5 @@ export const MintableToken = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.049Z" + "updatedAt": "2018-10-09T17:45:35.471Z" } \ No newline at end of file diff --git a/artifacts/ts/MockCollateralizedTermsContract.ts b/artifacts/ts/MockCollateralizedTermsContract.ts index d295e119..8f01cb98 100644 --- a/artifacts/ts/MockCollateralizedTermsContract.ts +++ b/artifacts/ts/MockCollateralizedTermsContract.ts @@ -372,7 +372,7 @@ export const MockCollateralizedTermsContract = }, { "attributes": { - "SourceUnit": 10701, + "SourceUnit": 10693, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 10516, @@ -5723,7 +5723,7 @@ export const MockCollateralizedTermsContract = "42": { "events": {}, "links": {}, - "address": "0xa125dc548b8b163b53d6b88f890766370b2350bd" + "address": "0x67d4984f33adaa13b879dc532a49bc7a46140353" }, "70": { "events": {}, @@ -5732,5 +5732,5 @@ export const MockCollateralizedTermsContract = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:01.039Z" + "updatedAt": "2018-10-09T17:50:01.318Z" } \ No newline at end of file diff --git a/artifacts/ts/MockContract.ts b/artifacts/ts/MockContract.ts index a8741773..dae154a5 100644 --- a/artifacts/ts/MockContract.ts +++ b/artifacts/ts/MockContract.ts @@ -2544,5 +2544,5 @@ export const MockContract = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.986Z" + "updatedAt": "2018-10-09T17:45:35.500Z" } \ No newline at end of file diff --git a/artifacts/ts/MockDebtKernel.ts b/artifacts/ts/MockDebtKernel.ts index 08d1794d..f281d6fb 100644 --- a/artifacts/ts/MockDebtKernel.ts +++ b/artifacts/ts/MockDebtKernel.ts @@ -187,7 +187,7 @@ export const MockDebtKernel = }, { "attributes": { - "SourceUnit": 10701, + "SourceUnit": 10693, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 10844, @@ -2231,5 +2231,5 @@ export const MockDebtKernel = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.018Z" + "updatedAt": "2018-10-09T17:45:35.497Z" } \ No newline at end of file diff --git a/artifacts/ts/MockDebtRegistry.ts b/artifacts/ts/MockDebtRegistry.ts index 98468714..a87ea4e9 100644 --- a/artifacts/ts/MockDebtRegistry.ts +++ b/artifacts/ts/MockDebtRegistry.ts @@ -466,7 +466,7 @@ export const MockDebtRegistry = }, { "attributes": { - "SourceUnit": 10701, + "SourceUnit": 10693, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 11222, @@ -5997,7 +5997,7 @@ export const MockDebtRegistry = "42": { "events": {}, "links": {}, - "address": "0x14fd9ddb3cfc7a3fa9c44f910825c0d287be2e34" + "address": "0x7593f653e23985ac6371a1e2d0a681f6e5534007" }, "70": { "events": {}, @@ -6006,5 +6006,5 @@ export const MockDebtRegistry = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:01.024Z" + "updatedAt": "2018-10-09T17:50:01.328Z" } \ No newline at end of file diff --git a/artifacts/ts/MockDebtToken.ts b/artifacts/ts/MockDebtToken.ts index 412ca4e2..03043443 100644 --- a/artifacts/ts/MockDebtToken.ts +++ b/artifacts/ts/MockDebtToken.ts @@ -353,7 +353,7 @@ export const MockDebtToken = }, { "attributes": { - "SourceUnit": 10701, + "SourceUnit": 10693, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 11511, @@ -4599,7 +4599,7 @@ export const MockDebtToken = "42": { "events": {}, "links": {}, - "address": "0x124529e78bd31b7c187b7bc69069d5cbbebceb70" + "address": "0xf655449119757b6fd26c45702718812dbbd51356" }, "70": { "events": {}, @@ -4608,5 +4608,5 @@ export const MockDebtToken = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:01.030Z" + "updatedAt": "2018-10-09T17:50:01.286Z" } \ No newline at end of file diff --git a/artifacts/ts/MockERC20Token.ts b/artifacts/ts/MockERC20Token.ts index 8c3528b4..3262e1d1 100644 --- a/artifacts/ts/MockERC20Token.ts +++ b/artifacts/ts/MockERC20Token.ts @@ -315,7 +315,7 @@ export const MockERC20Token = }, { "attributes": { - "SourceUnit": 10701, + "SourceUnit": 10693, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 11767, @@ -4017,7 +4017,7 @@ export const MockERC20Token = "42": { "events": {}, "links": {}, - "address": "0x7ac01104b3ddaf1d5ad092817b31a8442c140158" + "address": "0x80bd8dc16d0b1bee8ce941ce2fb9108177a7dc85" }, "70": { "events": {}, @@ -4026,5 +4026,5 @@ export const MockERC20Token = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:01.027Z" + "updatedAt": "2018-10-09T17:50:01.281Z" } \ No newline at end of file diff --git a/artifacts/ts/MockERC721Receiver.ts b/artifacts/ts/MockERC721Receiver.ts index 9eb7ac99..c7f8df6e 100644 --- a/artifacts/ts/MockERC721Receiver.ts +++ b/artifacts/ts/MockERC721Receiver.ts @@ -169,7 +169,7 @@ export const MockERC721Receiver = }, { "attributes": { - "SourceUnit": 10701, + "SourceUnit": 10693, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 11888, @@ -1845,7 +1845,7 @@ export const MockERC721Receiver = "42": { "events": {}, "links": {}, - "address": "0x00714756c11727a071c47479c0d466f937331b8e" + "address": "0xeadebe1479a642dc27a2874233e5e2b6703a0442" }, "70": { "events": {}, @@ -1854,5 +1854,5 @@ export const MockERC721Receiver = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:01.020Z" + "updatedAt": "2018-10-09T17:50:01.261Z" } \ No newline at end of file diff --git a/artifacts/ts/MockERC721Token.ts b/artifacts/ts/MockERC721Token.ts index 1d02fcac..c30efd25 100644 --- a/artifacts/ts/MockERC721Token.ts +++ b/artifacts/ts/MockERC721Token.ts @@ -312,7 +312,7 @@ export const MockERC721Token = }, { "attributes": { - "SourceUnit": 10701, + "SourceUnit": 10693, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 12142, @@ -3995,7 +3995,7 @@ export const MockERC721Token = "42": { "events": {}, "links": {}, - "address": "0xa57d132d946d0ba4f7febd543763f18b3627dd10" + "address": "0x5ff98c9ca70a7d2fdd1107c1a80d20c5fc8a3e40" }, "70": { "events": {}, @@ -4004,5 +4004,5 @@ export const MockERC721Token = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:01.014Z" + "updatedAt": "2018-10-09T17:50:01.278Z" } \ No newline at end of file diff --git a/artifacts/ts/MockTermsContract.ts b/artifacts/ts/MockTermsContract.ts index 119f3826..39b11871 100644 --- a/artifacts/ts/MockTermsContract.ts +++ b/artifacts/ts/MockTermsContract.ts @@ -276,7 +276,7 @@ export const MockTermsContract = }, { "attributes": { - "SourceUnit": 10701, + "SourceUnit": 10693, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 12354, @@ -3395,7 +3395,7 @@ export const MockTermsContract = "42": { "events": {}, "links": {}, - "address": "0xb0f7c5054eed756d6522d60fd02cd29be8b19a96" + "address": "0x76dcdc1df7af00e87bb5dd8f600e5637053fc0e1" }, "70": { "events": {}, @@ -3404,5 +3404,5 @@ export const MockTermsContract = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:01.034Z" + "updatedAt": "2018-10-09T17:50:01.274Z" } \ No newline at end of file diff --git a/artifacts/ts/MockTokenRegistry.ts b/artifacts/ts/MockTokenRegistry.ts index 78b6fd6c..a443b103 100644 --- a/artifacts/ts/MockTokenRegistry.ts +++ b/artifacts/ts/MockTokenRegistry.ts @@ -161,7 +161,7 @@ export const MockTokenRegistry = }, { "attributes": { - "SourceUnit": 10701, + "SourceUnit": 10693, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 12450, @@ -1588,7 +1588,7 @@ export const MockTokenRegistry = "42": { "events": {}, "links": {}, - "address": "0x7723ed4c29ba84d381dd389890ccb0c17cda7204" + "address": "0x8d60b63345a4394a627672aca9f0f2541057d0ba" }, "70": { "events": {}, @@ -1597,5 +1597,5 @@ export const MockTokenRegistry = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:01.033Z" + "updatedAt": "2018-10-09T17:50:01.268Z" } \ No newline at end of file diff --git a/artifacts/ts/MockTokenTransferProxy.ts b/artifacts/ts/MockTokenTransferProxy.ts index b4fe59f7..d8c1d6aa 100644 --- a/artifacts/ts/MockTokenTransferProxy.ts +++ b/artifacts/ts/MockTokenTransferProxy.ts @@ -149,7 +149,7 @@ export const MockTokenTransferProxy = }, { "attributes": { - "SourceUnit": 10701, + "SourceUnit": 10693, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 12526, @@ -1236,7 +1236,7 @@ export const MockTokenTransferProxy = "42": { "events": {}, "links": {}, - "address": "0xea14749d27f5eed380dbeab1afe18d4bc174b77c" + "address": "0xe73f46c08eb3a1d218af468c6dbefbc5967bb6bd" }, "70": { "events": {}, @@ -1245,5 +1245,5 @@ export const MockTokenTransferProxy = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:01.032Z" + "updatedAt": "2018-10-09T17:50:01.252Z" } \ No newline at end of file diff --git a/artifacts/ts/MultiSigWallet.ts b/artifacts/ts/MultiSigWallet.ts index 955b1e32..9b9c5a12 100644 --- a/artifacts/ts/MultiSigWallet.ts +++ b/artifacts/ts/MultiSigWallet.ts @@ -13772,5 +13772,5 @@ export const MultiSigWallet = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.045Z" + "updatedAt": "2018-10-09T17:45:35.685Z" } \ No newline at end of file diff --git a/artifacts/ts/Ownable.ts b/artifacts/ts/Ownable.ts index f779c401..112c92a8 100644 --- a/artifacts/ts/Ownable.ts +++ b/artifacts/ts/Ownable.ts @@ -838,5 +838,5 @@ export const Ownable = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.038Z" + "updatedAt": "2018-10-09T17:45:35.443Z" } \ No newline at end of file diff --git a/artifacts/ts/Pausable.ts b/artifacts/ts/Pausable.ts index 7f07fc55..9e3d7a3d 100644 --- a/artifacts/ts/Pausable.ts +++ b/artifacts/ts/Pausable.ts @@ -880,5 +880,5 @@ export const Pausable = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.037Z" + "updatedAt": "2018-10-09T17:45:35.444Z" } \ No newline at end of file diff --git a/artifacts/ts/PermissionEvents.ts b/artifacts/ts/PermissionEvents.ts index 34b76a84..d14ea932 100644 --- a/artifacts/ts/PermissionEvents.ts +++ b/artifacts/ts/PermissionEvents.ts @@ -2970,5 +2970,5 @@ export const PermissionEvents = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.597Z" + "updatedAt": "2018-10-09T17:45:35.509Z" } \ No newline at end of file diff --git a/artifacts/ts/PermissionsLib.ts b/artifacts/ts/PermissionsLib.ts index 1cd1e4fe..90f2dc1e 100644 --- a/artifacts/ts/PermissionsLib.ts +++ b/artifacts/ts/PermissionsLib.ts @@ -2977,7 +2977,7 @@ export const PermissionsLib = "42": { "events": {}, "links": {}, - "address": "0xaa5ce701623be22ff89ae25fc1f6cc923127ca4c" + "address": "0x7852987ebd814ccb8ae63ff0ebbebaf12b8b45ab" }, "70": { "events": {}, @@ -2986,5 +2986,5 @@ export const PermissionsLib = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:16:13.720Z" + "updatedAt": "2018-10-09T17:53:04.866Z" } \ No newline at end of file diff --git a/artifacts/ts/RepaymentRouter.ts b/artifacts/ts/RepaymentRouter.ts index 13740631..f4a9586b 100644 --- a/artifacts/ts/RepaymentRouter.ts +++ b/artifacts/ts/RepaymentRouter.ts @@ -241,7 +241,7 @@ export const RepaymentRouter = }, { "attributes": { - "SourceUnit": 3167, + "SourceUnit": 3159, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtRegistry.sol", "file": "./DebtRegistry.sol", "scope": 4716, @@ -256,7 +256,7 @@ export const RepaymentRouter = }, { "attributes": { - "SourceUnit": 4766, + "SourceUnit": 4758, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TermsContract.sol", "file": "./TermsContract.sol", "scope": 4716, @@ -271,7 +271,7 @@ export const RepaymentRouter = }, { "attributes": { - "SourceUnit": 5215, + "SourceUnit": 5207, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TokenTransferProxy.sol", "file": "./TokenTransferProxy.sol", "scope": 4716, @@ -3302,7 +3302,7 @@ export const RepaymentRouter = } }, "links": {}, - "address": "0xd2c8cf211f4753a10b145c90950add769a8a6bc2" + "address": "0x03ff589c02e794dbb55394ba86c62ba68e399688" }, "70": { "events": { @@ -3390,5 +3390,5 @@ export const RepaymentRouter = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:15:01.333Z" + "updatedAt": "2018-10-09T17:51:53.137Z" } \ No newline at end of file diff --git a/artifacts/ts/SafeMath.ts b/artifacts/ts/SafeMath.ts index 7fed5504..6913c02d 100644 --- a/artifacts/ts/SafeMath.ts +++ b/artifacts/ts/SafeMath.ts @@ -1344,5 +1344,5 @@ export const SafeMath = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.038Z" + "updatedAt": "2018-10-09T17:45:35.450Z" } \ No newline at end of file diff --git a/artifacts/ts/SaleClockAuction.ts b/artifacts/ts/SaleClockAuction.ts index d086ff66..2b0e1d19 100644 --- a/artifacts/ts/SaleClockAuction.ts +++ b/artifacts/ts/SaleClockAuction.ts @@ -52025,5 +52025,5 @@ export const SaleClockAuction = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.006Z" + "updatedAt": "2018-10-09T17:45:36.391Z" } \ No newline at end of file diff --git a/artifacts/ts/SimpleInterestTermsContract.ts b/artifacts/ts/SimpleInterestTermsContract.ts index 678ad978..6a63260c 100644 --- a/artifacts/ts/SimpleInterestTermsContract.ts +++ b/artifacts/ts/SimpleInterestTermsContract.ts @@ -10513,7 +10513,7 @@ export const SimpleInterestTermsContract = "42": { "events": {}, "links": {}, - "address": "0xe929d2b2fdd53531b8e11d85a4c249e504dd5868" + "address": "0x1cde816b6e0437f5b1b49edb58c4a8bf1dbda2d3" }, "70": { "events": {}, @@ -10522,5 +10522,5 @@ export const SimpleInterestTermsContract = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:13:36.862Z" + "updatedAt": "2018-10-09T17:50:25.381Z" } \ No newline at end of file diff --git a/artifacts/ts/SiringClockAuction.ts b/artifacts/ts/SiringClockAuction.ts index 9fbe7a29..22c8762c 100644 --- a/artifacts/ts/SiringClockAuction.ts +++ b/artifacts/ts/SiringClockAuction.ts @@ -51978,5 +51978,5 @@ export const SiringClockAuction = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.968Z" + "updatedAt": "2018-10-09T17:45:36.126Z" } \ No newline at end of file diff --git a/artifacts/ts/StandardToken.ts b/artifacts/ts/StandardToken.ts index 286146b2..25ff3669 100644 --- a/artifacts/ts/StandardToken.ts +++ b/artifacts/ts/StandardToken.ts @@ -3733,5 +3733,5 @@ export const StandardToken = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:48.051Z" + "updatedAt": "2018-10-09T17:45:35.529Z" } \ No newline at end of file diff --git a/artifacts/ts/TermsContract.ts b/artifacts/ts/TermsContract.ts index 8d3658a6..34aa45be 100644 --- a/artifacts/ts/TermsContract.ts +++ b/artifacts/ts/TermsContract.ts @@ -780,5 +780,5 @@ export const TermsContract = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:02:47.591Z" + "updatedAt": "2018-10-09T17:45:35.436Z" } \ No newline at end of file diff --git a/artifacts/ts/TokenRegistry.ts b/artifacts/ts/TokenRegistry.ts index 62e96424..3f72ee50 100644 --- a/artifacts/ts/TokenRegistry.ts +++ b/artifacts/ts/TokenRegistry.ts @@ -5120,7 +5120,7 @@ export const TokenRegistry = } }, "links": {}, - "address": "0xa6d8c45bbd164f0b1aacbd24cb18f8b19de9648a" + "address": "0xb6cf5855a7598441e02e7cd4ffffb6e0426984ff" }, "70": { "events": { @@ -5147,5 +5147,5 @@ export const TokenRegistry = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:15:01.336Z" + "updatedAt": "2018-10-09T17:51:53.143Z" } \ No newline at end of file diff --git a/artifacts/ts/TokenTransferProxy.ts b/artifacts/ts/TokenTransferProxy.ts index eb3154bb..94fc43c4 100644 --- a/artifacts/ts/TokenTransferProxy.ts +++ b/artifacts/ts/TokenTransferProxy.ts @@ -243,7 +243,7 @@ export const TokenTransferProxy = }, { "attributes": { - "SourceUnit": 3167, + "SourceUnit": 3159, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtRegistry.sol", "file": "./DebtRegistry.sol", "scope": 5215, @@ -258,7 +258,7 @@ export const TokenTransferProxy = }, { "attributes": { - "SourceUnit": 6280, + "SourceUnit": 6272, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/libraries/PermissionsLib.sol", "file": "./libraries/PermissionsLib.sol", "scope": 5215, @@ -1613,7 +1613,7 @@ export const TokenTransferProxy = } }, "links": {}, - "address": "0xf302f9e270458b4242e7d0cba2f0816ed2193240" + "address": "0xf8181406f844d5c947481ec67c835b1384013c7e" }, "70": { "events": { @@ -1686,5 +1686,5 @@ export const TokenTransferProxy = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-02T22:15:01.329Z" + "updatedAt": "2018-10-09T17:51:53.131Z" } \ No newline at end of file From 50430d600f6dad02e5c94f7bfddfe6b843cde441 Mon Sep 17 00:00:00 2001 From: Chris Min Date: Tue, 9 Oct 2018 16:13:18 -0700 Subject: [PATCH 4/5] feat: reduce number of ERC-20s deployed --- token_registry_data/erc20_tokens.json | 300 -------------------------- 1 file changed, 300 deletions(-) diff --git a/token_registry_data/erc20_tokens.json b/token_registry_data/erc20_tokens.json index ecb61b8b..2359b7b5 100644 --- a/token_registry_data/erc20_tokens.json +++ b/token_registry_data/erc20_tokens.json @@ -28,305 +28,5 @@ "name": "Canonical Wrapped Ether", "symbol": "WETH", "decimals": 18 - }, - { - "address": "0x86fa049857e0209aa7d9e616f7eb3b3b78ecfdb0", - "name": "EOS", - "symbol": "EOS", - "decimals": 18 - }, - { - "address": "0xd850942ef8811f2a866692a623011bde52a462c1", - "name": "VeChain", - "symbol": "VEN", - "decimals": 18 - }, - { - "address": "0xf230b790e05390fc8295f4d3f60332c93bed42e2", - "name": "Tronix", - "symbol": "TRX", - "decimals": 6 - }, - { - "address": "0xB8c77482e45F1F44dE1745F52C74426C631bDD52", - "name": "BNB", - "symbol": "BNB", - "decimals": 18 - }, - { - "address": "0xb5a5f22694352c15b00323844ad545abb2b11028", - "name": "ICON", - "symbol": "ICX", - "decimals": 18 - }, - { - "address": "0xcb97e65f07da24d46bcdd078ebebd7c6e6e3d750", - "name": "Bytom", - "symbol": "BTM", - "decimals": 8 - }, - { - "address": "0xd26114cd6EE289AccF82350c8d8487fedB8A0C07", - "name": "OmiseGO", - "symbol": "OMG", - "decimals": 18 - }, - { - "address": "0xe0b7927c4af23765cb51314a0e0521a9645f0e2a", - "name": "DGD", - "symbol": "DGD", - "decimals": 9 - }, - { - "address": "0x05f4a42e251f2d52b8ed15e9fedaacfcef1fad27", - "name": "Zilliqa", - "symbol": "ZIL", - "decimals": 12 - }, - { - "address": "0x168296bb09e24a88805cb9c33356536b980d3fc5", - "name": "RHOC", - "symbol": "RHOC", - "decimals": 8 - }, - { - "address": "0x5ca9a71b1d01849c0a95490cc00559717fcf0d1d", - "name": "Aeternity", - "symbol": "AE", - "decimals": 18 - }, - { - "address": "0x744d70fdbe2ba4cf95131626614a1763df805b9e", - "name": "StatusNetwork", - "symbol": "SNT", - "decimals": 18 - }, - { - "address": "0x4CEdA7906a5Ed2179785Cd3A40A69ee8bc99C466", - "name": "AION", - "symbol": "AION", - "decimals": 8 - }, - { - "address": "0xef68e7c694f40c8202821edf525de3782458639f", - "name": "Loopring", - "symbol": "LRC", - "decimals": 18 - }, - { - "address": "0xfa1a856cfa3409cfa145fa4e20eb270df3eb21ab", - "name": "IOSToken", - "symbol": "IOST", - "decimals": 18 - }, - { - "address": "0xb7cb1c96db6b22b0d3d9536e0108d062bd488f74", - "name": "Walton", - "symbol": "WTC", - "decimals": 18 - }, - { - "address": "0xbf2179859fc6d5bee9bf9158632dc51678a4100e", - "name": "ELF", - "symbol": "ELF", - "decimals": 18 - }, - { - "address": "0xa74476443119A942dE498590Fe1f2454d7D4aC0d", - "name": "Golem", - "symbol": "GNT", - "decimals": 18 - }, - { - "address": "0x0d8775f648430679a709e98d2b0cb6250d2887ef", - "name": "BAT", - "symbol": "BAT", - "decimals": 18 - }, - { - "address": "0x1122b6a0e00dce0563082b6e2953f3a943855c1f", - "name": "Centrality Token", - "symbol": "CENNZ", - "decimals": 18 - }, - { - "address": "0x618e75ac90b12c6049ba3b27f5d5f8651b0037f6", - "name": "QASH", - "symbol": "QASH", - "decimals": 6 - }, - { - "address": "0x8f3470A7388c05eE4e7AF3d01D8C722b0FF52374", - "name": "Veritaseum", - "symbol": "VERI", - "decimals": 18 - }, - { - "address": "0x419c4db4b9e25d6db2ad9691ccb832c8d9fda05e", - "name": "Dragon", - "symbol": "DRGN", - "decimals": 18 - }, - { - "address": "0x12480e24eb5bec1a9d4369cab6a80cad3c0a377a", - "name": "Substratum", - "symbol": "SUB", - "decimals": 2 - }, - { - "address": "0x5d65D971895Edc438f465c17DB6992698a52318D", - "name": "Nebulas", - "symbol": "NAS", - "decimals": 18 - }, - { - "address": "0x5af2be193a6abca9c8817001f45744777db30756", - "name": "Ethos", - "symbol": "ETHOS", - "decimals": 8 - }, - { - "address": "0x419d0d8bdd9af5e606ae2232ed285aff190e711b", - "name": "FunFair", - "symbol": "FUN", - "decimals": 8 - }, - { - "address": "0xdd974d5c2e2928dea5f71b9825b8b646686bd200", - "name": "KyberNetwork", - "symbol": "KNC", - "decimals": 18 - }, - { - "address": "0x48f775efbe4f5ece6e0df2f7b5932df56823b990", - "name": "Revain", - "symbol": "R", - "decimals": 0 - }, - { - "address": "0x4156D3342D5c385a87D264F90653733592000581", - "name": "Salt", - "symbol": "SALT", - "decimals": 8 - }, - { - "address": "0x809826cceab68c387726af962713b64cb5cb3cca", - "name": "NucleusVision", - "symbol": "nCash", - "decimals": 18 - }, - { - "address": "0x1f573d6fb3f13d689ff844b4ce37794d79a7ff1c", - "name": "Bancor", - "symbol": "BNT", - "decimals": 18 - }, - { - "address": "0x514910771af9ca656af840dff83e8264ecf986ca", - "name": "ChainLink Token", - "symbol": "LINK", - "decimals": 18 - }, - { - "address": "0x595832f8fc6bf59c85c527fec3740a1b7a361269", - "name": "PowerLedger", - "symbol": "POWR", - "decimals": 6 - }, - { - "address": "0xd0a4b8946cb52f0661273bfbc6fd0e0c75fc6433", - "name": "Storm", - "symbol": "STORM", - "decimals": 18 - }, - { - "address": "0x39bb259f66e1c59d5abef88375979b4d20d98022", - "name": "WAX Token", - "symbol": "WAX", - "decimals": 8 - }, - { - "address": "0xf0ee6b27b759c9893ce4f094b49ad28fd15a23e4", - "name": "Enigma", - "symbol": "ENG", - "decimals": 8 - }, - { - "address": "0xB97048628DB6B661D4C2aA833e95Dbe1A905B280", - "name": "TenXPay", - "symbol": "PAY", - "decimals": 18 - }, - { - "address": "0xb64ef51c888972c908cfacf59b47c1afbc0ab8ac", - "name": "Storj", - "symbol": "STORJ", - "decimals": 8 - }, - { - "address": "0x8f8221afbb33998d8584a2b05749ba73c37a938a", - "name": "Request", - "symbol": "REQ", - "decimals": 18 - }, - { - "address": "0x08d32b0da63e2C3bcF8019c9c5d849d7a9d791e6", - "name": "Dentacoin", - "symbol": "Dentacoin", - "decimals": 0 - }, - { - "address": "0xe25bcec5d3801ce3a794079bf94adf1b8ccd802d", - "name": "MATRIX AI Network", - "symbol": "MAN", - "decimals": 18 - }, - { - "address": "0x3597bfd533a99c9aa083587b074434e61eb0a258", - "name": "DENT", - "symbol": "DENT", - "decimals": 8 - }, - { - "address": "0xd0352a019e9ab9d757776f532377aaebd36fd541", - "name": "Fusion", - "symbol": "FSN", - "decimals": 18 - }, - { - "address": "0xd4c435f5b09f855c3317c8524cb1f586e42795fa", - "name": "Cindicator", - "symbol": "CND", - "decimals": 18 - }, - { - "address": "0x888666CA69E0f178DED6D75b5726Cee99A87D698", - "name": "ICONOMI", - "symbol": "ICN", - "decimals": 18 - }, - { - "address": "0x1776e1f26f98b1a5df9cd347953a26dd3cb46671", - "symbol": "NMR", - "name": "Numeraire", - "decimals": 18 - }, - { - "address": "0x42d6622dece394b54999fbd73d108123806f6a18", - "symbol": "SPANK", - "name": "SPANK", - "decimals": 18 - }, - { - "address": "0x8dd5fbce2f6a956c3022ba3663759011dd51e73e", - "symbol": "TUSD", - "name": "TrueUSD", - "decimals": 18 - }, - { - "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", - "symbol": "USDT", - "name": "Tether USD", - "decimals": 6 } ] From 7aeaf8c84b725f16f77a162fa6eb94e414ed0b5c Mon Sep 17 00:00:00 2001 From: Chris Min Date: Tue, 9 Oct 2018 16:26:36 -0700 Subject: [PATCH 5/5] build: update artifacts to include patched Creditor Proxy and fewer ERC-20s --- artifacts/json/AddressUtils.json | 2 +- artifacts/json/BasicToken.json | 2 +- artifacts/json/ClockAuction.json | 2 +- artifacts/json/ClockAuctionBase.json | 2 +- ...ollateralizedSimpleInterestTermsContract.json | 6 +++--- artifacts/json/Collateralizer.json | 14 +++++++------- artifacts/json/ContractRegistry.json | 16 ++++++++-------- artifacts/json/CreditorProxy.json | 14 +++++++------- artifacts/json/DebtKernel.json | 10 +++++----- artifacts/json/DebtRegistry.json | 6 +++--- artifacts/json/DebtToken.json | 10 +++++----- artifacts/json/DeprecatedERC721.json | 2 +- artifacts/json/DharmaMultiSigWallet.json | 6 +++--- artifacts/json/DummyContract.json | 6 +++--- artifacts/json/DummyToken.json | 2 +- artifacts/json/ERC165.json | 2 +- artifacts/json/ERC20.json | 2 +- artifacts/json/ERC20Basic.json | 2 +- artifacts/json/ERC721.json | 2 +- artifacts/json/ERC721Basic.json | 2 +- artifacts/json/ERC721BasicToken.json | 2 +- ...ollateralizedSimpleInterestTermsContract.json | 8 ++++---- artifacts/json/ERC721Collateralizer.json | 12 ++++++------ artifacts/json/ERC721Enumerable.json | 2 +- artifacts/json/ERC721Metadata.json | 2 +- artifacts/json/ERC721Receiver.json | 2 +- artifacts/json/ERC721Token.json | 4 ++-- artifacts/json/ERC721TokenRegistry.json | 4 ++-- artifacts/json/GeneScienceInterface.json | 2 +- artifacts/json/IncompatibleTermsContract.json | 6 +++--- artifacts/json/KittiesERC721.json | 2 +- artifacts/json/KittiesERC721Metadata.json | 2 +- artifacts/json/KittiesOwnable.json | 2 +- artifacts/json/KittiesPausable.json | 2 +- artifacts/json/KittyAccessControl.json | 2 +- artifacts/json/KittyAuction.json | 2 +- artifacts/json/KittyBase.json | 2 +- artifacts/json/KittyBreeding.json | 2 +- artifacts/json/KittyCore.json | 4 ++-- artifacts/json/KittyMinting.json | 2 +- artifacts/json/KittyOwnership.json | 2 +- artifacts/json/Migrations.json | 4 ++-- artifacts/json/MintableERC721Token.json | 6 +++--- artifacts/json/MintableToken.json | 2 +- .../json/MockCollateralizedTermsContract.json | 6 +++--- artifacts/json/MockContract.json | 2 +- artifacts/json/MockDebtKernel.json | 4 ++-- artifacts/json/MockDebtRegistry.json | 6 +++--- artifacts/json/MockDebtToken.json | 6 +++--- artifacts/json/MockERC20Token.json | 6 +++--- artifacts/json/MockERC721Receiver.json | 6 +++--- artifacts/json/MockERC721Token.json | 6 +++--- artifacts/json/MockTermsContract.json | 6 +++--- artifacts/json/MockTokenRegistry.json | 6 +++--- artifacts/json/MockTokenTransferProxy.json | 6 +++--- artifacts/json/MultiSigWallet.json | 2 +- artifacts/json/Ownable.json | 2 +- artifacts/json/Pausable.json | 2 +- artifacts/json/PermissionEvents.json | 2 +- artifacts/json/PermissionsLib.json | 4 ++-- artifacts/json/RepaymentRouter.json | 10 +++++----- artifacts/json/SafeMath.json | 2 +- artifacts/json/SaleClockAuction.json | 2 +- artifacts/json/SimpleInterestTermsContract.json | 4 ++-- artifacts/json/SiringClockAuction.json | 2 +- artifacts/json/StandardToken.json | 2 +- artifacts/json/TermsContract.json | 2 +- artifacts/json/TokenRegistry.json | 4 ++-- artifacts/json/TokenTransferProxy.json | 8 ++++---- artifacts/ts/AddressUtils.ts | 2 +- artifacts/ts/BasicToken.ts | 2 +- artifacts/ts/ClockAuction.ts | 2 +- artifacts/ts/ClockAuctionBase.ts | 2 +- .../CollateralizedSimpleInterestTermsContract.ts | 6 +++--- artifacts/ts/Collateralizer.ts | 14 +++++++------- artifacts/ts/ContractRegistry.ts | 16 ++++++++-------- artifacts/ts/CreditorProxy.ts | 14 +++++++------- artifacts/ts/DebtKernel.ts | 10 +++++----- artifacts/ts/DebtRegistry.ts | 6 +++--- artifacts/ts/DebtToken.ts | 10 +++++----- artifacts/ts/DeprecatedERC721.ts | 2 +- artifacts/ts/DharmaMultiSigWallet.ts | 6 +++--- artifacts/ts/DummyContract.ts | 6 +++--- artifacts/ts/DummyToken.ts | 2 +- artifacts/ts/ERC165.ts | 2 +- artifacts/ts/ERC20.ts | 2 +- artifacts/ts/ERC20Basic.ts | 2 +- artifacts/ts/ERC721.ts | 2 +- artifacts/ts/ERC721Basic.ts | 2 +- artifacts/ts/ERC721BasicToken.ts | 2 +- ...1CollateralizedSimpleInterestTermsContract.ts | 8 ++++---- artifacts/ts/ERC721Collateralizer.ts | 12 ++++++------ artifacts/ts/ERC721Enumerable.ts | 2 +- artifacts/ts/ERC721Metadata.ts | 2 +- artifacts/ts/ERC721Receiver.ts | 2 +- artifacts/ts/ERC721Token.ts | 4 ++-- artifacts/ts/ERC721TokenRegistry.ts | 4 ++-- artifacts/ts/GeneScienceInterface.ts | 2 +- artifacts/ts/IncompatibleTermsContract.ts | 6 +++--- artifacts/ts/KittiesERC721.ts | 2 +- artifacts/ts/KittiesERC721Metadata.ts | 2 +- artifacts/ts/KittiesOwnable.ts | 2 +- artifacts/ts/KittiesPausable.ts | 2 +- artifacts/ts/KittyAccessControl.ts | 2 +- artifacts/ts/KittyAuction.ts | 2 +- artifacts/ts/KittyBase.ts | 2 +- artifacts/ts/KittyBreeding.ts | 2 +- artifacts/ts/KittyCore.ts | 4 ++-- artifacts/ts/KittyMinting.ts | 2 +- artifacts/ts/KittyOwnership.ts | 2 +- artifacts/ts/Migrations.ts | 4 ++-- artifacts/ts/MintableERC721Token.ts | 6 +++--- artifacts/ts/MintableToken.ts | 2 +- artifacts/ts/MockCollateralizedTermsContract.ts | 6 +++--- artifacts/ts/MockContract.ts | 2 +- artifacts/ts/MockDebtKernel.ts | 4 ++-- artifacts/ts/MockDebtRegistry.ts | 6 +++--- artifacts/ts/MockDebtToken.ts | 6 +++--- artifacts/ts/MockERC20Token.ts | 6 +++--- artifacts/ts/MockERC721Receiver.ts | 6 +++--- artifacts/ts/MockERC721Token.ts | 6 +++--- artifacts/ts/MockTermsContract.ts | 6 +++--- artifacts/ts/MockTokenRegistry.ts | 6 +++--- artifacts/ts/MockTokenTransferProxy.ts | 6 +++--- artifacts/ts/MultiSigWallet.ts | 2 +- artifacts/ts/Ownable.ts | 2 +- artifacts/ts/Pausable.ts | 2 +- artifacts/ts/PermissionEvents.ts | 2 +- artifacts/ts/PermissionsLib.ts | 4 ++-- artifacts/ts/RepaymentRouter.ts | 10 +++++----- artifacts/ts/SafeMath.ts | 2 +- artifacts/ts/SaleClockAuction.ts | 2 +- artifacts/ts/SimpleInterestTermsContract.ts | 4 ++-- artifacts/ts/SiringClockAuction.ts | 2 +- artifacts/ts/StandardToken.ts | 2 +- artifacts/ts/TermsContract.ts | 2 +- artifacts/ts/TokenRegistry.ts | 4 ++-- artifacts/ts/TokenTransferProxy.ts | 8 ++++---- 138 files changed, 298 insertions(+), 298 deletions(-) diff --git a/artifacts/json/AddressUtils.json b/artifacts/json/AddressUtils.json index ac183cd2..535d642b 100644 --- a/artifacts/json/AddressUtils.json +++ b/artifacts/json/AddressUtils.json @@ -287,5 +287,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.426Z" + "updatedAt": "2018-10-09T23:15:05.485Z" } \ No newline at end of file diff --git a/artifacts/json/BasicToken.json b/artifacts/json/BasicToken.json index df62aa3e..061d157c 100644 --- a/artifacts/json/BasicToken.json +++ b/artifacts/json/BasicToken.json @@ -1435,5 +1435,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.453Z" + "updatedAt": "2018-10-09T23:15:05.503Z" } \ No newline at end of file diff --git a/artifacts/json/ClockAuction.json b/artifacts/json/ClockAuction.json index ddfed8d0..4fdc406f 100644 --- a/artifacts/json/ClockAuction.json +++ b/artifacts/json/ClockAuction.json @@ -51963,5 +51963,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:36.032Z" + "updatedAt": "2018-10-09T23:15:06.382Z" } \ No newline at end of file diff --git a/artifacts/json/ClockAuctionBase.json b/artifacts/json/ClockAuctionBase.json index 5bf7482e..845009ce 100644 --- a/artifacts/json/ClockAuctionBase.json +++ b/artifacts/json/ClockAuctionBase.json @@ -51731,5 +51731,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.834Z" + "updatedAt": "2018-10-09T23:15:06.058Z" } \ No newline at end of file diff --git a/artifacts/json/CollateralizedSimpleInterestTermsContract.json b/artifacts/json/CollateralizedSimpleInterestTermsContract.json index 1ce71c7d..25985526 100644 --- a/artifacts/json/CollateralizedSimpleInterestTermsContract.json +++ b/artifacts/json/CollateralizedSimpleInterestTermsContract.json @@ -411,7 +411,7 @@ }, { "attributes": { - "SourceUnit": 6053, + "SourceUnit": 6061, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/examples/SimpleInterestTermsContract.sol", "file": "./SimpleInterestTermsContract.sol", "scope": 5282, @@ -1334,7 +1334,7 @@ "42": { "events": {}, "links": {}, - "address": "0x7b7be94999219352b02c70b62b7cc09f7179b3b0" + "address": "0xf4ffba3867d4c9d388069a02fa36d3bfc234c979" }, "70": { "events": {}, @@ -1343,5 +1343,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:51:37.279Z" + "updatedAt": "2018-10-09T23:22:00.524Z" } \ No newline at end of file diff --git a/artifacts/json/Collateralizer.json b/artifacts/json/Collateralizer.json index 20bb2b24..664f61a8 100644 --- a/artifacts/json/Collateralizer.json +++ b/artifacts/json/Collateralizer.json @@ -526,7 +526,7 @@ }, { "attributes": { - "SourceUnit": 4758, + "SourceUnit": 4766, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TermsContract.sol", "file": "./TermsContract.sol", "scope": 615, @@ -541,7 +541,7 @@ }, { "attributes": { - "SourceUnit": 3159, + "SourceUnit": 3167, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtRegistry.sol", "file": "./DebtRegistry.sol", "scope": 615, @@ -556,7 +556,7 @@ }, { "attributes": { - "SourceUnit": 5114, + "SourceUnit": 5122, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TokenRegistry.sol", "file": "./TokenRegistry.sol", "scope": 615, @@ -571,7 +571,7 @@ }, { "attributes": { - "SourceUnit": 5207, + "SourceUnit": 5215, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TokenTransferProxy.sol", "file": "./TokenTransferProxy.sol", "scope": 615, @@ -586,7 +586,7 @@ }, { "attributes": { - "SourceUnit": 6272, + "SourceUnit": 6280, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/libraries/PermissionsLib.sol", "file": "./libraries/PermissionsLib.sol", "scope": 615, @@ -9801,7 +9801,7 @@ } }, "links": {}, - "address": "0x39ab84786d3696677cb62181f56286c9496b490b" + "address": "0x9075c9d39c3603d00629d8c1822da2d2f61605fb" }, "70": { "events": { @@ -9950,5 +9950,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:51:53.173Z" + "updatedAt": "2018-10-09T23:22:13.489Z" } \ No newline at end of file diff --git a/artifacts/json/ContractRegistry.json b/artifacts/json/ContractRegistry.json index 20035e8e..4c8cc2d9 100644 --- a/artifacts/json/ContractRegistry.json +++ b/artifacts/json/ContractRegistry.json @@ -280,7 +280,7 @@ }, { "attributes": { - "SourceUnit": 2631, + "SourceUnit": 2639, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtKernel.sol", "file": "./DebtKernel.sol", "scope": 924, @@ -295,7 +295,7 @@ }, { "attributes": { - "SourceUnit": 3159, + "SourceUnit": 3167, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtRegistry.sol", "file": "./DebtRegistry.sol", "scope": 924, @@ -310,7 +310,7 @@ }, { "attributes": { - "SourceUnit": 3541, + "SourceUnit": 3549, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtToken.sol", "file": "./DebtToken.sol", "scope": 924, @@ -325,7 +325,7 @@ }, { "attributes": { - "SourceUnit": 4708, + "SourceUnit": 4716, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/RepaymentRouter.sol", "file": "./RepaymentRouter.sol", "scope": 924, @@ -340,7 +340,7 @@ }, { "attributes": { - "SourceUnit": 5114, + "SourceUnit": 5122, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TokenRegistry.sol", "file": "./TokenRegistry.sol", "scope": 924, @@ -355,7 +355,7 @@ }, { "attributes": { - "SourceUnit": 5207, + "SourceUnit": 5215, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TokenTransferProxy.sol", "file": "./TokenTransferProxy.sol", "scope": 924, @@ -4730,7 +4730,7 @@ } }, "links": {}, - "address": "0x342e4778937a0fa5879aa594d0f57370f1a0e5d9" + "address": "0x8a2e03a964c21731d451a66fa618ea9a14dded78" }, "70": { "events": { @@ -4779,5 +4779,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:53:24.840Z" + "updatedAt": "2018-10-09T23:24:24.851Z" } \ No newline at end of file diff --git a/artifacts/json/CreditorProxy.json b/artifacts/json/CreditorProxy.json index c1474921..db15c6c5 100644 --- a/artifacts/json/CreditorProxy.json +++ b/artifacts/json/CreditorProxy.json @@ -308,11 +308,11 @@ "type": "event" } ], - "bytecode": "0x606060405260008060146101000a81548160ff021916908315150217905550341561002957600080fd5b604051602080611be483398101604052808051906020019091905050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611b0e806100d66000396000f3006060604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633c1c90a7146100bf5780633f4ba83a1461015d57806347f7835d146101725780635c975abb146102d05780638456cb59146102fd5780638da5cb5b14610312578063a318b5f714610367578063abf410e5146103a6578063c1614d00146103fb578063e283040d1461043a578063f06bbf751461046b578063f2fde38b1461049c575b600080fd5b34156100ca57600080fd5b61015b60048080608001906004806020026040519081016040528092919082600460200280828437820191505050505091908060800190600480602002604051908101604052809291908260046020028082843782019150505050509190806020019060018060200260405190810160405280929190826001602002808284378201915050505050919050506104d5565b005b341561016857600080fd5b6101706105e1565b005b341561017d57600080fd5b6102b2600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908060c001906006806020026040519081016040528092919082600660200280828437820191505050505091908061010001906008806020026040519081016040528092919082600860200280828437820191505050505091908060200190600180602002604051908101604052809291908260016020028082843782019150505050509190806060019060038060200260405190810160405280929190826003602002808284378201915050505050919080606001906003806020026040519081016040528092919082600360200280828437820191505050505091908060600190600380602002604051908101604052809291908260036020028082843782019150505050509190505061069f565b60405180826000191660001916815260200191505060405180910390f35b34156102db57600080fd5b6102e3610fa7565b604051808215151515815260200191505060405180910390f35b341561030857600080fd5b610310610fba565b005b341561031d57600080fd5b61032561107a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561037257600080fd5b61038c60048080356000191690602001909190505061109f565b604051808215151515815260200191505060405180910390f35b34156103b157600080fd5b6103b96110bf565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561040657600080fd5b6104206004808035600019169060200190919050506110e5565b604051808215151515815260200191505060405180910390f35b341561044557600080fd5b61044d611105565b60405180826000191660001916815260200191505060405180910390f35b341561047657600080fd5b61047e61110d565b604051808261ffff1661ffff16815260200191505060405180910390f35b34156104a757600080fd5b6104d3600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611113565b005b60008060149054906101000a900460ff161515156104f257600080fd5b83600060048110151561050157fe5b602002015173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561053f57600080fd5b61054a848484611268565b9050600160026000836000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550806000191684600060048110151561059457fe5b602002015173ffffffffffffffffffffffffffffffffffffffff167f07d3242876ac355520b94ab74873262d83b5b81dbd5da781118f78cee0bbe74760405160405180910390a350505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561063c57600080fd5b600060149054906101000a900460ff16151561065757600080fd5b60008060146101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b600080600080600060149054906101000a900460ff161515156106c157600080fd5b6108436080604051908101604052808d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600060068110151561071157fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600260068110151561075657fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600360068110151561079b57fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152506080604051908101604052808c60056008811015156107ea57fe5b602002015181526020018c600060088110151561080357fe5b602002015181526020018c600760088110151561081c57fe5b602002015181526020018c600160088110151561083557fe5b60200201518152508a611268565b925060036000846000191660001916815260200190815260200160002060009054906101000a900460ff16156108d75782600019168b73ffffffffffffffffffffffffffffffffffffffff166001600381111561089c57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b60026000846000191660001916815260200190815260200160002060009054906101000a900460ff16156109695782600019168b73ffffffffffffffffffffffffffffffffffffffff166000600381111561092e57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b6109af8b8489600160038110151561097d57fe5b602002015189600160038110151561099157fe5b60200201518960016003811015156109a557fe5b6020020151611468565b1515610a195782600019168b73ffffffffffffffffffffffffffffffffffffffff16600260038111156109de57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b610a52896005600881101515610a2b57fe5b60200201518a6002600881101515610a3f57fe5b602002015161156f90919063ffffffff16565b9150610a728b8b6004600681101515610a6757fe5b60200201518461158d565b1515610adb5782600019168b73ffffffffffffffffffffffffffffffffffffffff16600380811115610aa057fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b6000821115610b0f57610b038a6004600681101515610af657fe5b60200201518c30856116a9565b1515610b0e57600080fd5b5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663079dd4b76000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610b9d57600080fd5b6102c65a03f11515610bae57600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663e6488fc9308c8c8c8c8c8c6000604051602001526040518863ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200187600660200280838360005b83811015610c6b578082015181840152602081019050610c50565b5050505090500186600860200280838360005b83811015610c99578082015181840152602081019050610c7e565b5050505090500185600160200280838360005b83811015610cc7578082015181840152602081019050610cac565b5050505090500184600360200280838360005b83811015610cf5578082015181840152602081019050610cda565b5050505090500183600360200280838360005b83811015610d23578082015181840152602081019050610d08565b5050505090500182600360200280838360005b83811015610d51578082015181840152602081019050610d36565b50505050905001975050505050505050602060405180830381600087803b1515610d7a57600080fd5b6102c65a03f11515610d8b57600080fd5b505050604051805190509050600060010260001916816000191614151515610db257600080fd5b600160036000856000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f8d898986000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610e7457600080fd5b6102c65a03f11515610e8557600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8c83600190046040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1515610f3457600080fd5b6102c65a03f11515610f4557600080fd5b505050806000191683600019168c73ffffffffffffffffffffffffffffffffffffffff167f44bca8cc6f9375e3d800b6361e71fdde37e4fc86bdc3a72c4f8f69bbd19a01f360405160405180910390a48093505b505050979650505050505050565b600060149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561101557600080fd5b600060149054906101000a900460ff1615151561103157600080fd5b6001600060146101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60026020528060005260406000206000915054906101000a900460ff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60036020528060005260406000206000915054906101000a900460ff1681565b600060010281565b611f4081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561116e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156111aa57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600083600060048110151561127957fe5b602002015184600160048110151561128d57fe5b60200201518460006004811015156112a157fe5b60200201518660026004811015156112b557fe5b60200201518660016004811015156112c957fe5b60200201518860036004811015156112dd57fe5b60200201518760006001811015156112f157fe5b602002015189600260048110151561130557fe5b60200201518a600360048110151561131957fe5b6020020151604051808a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018881526020018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c0100000000000000000000000002815260140184600019166000191681526020018381526020018281526020019950505050505050505050604051809103902090509392505050565b600060018560405180807f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250601c0182600019166000191681526020019150506040518091039020858585604051600081526020016040526000604051602001526040518085600019166000191681526020018460ff1660ff16815260200183600019166000191681526020018260001916600019168152602001945050505050602060405160208103908084039060008661646e5a03f1151561152d57600080fd5b50506020604051035173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614905095945050505050565b600080828401905083811015151561158357fe5b8091505092915050565b60008060008061159e8688306117af565b92506115aa86886118a7565b9150848210806115b957508483105b156115c7576000935061169f565b61167a8630600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561165a57600080fd5b6102c65a03f1151561166b57600080fd5b505050604051805190506117af565b90508481101561169a5761168e868661196a565b151561169957600080fd5b5b600193505b5050509392505050565b60008473ffffffffffffffffffffffffffffffffffffffff166323b872dd8585856000604051602001526040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b151561178a57600080fd5b6102c65a03f1151561179b57600080fd5b505050604051805190509050949350505050565b60008373ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e611f4061ffff1685856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600088803b151561188657600080fd5b87f1151561189357600080fd5b505050506040518051905090509392505050565b60008273ffffffffffffffffffffffffffffffffffffffff166370a08231611f4061ffff16846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600088803b151561194a57600080fd5b87f1151561195757600080fd5b5050505060405180519050905092915050565b60008273ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515611a1657600080fd5b6102c65a03f11515611a2757600080fd5b50505060405180519050846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515611abf57600080fd5b6102c65a03f11515611ad057600080fd5b505050604051805190509050929150505600a165627a7a72305820627f64d2f5e59580e881310ad781c1c18c95e290f478ac08b283c8661b5071d90029", - "deployedBytecode": "0x6060604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633c1c90a7146100bf5780633f4ba83a1461015d57806347f7835d146101725780635c975abb146102d05780638456cb59146102fd5780638da5cb5b14610312578063a318b5f714610367578063abf410e5146103a6578063c1614d00146103fb578063e283040d1461043a578063f06bbf751461046b578063f2fde38b1461049c575b600080fd5b34156100ca57600080fd5b61015b60048080608001906004806020026040519081016040528092919082600460200280828437820191505050505091908060800190600480602002604051908101604052809291908260046020028082843782019150505050509190806020019060018060200260405190810160405280929190826001602002808284378201915050505050919050506104d5565b005b341561016857600080fd5b6101706105e1565b005b341561017d57600080fd5b6102b2600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908060c001906006806020026040519081016040528092919082600660200280828437820191505050505091908061010001906008806020026040519081016040528092919082600860200280828437820191505050505091908060200190600180602002604051908101604052809291908260016020028082843782019150505050509190806060019060038060200260405190810160405280929190826003602002808284378201915050505050919080606001906003806020026040519081016040528092919082600360200280828437820191505050505091908060600190600380602002604051908101604052809291908260036020028082843782019150505050509190505061069f565b60405180826000191660001916815260200191505060405180910390f35b34156102db57600080fd5b6102e3610fa7565b604051808215151515815260200191505060405180910390f35b341561030857600080fd5b610310610fba565b005b341561031d57600080fd5b61032561107a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561037257600080fd5b61038c60048080356000191690602001909190505061109f565b604051808215151515815260200191505060405180910390f35b34156103b157600080fd5b6103b96110bf565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561040657600080fd5b6104206004808035600019169060200190919050506110e5565b604051808215151515815260200191505060405180910390f35b341561044557600080fd5b61044d611105565b60405180826000191660001916815260200191505060405180910390f35b341561047657600080fd5b61047e61110d565b604051808261ffff1661ffff16815260200191505060405180910390f35b34156104a757600080fd5b6104d3600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611113565b005b60008060149054906101000a900460ff161515156104f257600080fd5b83600060048110151561050157fe5b602002015173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561053f57600080fd5b61054a848484611268565b9050600160026000836000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550806000191684600060048110151561059457fe5b602002015173ffffffffffffffffffffffffffffffffffffffff167f07d3242876ac355520b94ab74873262d83b5b81dbd5da781118f78cee0bbe74760405160405180910390a350505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561063c57600080fd5b600060149054906101000a900460ff16151561065757600080fd5b60008060146101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b600080600080600060149054906101000a900460ff161515156106c157600080fd5b6108436080604051908101604052808d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600060068110151561071157fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600260068110151561075657fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600360068110151561079b57fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152506080604051908101604052808c60056008811015156107ea57fe5b602002015181526020018c600060088110151561080357fe5b602002015181526020018c600760088110151561081c57fe5b602002015181526020018c600160088110151561083557fe5b60200201518152508a611268565b925060036000846000191660001916815260200190815260200160002060009054906101000a900460ff16156108d75782600019168b73ffffffffffffffffffffffffffffffffffffffff166001600381111561089c57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b60026000846000191660001916815260200190815260200160002060009054906101000a900460ff16156109695782600019168b73ffffffffffffffffffffffffffffffffffffffff166000600381111561092e57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b6109af8b8489600160038110151561097d57fe5b602002015189600160038110151561099157fe5b60200201518960016003811015156109a557fe5b6020020151611468565b1515610a195782600019168b73ffffffffffffffffffffffffffffffffffffffff16600260038111156109de57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b610a52896005600881101515610a2b57fe5b60200201518a6002600881101515610a3f57fe5b602002015161156f90919063ffffffff16565b9150610a728b8b6004600681101515610a6757fe5b60200201518461158d565b1515610adb5782600019168b73ffffffffffffffffffffffffffffffffffffffff16600380811115610aa057fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b6000821115610b0f57610b038a6004600681101515610af657fe5b60200201518c30856116a9565b1515610b0e57600080fd5b5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663079dd4b76000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610b9d57600080fd5b6102c65a03f11515610bae57600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663e6488fc9308c8c8c8c8c8c6000604051602001526040518863ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200187600660200280838360005b83811015610c6b578082015181840152602081019050610c50565b5050505090500186600860200280838360005b83811015610c99578082015181840152602081019050610c7e565b5050505090500185600160200280838360005b83811015610cc7578082015181840152602081019050610cac565b5050505090500184600360200280838360005b83811015610cf5578082015181840152602081019050610cda565b5050505090500183600360200280838360005b83811015610d23578082015181840152602081019050610d08565b5050505090500182600360200280838360005b83811015610d51578082015181840152602081019050610d36565b50505050905001975050505050505050602060405180830381600087803b1515610d7a57600080fd5b6102c65a03f11515610d8b57600080fd5b505050604051805190509050600060010260001916816000191614151515610db257600080fd5b600160036000856000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f8d898986000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610e7457600080fd5b6102c65a03f11515610e8557600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8c83600190046040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1515610f3457600080fd5b6102c65a03f11515610f4557600080fd5b505050806000191683600019168c73ffffffffffffffffffffffffffffffffffffffff167f44bca8cc6f9375e3d800b6361e71fdde37e4fc86bdc3a72c4f8f69bbd19a01f360405160405180910390a48093505b505050979650505050505050565b600060149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561101557600080fd5b600060149054906101000a900460ff1615151561103157600080fd5b6001600060146101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60026020528060005260406000206000915054906101000a900460ff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60036020528060005260406000206000915054906101000a900460ff1681565b600060010281565b611f4081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561116e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156111aa57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600083600060048110151561127957fe5b602002015184600160048110151561128d57fe5b60200201518460006004811015156112a157fe5b60200201518660026004811015156112b557fe5b60200201518660016004811015156112c957fe5b60200201518860036004811015156112dd57fe5b60200201518760006001811015156112f157fe5b602002015189600260048110151561130557fe5b60200201518a600360048110151561131957fe5b6020020151604051808a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018881526020018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c0100000000000000000000000002815260140184600019166000191681526020018381526020018281526020019950505050505050505050604051809103902090509392505050565b600060018560405180807f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250601c0182600019166000191681526020019150506040518091039020858585604051600081526020016040526000604051602001526040518085600019166000191681526020018460ff1660ff16815260200183600019166000191681526020018260001916600019168152602001945050505050602060405160208103908084039060008661646e5a03f1151561152d57600080fd5b50506020604051035173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614905095945050505050565b600080828401905083811015151561158357fe5b8091505092915050565b60008060008061159e8688306117af565b92506115aa86886118a7565b9150848210806115b957508483105b156115c7576000935061169f565b61167a8630600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561165a57600080fd5b6102c65a03f1151561166b57600080fd5b505050604051805190506117af565b90508481101561169a5761168e868661196a565b151561169957600080fd5b5b600193505b5050509392505050565b60008473ffffffffffffffffffffffffffffffffffffffff166323b872dd8585856000604051602001526040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b151561178a57600080fd5b6102c65a03f1151561179b57600080fd5b505050604051805190509050949350505050565b60008373ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e611f4061ffff1685856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600088803b151561188657600080fd5b87f1151561189357600080fd5b505050506040518051905090509392505050565b60008273ffffffffffffffffffffffffffffffffffffffff166370a08231611f4061ffff16846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600088803b151561194a57600080fd5b87f1151561195757600080fd5b5050505060405180519050905092915050565b60008273ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515611a1657600080fd5b6102c65a03f11515611a2757600080fd5b50505060405180519050846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515611abf57600080fd5b6102c65a03f11515611ad057600080fd5b505050604051805190509050929150505600a165627a7a72305820627f64d2f5e59580e881310ad781c1c18c95e290f478ac08b283c8661b5071d90029", - "sourceMap": "1086:9807:2:-;;;268:5:37;247:26;;;;;;;;;;;;;;;;;;;;2040:140:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;509:10:39;501:5;;:18;;;;;;;;;;;;;;;;;;2155:17:2;2119:16;;:54;;;;;;;;;;;;;;;;;;2040:140;1086:9807;;;;;;", - "deployedSourceMap": "1086:9807:2:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5952:607;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;833:87:37;;;;;;;;;;;;;;2398:3455:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;247:26:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;666:85;;;;;;;;;;;;;;238:20:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1502:51:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1333:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1559:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1380:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1441:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;832:169:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;5952:607:2;6246:30;416:6:37;;;;;;;;;;;415:7;407:16;;;;;;;;6213:19:2;6233:1;6213:22;;;;;;;;;;;;;6199:36;;:10;:36;;;6191:45;;;;;;;;6279:135;6318:19;6351:16;6381:23;6279:25;:135::i;:::-;6246:168;;6469:4;6424:18;:42;6443:22;6424:42;;;;;;;;;;;;;;;;;;:49;;;;;;;;;;;;;;;;;;6529:22;6483:69;;;6505:19;6525:1;6505:22;;;;;;;;;;;;;6483:69;;;;;;;;;;;;5952:607;;;;:::o;833:87:37:-;653:5:39;;;;;;;;;;;639:19;;:10;:19;;;631:28;;;;;;;;568:6:37;;;;;;;;;;;560:15;;;;;;;;895:5;886:6;;:14;;;;;;;;;;;;;;;;;;906:9;;;;;;;;;;833:87::o;2398:3455:2:-;2835:20;2872:30;4306:25;5247:19;416:6:37;;;;;;;;;;;415:7;407:16;;;;;;;;2905:550:2;;;;;;;;;;2962:8;2905:550;;;;;;;;2988:14;3003:1;2988:17;;;;;;;;;;;;;2905:550;;;;;;;;3051:14;3066:1;3051:17;;;;;;;;;;;;;2905:550;;;;;;;;3101:14;3116:1;3101:17;;;;;;;;;;;;;2905:550;;;;;;;;;;;;;;;;3181:11;3193:1;3181:14;;;;;;;;;;;;;2905:550;;;;3229:11;3241:1;3229:14;;;;;;;;;;;;;2905:550;;;;3286:11;3298:1;3286:14;;;;;;;;;;;;;2905:550;;;;3356:11;3368:1;3356:14;;;;;;;;;;;;;2905:550;;;3406:12;2905:25;:550::i;:::-;2872:583;;3470:15;:39;3486:22;3470:39;;;;;;;;;;;;;;;;;;;;;;;;;;;3466:192;;;3585:22;3525:83;;;3575:8;3525:83;;3540:32;3534:39;;;;;;;;3525:83;;;;;;;;;;;;1433:1;1425:10;;3622:25;;;;3466:192;3672:18;:42;3691:22;3672:42;;;;;;;;;;;;;;;;;;;;;;;;;;;3668:191;;;3785:22;3730:78;;;3775:8;3730:78;;3745:27;3739:34;;;;;;;;3730:78;;;;;;;;;;;;1433:1;1425:10;;3822:25;;;;3668:191;3874:168;3904:8;3926:22;3962:11;3974:1;3962:14;;;;;;;;;;;;;3990:11;4002:1;3990:14;;;;;;;;;;;;;4018:11;4030:1;4018:14;;;;;;;;;;;;;3874:16;:168::i;:::-;3873:169;3869:384;;;4167:22;4058:145;;;4141:8;4058:145;;4090:32;4084:39;;;;;;;;4058:145;;;;;;;;;;;;1433:1;1425:10;;4217:25;;;;3869:384;4334:34;4353:11;4365:1;4353:14;;;;;;;;;;;;;4334:11;4346:1;4334:14;;;;;;;;;;;;;:18;;:34;;;;:::i;:::-;4306:62;;4384:129;4430:8;4452:14;4467:1;4452:17;;;;;;;;;;;;;4483:20;4384:32;:129::i;:::-;4383:130;4379:362;;;4655:22;4529:162;;;4629:8;4529:162;;4561:49;4555:56;;;;;;;;4529:162;;;;;;;;;;;;1433:1;1425:10;;4705:25;;;;4379:362;4839:1;4816:20;:24;4812:276;;;4881:182;4921:14;4936:1;4921:17;;;;;;;;;;;;;4960:8;4998:4;5025:20;4881:18;:182::i;:::-;4856:221;;;;;;;;4812:276;5269:16;;;;;;;;;;;:27;;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:43;;;5334:4;5353:14;5381:11;5406:12;5432:11;5457;5482;5269:234;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5247:256:2;;1433:1;1425:10;;5522:33;;;:11;:33;;;;;5514:42;;;;;;;;5609:4;5567:15;:39;5583:22;5567:39;;;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;5672:16;;;;;;;;;;;:26;;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:37;;;5710:8;5728:11;5720:20;;;5672:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5805:11;5752:65;;;5781:22;5752:65;;;5771:8;5752:65;;;;;;;;;;;;5835:11;5828:18;;429:1:37;2398:3455:2;;;;;;;;;;;;:::o;247:26:37:-;;;;;;;;;;;;;:::o;666:85::-;653:5:39;;;;;;;;;;;639:19;;:10;:19;;;631:28;;;;;;;;416:6:37;;;;;;;;;;;415:7;407:16;;;;;;;;729:4;720:6;;:13;;;;;;;;;;;;;;;;;;739:7;;;;;;;;;;666:85::o;238:20:39:-;;;;;;;;;;;;;:::o;1502:51:2:-;;;;;;;;;;;;;;;;;;;;;;:::o;1333:40::-;;;;;;;;;;;;;:::o;1559:48::-;;;;;;;;;;;;;;;;;;;;;;:::o;1380:55::-;1433:1;1425:10;;1380:55;:::o;1441:54::-;1491:4;1441:54;:::o;832:169:39:-;653:5;;;;;;;;;;;639:19;;:10;:19;;;631:28;;;;;;;;928:1;908:22;;:8;:22;;;;900:31;;;;;;;;965:8;937:37;;958:5;;;;;;;;;;;937:37;;;;;;;;;;;;988:8;980:5;;:16;;;;;;;;;;;;;;;;;;832:169;:::o;6749:761:2:-;6955:31;7032:19;7052:1;7032:22;;;;;;;;;;;;;7080:19;7100:1;7080:22;;;;;;;;;;;;;7144:16;7161:1;7144:19;;;;;;;;;;;;;7193;7213:1;7193:22;;;;;;;;;;;;;7244:16;7261:1;7244:19;;;;;;;;;;;;;7302;7322:1;7302:22;;;;;;;;;;;;;7355:23;7379:1;7355:26;;;;;;;;;;;;;7395:16;7412:1;7395:19;;;;;;;;;;;;;7466:16;7483:1;7466:19;;;;;;;;;;;;;7009:494;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7002:501;;6749:761;;;;;:::o;8965:360::-;9145:11;9189:129;9258:4;9212:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9277:1;9292;9307;9189:129;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9179:139;;:6;:139;;;9172:146;;8965:360;;;;;;;:::o;1007:129:38:-;1065:7;1080:9;1096:1;1092;:5;1080:17;;1115:1;1110;:6;;1103:14;;;;;;1130:1;1123:8;;1007:129;;;;;:::o;7721:1107:2:-;7896:37;8022:19;8107:20;8396:27;8044:53;8057:14;8073:8;8091:4;8044:12;:53::i;:::-;8022:75;;8130:36;8141:14;8157:8;8130:10;:36::i;:::-;8107:59;;8199:20;8181:15;:38;:79;;;;8240:20;8223:14;:37;8181:79;8177:122;;;8283:5;8276:12;;;;8177:122;8426:128;8452:14;8488:4;8507:16;;;;;;;;;;;:35;;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8426:12;:128::i;:::-;8396:158;;8681:20;8656:22;:45;8652:148;;;8725:63;8751:14;8767:20;8725:25;:63::i;:::-;8717:72;;;;;;;;8652:148;8817:4;8810:11;;7721:1107;;;;;;;;;:::o;10643:248::-;10801:13;10843:6;10837:26;;;10864:5;10871:3;10876:7;10837:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10830:54;;10643:248;;;;;;:::o;9804:337::-;9950:15;10038:5;10032:22;;;1491:4;10032:52;;10098:5;10117:7;10032:102;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10025:109;;9804:337;;;;;:::o;9421:265::-;9540:13;9626:5;9620:22;;;1491:4;9620:52;;9673:5;9620:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9613:66;;9421:265;;;;:::o;10258:272::-;10377:13;10419:5;10413:20;;;10455:16;;;;;;;;;;;:35;;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10507:6;10413:110;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10406:117;;10258:272;;;;:::o", - "source": "/*\n\n Copyright 2017 Dharma Labs Inc.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n*/\n\npragma solidity 0.4.18;\n\nimport \"./ContractRegistry.sol\";\nimport \"zeppelin-solidity/contracts/lifecycle/Pausable.sol\";\nimport \"zeppelin-solidity/contracts/math/SafeMath.sol\";\nimport \"zeppelin-solidity/contracts/token/ERC20/ERC20.sol\";\n\n\n/**\n * The CreditorProxy is a thin wrapper around the DebtKernel\n * It implements creditor-driven loans as specified by DIP-1\n *\n * Authors: Bo Henderson & Shivani Gupta & Dharma Team\n * DIP: https://github.com/dharmaprotocol/DIPs/issues/1\n */\ncontract CreditorProxy is Pausable {\n using SafeMath for uint;\n\n enum Errors {\n DEBT_OFFER_CANCELLED,\n DEBT_OFFER_ALREADY_FILLED,\n DEBT_OFFER_NON_CONSENSUAL,\n CREDITOR_BALANCE_OR_ALLOWANCE_INSUFFICIENT\n }\n\n ContractRegistry public contractRegistry;\n\n bytes32 constant public NULL_ISSUANCE_HASH = bytes32(0);\n uint16 constant public EXTERNAL_QUERY_GAS_LIMIT = 8000;\n\n mapping (bytes32 => bool) public debtOfferCancelled;\n mapping (bytes32 => bool) public debtOfferFilled;\n\n event LogDebtOfferCancelled(\n address indexed _creditor,\n bytes32 indexed _creditorCommitmentHash\n );\n\n event LogDebtOfferFilled(\n address indexed _creditor,\n bytes32 indexed _creditorCommitmentHash,\n bytes32 indexed _agreementId\n );\n\n event LogError(\n uint8 indexed _errorId,\n address indexed _creditor,\n bytes32 indexed _creditorCommitmentHash\n );\n\n function CreditorProxy(address _contractRegistry)\n public\n {\n contractRegistry = ContractRegistry(_contractRegistry);\n }\n\n /*\n * Submit debt order to DebtKernel if it is consensual with creditor's request\n * Creditor signature in arguments is only used internally,\n * It will not be verified by the Debt Kernel\n */\n function fillDebtOffer(\n address creditor,\n address[6] orderAddresses, // repayment-router, debtor, uw, tc, p-token, relayer\n uint[8] orderValues, // rr, salt, pa, uwFee, rFee, cFee, dFee, expTime\n bytes32[1] orderBytes32, // tcParams\n uint8[3] signaturesV, // debtV, credV, uwV\n bytes32[3] signaturesR,\n bytes32[3] signaturesS\n )\n public\n whenNotPaused\n returns (bytes32 _agreementId)\n {\n\n bytes32 creditorCommitmentHash = getCreditorCommitmentHash(\n [\n creditor,\n orderAddresses[0], // repayment router version\n orderAddresses[2], // underwriter\n orderAddresses[3] // termsContract\n ],\n [\n orderValues[5], // creditor fee\n orderValues[0], // underwriterRiskRating\n orderValues[7], // commitmentExpirationTimestampInSec\n orderValues[1] // salt\n ],\n orderBytes32 // termsContractParameters\n );\n\n if (debtOfferFilled[creditorCommitmentHash]) {\n LogError(uint8(Errors.DEBT_OFFER_ALREADY_FILLED), creditor, creditorCommitmentHash);\n return NULL_ISSUANCE_HASH;\n }\n\n if (debtOfferCancelled[creditorCommitmentHash]) {\n LogError(uint8(Errors.DEBT_OFFER_CANCELLED), creditor, creditorCommitmentHash);\n return NULL_ISSUANCE_HASH; \n }\n\n if (!isValidSignature(\n creditor,\n creditorCommitmentHash,\n signaturesV[1],\n signaturesR[1],\n signaturesS[1]\n )) {\n LogError(\n uint8(Errors.DEBT_OFFER_NON_CONSENSUAL),\n creditor,\n creditorCommitmentHash\n );\n return NULL_ISSUANCE_HASH;\n }\n\n // principal amount + creditor fee\n uint totalCreditorPayment = orderValues[2].add(orderValues[5]);\n\n if (!hasSufficientBalanceAndAllowance(\n creditor,\n orderAddresses[4],\n totalCreditorPayment\n )) {\n LogError(\n uint8(Errors.CREDITOR_BALANCE_OR_ALLOWANCE_INSUFFICIENT),\n creditor,\n creditorCommitmentHash\n );\n return NULL_ISSUANCE_HASH;\n }\n\n // Transfer principal from creditor to CreditorProxy\n if (totalCreditorPayment > 0) {\n require(\n transferTokensFrom(\n orderAddresses[4],\n creditor,\n address(this),\n totalCreditorPayment\n )\n );\n }\n\n // Grant allowance to the TokenTransferProxy for this contract.\n\n\n // Fill debt order with this contract playing the role of creditor\n bytes32 agreementId = contractRegistry.debtKernel().fillDebtOrder(\n address(this),\n orderAddresses,\n orderValues,\n orderBytes32,\n signaturesV,\n signaturesR,\n signaturesS\n );\n\n require(agreementId != NULL_ISSUANCE_HASH);\n\n debtOfferFilled[creditorCommitmentHash] = true;\n\n // transfer debt token to real creditor\n contractRegistry.debtToken().transfer(creditor, uint256(agreementId));\n\n LogDebtOfferFilled(creditor, creditorCommitmentHash, agreementId);\n\n return agreementId;\n }\n\n /**\n * Allows creditor to prevent a debt offer from being used in the future\n */\n function cancelDebtOffer(\n address[4] commitmentAddresses,\n uint[4] commitmentValues,\n bytes32[1] termsContractParameters\n )\n public\n whenNotPaused\n {\n // sender must be the creditor\n require(msg.sender == commitmentAddresses[0]);\n bytes32 creditorCommitmentHash = getCreditorCommitmentHash(\n commitmentAddresses,\n commitmentValues,\n termsContractParameters\n );\n debtOfferCancelled[creditorCommitmentHash] = true;\n LogDebtOfferCancelled(commitmentAddresses[0], creditorCommitmentHash);\n }\n\n ////////////////////////\n // INTERNAL FUNCTIONS //\n ////////////////////////\n\n /**\n * Returns the messaged signed by the creditor to indicate their commitment\n */\n function getCreditorCommitmentHash(\n address[4] commitmentAddresses,\n uint[4] commitmentValues,\n bytes32[1] termsContractParameters\n )\n internal\n pure\n returns (bytes32 _creditorCommitmentHash)\n {\n return keccak256(\n commitmentAddresses[0], // creditor\n commitmentAddresses[1], // repayment router version\n commitmentValues[0], // creditor fee\n commitmentAddresses[2], // underwriter\n commitmentValues[1], // underwriterRiskRating\n commitmentAddresses[3], // termsContract\n termsContractParameters[0],\n commitmentValues[2], // commitmentExpirationTimestampInSec\n commitmentValues[3] // salt\n );\n }\n\n\n /**\n * Assert that the creditor has a sufficient token balance and has granted the token transfer\n * proxy contract sufficient allowance to suffice for the principal and creditor fee.\n */\n function hasSufficientBalanceAndAllowance(\n address creditor,\n address principalToken,\n uint totalCreditorPayment\n )\n internal\n returns (bool _isBalanceAndAllowanceSufficient)\n {\n // The allowance that this contract has for a creditor's tokens.\n uint proxyAllowance = getAllowance(principalToken, creditor, address(this));\n uint creditorBalance = getBalance(principalToken, creditor);\n\n if (creditorBalance < totalCreditorPayment || proxyAllowance < totalCreditorPayment) {\n return false;\n }\n\n // The allowance that the token transfer proxy has for this contract's tokens.\n uint tokenTransferAllowance = getAllowance(\n principalToken,\n address(this),\n contractRegistry.tokenTransferProxy()\n );\n\n // Ensure the token transfer proxy can transfer tokens from the creditor proxy\n if (tokenTransferAllowance < totalCreditorPayment) {\n require(setTokenTransferAllowance(principalToken, totalCreditorPayment));\n }\n\n return true;\n }\n\n /**\n * Given a hashed message, a signer's address, and a signature,\n * returns whether the signature is valid.\n */\n function isValidSignature(\n address signer,\n bytes32 hash,\n uint8 v,\n bytes32 r,\n bytes32 s\n )\n internal\n pure\n returns (bool _valid)\n {\n return signer == ecrecover(\n keccak256(\"\\x19Ethereum Signed Message:\\n32\", hash),\n v,\n r,\n s\n );\n }\n\n /**\n * Helper function for querying an address' balance on a given token.\n */\n function getBalance(\n address token,\n address owner\n )\n internal\n view\n returns (uint _balance)\n {\n // Limit gas to prevent reentrancy.\n return ERC20(token).balanceOf.gas(EXTERNAL_QUERY_GAS_LIMIT)(owner);\n }\n\n /**\n * Helper function for querying this contract's allowance for transferring the given token.\n */\n function getAllowance(\n address token,\n address owner,\n address granter\n )\n internal\n view\n returns (uint _allowance)\n {\n // Limit gas to prevent reentrancy.\n return ERC20(token).allowance.gas(EXTERNAL_QUERY_GAS_LIMIT)(\n owner,\n granter\n );\n }\n\n /**\n * Helper function for approving this address' allowance to Dharma's token transfer proxy.\n */\n function setTokenTransferAllowance(\n address token,\n uint amount\n )\n internal\n returns (bool _success)\n {\n return ERC20(token).approve(\n address(contractRegistry.tokenTransferProxy()),\n amount\n );\n }\n\n\n /**\n * Helper function for transferring a specified amount of tokens between two parties.\n */\n function transferTokensFrom(\n address _token,\n address _from,\n address _to,\n uint _amount\n )\n internal\n returns (bool _success)\n {\n return ERC20(_token).transferFrom(_from, _to, _amount);\n }\n}\n", + "bytecode": "0x606060405260008060146101000a81548160ff021916908315150217905550341561002957600080fd5b604051602080611d1483398101604052808051906020019091905050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611c3e806100d66000396000f3006060604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633f4ba83a146100bf57806347f7835d146100d45780635c975abb146102325780638456cb591461025f5780638da5cb5b146102745780638f18b00b146102c9578063a318b5f714610367578063abf410e5146103a6578063c1614d00146103fb578063e283040d1461043a578063f06bbf751461046b578063f2fde38b1461049c575b600080fd5b34156100ca57600080fd5b6100d26104d5565b005b34156100df57600080fd5b610214600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908060c0019060068060200260405190810160405280929190826006602002808284378201915050505050919080610100019060088060200260405190810160405280929190826008602002808284378201915050505050919080602001906001806020026040519081016040528092919082600160200280828437820191505050505091908060600190600380602002604051908101604052809291908260036020028082843782019150505050509190806060019060038060200260405190810160405280929190826003602002808284378201915050505050919080606001906003806020026040519081016040528092919082600360200280828437820191505050505091905050610593565b60405180826000191660001916815260200191505060405180910390f35b341561023d57600080fd5b610245610f75565b604051808215151515815260200191505060405180910390f35b341561026a57600080fd5b610272610f88565b005b341561027f57600080fd5b610287611048565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156102d457600080fd5b6103656004808060a0019060058060200260405190810160405280929190826005602002808284378201915050505050919080608001906004806020026040519081016040528092919082600460200280828437820191505050505091908060200190600180602002604051908101604052809291908260016020028082843782019150505050509190505061106d565b005b341561037257600080fd5b61038c600480803560001916906020019091905050611179565b604051808215151515815260200191505060405180910390f35b34156103b157600080fd5b6103b9611199565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561040657600080fd5b6104206004808035600019169060200190919050506111bf565b604051808215151515815260200191505060405180910390f35b341561044557600080fd5b61044d6111df565b60405180826000191660001916815260200191505060405180910390f35b341561047657600080fd5b61047e6111e7565b604051808261ffff1661ffff16815260200191505060405180910390f35b34156104a757600080fd5b6104d3600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506111ed565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561053057600080fd5b600060149054906101000a900460ff16151561054b57600080fd5b60008060146101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b600080600080600060149054906101000a900460ff161515156105b557600080fd5b61081160a0604051908101604052808d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663079dd4b76000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561068457600080fd5b6102c65a03f1151561069557600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c60006006811015156106df57fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600360068110151561072457fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600460068110151561076957fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152506080604051908101604052808c60016008811015156107b857fe5b602002015181526020018c60026008811015156107d157fe5b602002015181526020018c60056008811015156107ea57fe5b602002015181526020018c600760088110151561080357fe5b60200201518152508a611342565b925060036000846000191660001916815260200190815260200160002060009054906101000a900460ff16156108a55782600019168b73ffffffffffffffffffffffffffffffffffffffff166001600381111561086a57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b60026000846000191660001916815260200190815260200160002060009054906101000a900460ff16156109375782600019168b73ffffffffffffffffffffffffffffffffffffffff16600060038111156108fc57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b61097d8b8489600160038110151561094b57fe5b602002015189600160038110151561095f57fe5b602002015189600160038110151561097357fe5b6020020151611598565b15156109e75782600019168b73ffffffffffffffffffffffffffffffffffffffff16600260038111156109ac57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b610a208960056008811015156109f957fe5b60200201518a6002600881101515610a0d57fe5b602002015161169f90919063ffffffff16565b9150610a408b8b6004600681101515610a3557fe5b6020020151846116bd565b1515610aa95782600019168b73ffffffffffffffffffffffffffffffffffffffff16600380811115610a6e57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b6000821115610add57610ad18a6004600681101515610ac457fe5b60200201518c30856117d9565b1515610adc57600080fd5b5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663079dd4b76000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610b6b57600080fd5b6102c65a03f11515610b7c57600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663e6488fc9308c8c8c8c8c8c6000604051602001526040518863ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200187600660200280838360005b83811015610c39578082015181840152602081019050610c1e565b5050505090500186600860200280838360005b83811015610c67578082015181840152602081019050610c4c565b5050505090500185600160200280838360005b83811015610c95578082015181840152602081019050610c7a565b5050505090500184600360200280838360005b83811015610cc3578082015181840152602081019050610ca8565b5050505090500183600360200280838360005b83811015610cf1578082015181840152602081019050610cd6565b5050505090500182600360200280838360005b83811015610d1f578082015181840152602081019050610d04565b50505050905001975050505050505050602060405180830381600087803b1515610d4857600080fd5b6102c65a03f11515610d5957600080fd5b505050604051805190509050600060010260001916816000191614151515610d8057600080fd5b600160036000856000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f8d898986000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610e4257600080fd5b6102c65a03f11515610e5357600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8c83600190046040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1515610f0257600080fd5b6102c65a03f11515610f1357600080fd5b505050806000191683600019168c73ffffffffffffffffffffffffffffffffffffffff167f44bca8cc6f9375e3d800b6361e71fdde37e4fc86bdc3a72c4f8f69bbd19a01f360405160405180910390a48093505b505050979650505050505050565b600060149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610fe357600080fd5b600060149054906101000a900460ff16151515610fff57600080fd5b6001600060146101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060149054906101000a900460ff1615151561108a57600080fd5b83600060058110151561109957fe5b602002015173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156110d757600080fd5b6110e2848484611342565b9050600160026000836000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550806000191684600060058110151561112c57fe5b602002015173ffffffffffffffffffffffffffffffffffffffff167f07d3242876ac355520b94ab74873262d83b5b81dbd5da781118f78cee0bbe74760405160405180910390a350505050565b60026020528060005260406000206000915054906101000a900460ff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60036020528060005260406000206000915054906101000a900460ff1681565b600060010281565b611f4081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561124857600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561128457600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600083600060058110151561135357fe5b602002015184600160058110151561136757fe5b602002015185600260058110151561137b57fe5b602002015186600360058110151561138f57fe5b60200201518760046005811015156113a357fe5b60200201518760006004811015156113b757fe5b60200201518860016004811015156113cb57fe5b60200201518960026004811015156113df57fe5b60200201518a60036004811015156113f357fe5b60200201518a600060018110151561140757fe5b6020020151604051808b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c0100000000000000000000000002815260140186815260200185815260200184815260200183815260200182600019166000191681526020019a5050505050505050505050604051809103902090509392505050565b600060018560405180807f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250601c0182600019166000191681526020019150506040518091039020858585604051600081526020016040526000604051602001526040518085600019166000191681526020018460ff1660ff16815260200183600019166000191681526020018260001916600019168152602001945050505050602060405160208103908084039060008661646e5a03f1151561165d57600080fd5b50506020604051035173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614905095945050505050565b60008082840190508381101515156116b357fe5b8091505092915050565b6000806000806116ce8688306118df565b92506116da86886119d7565b9150848210806116e957508483105b156116f757600093506117cf565b6117aa8630600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561178a57600080fd5b6102c65a03f1151561179b57600080fd5b505050604051805190506118df565b9050848110156117ca576117be8686611a9a565b15156117c957600080fd5b5b600193505b5050509392505050565b60008473ffffffffffffffffffffffffffffffffffffffff166323b872dd8585856000604051602001526040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15156118ba57600080fd5b6102c65a03f115156118cb57600080fd5b505050604051805190509050949350505050565b60008373ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e611f4061ffff1685856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600088803b15156119b657600080fd5b87f115156119c357600080fd5b505050506040518051905090509392505050565b60008273ffffffffffffffffffffffffffffffffffffffff166370a08231611f4061ffff16846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600088803b1515611a7a57600080fd5b87f11515611a8757600080fd5b5050505060405180519050905092915050565b60008273ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515611b4657600080fd5b6102c65a03f11515611b5757600080fd5b50505060405180519050846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515611bef57600080fd5b6102c65a03f11515611c0057600080fd5b505050604051805190509050929150505600a165627a7a7230582051723af670e00f905ed79837151ff2f428c566a7778657a079e3873cc19020a10029", + "deployedBytecode": "0x6060604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633f4ba83a146100bf57806347f7835d146100d45780635c975abb146102325780638456cb591461025f5780638da5cb5b146102745780638f18b00b146102c9578063a318b5f714610367578063abf410e5146103a6578063c1614d00146103fb578063e283040d1461043a578063f06bbf751461046b578063f2fde38b1461049c575b600080fd5b34156100ca57600080fd5b6100d26104d5565b005b34156100df57600080fd5b610214600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908060c0019060068060200260405190810160405280929190826006602002808284378201915050505050919080610100019060088060200260405190810160405280929190826008602002808284378201915050505050919080602001906001806020026040519081016040528092919082600160200280828437820191505050505091908060600190600380602002604051908101604052809291908260036020028082843782019150505050509190806060019060038060200260405190810160405280929190826003602002808284378201915050505050919080606001906003806020026040519081016040528092919082600360200280828437820191505050505091905050610593565b60405180826000191660001916815260200191505060405180910390f35b341561023d57600080fd5b610245610f75565b604051808215151515815260200191505060405180910390f35b341561026a57600080fd5b610272610f88565b005b341561027f57600080fd5b610287611048565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156102d457600080fd5b6103656004808060a0019060058060200260405190810160405280929190826005602002808284378201915050505050919080608001906004806020026040519081016040528092919082600460200280828437820191505050505091908060200190600180602002604051908101604052809291908260016020028082843782019150505050509190505061106d565b005b341561037257600080fd5b61038c600480803560001916906020019091905050611179565b604051808215151515815260200191505060405180910390f35b34156103b157600080fd5b6103b9611199565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561040657600080fd5b6104206004808035600019169060200190919050506111bf565b604051808215151515815260200191505060405180910390f35b341561044557600080fd5b61044d6111df565b60405180826000191660001916815260200191505060405180910390f35b341561047657600080fd5b61047e6111e7565b604051808261ffff1661ffff16815260200191505060405180910390f35b34156104a757600080fd5b6104d3600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506111ed565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561053057600080fd5b600060149054906101000a900460ff16151561054b57600080fd5b60008060146101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b600080600080600060149054906101000a900460ff161515156105b557600080fd5b61081160a0604051908101604052808d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663079dd4b76000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561068457600080fd5b6102c65a03f1151561069557600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c60006006811015156106df57fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600360068110151561072457fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600460068110151561076957fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152506080604051908101604052808c60016008811015156107b857fe5b602002015181526020018c60026008811015156107d157fe5b602002015181526020018c60056008811015156107ea57fe5b602002015181526020018c600760088110151561080357fe5b60200201518152508a611342565b925060036000846000191660001916815260200190815260200160002060009054906101000a900460ff16156108a55782600019168b73ffffffffffffffffffffffffffffffffffffffff166001600381111561086a57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b60026000846000191660001916815260200190815260200160002060009054906101000a900460ff16156109375782600019168b73ffffffffffffffffffffffffffffffffffffffff16600060038111156108fc57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b61097d8b8489600160038110151561094b57fe5b602002015189600160038110151561095f57fe5b602002015189600160038110151561097357fe5b6020020151611598565b15156109e75782600019168b73ffffffffffffffffffffffffffffffffffffffff16600260038111156109ac57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b610a208960056008811015156109f957fe5b60200201518a6002600881101515610a0d57fe5b602002015161169f90919063ffffffff16565b9150610a408b8b6004600681101515610a3557fe5b6020020151846116bd565b1515610aa95782600019168b73ffffffffffffffffffffffffffffffffffffffff16600380811115610a6e57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b6000821115610add57610ad18a6004600681101515610ac457fe5b60200201518c30856117d9565b1515610adc57600080fd5b5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663079dd4b76000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610b6b57600080fd5b6102c65a03f11515610b7c57600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663e6488fc9308c8c8c8c8c8c6000604051602001526040518863ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200187600660200280838360005b83811015610c39578082015181840152602081019050610c1e565b5050505090500186600860200280838360005b83811015610c67578082015181840152602081019050610c4c565b5050505090500185600160200280838360005b83811015610c95578082015181840152602081019050610c7a565b5050505090500184600360200280838360005b83811015610cc3578082015181840152602081019050610ca8565b5050505090500183600360200280838360005b83811015610cf1578082015181840152602081019050610cd6565b5050505090500182600360200280838360005b83811015610d1f578082015181840152602081019050610d04565b50505050905001975050505050505050602060405180830381600087803b1515610d4857600080fd5b6102c65a03f11515610d5957600080fd5b505050604051805190509050600060010260001916816000191614151515610d8057600080fd5b600160036000856000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f8d898986000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610e4257600080fd5b6102c65a03f11515610e5357600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8c83600190046040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1515610f0257600080fd5b6102c65a03f11515610f1357600080fd5b505050806000191683600019168c73ffffffffffffffffffffffffffffffffffffffff167f44bca8cc6f9375e3d800b6361e71fdde37e4fc86bdc3a72c4f8f69bbd19a01f360405160405180910390a48093505b505050979650505050505050565b600060149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610fe357600080fd5b600060149054906101000a900460ff16151515610fff57600080fd5b6001600060146101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060149054906101000a900460ff1615151561108a57600080fd5b83600060058110151561109957fe5b602002015173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156110d757600080fd5b6110e2848484611342565b9050600160026000836000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550806000191684600060058110151561112c57fe5b602002015173ffffffffffffffffffffffffffffffffffffffff167f07d3242876ac355520b94ab74873262d83b5b81dbd5da781118f78cee0bbe74760405160405180910390a350505050565b60026020528060005260406000206000915054906101000a900460ff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60036020528060005260406000206000915054906101000a900460ff1681565b600060010281565b611f4081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561124857600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561128457600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600083600060058110151561135357fe5b602002015184600160058110151561136757fe5b602002015185600260058110151561137b57fe5b602002015186600360058110151561138f57fe5b60200201518760046005811015156113a357fe5b60200201518760006004811015156113b757fe5b60200201518860016004811015156113cb57fe5b60200201518960026004811015156113df57fe5b60200201518a60036004811015156113f357fe5b60200201518a600060018110151561140757fe5b6020020151604051808b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c0100000000000000000000000002815260140186815260200185815260200184815260200183815260200182600019166000191681526020019a5050505050505050505050604051809103902090509392505050565b600060018560405180807f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250601c0182600019166000191681526020019150506040518091039020858585604051600081526020016040526000604051602001526040518085600019166000191681526020018460ff1660ff16815260200183600019166000191681526020018260001916600019168152602001945050505050602060405160208103908084039060008661646e5a03f1151561165d57600080fd5b50506020604051035173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614905095945050505050565b60008082840190508381101515156116b357fe5b8091505092915050565b6000806000806116ce8688306118df565b92506116da86886119d7565b9150848210806116e957508483105b156116f757600093506117cf565b6117aa8630600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561178a57600080fd5b6102c65a03f1151561179b57600080fd5b505050604051805190506118df565b9050848110156117ca576117be8686611a9a565b15156117c957600080fd5b5b600193505b5050509392505050565b60008473ffffffffffffffffffffffffffffffffffffffff166323b872dd8585856000604051602001526040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15156118ba57600080fd5b6102c65a03f115156118cb57600080fd5b505050604051805190509050949350505050565b60008373ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e611f4061ffff1685856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600088803b15156119b657600080fd5b87f115156119c357600080fd5b505050506040518051905090509392505050565b60008273ffffffffffffffffffffffffffffffffffffffff166370a08231611f4061ffff16846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600088803b1515611a7a57600080fd5b87f11515611a8757600080fd5b5050505060405180519050905092915050565b60008273ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515611b4657600080fd5b6102c65a03f11515611b5757600080fd5b50505060405180519050846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515611bef57600080fd5b6102c65a03f11515611c0057600080fd5b505050604051805190509050929150505600a165627a7a7230582051723af670e00f905ed79837151ff2f428c566a7778657a079e3873cc19020a10029", + "sourceMap": "1086:10007:2:-;;;268:5:37;247:26;;;;;;;;;;;;;;;;;;;;2040:140:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;509:10:39;501:5;;:18;;;;;;;;;;;;;;;;;;2155:17:2;2119:16;;:54;;;;;;;;;;;;;;;;;;2040:140;1086:10007;;;;;;", + "deployedSourceMap": "1086:10007:2:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;833:87:37;;;;;;;;;;;;;;2398:3551:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;247:26:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;666:85;;;;;;;;;;;;;;238:20:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6048:607:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1502:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1333:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1559:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1380:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1441:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;832:169:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;833:87:37;653:5:39;;;;;;;;;;;639:19;;:10;:19;;;631:28;;;;;;;;568:6:37;;;;;;;;;;;560:15;;;;;;;;895:5;886:6;;:14;;;;;;;;;;;;;;;;;;906:9;;;;;;;;;;833:87::o;2398:3551:2:-;2835:20;2872:30;4402:25;5343:19;416:6:37;;;;;;;;;;;415:7;407:16;;;;;;;;2905:647:2;;;;;;;;;;2962:8;2905:647;;;;;;;;2996:16;;;;;;;;;;;:27;;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2905:647;;;;;;;;3067:14;3082:1;3067:17;;;;;;;;;;;;;2905:647;;;;;;;;3130:14;3145:1;3130:17;;;;;;;;;;;;;2905:647;;;;;;;;3191:14;3206:1;3191:17;;;;;;;;;;;;;2905:647;;;;;;;;;;;;;;;;3283:11;3295:1;3283:14;;;;;;;;;;;;;2905:647;;;;3323:11;3335:1;3323:14;;;;;;;;;;;;;2905:647;;;;3375:11;3387:1;3375:14;;;;;;;;;;;;;2905:647;;;;3423:11;3435:1;3423:14;;;;;;;;;;;;;2905:647;;;3503:12;2905:25;:647::i;:::-;2872:680;;3567:15;:39;3583:22;3567:39;;;;;;;;;;;;;;;;;;;;;;;;;;;3563:192;;;3682:22;3622:83;;;3672:8;3622:83;;3637:32;3631:39;;;;;;;;3622:83;;;;;;;;;;;;1433:1;1425:10;;3719:25;;;;3563:192;3769:18;:42;3788:22;3769:42;;;;;;;;;;;;;;;;;;;;;;;;;;;3765:190;;;3882:22;3827:78;;;3872:8;3827:78;;3842:27;3836:34;;;;;;;;3827:78;;;;;;;;;;;;1433:1;1425:10;;3919:25;;;;3765:190;3970:168;4000:8;4022:22;4058:11;4070:1;4058:14;;;;;;;;;;;;;4086:11;4098:1;4086:14;;;;;;;;;;;;;4114:11;4126:1;4114:14;;;;;;;;;;;;;3970:16;:168::i;:::-;3969:169;3965:384;;;4263:22;4154:145;;;4237:8;4154:145;;4186:32;4180:39;;;;;;;;4154:145;;;;;;;;;;;;1433:1;1425:10;;4313:25;;;;3965:384;4430:34;4449:11;4461:1;4449:14;;;;;;;;;;;;;4430:11;4442:1;4430:14;;;;;;;;;;;;;:18;;:34;;;;:::i;:::-;4402:62;;4480:129;4526:8;4548:14;4563:1;4548:17;;;;;;;;;;;;;4579:20;4480:32;:129::i;:::-;4479:130;4475:362;;;4751:22;4625:162;;;4725:8;4625:162;;4657:49;4651:56;;;;;;;;4625:162;;;;;;;;;;;;1433:1;1425:10;;4801:25;;;;4475:362;4935:1;4912:20;:24;4908:276;;;4977:182;5017:14;5032:1;5017:17;;;;;;;;;;;;;5056:8;5094:4;5121:20;4977:18;:182::i;:::-;4952:221;;;;;;;;4908:276;5365:16;;;;;;;;;;;:27;;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:43;;;5430:4;5449:14;5477:11;5502:12;5528:11;5553;5578;5365:234;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5343:256:2;;1433:1;1425:10;;5618:33;;;:11;:33;;;;;5610:42;;;;;;;;5705:4;5663:15;:39;5679:22;5663:39;;;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;5768:16;;;;;;;;;;;:26;;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:37;;;5806:8;5824:11;5816:20;;;5768:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5901:11;5848:65;;;5877:22;5848:65;;;5867:8;5848:65;;;;;;;;;;;;5931:11;5924:18;;429:1:37;2398:3551:2;;;;;;;;;;;;:::o;247:26:37:-;;;;;;;;;;;;;:::o;666:85::-;653:5:39;;;;;;;;;;;639:19;;:10;:19;;;631:28;;;;;;;;416:6:37;;;;;;;;;;;415:7;407:16;;;;;;;;729:4;720:6;;:13;;;;;;;;;;;;;;;;;;739:7;;;;;;;;;;666:85::o;238:20:39:-;;;;;;;;;;;;;:::o;6048:607:2:-;6342:30;416:6:37;;;;;;;;;;;415:7;407:16;;;;;;;;6309:19:2;6329:1;6309:22;;;;;;;;;;;;;6295:36;;:10;:36;;;6287:45;;;;;;;;6375:135;6414:19;6447:16;6477:23;6375:25;:135::i;:::-;6342:168;;6565:4;6520:18;:42;6539:22;6520:42;;;;;;;;;;;;;;;;;;:49;;;;;;;;;;;;;;;;;;6625:22;6579:69;;;6601:19;6621:1;6601:22;;;;;;;;;;;;;6579:69;;;;;;;;;;;;6048:607;;;;:::o;1502:51::-;;;;;;;;;;;;;;;;;;;;;;:::o;1333:40::-;;;;;;;;;;;;;:::o;1559:48::-;;;;;;;;;;;;;;;;;;;;;;:::o;1380:55::-;1433:1;1425:10;;1380:55;:::o;1441:54::-;1491:4;1441:54;:::o;832:169:39:-;653:5;;;;;;;;;;;639:19;;:10;:19;;;631:28;;;;;;;;928:1;908:22;;:8;:22;;;;900:31;;;;;;;;965:8;937:37;;958:5;;;;;;;;;;;937:37;;;;;;;;;;;;988:8;980:5;;:16;;;;;;;;;;;;;;;;;;832:169;:::o;6845:865:2:-;7051:31;7128:19;7148:1;7128:22;;;;;;;;;;;;;7176:19;7196:1;7176:22;;;;;;;;;;;;;7235:19;7255:1;7235:22;;;;;;;;;;;;;7299:19;7319:1;7299:22;;;;;;;;;;;;;7361:19;7381:1;7361:22;;;;;;;;;;;;;7424:16;7441:1;7424:19;;;;;;;;;;;;;7465:16;7482:1;7465:19;;;;;;;;;;;;;7518:16;7535:1;7518:19;;;;;;;;;;;;;7567:16;7584:1;7567:19;;;;;;;;;;;;;7638:23;7662:1;7638:26;;;;;;;;;;;;;7105:598;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7098:605;;6845:865;;;;;:::o;9165:360::-;9345:11;9389:129;9458:4;9412:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9477:1;9492;9507;9389:129;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9379:139;;:6;:139;;;9372:146;;9165:360;;;;;;;:::o;1007:129:38:-;1065:7;1080:9;1096:1;1092;:5;1080:17;;1115:1;1110;:6;;1103:14;;;;;;1130:1;1123:8;;1007:129;;;;;:::o;7921:1107:2:-;8096:37;8222:19;8307:20;8596:27;8244:53;8257:14;8273:8;8291:4;8244:12;:53::i;:::-;8222:75;;8330:36;8341:14;8357:8;8330:10;:36::i;:::-;8307:59;;8399:20;8381:15;:38;:79;;;;8440:20;8423:14;:37;8381:79;8377:122;;;8483:5;8476:12;;;;8377:122;8626:128;8652:14;8688:4;8707:16;;;;;;;;;;;:35;;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8626:12;:128::i;:::-;8596:158;;8881:20;8856:22;:45;8852:148;;;8925:63;8951:14;8967:20;8925:25;:63::i;:::-;8917:72;;;;;;;;8852:148;9017:4;9010:11;;7921:1107;;;;;;;;;:::o;10843:248::-;11001:13;11043:6;11037:26;;;11064:5;11071:3;11076:7;11037:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11030:54;;10843:248;;;;;;:::o;10004:337::-;10150:15;10238:5;10232:22;;;1491:4;10232:52;;10298:5;10317:7;10232:102;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10225:109;;10004:337;;;;;:::o;9621:265::-;9740:13;9826:5;9820:22;;;1491:4;9820:52;;9873:5;9820:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9813:66;;9621:265;;;;:::o;10458:272::-;10577:13;10619:5;10613:20;;;10655:16;;;;;;;;;;;:35;;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10707:6;10613:110;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10606:117;;10458:272;;;;:::o", + "source": "/*\n\n Copyright 2017 Dharma Labs Inc.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n*/\n\npragma solidity 0.4.18;\n\nimport \"./ContractRegistry.sol\";\nimport \"zeppelin-solidity/contracts/lifecycle/Pausable.sol\";\nimport \"zeppelin-solidity/contracts/math/SafeMath.sol\";\nimport \"zeppelin-solidity/contracts/token/ERC20/ERC20.sol\";\n\n\n/**\n * The CreditorProxy is a thin wrapper around the DebtKernel\n * It implements creditor-driven loans as specified by DIP-1\n *\n * Authors: Bo Henderson & Shivani Gupta & Dharma Team\n * DIP: https://github.com/dharmaprotocol/DIPs/issues/1\n */\ncontract CreditorProxy is Pausable {\n using SafeMath for uint;\n\n enum Errors {\n DEBT_OFFER_CANCELLED,\n DEBT_OFFER_ALREADY_FILLED,\n DEBT_OFFER_NON_CONSENSUAL,\n CREDITOR_BALANCE_OR_ALLOWANCE_INSUFFICIENT\n }\n\n ContractRegistry public contractRegistry;\n\n bytes32 constant public NULL_ISSUANCE_HASH = bytes32(0);\n uint16 constant public EXTERNAL_QUERY_GAS_LIMIT = 8000;\n\n mapping (bytes32 => bool) public debtOfferCancelled;\n mapping (bytes32 => bool) public debtOfferFilled;\n\n event LogDebtOfferCancelled(\n address indexed _creditor,\n bytes32 indexed _creditorCommitmentHash\n );\n\n event LogDebtOfferFilled(\n address indexed _creditor,\n bytes32 indexed _creditorCommitmentHash,\n bytes32 indexed _agreementId\n );\n\n event LogError(\n uint8 indexed _errorId,\n address indexed _creditor,\n bytes32 indexed _creditorCommitmentHash\n );\n\n function CreditorProxy(address _contractRegistry)\n public\n {\n contractRegistry = ContractRegistry(_contractRegistry);\n }\n\n /*\n * Submit debt order to DebtKernel if it is consensual with creditor's request\n * Creditor signature in arguments is only used internally,\n * It will not be verified by the Debt Kernel\n */\n function fillDebtOffer(\n address creditor,\n address[6] orderAddresses, // repayment-router, debtor, uw, tc, p-token, relayer\n uint[8] orderValues, // rr, salt, pa, uwFee, rFee, cFee, dFee, expTime\n bytes32[1] orderBytes32, // tcParams\n uint8[3] signaturesV, // debtV, credV, uwV\n bytes32[3] signaturesR,\n bytes32[3] signaturesS\n )\n public\n whenNotPaused\n returns (bytes32 _agreementId)\n {\n\n bytes32 creditorCommitmentHash = getCreditorCommitmentHash(\n [\n creditor,\n address(contractRegistry.debtKernel()), // debt kernel version\n orderAddresses[0], // repayment router version\n orderAddresses[3], // terms contract address\n orderAddresses[4] // principal token adddress\n\n ],\n [\n orderValues[1], // salt\n orderValues[2], // principal amount\n orderValues[5], // creditor fee\n orderValues[7] // commitmentExpirationTimestampInSec\n ],\n orderBytes32 // termsContractParameters\n );\n\n if (debtOfferFilled[creditorCommitmentHash]) {\n LogError(uint8(Errors.DEBT_OFFER_ALREADY_FILLED), creditor, creditorCommitmentHash);\n return NULL_ISSUANCE_HASH;\n }\n\n if (debtOfferCancelled[creditorCommitmentHash]) {\n LogError(uint8(Errors.DEBT_OFFER_CANCELLED), creditor, creditorCommitmentHash);\n return NULL_ISSUANCE_HASH;\n }\n\n if (!isValidSignature(\n creditor,\n creditorCommitmentHash,\n signaturesV[1],\n signaturesR[1],\n signaturesS[1]\n )) {\n LogError(\n uint8(Errors.DEBT_OFFER_NON_CONSENSUAL),\n creditor,\n creditorCommitmentHash\n );\n return NULL_ISSUANCE_HASH;\n }\n\n // principal amount + creditor fee\n uint totalCreditorPayment = orderValues[2].add(orderValues[5]);\n\n if (!hasSufficientBalanceAndAllowance(\n creditor,\n orderAddresses[4],\n totalCreditorPayment\n )) {\n LogError(\n uint8(Errors.CREDITOR_BALANCE_OR_ALLOWANCE_INSUFFICIENT),\n creditor,\n creditorCommitmentHash\n );\n return NULL_ISSUANCE_HASH;\n }\n\n // Transfer principal from creditor to CreditorProxy\n if (totalCreditorPayment > 0) {\n require(\n transferTokensFrom(\n orderAddresses[4],\n creditor,\n address(this),\n totalCreditorPayment\n )\n );\n }\n\n // Grant allowance to the TokenTransferProxy for this contract.\n\n\n // Fill debt order with this contract playing the role of creditor\n bytes32 agreementId = contractRegistry.debtKernel().fillDebtOrder(\n address(this),\n orderAddresses,\n orderValues,\n orderBytes32,\n signaturesV,\n signaturesR,\n signaturesS\n );\n\n require(agreementId != NULL_ISSUANCE_HASH);\n\n debtOfferFilled[creditorCommitmentHash] = true;\n\n // transfer debt token to real creditor\n contractRegistry.debtToken().transfer(creditor, uint256(agreementId));\n\n LogDebtOfferFilled(creditor, creditorCommitmentHash, agreementId);\n\n return agreementId;\n }\n\n /**\n * Allows creditor to prevent a debt offer from being used in the future\n */\n function cancelDebtOffer(\n address[5] commitmentAddresses,\n uint[4] commitmentValues,\n bytes32[1] termsContractParameters\n )\n public\n whenNotPaused\n {\n // sender must be the creditor\n require(msg.sender == commitmentAddresses[0]);\n bytes32 creditorCommitmentHash = getCreditorCommitmentHash(\n commitmentAddresses,\n commitmentValues,\n termsContractParameters\n );\n debtOfferCancelled[creditorCommitmentHash] = true;\n LogDebtOfferCancelled(commitmentAddresses[0], creditorCommitmentHash);\n }\n\n ////////////////////////\n // INTERNAL FUNCTIONS //\n ////////////////////////\n\n /**\n * Returns the messaged signed by the creditor to indicate their commitment\n */\n function getCreditorCommitmentHash(\n address[5] commitmentAddresses,\n uint[4] commitmentValues,\n bytes32[1] termsContractParameters\n )\n internal\n pure\n returns (bytes32 _creditorCommitmentHash)\n {\n return keccak256(\n commitmentAddresses[0], // creditor\n commitmentAddresses[1], // debt kernel version\n commitmentAddresses[2], // repayment router version\n commitmentAddresses[3], // terms contract address\n commitmentAddresses[4], // principal token address\n commitmentValues[0], // salt\n commitmentValues[1], // principal amount\n commitmentValues[2], // creditor fee\n commitmentValues[3], // commitmentExpirationTimestampInSec\n termsContractParameters[0] // terms contract parameters\n );\n }\n\n\n /**\n * Assert that the creditor has a sufficient token balance and has granted the token transfer\n * proxy contract sufficient allowance to suffice for the principal and creditor fee.\n */\n function hasSufficientBalanceAndAllowance(\n address creditor,\n address principalToken,\n uint totalCreditorPayment\n )\n internal\n returns (bool _isBalanceAndAllowanceSufficient)\n {\n // The allowance that this contract has for a creditor's tokens.\n uint proxyAllowance = getAllowance(principalToken, creditor, address(this));\n uint creditorBalance = getBalance(principalToken, creditor);\n\n if (creditorBalance < totalCreditorPayment || proxyAllowance < totalCreditorPayment) {\n return false;\n }\n\n // The allowance that the token transfer proxy has for this contract's tokens.\n uint tokenTransferAllowance = getAllowance(\n principalToken,\n address(this),\n contractRegistry.tokenTransferProxy()\n );\n\n // Ensure the token transfer proxy can transfer tokens from the creditor proxy\n if (tokenTransferAllowance < totalCreditorPayment) {\n require(setTokenTransferAllowance(principalToken, totalCreditorPayment));\n }\n\n return true;\n }\n\n /**\n * Given a hashed message, a signer's address, and a signature,\n * returns whether the signature is valid.\n */\n function isValidSignature(\n address signer,\n bytes32 hash,\n uint8 v,\n bytes32 r,\n bytes32 s\n )\n internal\n pure\n returns (bool _valid)\n {\n return signer == ecrecover(\n keccak256(\"\\x19Ethereum Signed Message:\\n32\", hash),\n v,\n r,\n s\n );\n }\n\n /**\n * Helper function for querying an address' balance on a given token.\n */\n function getBalance(\n address token,\n address owner\n )\n internal\n view\n returns (uint _balance)\n {\n // Limit gas to prevent reentrancy.\n return ERC20(token).balanceOf.gas(EXTERNAL_QUERY_GAS_LIMIT)(owner);\n }\n\n /**\n * Helper function for querying this contract's allowance for transferring the given token.\n */\n function getAllowance(\n address token,\n address owner,\n address granter\n )\n internal\n view\n returns (uint _allowance)\n {\n // Limit gas to prevent reentrancy.\n return ERC20(token).allowance.gas(EXTERNAL_QUERY_GAS_LIMIT)(\n owner,\n granter\n );\n }\n\n /**\n * Helper function for approving this address' allowance to Dharma's token transfer proxy.\n */\n function setTokenTransferAllowance(\n address token,\n uint amount\n )\n internal\n returns (bool _success)\n {\n return ERC20(token).approve(\n address(contractRegistry.tokenTransferProxy()),\n amount\n );\n }\n\n\n /**\n * Helper function for transferring a specified amount of tokens between two parties.\n */\n function transferTokensFrom(\n address _token,\n address _from,\n address _to,\n uint _amount\n )\n internal\n returns (bool _success)\n {\n return ERC20(_token).transferFrom(_from, _to, _amount);\n }\n}\n", "sourcePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/CreditorProxy.sol", "ast": { "attributes": { @@ -8923,7 +8923,7 @@ } }, "links": {}, - "address": "0xd9b303da12a84a405c482c91592b5bd00a2317e2" + "address": "0x384e128de8bc07a6ec4b09b3c09052037db23af1" }, "70": { "events": { @@ -9023,5 +9023,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:53:24.855Z" + "updatedAt": "2018-10-09T23:24:24.866Z" } \ No newline at end of file diff --git a/artifacts/json/DebtKernel.json b/artifacts/json/DebtKernel.json index c167c09b..18df4c19 100644 --- a/artifacts/json/DebtKernel.json +++ b/artifacts/json/DebtKernel.json @@ -436,7 +436,7 @@ }, { "attributes": { - "SourceUnit": 3541, + "SourceUnit": 3549, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtToken.sol", "file": "./DebtToken.sol", "scope": 2639, @@ -451,7 +451,7 @@ }, { "attributes": { - "SourceUnit": 4758, + "SourceUnit": 4766, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TermsContract.sol", "file": "./TermsContract.sol", "scope": 2639, @@ -466,7 +466,7 @@ }, { "attributes": { - "SourceUnit": 5207, + "SourceUnit": 5215, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TokenTransferProxy.sol", "file": "./TokenTransferProxy.sol", "scope": 2639, @@ -17682,7 +17682,7 @@ } }, "links": {}, - "address": "0x4a42fbdae13791341361f9d2dd69873d83e4b816" + "address": "0x24db52da9748fbb889a5bcc4468b32fbc9172348" }, "70": { "events": { @@ -17814,5 +17814,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:51:53.185Z" + "updatedAt": "2018-10-09T23:22:13.505Z" } \ No newline at end of file diff --git a/artifacts/json/DebtRegistry.json b/artifacts/json/DebtRegistry.json index 048ed442..54b1f638 100644 --- a/artifacts/json/DebtRegistry.json +++ b/artifacts/json/DebtRegistry.json @@ -571,7 +571,7 @@ }, { "attributes": { - "SourceUnit": 6272, + "SourceUnit": 6280, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/libraries/PermissionsLib.sol", "file": "./libraries/PermissionsLib.sol", "scope": 3167, @@ -7984,7 +7984,7 @@ } }, "links": {}, - "address": "0x0db51854d2b302e35d8f0f7a4fabb2415f9e42a5" + "address": "0x3940a1aa50eac96c2b0f47befb1443f5636649ab" }, "70": { "events": { @@ -8164,5 +8164,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:51:53.167Z" + "updatedAt": "2018-10-09T23:22:13.473Z" } \ No newline at end of file diff --git a/artifacts/json/DebtToken.json b/artifacts/json/DebtToken.json index 7112b83f..903a52fe 100644 --- a/artifacts/json/DebtToken.json +++ b/artifacts/json/DebtToken.json @@ -768,7 +768,7 @@ }, { "attributes": { - "SourceUnit": 3159, + "SourceUnit": 3167, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtRegistry.sol", "file": "./DebtRegistry.sol", "scope": 3549, @@ -783,7 +783,7 @@ }, { "attributes": { - "SourceUnit": 3551, + "SourceUnit": 3559, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/ERC165.sol", "file": "./ERC165.sol", "scope": 3549, @@ -798,7 +798,7 @@ }, { "attributes": { - "SourceUnit": 6272, + "SourceUnit": 6280, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/libraries/PermissionsLib.sol", "file": "./libraries/PermissionsLib.sol", "scope": 3549, @@ -6202,7 +6202,7 @@ } }, "links": {}, - "address": "0xa99e0834ce4ac707371cbd6d938773b660552b91" + "address": "0xf0b37b0f7e0715b5a7d19ffb2259bb9a8caa0720" }, "70": { "events": { @@ -6341,5 +6341,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:53:04.888Z" + "updatedAt": "2018-10-09T23:23:58.036Z" } \ No newline at end of file diff --git a/artifacts/json/DeprecatedERC721.json b/artifacts/json/DeprecatedERC721.json index d76c06de..c1fbbf80 100644 --- a/artifacts/json/DeprecatedERC721.json +++ b/artifacts/json/DeprecatedERC721.json @@ -789,5 +789,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.433Z" + "updatedAt": "2018-10-09T23:15:05.489Z" } \ No newline at end of file diff --git a/artifacts/json/DharmaMultiSigWallet.json b/artifacts/json/DharmaMultiSigWallet.json index 7b6035e6..9b392686 100644 --- a/artifacts/json/DharmaMultiSigWallet.json +++ b/artifacts/json/DharmaMultiSigWallet.json @@ -657,7 +657,7 @@ }, { "attributes": { - "SourceUnit": 13919, + "SourceUnit": 13927, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/wallet/MultiSigWallet.sol", "file": "./MultiSigWallet.sol", "scope": 12937, @@ -5191,7 +5191,7 @@ "42": { "events": {}, "links": {}, - "address": "0x73b8e624c2e0e55e7eaf5ff669a7c63f95781bb4" + "address": "0xa721f5c413fc06104e2544f0413075bfc94d8363" }, "70": { "events": {}, @@ -5200,5 +5200,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:53:24.844Z" + "updatedAt": "2018-10-09T23:24:24.856Z" } \ No newline at end of file diff --git a/artifacts/json/DummyContract.json b/artifacts/json/DummyContract.json index b15a666d..577d1488 100644 --- a/artifacts/json/DummyContract.json +++ b/artifacts/json/DummyContract.json @@ -216,7 +216,7 @@ }, { "attributes": { - "SourceUnit": 6272, + "SourceUnit": 6280, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/libraries/PermissionsLib.sol", "file": "../libraries/PermissionsLib.sol", "scope": 9944, @@ -1769,7 +1769,7 @@ "42": { "events": {}, "links": {}, - "address": "0x64481c13201a7baabd3a440eeba57170336f0e70" + "address": "0x6fc77e8aa556b15ac07e61ebc0a56a4ff636eee9" }, "70": { "events": {}, @@ -1778,5 +1778,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:01.258Z" + "updatedAt": "2018-10-09T23:19:45.788Z" } \ No newline at end of file diff --git a/artifacts/json/DummyToken.json b/artifacts/json/DummyToken.json index f6a09e18..a2526bce 100644 --- a/artifacts/json/DummyToken.json +++ b/artifacts/json/DummyToken.json @@ -2152,5 +2152,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:48:16.849Z" + "updatedAt": "2018-10-09T23:17:48.460Z" } \ No newline at end of file diff --git a/artifacts/json/ERC165.json b/artifacts/json/ERC165.json index b58933db..f8860473 100644 --- a/artifacts/json/ERC165.json +++ b/artifacts/json/ERC165.json @@ -171,5 +171,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.420Z" + "updatedAt": "2018-10-09T23:15:05.470Z" } \ No newline at end of file diff --git a/artifacts/json/ERC20.json b/artifacts/json/ERC20.json index ff4b5980..04ae070e 100644 --- a/artifacts/json/ERC20.json +++ b/artifacts/json/ERC20.json @@ -741,5 +741,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.433Z" + "updatedAt": "2018-10-09T23:15:05.489Z" } \ No newline at end of file diff --git a/artifacts/json/ERC20Basic.json b/artifacts/json/ERC20Basic.json index c8fd4704..01ff4d4c 100644 --- a/artifacts/json/ERC20Basic.json +++ b/artifacts/json/ERC20Basic.json @@ -510,5 +510,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.427Z" + "updatedAt": "2018-10-09T23:15:05.486Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721.json b/artifacts/json/ERC721.json index 979c1171..0c283839 100644 --- a/artifacts/json/ERC721.json +++ b/artifacts/json/ERC721.json @@ -1110,5 +1110,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.439Z" + "updatedAt": "2018-10-09T23:15:05.493Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721Basic.json b/artifacts/json/ERC721Basic.json index 284717af..5862045e 100644 --- a/artifacts/json/ERC721Basic.json +++ b/artifacts/json/ERC721Basic.json @@ -1663,5 +1663,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.452Z" + "updatedAt": "2018-10-09T23:15:05.501Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721BasicToken.json b/artifacts/json/ERC721BasicToken.json index 1b7e3e95..5aab3489 100644 --- a/artifacts/json/ERC721BasicToken.json +++ b/artifacts/json/ERC721BasicToken.json @@ -8709,5 +8709,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.625Z" + "updatedAt": "2018-10-09T23:15:05.786Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721CollateralizedSimpleInterestTermsContract.json b/artifacts/json/ERC721CollateralizedSimpleInterestTermsContract.json index d2894ee4..226d9cda 100644 --- a/artifacts/json/ERC721CollateralizedSimpleInterestTermsContract.json +++ b/artifacts/json/ERC721CollateralizedSimpleInterestTermsContract.json @@ -429,7 +429,7 @@ }, { "attributes": { - "SourceUnit": 6053, + "SourceUnit": 6061, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/examples/SimpleInterestTermsContract.sol", "file": "./SimpleInterestTermsContract.sol", "scope": 5357, @@ -444,7 +444,7 @@ }, { "attributes": { - "SourceUnit": 4167, + "SourceUnit": 4175, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/ERC721Collateralizer.sol", "file": "../ERC721Collateralizer.sol", "scope": 5357, @@ -1445,7 +1445,7 @@ "42": { "events": {}, "links": {}, - "address": "0xe44c8dbcb6dab51c4d5291788ec3fb82d2fbad12" + "address": "0x043e8c93aa3f535fb58e8280cead1d87100d8849" }, "70": { "events": {}, @@ -1454,5 +1454,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:53:04.862Z" + "updatedAt": "2018-10-09T23:23:58.011Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721Collateralizer.json b/artifacts/json/ERC721Collateralizer.json index 4fd8da94..bc7432ca 100644 --- a/artifacts/json/ERC721Collateralizer.json +++ b/artifacts/json/ERC721Collateralizer.json @@ -516,7 +516,7 @@ }, { "attributes": { - "SourceUnit": 4758, + "SourceUnit": 4766, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TermsContract.sol", "file": "./TermsContract.sol", "scope": 4175, @@ -531,7 +531,7 @@ }, { "attributes": { - "SourceUnit": 3159, + "SourceUnit": 3167, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtRegistry.sol", "file": "./DebtRegistry.sol", "scope": 4175, @@ -561,7 +561,7 @@ }, { "attributes": { - "SourceUnit": 4458, + "SourceUnit": 4466, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/ERC721TokenRegistry.sol", "file": "./ERC721TokenRegistry.sol", "scope": 4175, @@ -576,7 +576,7 @@ }, { "attributes": { - "SourceUnit": 6272, + "SourceUnit": 6280, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/libraries/PermissionsLib.sol", "file": "./libraries/PermissionsLib.sol", "scope": 4175, @@ -9498,7 +9498,7 @@ } }, "links": {}, - "address": "0xf3abfc01a071e8bbf3f820c2629510b9bc5e3229" + "address": "0xa4408bcdbba1720d6973563a3c24965534c0d7b2" }, "70": { "events": { @@ -9647,5 +9647,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:53:04.896Z" + "updatedAt": "2018-10-09T23:23:58.045Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721Enumerable.json b/artifacts/json/ERC721Enumerable.json index 0d273dce..00c0a7db 100644 --- a/artifacts/json/ERC721Enumerable.json +++ b/artifacts/json/ERC721Enumerable.json @@ -1063,5 +1063,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.440Z" + "updatedAt": "2018-10-09T23:15:05.493Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721Metadata.json b/artifacts/json/ERC721Metadata.json index 335493ab..f4377eb1 100644 --- a/artifacts/json/ERC721Metadata.json +++ b/artifacts/json/ERC721Metadata.json @@ -1054,5 +1054,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.441Z" + "updatedAt": "2018-10-09T23:15:05.494Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721Receiver.json b/artifacts/json/ERC721Receiver.json index 7060df18..955dbdeb 100644 --- a/artifacts/json/ERC721Receiver.json +++ b/artifacts/json/ERC721Receiver.json @@ -274,5 +274,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.427Z" + "updatedAt": "2018-10-09T23:15:05.486Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721Token.json b/artifacts/json/ERC721Token.json index 419f43a3..d4e2a82f 100644 --- a/artifacts/json/ERC721Token.json +++ b/artifacts/json/ERC721Token.json @@ -5399,7 +5399,7 @@ "42": { "events": {}, "links": {}, - "address": "0xebc1a917d464d779ad5eba480de9935bf4ce9760" + "address": "0x3e9171ebba163b92a271144b2fe907b10c9a5131" }, "70": { "events": {}, @@ -5408,5 +5408,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:01.301Z" + "updatedAt": "2018-10-09T23:19:45.827Z" } \ No newline at end of file diff --git a/artifacts/json/ERC721TokenRegistry.json b/artifacts/json/ERC721TokenRegistry.json index b90e031d..b0b9a184 100644 --- a/artifacts/json/ERC721TokenRegistry.json +++ b/artifacts/json/ERC721TokenRegistry.json @@ -4183,7 +4183,7 @@ } }, "links": {}, - "address": "0xd1ec79ec665dddf7a65024c44dd75f625e88271f" + "address": "0xa6ff31840df1b2644f443410170412ed402df1bc" }, "70": { "events": { @@ -4210,5 +4210,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:53:04.870Z" + "updatedAt": "2018-10-09T23:23:58.017Z" } \ No newline at end of file diff --git a/artifacts/json/GeneScienceInterface.json b/artifacts/json/GeneScienceInterface.json index 3289d871..0199fd31 100644 --- a/artifacts/json/GeneScienceInterface.json +++ b/artifacts/json/GeneScienceInterface.json @@ -51683,5 +51683,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.863Z" + "updatedAt": "2018-10-09T23:15:06.621Z" } \ No newline at end of file diff --git a/artifacts/json/IncompatibleTermsContract.json b/artifacts/json/IncompatibleTermsContract.json index 3618cdfe..727aa889 100644 --- a/artifacts/json/IncompatibleTermsContract.json +++ b/artifacts/json/IncompatibleTermsContract.json @@ -151,7 +151,7 @@ }, { "attributes": { - "SourceUnit": 4758, + "SourceUnit": 4766, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TermsContract.sol", "file": "../../TermsContract.sol", "scope": 12594, @@ -987,7 +987,7 @@ "42": { "events": {}, "links": {}, - "address": "0xc8d55fd3717f8c3f8d31456504ab84b11b80520e" + "address": "0x0c5fdac9b1fd226bc853375a2f8c68fcdde5d194" }, "70": { "events": {}, @@ -996,5 +996,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:25.365Z" + "updatedAt": "2018-10-09T23:20:25.126Z" } \ No newline at end of file diff --git a/artifacts/json/KittiesERC721.json b/artifacts/json/KittiesERC721.json index 1f18bb5d..d76cd445 100644 --- a/artifacts/json/KittiesERC721.json +++ b/artifacts/json/KittiesERC721.json @@ -51815,5 +51815,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.810Z" + "updatedAt": "2018-10-09T23:15:06.810Z" } \ No newline at end of file diff --git a/artifacts/json/KittiesERC721Metadata.json b/artifacts/json/KittiesERC721Metadata.json index 76b05352..05da4bef 100644 --- a/artifacts/json/KittiesERC721Metadata.json +++ b/artifacts/json/KittiesERC721Metadata.json @@ -51669,5 +51669,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.886Z" + "updatedAt": "2018-10-09T23:15:06.098Z" } \ No newline at end of file diff --git a/artifacts/json/KittiesOwnable.json b/artifacts/json/KittiesOwnable.json index ad0d1c79..a26f61b1 100644 --- a/artifacts/json/KittiesOwnable.json +++ b/artifacts/json/KittiesOwnable.json @@ -51676,5 +51676,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.914Z" + "updatedAt": "2018-10-09T23:15:06.145Z" } \ No newline at end of file diff --git a/artifacts/json/KittiesPausable.json b/artifacts/json/KittiesPausable.json index 1ae35d45..ca969678 100644 --- a/artifacts/json/KittiesPausable.json +++ b/artifacts/json/KittiesPausable.json @@ -51724,5 +51724,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.995Z" + "updatedAt": "2018-10-09T23:15:06.192Z" } \ No newline at end of file diff --git a/artifacts/json/KittyAccessControl.json b/artifacts/json/KittyAccessControl.json index e721103a..bfcdaa73 100644 --- a/artifacts/json/KittyAccessControl.json +++ b/artifacts/json/KittyAccessControl.json @@ -51770,5 +51770,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.953Z" + "updatedAt": "2018-10-09T23:15:06.235Z" } \ No newline at end of file diff --git a/artifacts/json/KittyAuction.json b/artifacts/json/KittyAuction.json index bffd0e59..158b53dd 100644 --- a/artifacts/json/KittyAuction.json +++ b/artifacts/json/KittyAuction.json @@ -52525,5 +52525,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:36.264Z" + "updatedAt": "2018-10-09T23:15:06.992Z" } \ No newline at end of file diff --git a/artifacts/json/KittyBase.json b/artifacts/json/KittyBase.json index bb533635..e7768587 100644 --- a/artifacts/json/KittyBase.json +++ b/artifacts/json/KittyBase.json @@ -51956,5 +51956,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:36.187Z" + "updatedAt": "2018-10-09T23:15:06.304Z" } \ No newline at end of file diff --git a/artifacts/json/KittyBreeding.json b/artifacts/json/KittyBreeding.json index cb6fb5f6..fdfa739f 100644 --- a/artifacts/json/KittyBreeding.json +++ b/artifacts/json/KittyBreeding.json @@ -52418,5 +52418,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:36.217Z" + "updatedAt": "2018-10-09T23:15:06.903Z" } \ No newline at end of file diff --git a/artifacts/json/KittyCore.json b/artifacts/json/KittyCore.json index 09b172c6..95894b85 100644 --- a/artifacts/json/KittyCore.json +++ b/artifacts/json/KittyCore.json @@ -52746,7 +52746,7 @@ "42": { "events": {}, "links": {}, - "address": "0x116a62dad694e694f17cbccc917739c3f0c51666" + "address": "0xb130247732a351dbe4f6a463d0c9dd045e9d5f9d" }, "70": { "events": {}, @@ -52755,5 +52755,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:53:04.937Z" + "updatedAt": "2018-10-09T23:23:58.086Z" } \ No newline at end of file diff --git a/artifacts/json/KittyMinting.json b/artifacts/json/KittyMinting.json index 537e8ea4..8f3a4353 100644 --- a/artifacts/json/KittyMinting.json +++ b/artifacts/json/KittyMinting.json @@ -52641,5 +52641,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:36.305Z" + "updatedAt": "2018-10-09T23:15:07.045Z" } \ No newline at end of file diff --git a/artifacts/json/KittyOwnership.json b/artifacts/json/KittyOwnership.json index 81c68859..ee45658e 100644 --- a/artifacts/json/KittyOwnership.json +++ b/artifacts/json/KittyOwnership.json @@ -52205,5 +52205,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:36.421Z" + "updatedAt": "2018-10-09T23:15:06.755Z" } \ No newline at end of file diff --git a/artifacts/json/Migrations.json b/artifacts/json/Migrations.json index 24aea637..ce2a6426 100644 --- a/artifacts/json/Migrations.json +++ b/artifacts/json/Migrations.json @@ -818,7 +818,7 @@ "42": { "events": {}, "links": {}, - "address": "0x4c4bd0258c47645a61a55c66c40168e61dcb19b2" + "address": "0x4ebdc600ff9d56be607c51ef918f0dcec4c0ebb8" }, "70": { "events": {}, @@ -827,5 +827,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:53:24.835Z" + "updatedAt": "2018-10-09T23:24:24.847Z" } \ No newline at end of file diff --git a/artifacts/json/MintableERC721Token.json b/artifacts/json/MintableERC721Token.json index 844a38e3..37774fdd 100644 --- a/artifacts/json/MintableERC721Token.json +++ b/artifacts/json/MintableERC721Token.json @@ -482,7 +482,7 @@ }, { "attributes": { - "SourceUnit": 3551, + "SourceUnit": 3559, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/ERC165.sol", "file": "../ERC165.sol", "scope": 10001, @@ -1236,7 +1236,7 @@ "42": { "events": {}, "links": {}, - "address": "0x67b0b219faf38b7a862c480213b2860e645c264f" + "address": "0x574bacd5fb68c4e004546fe87b108bb6f5240842" }, "70": { "events": {}, @@ -1245,5 +1245,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:53:04.860Z" + "updatedAt": "2018-10-09T23:23:58.009Z" } \ No newline at end of file diff --git a/artifacts/json/MintableToken.json b/artifacts/json/MintableToken.json index ce7e439e..d37c9384 100644 --- a/artifacts/json/MintableToken.json +++ b/artifacts/json/MintableToken.json @@ -1664,5 +1664,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.471Z" + "updatedAt": "2018-10-09T23:15:05.514Z" } \ No newline at end of file diff --git a/artifacts/json/MockCollateralizedTermsContract.json b/artifacts/json/MockCollateralizedTermsContract.json index 274e2827..2da29853 100644 --- a/artifacts/json/MockCollateralizedTermsContract.json +++ b/artifacts/json/MockCollateralizedTermsContract.json @@ -371,7 +371,7 @@ }, { "attributes": { - "SourceUnit": 10693, + "SourceUnit": 10701, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 10516, @@ -5722,7 +5722,7 @@ "42": { "events": {}, "links": {}, - "address": "0x67d4984f33adaa13b879dc532a49bc7a46140353" + "address": "0x261a62f4f3f50cedb05ba05236e04f1a67598352" }, "70": { "events": {}, @@ -5731,5 +5731,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:01.318Z" + "updatedAt": "2018-10-09T23:19:45.835Z" } \ No newline at end of file diff --git a/artifacts/json/MockContract.json b/artifacts/json/MockContract.json index 02a2223b..8a82e422 100644 --- a/artifacts/json/MockContract.json +++ b/artifacts/json/MockContract.json @@ -2543,5 +2543,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.500Z" + "updatedAt": "2018-10-09T23:15:05.525Z" } \ No newline at end of file diff --git a/artifacts/json/MockDebtKernel.json b/artifacts/json/MockDebtKernel.json index f4247e5c..32d1885a 100644 --- a/artifacts/json/MockDebtKernel.json +++ b/artifacts/json/MockDebtKernel.json @@ -186,7 +186,7 @@ }, { "attributes": { - "SourceUnit": 10693, + "SourceUnit": 10701, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 10844, @@ -2230,5 +2230,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.497Z" + "updatedAt": "2018-10-09T23:15:05.523Z" } \ No newline at end of file diff --git a/artifacts/json/MockDebtRegistry.json b/artifacts/json/MockDebtRegistry.json index 4ac80d6d..70f5c581 100644 --- a/artifacts/json/MockDebtRegistry.json +++ b/artifacts/json/MockDebtRegistry.json @@ -465,7 +465,7 @@ }, { "attributes": { - "SourceUnit": 10693, + "SourceUnit": 10701, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 11222, @@ -5996,7 +5996,7 @@ "42": { "events": {}, "links": {}, - "address": "0x7593f653e23985ac6371a1e2d0a681f6e5534007" + "address": "0x1776579cf04dc9c93212796cb286b712c243666e" }, "70": { "events": {}, @@ -6005,5 +6005,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:01.328Z" + "updatedAt": "2018-10-09T23:19:45.832Z" } \ No newline at end of file diff --git a/artifacts/json/MockDebtToken.json b/artifacts/json/MockDebtToken.json index e30f3b5b..186c62ed 100644 --- a/artifacts/json/MockDebtToken.json +++ b/artifacts/json/MockDebtToken.json @@ -352,7 +352,7 @@ }, { "attributes": { - "SourceUnit": 10693, + "SourceUnit": 10701, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 11511, @@ -4598,7 +4598,7 @@ "42": { "events": {}, "links": {}, - "address": "0xf655449119757b6fd26c45702718812dbbd51356" + "address": "0x939a43abc22d93c7d8146740a532b0d630f8239c" }, "70": { "events": {}, @@ -4607,5 +4607,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:01.286Z" + "updatedAt": "2018-10-09T23:19:45.820Z" } \ No newline at end of file diff --git a/artifacts/json/MockERC20Token.json b/artifacts/json/MockERC20Token.json index 939f70b6..4db91358 100644 --- a/artifacts/json/MockERC20Token.json +++ b/artifacts/json/MockERC20Token.json @@ -314,7 +314,7 @@ }, { "attributes": { - "SourceUnit": 10693, + "SourceUnit": 10701, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 11767, @@ -4016,7 +4016,7 @@ "42": { "events": {}, "links": {}, - "address": "0x80bd8dc16d0b1bee8ce941ce2fb9108177a7dc85" + "address": "0xdbe3b7d496724ad8308ab434d59ab9896ddf245f" }, "70": { "events": {}, @@ -4025,5 +4025,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:01.281Z" + "updatedAt": "2018-10-09T23:19:45.813Z" } \ No newline at end of file diff --git a/artifacts/json/MockERC721Receiver.json b/artifacts/json/MockERC721Receiver.json index 3f5c8b30..cce4279e 100644 --- a/artifacts/json/MockERC721Receiver.json +++ b/artifacts/json/MockERC721Receiver.json @@ -168,7 +168,7 @@ }, { "attributes": { - "SourceUnit": 10693, + "SourceUnit": 10701, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 11888, @@ -1844,7 +1844,7 @@ "42": { "events": {}, "links": {}, - "address": "0xeadebe1479a642dc27a2874233e5e2b6703a0442" + "address": "0x0ac01be77bebfd73d570fe3430eeaf731cc0f276" }, "70": { "events": {}, @@ -1853,5 +1853,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:01.261Z" + "updatedAt": "2018-10-09T23:19:45.792Z" } \ No newline at end of file diff --git a/artifacts/json/MockERC721Token.json b/artifacts/json/MockERC721Token.json index 1885a065..fd08c8c8 100644 --- a/artifacts/json/MockERC721Token.json +++ b/artifacts/json/MockERC721Token.json @@ -311,7 +311,7 @@ }, { "attributes": { - "SourceUnit": 10693, + "SourceUnit": 10701, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 12142, @@ -3994,7 +3994,7 @@ "42": { "events": {}, "links": {}, - "address": "0x5ff98c9ca70a7d2fdd1107c1a80d20c5fc8a3e40" + "address": "0x54115cd6562cb183cdd21a6e1fa5c6833f493dc2" }, "70": { "events": {}, @@ -4003,5 +4003,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:01.278Z" + "updatedAt": "2018-10-09T23:19:45.810Z" } \ No newline at end of file diff --git a/artifacts/json/MockTermsContract.json b/artifacts/json/MockTermsContract.json index 7c0892f5..d6652df5 100644 --- a/artifacts/json/MockTermsContract.json +++ b/artifacts/json/MockTermsContract.json @@ -275,7 +275,7 @@ }, { "attributes": { - "SourceUnit": 10693, + "SourceUnit": 10701, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 12354, @@ -3394,7 +3394,7 @@ "42": { "events": {}, "links": {}, - "address": "0x76dcdc1df7af00e87bb5dd8f600e5637053fc0e1" + "address": "0xb2864780e3d6eb844f2e2214ba12472eee6268fc" }, "70": { "events": {}, @@ -3403,5 +3403,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:01.274Z" + "updatedAt": "2018-10-09T23:19:45.804Z" } \ No newline at end of file diff --git a/artifacts/json/MockTokenRegistry.json b/artifacts/json/MockTokenRegistry.json index 13981a23..b0527024 100644 --- a/artifacts/json/MockTokenRegistry.json +++ b/artifacts/json/MockTokenRegistry.json @@ -160,7 +160,7 @@ }, { "attributes": { - "SourceUnit": 10693, + "SourceUnit": 10701, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 12450, @@ -1587,7 +1587,7 @@ "42": { "events": {}, "links": {}, - "address": "0x8d60b63345a4394a627672aca9f0f2541057d0ba" + "address": "0x173369a9a8fd5063849034932c1463562589e68c" }, "70": { "events": {}, @@ -1596,5 +1596,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:01.268Z" + "updatedAt": "2018-10-09T23:19:45.790Z" } \ No newline at end of file diff --git a/artifacts/json/MockTokenTransferProxy.json b/artifacts/json/MockTokenTransferProxy.json index 9c47af91..e4a4567a 100644 --- a/artifacts/json/MockTokenTransferProxy.json +++ b/artifacts/json/MockTokenTransferProxy.json @@ -148,7 +148,7 @@ }, { "attributes": { - "SourceUnit": 10693, + "SourceUnit": 10701, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 12526, @@ -1235,7 +1235,7 @@ "42": { "events": {}, "links": {}, - "address": "0xe73f46c08eb3a1d218af468c6dbefbc5967bb6bd" + "address": "0xc8ac0952c5752a371adbb8fff4a7ea90a69333ce" }, "70": { "events": {}, @@ -1244,5 +1244,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:01.252Z" + "updatedAt": "2018-10-09T23:19:45.785Z" } \ No newline at end of file diff --git a/artifacts/json/MultiSigWallet.json b/artifacts/json/MultiSigWallet.json index e4cb6848..64f7e3a2 100644 --- a/artifacts/json/MultiSigWallet.json +++ b/artifacts/json/MultiSigWallet.json @@ -13771,5 +13771,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.685Z" + "updatedAt": "2018-10-09T23:15:05.858Z" } \ No newline at end of file diff --git a/artifacts/json/Ownable.json b/artifacts/json/Ownable.json index b9481b9e..9100f7d5 100644 --- a/artifacts/json/Ownable.json +++ b/artifacts/json/Ownable.json @@ -837,5 +837,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.443Z" + "updatedAt": "2018-10-09T23:15:05.496Z" } \ No newline at end of file diff --git a/artifacts/json/Pausable.json b/artifacts/json/Pausable.json index b9c75863..46edf650 100644 --- a/artifacts/json/Pausable.json +++ b/artifacts/json/Pausable.json @@ -879,5 +879,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.444Z" + "updatedAt": "2018-10-09T23:15:05.496Z" } \ No newline at end of file diff --git a/artifacts/json/PermissionEvents.json b/artifacts/json/PermissionEvents.json index 13b8cba8..665491ec 100644 --- a/artifacts/json/PermissionEvents.json +++ b/artifacts/json/PermissionEvents.json @@ -2969,5 +2969,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.509Z" + "updatedAt": "2018-10-09T23:15:05.538Z" } \ No newline at end of file diff --git a/artifacts/json/PermissionsLib.json b/artifacts/json/PermissionsLib.json index b8fb9433..7d8bdc69 100644 --- a/artifacts/json/PermissionsLib.json +++ b/artifacts/json/PermissionsLib.json @@ -2976,7 +2976,7 @@ "42": { "events": {}, "links": {}, - "address": "0x7852987ebd814ccb8ae63ff0ebbebaf12b8b45ab" + "address": "0xb6bfbe48e19b22085ec4e256455052d950f2fc7d" }, "70": { "events": {}, @@ -2985,5 +2985,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:53:04.866Z" + "updatedAt": "2018-10-09T23:23:58.013Z" } \ No newline at end of file diff --git a/artifacts/json/RepaymentRouter.json b/artifacts/json/RepaymentRouter.json index 2b8ccec1..5cdc33db 100644 --- a/artifacts/json/RepaymentRouter.json +++ b/artifacts/json/RepaymentRouter.json @@ -240,7 +240,7 @@ }, { "attributes": { - "SourceUnit": 3159, + "SourceUnit": 3167, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtRegistry.sol", "file": "./DebtRegistry.sol", "scope": 4716, @@ -255,7 +255,7 @@ }, { "attributes": { - "SourceUnit": 4758, + "SourceUnit": 4766, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TermsContract.sol", "file": "./TermsContract.sol", "scope": 4716, @@ -270,7 +270,7 @@ }, { "attributes": { - "SourceUnit": 5207, + "SourceUnit": 5215, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TokenTransferProxy.sol", "file": "./TokenTransferProxy.sol", "scope": 4716, @@ -3301,7 +3301,7 @@ } }, "links": {}, - "address": "0x03ff589c02e794dbb55394ba86c62ba68e399688" + "address": "0x68133aab29535c46b44cf0d31e0161905c57bc01" }, "70": { "events": { @@ -3389,5 +3389,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:51:53.137Z" + "updatedAt": "2018-10-09T23:22:13.417Z" } \ No newline at end of file diff --git a/artifacts/json/SafeMath.json b/artifacts/json/SafeMath.json index 57147ba1..4443bcb7 100644 --- a/artifacts/json/SafeMath.json +++ b/artifacts/json/SafeMath.json @@ -1343,5 +1343,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.450Z" + "updatedAt": "2018-10-09T23:15:05.500Z" } \ No newline at end of file diff --git a/artifacts/json/SaleClockAuction.json b/artifacts/json/SaleClockAuction.json index adae014f..053b7f3f 100644 --- a/artifacts/json/SaleClockAuction.json +++ b/artifacts/json/SaleClockAuction.json @@ -52024,5 +52024,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:36.391Z" + "updatedAt": "2018-10-09T23:15:06.528Z" } \ No newline at end of file diff --git a/artifacts/json/SimpleInterestTermsContract.json b/artifacts/json/SimpleInterestTermsContract.json index 5acc09a5..04daa487 100644 --- a/artifacts/json/SimpleInterestTermsContract.json +++ b/artifacts/json/SimpleInterestTermsContract.json @@ -10512,7 +10512,7 @@ "42": { "events": {}, "links": {}, - "address": "0x1cde816b6e0437f5b1b49edb58c4a8bf1dbda2d3" + "address": "0x77bdb2014e6048419706e50c2b7e53c662fe0fde" }, "70": { "events": {}, @@ -10521,5 +10521,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:25.381Z" + "updatedAt": "2018-10-09T23:20:25.143Z" } \ No newline at end of file diff --git a/artifacts/json/SiringClockAuction.json b/artifacts/json/SiringClockAuction.json index 21e2329b..fe797ac8 100644 --- a/artifacts/json/SiringClockAuction.json +++ b/artifacts/json/SiringClockAuction.json @@ -51977,5 +51977,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:36.126Z" + "updatedAt": "2018-10-09T23:15:06.459Z" } \ No newline at end of file diff --git a/artifacts/json/StandardToken.json b/artifacts/json/StandardToken.json index 9bfc50ae..c43d717e 100644 --- a/artifacts/json/StandardToken.json +++ b/artifacts/json/StandardToken.json @@ -3732,5 +3732,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.529Z" + "updatedAt": "2018-10-09T23:15:05.596Z" } \ No newline at end of file diff --git a/artifacts/json/TermsContract.json b/artifacts/json/TermsContract.json index 901bdfc4..1a358e08 100644 --- a/artifacts/json/TermsContract.json +++ b/artifacts/json/TermsContract.json @@ -779,5 +779,5 @@ }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.436Z" + "updatedAt": "2018-10-09T23:15:05.490Z" } \ No newline at end of file diff --git a/artifacts/json/TokenRegistry.json b/artifacts/json/TokenRegistry.json index 3a66a2eb..190d4041 100644 --- a/artifacts/json/TokenRegistry.json +++ b/artifacts/json/TokenRegistry.json @@ -5119,7 +5119,7 @@ } }, "links": {}, - "address": "0xb6cf5855a7598441e02e7cd4ffffb6e0426984ff" + "address": "0x4b0116505c34c6adb5ee741ee67ac52e5215f650" }, "70": { "events": { @@ -5146,5 +5146,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:51:53.143Z" + "updatedAt": "2018-10-09T23:22:13.423Z" } \ No newline at end of file diff --git a/artifacts/json/TokenTransferProxy.json b/artifacts/json/TokenTransferProxy.json index 461d4ca6..45ee0756 100644 --- a/artifacts/json/TokenTransferProxy.json +++ b/artifacts/json/TokenTransferProxy.json @@ -242,7 +242,7 @@ }, { "attributes": { - "SourceUnit": 3159, + "SourceUnit": 3167, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtRegistry.sol", "file": "./DebtRegistry.sol", "scope": 5215, @@ -257,7 +257,7 @@ }, { "attributes": { - "SourceUnit": 6272, + "SourceUnit": 6280, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/libraries/PermissionsLib.sol", "file": "./libraries/PermissionsLib.sol", "scope": 5215, @@ -1612,7 +1612,7 @@ } }, "links": {}, - "address": "0xf8181406f844d5c947481ec67c835b1384013c7e" + "address": "0xedaabddfbf00182b2f4c9ff00689ddaf4ff9f9d0" }, "70": { "events": { @@ -1685,5 +1685,5 @@ } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:51:53.131Z" + "updatedAt": "2018-10-09T23:22:13.411Z" } \ No newline at end of file diff --git a/artifacts/ts/AddressUtils.ts b/artifacts/ts/AddressUtils.ts index bc1df997..25af3c63 100644 --- a/artifacts/ts/AddressUtils.ts +++ b/artifacts/ts/AddressUtils.ts @@ -288,5 +288,5 @@ export const AddressUtils = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.426Z" + "updatedAt": "2018-10-09T23:15:05.485Z" } \ No newline at end of file diff --git a/artifacts/ts/BasicToken.ts b/artifacts/ts/BasicToken.ts index d89fe22a..4c2f5324 100644 --- a/artifacts/ts/BasicToken.ts +++ b/artifacts/ts/BasicToken.ts @@ -1436,5 +1436,5 @@ export const BasicToken = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.453Z" + "updatedAt": "2018-10-09T23:15:05.503Z" } \ No newline at end of file diff --git a/artifacts/ts/ClockAuction.ts b/artifacts/ts/ClockAuction.ts index 0fdd7fe0..050c3e7b 100644 --- a/artifacts/ts/ClockAuction.ts +++ b/artifacts/ts/ClockAuction.ts @@ -51964,5 +51964,5 @@ export const ClockAuction = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:36.032Z" + "updatedAt": "2018-10-09T23:15:06.382Z" } \ No newline at end of file diff --git a/artifacts/ts/ClockAuctionBase.ts b/artifacts/ts/ClockAuctionBase.ts index 89bc31b5..7b52663d 100644 --- a/artifacts/ts/ClockAuctionBase.ts +++ b/artifacts/ts/ClockAuctionBase.ts @@ -51732,5 +51732,5 @@ export const ClockAuctionBase = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.834Z" + "updatedAt": "2018-10-09T23:15:06.058Z" } \ No newline at end of file diff --git a/artifacts/ts/CollateralizedSimpleInterestTermsContract.ts b/artifacts/ts/CollateralizedSimpleInterestTermsContract.ts index 1e4d788d..0095d25a 100644 --- a/artifacts/ts/CollateralizedSimpleInterestTermsContract.ts +++ b/artifacts/ts/CollateralizedSimpleInterestTermsContract.ts @@ -412,7 +412,7 @@ export const CollateralizedSimpleInterestTermsContract = }, { "attributes": { - "SourceUnit": 6053, + "SourceUnit": 6061, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/examples/SimpleInterestTermsContract.sol", "file": "./SimpleInterestTermsContract.sol", "scope": 5282, @@ -1335,7 +1335,7 @@ export const CollateralizedSimpleInterestTermsContract = "42": { "events": {}, "links": {}, - "address": "0x7b7be94999219352b02c70b62b7cc09f7179b3b0" + "address": "0xf4ffba3867d4c9d388069a02fa36d3bfc234c979" }, "70": { "events": {}, @@ -1344,5 +1344,5 @@ export const CollateralizedSimpleInterestTermsContract = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:51:37.279Z" + "updatedAt": "2018-10-09T23:22:00.524Z" } \ No newline at end of file diff --git a/artifacts/ts/Collateralizer.ts b/artifacts/ts/Collateralizer.ts index 0b6ce753..f0d66d5c 100644 --- a/artifacts/ts/Collateralizer.ts +++ b/artifacts/ts/Collateralizer.ts @@ -527,7 +527,7 @@ export const Collateralizer = }, { "attributes": { - "SourceUnit": 4758, + "SourceUnit": 4766, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TermsContract.sol", "file": "./TermsContract.sol", "scope": 615, @@ -542,7 +542,7 @@ export const Collateralizer = }, { "attributes": { - "SourceUnit": 3159, + "SourceUnit": 3167, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtRegistry.sol", "file": "./DebtRegistry.sol", "scope": 615, @@ -557,7 +557,7 @@ export const Collateralizer = }, { "attributes": { - "SourceUnit": 5114, + "SourceUnit": 5122, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TokenRegistry.sol", "file": "./TokenRegistry.sol", "scope": 615, @@ -572,7 +572,7 @@ export const Collateralizer = }, { "attributes": { - "SourceUnit": 5207, + "SourceUnit": 5215, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TokenTransferProxy.sol", "file": "./TokenTransferProxy.sol", "scope": 615, @@ -587,7 +587,7 @@ export const Collateralizer = }, { "attributes": { - "SourceUnit": 6272, + "SourceUnit": 6280, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/libraries/PermissionsLib.sol", "file": "./libraries/PermissionsLib.sol", "scope": 615, @@ -9802,7 +9802,7 @@ export const Collateralizer = } }, "links": {}, - "address": "0x39ab84786d3696677cb62181f56286c9496b490b" + "address": "0x9075c9d39c3603d00629d8c1822da2d2f61605fb" }, "70": { "events": { @@ -9951,5 +9951,5 @@ export const Collateralizer = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:51:53.173Z" + "updatedAt": "2018-10-09T23:22:13.489Z" } \ No newline at end of file diff --git a/artifacts/ts/ContractRegistry.ts b/artifacts/ts/ContractRegistry.ts index cff30b89..34b70f3d 100644 --- a/artifacts/ts/ContractRegistry.ts +++ b/artifacts/ts/ContractRegistry.ts @@ -281,7 +281,7 @@ export const ContractRegistry = }, { "attributes": { - "SourceUnit": 2631, + "SourceUnit": 2639, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtKernel.sol", "file": "./DebtKernel.sol", "scope": 924, @@ -296,7 +296,7 @@ export const ContractRegistry = }, { "attributes": { - "SourceUnit": 3159, + "SourceUnit": 3167, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtRegistry.sol", "file": "./DebtRegistry.sol", "scope": 924, @@ -311,7 +311,7 @@ export const ContractRegistry = }, { "attributes": { - "SourceUnit": 3541, + "SourceUnit": 3549, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtToken.sol", "file": "./DebtToken.sol", "scope": 924, @@ -326,7 +326,7 @@ export const ContractRegistry = }, { "attributes": { - "SourceUnit": 4708, + "SourceUnit": 4716, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/RepaymentRouter.sol", "file": "./RepaymentRouter.sol", "scope": 924, @@ -341,7 +341,7 @@ export const ContractRegistry = }, { "attributes": { - "SourceUnit": 5114, + "SourceUnit": 5122, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TokenRegistry.sol", "file": "./TokenRegistry.sol", "scope": 924, @@ -356,7 +356,7 @@ export const ContractRegistry = }, { "attributes": { - "SourceUnit": 5207, + "SourceUnit": 5215, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TokenTransferProxy.sol", "file": "./TokenTransferProxy.sol", "scope": 924, @@ -4731,7 +4731,7 @@ export const ContractRegistry = } }, "links": {}, - "address": "0x342e4778937a0fa5879aa594d0f57370f1a0e5d9" + "address": "0x8a2e03a964c21731d451a66fa618ea9a14dded78" }, "70": { "events": { @@ -4780,5 +4780,5 @@ export const ContractRegistry = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:53:24.840Z" + "updatedAt": "2018-10-09T23:24:24.851Z" } \ No newline at end of file diff --git a/artifacts/ts/CreditorProxy.ts b/artifacts/ts/CreditorProxy.ts index a6600cbe..0b5a92e5 100644 --- a/artifacts/ts/CreditorProxy.ts +++ b/artifacts/ts/CreditorProxy.ts @@ -309,11 +309,11 @@ export const CreditorProxy = "type": "event" } ], - "bytecode": "0x606060405260008060146101000a81548160ff021916908315150217905550341561002957600080fd5b604051602080611be483398101604052808051906020019091905050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611b0e806100d66000396000f3006060604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633c1c90a7146100bf5780633f4ba83a1461015d57806347f7835d146101725780635c975abb146102d05780638456cb59146102fd5780638da5cb5b14610312578063a318b5f714610367578063abf410e5146103a6578063c1614d00146103fb578063e283040d1461043a578063f06bbf751461046b578063f2fde38b1461049c575b600080fd5b34156100ca57600080fd5b61015b60048080608001906004806020026040519081016040528092919082600460200280828437820191505050505091908060800190600480602002604051908101604052809291908260046020028082843782019150505050509190806020019060018060200260405190810160405280929190826001602002808284378201915050505050919050506104d5565b005b341561016857600080fd5b6101706105e1565b005b341561017d57600080fd5b6102b2600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908060c001906006806020026040519081016040528092919082600660200280828437820191505050505091908061010001906008806020026040519081016040528092919082600860200280828437820191505050505091908060200190600180602002604051908101604052809291908260016020028082843782019150505050509190806060019060038060200260405190810160405280929190826003602002808284378201915050505050919080606001906003806020026040519081016040528092919082600360200280828437820191505050505091908060600190600380602002604051908101604052809291908260036020028082843782019150505050509190505061069f565b60405180826000191660001916815260200191505060405180910390f35b34156102db57600080fd5b6102e3610fa7565b604051808215151515815260200191505060405180910390f35b341561030857600080fd5b610310610fba565b005b341561031d57600080fd5b61032561107a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561037257600080fd5b61038c60048080356000191690602001909190505061109f565b604051808215151515815260200191505060405180910390f35b34156103b157600080fd5b6103b96110bf565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561040657600080fd5b6104206004808035600019169060200190919050506110e5565b604051808215151515815260200191505060405180910390f35b341561044557600080fd5b61044d611105565b60405180826000191660001916815260200191505060405180910390f35b341561047657600080fd5b61047e61110d565b604051808261ffff1661ffff16815260200191505060405180910390f35b34156104a757600080fd5b6104d3600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611113565b005b60008060149054906101000a900460ff161515156104f257600080fd5b83600060048110151561050157fe5b602002015173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561053f57600080fd5b61054a848484611268565b9050600160026000836000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550806000191684600060048110151561059457fe5b602002015173ffffffffffffffffffffffffffffffffffffffff167f07d3242876ac355520b94ab74873262d83b5b81dbd5da781118f78cee0bbe74760405160405180910390a350505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561063c57600080fd5b600060149054906101000a900460ff16151561065757600080fd5b60008060146101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b600080600080600060149054906101000a900460ff161515156106c157600080fd5b6108436080604051908101604052808d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600060068110151561071157fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600260068110151561075657fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600360068110151561079b57fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152506080604051908101604052808c60056008811015156107ea57fe5b602002015181526020018c600060088110151561080357fe5b602002015181526020018c600760088110151561081c57fe5b602002015181526020018c600160088110151561083557fe5b60200201518152508a611268565b925060036000846000191660001916815260200190815260200160002060009054906101000a900460ff16156108d75782600019168b73ffffffffffffffffffffffffffffffffffffffff166001600381111561089c57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b60026000846000191660001916815260200190815260200160002060009054906101000a900460ff16156109695782600019168b73ffffffffffffffffffffffffffffffffffffffff166000600381111561092e57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b6109af8b8489600160038110151561097d57fe5b602002015189600160038110151561099157fe5b60200201518960016003811015156109a557fe5b6020020151611468565b1515610a195782600019168b73ffffffffffffffffffffffffffffffffffffffff16600260038111156109de57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b610a52896005600881101515610a2b57fe5b60200201518a6002600881101515610a3f57fe5b602002015161156f90919063ffffffff16565b9150610a728b8b6004600681101515610a6757fe5b60200201518461158d565b1515610adb5782600019168b73ffffffffffffffffffffffffffffffffffffffff16600380811115610aa057fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b6000821115610b0f57610b038a6004600681101515610af657fe5b60200201518c30856116a9565b1515610b0e57600080fd5b5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663079dd4b76000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610b9d57600080fd5b6102c65a03f11515610bae57600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663e6488fc9308c8c8c8c8c8c6000604051602001526040518863ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200187600660200280838360005b83811015610c6b578082015181840152602081019050610c50565b5050505090500186600860200280838360005b83811015610c99578082015181840152602081019050610c7e565b5050505090500185600160200280838360005b83811015610cc7578082015181840152602081019050610cac565b5050505090500184600360200280838360005b83811015610cf5578082015181840152602081019050610cda565b5050505090500183600360200280838360005b83811015610d23578082015181840152602081019050610d08565b5050505090500182600360200280838360005b83811015610d51578082015181840152602081019050610d36565b50505050905001975050505050505050602060405180830381600087803b1515610d7a57600080fd5b6102c65a03f11515610d8b57600080fd5b505050604051805190509050600060010260001916816000191614151515610db257600080fd5b600160036000856000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f8d898986000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610e7457600080fd5b6102c65a03f11515610e8557600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8c83600190046040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1515610f3457600080fd5b6102c65a03f11515610f4557600080fd5b505050806000191683600019168c73ffffffffffffffffffffffffffffffffffffffff167f44bca8cc6f9375e3d800b6361e71fdde37e4fc86bdc3a72c4f8f69bbd19a01f360405160405180910390a48093505b505050979650505050505050565b600060149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561101557600080fd5b600060149054906101000a900460ff1615151561103157600080fd5b6001600060146101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60026020528060005260406000206000915054906101000a900460ff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60036020528060005260406000206000915054906101000a900460ff1681565b600060010281565b611f4081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561116e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156111aa57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600083600060048110151561127957fe5b602002015184600160048110151561128d57fe5b60200201518460006004811015156112a157fe5b60200201518660026004811015156112b557fe5b60200201518660016004811015156112c957fe5b60200201518860036004811015156112dd57fe5b60200201518760006001811015156112f157fe5b602002015189600260048110151561130557fe5b60200201518a600360048110151561131957fe5b6020020151604051808a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018881526020018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c0100000000000000000000000002815260140184600019166000191681526020018381526020018281526020019950505050505050505050604051809103902090509392505050565b600060018560405180807f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250601c0182600019166000191681526020019150506040518091039020858585604051600081526020016040526000604051602001526040518085600019166000191681526020018460ff1660ff16815260200183600019166000191681526020018260001916600019168152602001945050505050602060405160208103908084039060008661646e5a03f1151561152d57600080fd5b50506020604051035173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614905095945050505050565b600080828401905083811015151561158357fe5b8091505092915050565b60008060008061159e8688306117af565b92506115aa86886118a7565b9150848210806115b957508483105b156115c7576000935061169f565b61167a8630600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561165a57600080fd5b6102c65a03f1151561166b57600080fd5b505050604051805190506117af565b90508481101561169a5761168e868661196a565b151561169957600080fd5b5b600193505b5050509392505050565b60008473ffffffffffffffffffffffffffffffffffffffff166323b872dd8585856000604051602001526040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b151561178a57600080fd5b6102c65a03f1151561179b57600080fd5b505050604051805190509050949350505050565b60008373ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e611f4061ffff1685856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600088803b151561188657600080fd5b87f1151561189357600080fd5b505050506040518051905090509392505050565b60008273ffffffffffffffffffffffffffffffffffffffff166370a08231611f4061ffff16846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600088803b151561194a57600080fd5b87f1151561195757600080fd5b5050505060405180519050905092915050565b60008273ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515611a1657600080fd5b6102c65a03f11515611a2757600080fd5b50505060405180519050846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515611abf57600080fd5b6102c65a03f11515611ad057600080fd5b505050604051805190509050929150505600a165627a7a72305820627f64d2f5e59580e881310ad781c1c18c95e290f478ac08b283c8661b5071d90029", - "deployedBytecode": "0x6060604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633c1c90a7146100bf5780633f4ba83a1461015d57806347f7835d146101725780635c975abb146102d05780638456cb59146102fd5780638da5cb5b14610312578063a318b5f714610367578063abf410e5146103a6578063c1614d00146103fb578063e283040d1461043a578063f06bbf751461046b578063f2fde38b1461049c575b600080fd5b34156100ca57600080fd5b61015b60048080608001906004806020026040519081016040528092919082600460200280828437820191505050505091908060800190600480602002604051908101604052809291908260046020028082843782019150505050509190806020019060018060200260405190810160405280929190826001602002808284378201915050505050919050506104d5565b005b341561016857600080fd5b6101706105e1565b005b341561017d57600080fd5b6102b2600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908060c001906006806020026040519081016040528092919082600660200280828437820191505050505091908061010001906008806020026040519081016040528092919082600860200280828437820191505050505091908060200190600180602002604051908101604052809291908260016020028082843782019150505050509190806060019060038060200260405190810160405280929190826003602002808284378201915050505050919080606001906003806020026040519081016040528092919082600360200280828437820191505050505091908060600190600380602002604051908101604052809291908260036020028082843782019150505050509190505061069f565b60405180826000191660001916815260200191505060405180910390f35b34156102db57600080fd5b6102e3610fa7565b604051808215151515815260200191505060405180910390f35b341561030857600080fd5b610310610fba565b005b341561031d57600080fd5b61032561107a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561037257600080fd5b61038c60048080356000191690602001909190505061109f565b604051808215151515815260200191505060405180910390f35b34156103b157600080fd5b6103b96110bf565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561040657600080fd5b6104206004808035600019169060200190919050506110e5565b604051808215151515815260200191505060405180910390f35b341561044557600080fd5b61044d611105565b60405180826000191660001916815260200191505060405180910390f35b341561047657600080fd5b61047e61110d565b604051808261ffff1661ffff16815260200191505060405180910390f35b34156104a757600080fd5b6104d3600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611113565b005b60008060149054906101000a900460ff161515156104f257600080fd5b83600060048110151561050157fe5b602002015173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561053f57600080fd5b61054a848484611268565b9050600160026000836000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550806000191684600060048110151561059457fe5b602002015173ffffffffffffffffffffffffffffffffffffffff167f07d3242876ac355520b94ab74873262d83b5b81dbd5da781118f78cee0bbe74760405160405180910390a350505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561063c57600080fd5b600060149054906101000a900460ff16151561065757600080fd5b60008060146101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b600080600080600060149054906101000a900460ff161515156106c157600080fd5b6108436080604051908101604052808d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600060068110151561071157fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600260068110151561075657fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600360068110151561079b57fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152506080604051908101604052808c60056008811015156107ea57fe5b602002015181526020018c600060088110151561080357fe5b602002015181526020018c600760088110151561081c57fe5b602002015181526020018c600160088110151561083557fe5b60200201518152508a611268565b925060036000846000191660001916815260200190815260200160002060009054906101000a900460ff16156108d75782600019168b73ffffffffffffffffffffffffffffffffffffffff166001600381111561089c57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b60026000846000191660001916815260200190815260200160002060009054906101000a900460ff16156109695782600019168b73ffffffffffffffffffffffffffffffffffffffff166000600381111561092e57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b6109af8b8489600160038110151561097d57fe5b602002015189600160038110151561099157fe5b60200201518960016003811015156109a557fe5b6020020151611468565b1515610a195782600019168b73ffffffffffffffffffffffffffffffffffffffff16600260038111156109de57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b610a52896005600881101515610a2b57fe5b60200201518a6002600881101515610a3f57fe5b602002015161156f90919063ffffffff16565b9150610a728b8b6004600681101515610a6757fe5b60200201518461158d565b1515610adb5782600019168b73ffffffffffffffffffffffffffffffffffffffff16600380811115610aa057fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f99565b6000821115610b0f57610b038a6004600681101515610af657fe5b60200201518c30856116a9565b1515610b0e57600080fd5b5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663079dd4b76000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610b9d57600080fd5b6102c65a03f11515610bae57600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663e6488fc9308c8c8c8c8c8c6000604051602001526040518863ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200187600660200280838360005b83811015610c6b578082015181840152602081019050610c50565b5050505090500186600860200280838360005b83811015610c99578082015181840152602081019050610c7e565b5050505090500185600160200280838360005b83811015610cc7578082015181840152602081019050610cac565b5050505090500184600360200280838360005b83811015610cf5578082015181840152602081019050610cda565b5050505090500183600360200280838360005b83811015610d23578082015181840152602081019050610d08565b5050505090500182600360200280838360005b83811015610d51578082015181840152602081019050610d36565b50505050905001975050505050505050602060405180830381600087803b1515610d7a57600080fd5b6102c65a03f11515610d8b57600080fd5b505050604051805190509050600060010260001916816000191614151515610db257600080fd5b600160036000856000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f8d898986000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610e7457600080fd5b6102c65a03f11515610e8557600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8c83600190046040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1515610f3457600080fd5b6102c65a03f11515610f4557600080fd5b505050806000191683600019168c73ffffffffffffffffffffffffffffffffffffffff167f44bca8cc6f9375e3d800b6361e71fdde37e4fc86bdc3a72c4f8f69bbd19a01f360405160405180910390a48093505b505050979650505050505050565b600060149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561101557600080fd5b600060149054906101000a900460ff1615151561103157600080fd5b6001600060146101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60026020528060005260406000206000915054906101000a900460ff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60036020528060005260406000206000915054906101000a900460ff1681565b600060010281565b611f4081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561116e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156111aa57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600083600060048110151561127957fe5b602002015184600160048110151561128d57fe5b60200201518460006004811015156112a157fe5b60200201518660026004811015156112b557fe5b60200201518660016004811015156112c957fe5b60200201518860036004811015156112dd57fe5b60200201518760006001811015156112f157fe5b602002015189600260048110151561130557fe5b60200201518a600360048110151561131957fe5b6020020151604051808a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018881526020018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c0100000000000000000000000002815260140184600019166000191681526020018381526020018281526020019950505050505050505050604051809103902090509392505050565b600060018560405180807f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250601c0182600019166000191681526020019150506040518091039020858585604051600081526020016040526000604051602001526040518085600019166000191681526020018460ff1660ff16815260200183600019166000191681526020018260001916600019168152602001945050505050602060405160208103908084039060008661646e5a03f1151561152d57600080fd5b50506020604051035173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614905095945050505050565b600080828401905083811015151561158357fe5b8091505092915050565b60008060008061159e8688306117af565b92506115aa86886118a7565b9150848210806115b957508483105b156115c7576000935061169f565b61167a8630600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561165a57600080fd5b6102c65a03f1151561166b57600080fd5b505050604051805190506117af565b90508481101561169a5761168e868661196a565b151561169957600080fd5b5b600193505b5050509392505050565b60008473ffffffffffffffffffffffffffffffffffffffff166323b872dd8585856000604051602001526040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b151561178a57600080fd5b6102c65a03f1151561179b57600080fd5b505050604051805190509050949350505050565b60008373ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e611f4061ffff1685856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600088803b151561188657600080fd5b87f1151561189357600080fd5b505050506040518051905090509392505050565b60008273ffffffffffffffffffffffffffffffffffffffff166370a08231611f4061ffff16846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600088803b151561194a57600080fd5b87f1151561195757600080fd5b5050505060405180519050905092915050565b60008273ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515611a1657600080fd5b6102c65a03f11515611a2757600080fd5b50505060405180519050846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515611abf57600080fd5b6102c65a03f11515611ad057600080fd5b505050604051805190509050929150505600a165627a7a72305820627f64d2f5e59580e881310ad781c1c18c95e290f478ac08b283c8661b5071d90029", - "sourceMap": "1086:9807:2:-;;;268:5:37;247:26;;;;;;;;;;;;;;;;;;;;2040:140:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;509:10:39;501:5;;:18;;;;;;;;;;;;;;;;;;2155:17:2;2119:16;;:54;;;;;;;;;;;;;;;;;;2040:140;1086:9807;;;;;;", - "deployedSourceMap": "1086:9807:2:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5952:607;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;833:87:37;;;;;;;;;;;;;;2398:3455:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;247:26:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;666:85;;;;;;;;;;;;;;238:20:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1502:51:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1333:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1559:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1380:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1441:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;832:169:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;5952:607:2;6246:30;416:6:37;;;;;;;;;;;415:7;407:16;;;;;;;;6213:19:2;6233:1;6213:22;;;;;;;;;;;;;6199:36;;:10;:36;;;6191:45;;;;;;;;6279:135;6318:19;6351:16;6381:23;6279:25;:135::i;:::-;6246:168;;6469:4;6424:18;:42;6443:22;6424:42;;;;;;;;;;;;;;;;;;:49;;;;;;;;;;;;;;;;;;6529:22;6483:69;;;6505:19;6525:1;6505:22;;;;;;;;;;;;;6483:69;;;;;;;;;;;;5952:607;;;;:::o;833:87:37:-;653:5:39;;;;;;;;;;;639:19;;:10;:19;;;631:28;;;;;;;;568:6:37;;;;;;;;;;;560:15;;;;;;;;895:5;886:6;;:14;;;;;;;;;;;;;;;;;;906:9;;;;;;;;;;833:87::o;2398:3455:2:-;2835:20;2872:30;4306:25;5247:19;416:6:37;;;;;;;;;;;415:7;407:16;;;;;;;;2905:550:2;;;;;;;;;;2962:8;2905:550;;;;;;;;2988:14;3003:1;2988:17;;;;;;;;;;;;;2905:550;;;;;;;;3051:14;3066:1;3051:17;;;;;;;;;;;;;2905:550;;;;;;;;3101:14;3116:1;3101:17;;;;;;;;;;;;;2905:550;;;;;;;;;;;;;;;;3181:11;3193:1;3181:14;;;;;;;;;;;;;2905:550;;;;3229:11;3241:1;3229:14;;;;;;;;;;;;;2905:550;;;;3286:11;3298:1;3286:14;;;;;;;;;;;;;2905:550;;;;3356:11;3368:1;3356:14;;;;;;;;;;;;;2905:550;;;3406:12;2905:25;:550::i;:::-;2872:583;;3470:15;:39;3486:22;3470:39;;;;;;;;;;;;;;;;;;;;;;;;;;;3466:192;;;3585:22;3525:83;;;3575:8;3525:83;;3540:32;3534:39;;;;;;;;3525:83;;;;;;;;;;;;1433:1;1425:10;;3622:25;;;;3466:192;3672:18;:42;3691:22;3672:42;;;;;;;;;;;;;;;;;;;;;;;;;;;3668:191;;;3785:22;3730:78;;;3775:8;3730:78;;3745:27;3739:34;;;;;;;;3730:78;;;;;;;;;;;;1433:1;1425:10;;3822:25;;;;3668:191;3874:168;3904:8;3926:22;3962:11;3974:1;3962:14;;;;;;;;;;;;;3990:11;4002:1;3990:14;;;;;;;;;;;;;4018:11;4030:1;4018:14;;;;;;;;;;;;;3874:16;:168::i;:::-;3873:169;3869:384;;;4167:22;4058:145;;;4141:8;4058:145;;4090:32;4084:39;;;;;;;;4058:145;;;;;;;;;;;;1433:1;1425:10;;4217:25;;;;3869:384;4334:34;4353:11;4365:1;4353:14;;;;;;;;;;;;;4334:11;4346:1;4334:14;;;;;;;;;;;;;:18;;:34;;;;:::i;:::-;4306:62;;4384:129;4430:8;4452:14;4467:1;4452:17;;;;;;;;;;;;;4483:20;4384:32;:129::i;:::-;4383:130;4379:362;;;4655:22;4529:162;;;4629:8;4529:162;;4561:49;4555:56;;;;;;;;4529:162;;;;;;;;;;;;1433:1;1425:10;;4705:25;;;;4379:362;4839:1;4816:20;:24;4812:276;;;4881:182;4921:14;4936:1;4921:17;;;;;;;;;;;;;4960:8;4998:4;5025:20;4881:18;:182::i;:::-;4856:221;;;;;;;;4812:276;5269:16;;;;;;;;;;;:27;;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:43;;;5334:4;5353:14;5381:11;5406:12;5432:11;5457;5482;5269:234;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5247:256:2;;1433:1;1425:10;;5522:33;;;:11;:33;;;;;5514:42;;;;;;;;5609:4;5567:15;:39;5583:22;5567:39;;;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;5672:16;;;;;;;;;;;:26;;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:37;;;5710:8;5728:11;5720:20;;;5672:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5805:11;5752:65;;;5781:22;5752:65;;;5771:8;5752:65;;;;;;;;;;;;5835:11;5828:18;;429:1:37;2398:3455:2;;;;;;;;;;;;:::o;247:26:37:-;;;;;;;;;;;;;:::o;666:85::-;653:5:39;;;;;;;;;;;639:19;;:10;:19;;;631:28;;;;;;;;416:6:37;;;;;;;;;;;415:7;407:16;;;;;;;;729:4;720:6;;:13;;;;;;;;;;;;;;;;;;739:7;;;;;;;;;;666:85::o;238:20:39:-;;;;;;;;;;;;;:::o;1502:51:2:-;;;;;;;;;;;;;;;;;;;;;;:::o;1333:40::-;;;;;;;;;;;;;:::o;1559:48::-;;;;;;;;;;;;;;;;;;;;;;:::o;1380:55::-;1433:1;1425:10;;1380:55;:::o;1441:54::-;1491:4;1441:54;:::o;832:169:39:-;653:5;;;;;;;;;;;639:19;;:10;:19;;;631:28;;;;;;;;928:1;908:22;;:8;:22;;;;900:31;;;;;;;;965:8;937:37;;958:5;;;;;;;;;;;937:37;;;;;;;;;;;;988:8;980:5;;:16;;;;;;;;;;;;;;;;;;832:169;:::o;6749:761:2:-;6955:31;7032:19;7052:1;7032:22;;;;;;;;;;;;;7080:19;7100:1;7080:22;;;;;;;;;;;;;7144:16;7161:1;7144:19;;;;;;;;;;;;;7193;7213:1;7193:22;;;;;;;;;;;;;7244:16;7261:1;7244:19;;;;;;;;;;;;;7302;7322:1;7302:22;;;;;;;;;;;;;7355:23;7379:1;7355:26;;;;;;;;;;;;;7395:16;7412:1;7395:19;;;;;;;;;;;;;7466:16;7483:1;7466:19;;;;;;;;;;;;;7009:494;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7002:501;;6749:761;;;;;:::o;8965:360::-;9145:11;9189:129;9258:4;9212:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9277:1;9292;9307;9189:129;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9179:139;;:6;:139;;;9172:146;;8965:360;;;;;;;:::o;1007:129:38:-;1065:7;1080:9;1096:1;1092;:5;1080:17;;1115:1;1110;:6;;1103:14;;;;;;1130:1;1123:8;;1007:129;;;;;:::o;7721:1107:2:-;7896:37;8022:19;8107:20;8396:27;8044:53;8057:14;8073:8;8091:4;8044:12;:53::i;:::-;8022:75;;8130:36;8141:14;8157:8;8130:10;:36::i;:::-;8107:59;;8199:20;8181:15;:38;:79;;;;8240:20;8223:14;:37;8181:79;8177:122;;;8283:5;8276:12;;;;8177:122;8426:128;8452:14;8488:4;8507:16;;;;;;;;;;;:35;;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8426:12;:128::i;:::-;8396:158;;8681:20;8656:22;:45;8652:148;;;8725:63;8751:14;8767:20;8725:25;:63::i;:::-;8717:72;;;;;;;;8652:148;8817:4;8810:11;;7721:1107;;;;;;;;;:::o;10643:248::-;10801:13;10843:6;10837:26;;;10864:5;10871:3;10876:7;10837:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10830:54;;10643:248;;;;;;:::o;9804:337::-;9950:15;10038:5;10032:22;;;1491:4;10032:52;;10098:5;10117:7;10032:102;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10025:109;;9804:337;;;;;:::o;9421:265::-;9540:13;9626:5;9620:22;;;1491:4;9620:52;;9673:5;9620:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9613:66;;9421:265;;;;:::o;10258:272::-;10377:13;10419:5;10413:20;;;10455:16;;;;;;;;;;;:35;;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10507:6;10413:110;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10406:117;;10258:272;;;;:::o", - "source": "/*\n\n Copyright 2017 Dharma Labs Inc.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n*/\n\npragma solidity 0.4.18;\n\nimport \"./ContractRegistry.sol\";\nimport \"zeppelin-solidity/contracts/lifecycle/Pausable.sol\";\nimport \"zeppelin-solidity/contracts/math/SafeMath.sol\";\nimport \"zeppelin-solidity/contracts/token/ERC20/ERC20.sol\";\n\n\n/**\n * The CreditorProxy is a thin wrapper around the DebtKernel\n * It implements creditor-driven loans as specified by DIP-1\n *\n * Authors: Bo Henderson & Shivani Gupta & Dharma Team\n * DIP: https://github.com/dharmaprotocol/DIPs/issues/1\n */\ncontract CreditorProxy is Pausable {\n using SafeMath for uint;\n\n enum Errors {\n DEBT_OFFER_CANCELLED,\n DEBT_OFFER_ALREADY_FILLED,\n DEBT_OFFER_NON_CONSENSUAL,\n CREDITOR_BALANCE_OR_ALLOWANCE_INSUFFICIENT\n }\n\n ContractRegistry public contractRegistry;\n\n bytes32 constant public NULL_ISSUANCE_HASH = bytes32(0);\n uint16 constant public EXTERNAL_QUERY_GAS_LIMIT = 8000;\n\n mapping (bytes32 => bool) public debtOfferCancelled;\n mapping (bytes32 => bool) public debtOfferFilled;\n\n event LogDebtOfferCancelled(\n address indexed _creditor,\n bytes32 indexed _creditorCommitmentHash\n );\n\n event LogDebtOfferFilled(\n address indexed _creditor,\n bytes32 indexed _creditorCommitmentHash,\n bytes32 indexed _agreementId\n );\n\n event LogError(\n uint8 indexed _errorId,\n address indexed _creditor,\n bytes32 indexed _creditorCommitmentHash\n );\n\n function CreditorProxy(address _contractRegistry)\n public\n {\n contractRegistry = ContractRegistry(_contractRegistry);\n }\n\n /*\n * Submit debt order to DebtKernel if it is consensual with creditor's request\n * Creditor signature in arguments is only used internally,\n * It will not be verified by the Debt Kernel\n */\n function fillDebtOffer(\n address creditor,\n address[6] orderAddresses, // repayment-router, debtor, uw, tc, p-token, relayer\n uint[8] orderValues, // rr, salt, pa, uwFee, rFee, cFee, dFee, expTime\n bytes32[1] orderBytes32, // tcParams\n uint8[3] signaturesV, // debtV, credV, uwV\n bytes32[3] signaturesR,\n bytes32[3] signaturesS\n )\n public\n whenNotPaused\n returns (bytes32 _agreementId)\n {\n\n bytes32 creditorCommitmentHash = getCreditorCommitmentHash(\n [\n creditor,\n orderAddresses[0], // repayment router version\n orderAddresses[2], // underwriter\n orderAddresses[3] // termsContract\n ],\n [\n orderValues[5], // creditor fee\n orderValues[0], // underwriterRiskRating\n orderValues[7], // commitmentExpirationTimestampInSec\n orderValues[1] // salt\n ],\n orderBytes32 // termsContractParameters\n );\n\n if (debtOfferFilled[creditorCommitmentHash]) {\n LogError(uint8(Errors.DEBT_OFFER_ALREADY_FILLED), creditor, creditorCommitmentHash);\n return NULL_ISSUANCE_HASH;\n }\n\n if (debtOfferCancelled[creditorCommitmentHash]) {\n LogError(uint8(Errors.DEBT_OFFER_CANCELLED), creditor, creditorCommitmentHash);\n return NULL_ISSUANCE_HASH; \n }\n\n if (!isValidSignature(\n creditor,\n creditorCommitmentHash,\n signaturesV[1],\n signaturesR[1],\n signaturesS[1]\n )) {\n LogError(\n uint8(Errors.DEBT_OFFER_NON_CONSENSUAL),\n creditor,\n creditorCommitmentHash\n );\n return NULL_ISSUANCE_HASH;\n }\n\n // principal amount + creditor fee\n uint totalCreditorPayment = orderValues[2].add(orderValues[5]);\n\n if (!hasSufficientBalanceAndAllowance(\n creditor,\n orderAddresses[4],\n totalCreditorPayment\n )) {\n LogError(\n uint8(Errors.CREDITOR_BALANCE_OR_ALLOWANCE_INSUFFICIENT),\n creditor,\n creditorCommitmentHash\n );\n return NULL_ISSUANCE_HASH;\n }\n\n // Transfer principal from creditor to CreditorProxy\n if (totalCreditorPayment > 0) {\n require(\n transferTokensFrom(\n orderAddresses[4],\n creditor,\n address(this),\n totalCreditorPayment\n )\n );\n }\n\n // Grant allowance to the TokenTransferProxy for this contract.\n\n\n // Fill debt order with this contract playing the role of creditor\n bytes32 agreementId = contractRegistry.debtKernel().fillDebtOrder(\n address(this),\n orderAddresses,\n orderValues,\n orderBytes32,\n signaturesV,\n signaturesR,\n signaturesS\n );\n\n require(agreementId != NULL_ISSUANCE_HASH);\n\n debtOfferFilled[creditorCommitmentHash] = true;\n\n // transfer debt token to real creditor\n contractRegistry.debtToken().transfer(creditor, uint256(agreementId));\n\n LogDebtOfferFilled(creditor, creditorCommitmentHash, agreementId);\n\n return agreementId;\n }\n\n /**\n * Allows creditor to prevent a debt offer from being used in the future\n */\n function cancelDebtOffer(\n address[4] commitmentAddresses,\n uint[4] commitmentValues,\n bytes32[1] termsContractParameters\n )\n public\n whenNotPaused\n {\n // sender must be the creditor\n require(msg.sender == commitmentAddresses[0]);\n bytes32 creditorCommitmentHash = getCreditorCommitmentHash(\n commitmentAddresses,\n commitmentValues,\n termsContractParameters\n );\n debtOfferCancelled[creditorCommitmentHash] = true;\n LogDebtOfferCancelled(commitmentAddresses[0], creditorCommitmentHash);\n }\n\n ////////////////////////\n // INTERNAL FUNCTIONS //\n ////////////////////////\n\n /**\n * Returns the messaged signed by the creditor to indicate their commitment\n */\n function getCreditorCommitmentHash(\n address[4] commitmentAddresses,\n uint[4] commitmentValues,\n bytes32[1] termsContractParameters\n )\n internal\n pure\n returns (bytes32 _creditorCommitmentHash)\n {\n return keccak256(\n commitmentAddresses[0], // creditor\n commitmentAddresses[1], // repayment router version\n commitmentValues[0], // creditor fee\n commitmentAddresses[2], // underwriter\n commitmentValues[1], // underwriterRiskRating\n commitmentAddresses[3], // termsContract\n termsContractParameters[0],\n commitmentValues[2], // commitmentExpirationTimestampInSec\n commitmentValues[3] // salt\n );\n }\n\n\n /**\n * Assert that the creditor has a sufficient token balance and has granted the token transfer\n * proxy contract sufficient allowance to suffice for the principal and creditor fee.\n */\n function hasSufficientBalanceAndAllowance(\n address creditor,\n address principalToken,\n uint totalCreditorPayment\n )\n internal\n returns (bool _isBalanceAndAllowanceSufficient)\n {\n // The allowance that this contract has for a creditor's tokens.\n uint proxyAllowance = getAllowance(principalToken, creditor, address(this));\n uint creditorBalance = getBalance(principalToken, creditor);\n\n if (creditorBalance < totalCreditorPayment || proxyAllowance < totalCreditorPayment) {\n return false;\n }\n\n // The allowance that the token transfer proxy has for this contract's tokens.\n uint tokenTransferAllowance = getAllowance(\n principalToken,\n address(this),\n contractRegistry.tokenTransferProxy()\n );\n\n // Ensure the token transfer proxy can transfer tokens from the creditor proxy\n if (tokenTransferAllowance < totalCreditorPayment) {\n require(setTokenTransferAllowance(principalToken, totalCreditorPayment));\n }\n\n return true;\n }\n\n /**\n * Given a hashed message, a signer's address, and a signature,\n * returns whether the signature is valid.\n */\n function isValidSignature(\n address signer,\n bytes32 hash,\n uint8 v,\n bytes32 r,\n bytes32 s\n )\n internal\n pure\n returns (bool _valid)\n {\n return signer == ecrecover(\n keccak256(\"\\x19Ethereum Signed Message:\\n32\", hash),\n v,\n r,\n s\n );\n }\n\n /**\n * Helper function for querying an address' balance on a given token.\n */\n function getBalance(\n address token,\n address owner\n )\n internal\n view\n returns (uint _balance)\n {\n // Limit gas to prevent reentrancy.\n return ERC20(token).balanceOf.gas(EXTERNAL_QUERY_GAS_LIMIT)(owner);\n }\n\n /**\n * Helper function for querying this contract's allowance for transferring the given token.\n */\n function getAllowance(\n address token,\n address owner,\n address granter\n )\n internal\n view\n returns (uint _allowance)\n {\n // Limit gas to prevent reentrancy.\n return ERC20(token).allowance.gas(EXTERNAL_QUERY_GAS_LIMIT)(\n owner,\n granter\n );\n }\n\n /**\n * Helper function for approving this address' allowance to Dharma's token transfer proxy.\n */\n function setTokenTransferAllowance(\n address token,\n uint amount\n )\n internal\n returns (bool _success)\n {\n return ERC20(token).approve(\n address(contractRegistry.tokenTransferProxy()),\n amount\n );\n }\n\n\n /**\n * Helper function for transferring a specified amount of tokens between two parties.\n */\n function transferTokensFrom(\n address _token,\n address _from,\n address _to,\n uint _amount\n )\n internal\n returns (bool _success)\n {\n return ERC20(_token).transferFrom(_from, _to, _amount);\n }\n}\n", + "bytecode": "0x606060405260008060146101000a81548160ff021916908315150217905550341561002957600080fd5b604051602080611d1483398101604052808051906020019091905050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611c3e806100d66000396000f3006060604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633f4ba83a146100bf57806347f7835d146100d45780635c975abb146102325780638456cb591461025f5780638da5cb5b146102745780638f18b00b146102c9578063a318b5f714610367578063abf410e5146103a6578063c1614d00146103fb578063e283040d1461043a578063f06bbf751461046b578063f2fde38b1461049c575b600080fd5b34156100ca57600080fd5b6100d26104d5565b005b34156100df57600080fd5b610214600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908060c0019060068060200260405190810160405280929190826006602002808284378201915050505050919080610100019060088060200260405190810160405280929190826008602002808284378201915050505050919080602001906001806020026040519081016040528092919082600160200280828437820191505050505091908060600190600380602002604051908101604052809291908260036020028082843782019150505050509190806060019060038060200260405190810160405280929190826003602002808284378201915050505050919080606001906003806020026040519081016040528092919082600360200280828437820191505050505091905050610593565b60405180826000191660001916815260200191505060405180910390f35b341561023d57600080fd5b610245610f75565b604051808215151515815260200191505060405180910390f35b341561026a57600080fd5b610272610f88565b005b341561027f57600080fd5b610287611048565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156102d457600080fd5b6103656004808060a0019060058060200260405190810160405280929190826005602002808284378201915050505050919080608001906004806020026040519081016040528092919082600460200280828437820191505050505091908060200190600180602002604051908101604052809291908260016020028082843782019150505050509190505061106d565b005b341561037257600080fd5b61038c600480803560001916906020019091905050611179565b604051808215151515815260200191505060405180910390f35b34156103b157600080fd5b6103b9611199565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561040657600080fd5b6104206004808035600019169060200190919050506111bf565b604051808215151515815260200191505060405180910390f35b341561044557600080fd5b61044d6111df565b60405180826000191660001916815260200191505060405180910390f35b341561047657600080fd5b61047e6111e7565b604051808261ffff1661ffff16815260200191505060405180910390f35b34156104a757600080fd5b6104d3600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506111ed565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561053057600080fd5b600060149054906101000a900460ff16151561054b57600080fd5b60008060146101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b600080600080600060149054906101000a900460ff161515156105b557600080fd5b61081160a0604051908101604052808d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663079dd4b76000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561068457600080fd5b6102c65a03f1151561069557600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c60006006811015156106df57fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600360068110151561072457fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600460068110151561076957fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152506080604051908101604052808c60016008811015156107b857fe5b602002015181526020018c60026008811015156107d157fe5b602002015181526020018c60056008811015156107ea57fe5b602002015181526020018c600760088110151561080357fe5b60200201518152508a611342565b925060036000846000191660001916815260200190815260200160002060009054906101000a900460ff16156108a55782600019168b73ffffffffffffffffffffffffffffffffffffffff166001600381111561086a57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b60026000846000191660001916815260200190815260200160002060009054906101000a900460ff16156109375782600019168b73ffffffffffffffffffffffffffffffffffffffff16600060038111156108fc57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b61097d8b8489600160038110151561094b57fe5b602002015189600160038110151561095f57fe5b602002015189600160038110151561097357fe5b6020020151611598565b15156109e75782600019168b73ffffffffffffffffffffffffffffffffffffffff16600260038111156109ac57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b610a208960056008811015156109f957fe5b60200201518a6002600881101515610a0d57fe5b602002015161169f90919063ffffffff16565b9150610a408b8b6004600681101515610a3557fe5b6020020151846116bd565b1515610aa95782600019168b73ffffffffffffffffffffffffffffffffffffffff16600380811115610a6e57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b6000821115610add57610ad18a6004600681101515610ac457fe5b60200201518c30856117d9565b1515610adc57600080fd5b5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663079dd4b76000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610b6b57600080fd5b6102c65a03f11515610b7c57600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663e6488fc9308c8c8c8c8c8c6000604051602001526040518863ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200187600660200280838360005b83811015610c39578082015181840152602081019050610c1e565b5050505090500186600860200280838360005b83811015610c67578082015181840152602081019050610c4c565b5050505090500185600160200280838360005b83811015610c95578082015181840152602081019050610c7a565b5050505090500184600360200280838360005b83811015610cc3578082015181840152602081019050610ca8565b5050505090500183600360200280838360005b83811015610cf1578082015181840152602081019050610cd6565b5050505090500182600360200280838360005b83811015610d1f578082015181840152602081019050610d04565b50505050905001975050505050505050602060405180830381600087803b1515610d4857600080fd5b6102c65a03f11515610d5957600080fd5b505050604051805190509050600060010260001916816000191614151515610d8057600080fd5b600160036000856000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f8d898986000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610e4257600080fd5b6102c65a03f11515610e5357600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8c83600190046040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1515610f0257600080fd5b6102c65a03f11515610f1357600080fd5b505050806000191683600019168c73ffffffffffffffffffffffffffffffffffffffff167f44bca8cc6f9375e3d800b6361e71fdde37e4fc86bdc3a72c4f8f69bbd19a01f360405160405180910390a48093505b505050979650505050505050565b600060149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610fe357600080fd5b600060149054906101000a900460ff16151515610fff57600080fd5b6001600060146101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060149054906101000a900460ff1615151561108a57600080fd5b83600060058110151561109957fe5b602002015173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156110d757600080fd5b6110e2848484611342565b9050600160026000836000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550806000191684600060058110151561112c57fe5b602002015173ffffffffffffffffffffffffffffffffffffffff167f07d3242876ac355520b94ab74873262d83b5b81dbd5da781118f78cee0bbe74760405160405180910390a350505050565b60026020528060005260406000206000915054906101000a900460ff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60036020528060005260406000206000915054906101000a900460ff1681565b600060010281565b611f4081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561124857600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561128457600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600083600060058110151561135357fe5b602002015184600160058110151561136757fe5b602002015185600260058110151561137b57fe5b602002015186600360058110151561138f57fe5b60200201518760046005811015156113a357fe5b60200201518760006004811015156113b757fe5b60200201518860016004811015156113cb57fe5b60200201518960026004811015156113df57fe5b60200201518a60036004811015156113f357fe5b60200201518a600060018110151561140757fe5b6020020151604051808b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c0100000000000000000000000002815260140186815260200185815260200184815260200183815260200182600019166000191681526020019a5050505050505050505050604051809103902090509392505050565b600060018560405180807f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250601c0182600019166000191681526020019150506040518091039020858585604051600081526020016040526000604051602001526040518085600019166000191681526020018460ff1660ff16815260200183600019166000191681526020018260001916600019168152602001945050505050602060405160208103908084039060008661646e5a03f1151561165d57600080fd5b50506020604051035173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614905095945050505050565b60008082840190508381101515156116b357fe5b8091505092915050565b6000806000806116ce8688306118df565b92506116da86886119d7565b9150848210806116e957508483105b156116f757600093506117cf565b6117aa8630600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561178a57600080fd5b6102c65a03f1151561179b57600080fd5b505050604051805190506118df565b9050848110156117ca576117be8686611a9a565b15156117c957600080fd5b5b600193505b5050509392505050565b60008473ffffffffffffffffffffffffffffffffffffffff166323b872dd8585856000604051602001526040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15156118ba57600080fd5b6102c65a03f115156118cb57600080fd5b505050604051805190509050949350505050565b60008373ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e611f4061ffff1685856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600088803b15156119b657600080fd5b87f115156119c357600080fd5b505050506040518051905090509392505050565b60008273ffffffffffffffffffffffffffffffffffffffff166370a08231611f4061ffff16846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600088803b1515611a7a57600080fd5b87f11515611a8757600080fd5b5050505060405180519050905092915050565b60008273ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515611b4657600080fd5b6102c65a03f11515611b5757600080fd5b50505060405180519050846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515611bef57600080fd5b6102c65a03f11515611c0057600080fd5b505050604051805190509050929150505600a165627a7a7230582051723af670e00f905ed79837151ff2f428c566a7778657a079e3873cc19020a10029", + "deployedBytecode": "0x6060604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633f4ba83a146100bf57806347f7835d146100d45780635c975abb146102325780638456cb591461025f5780638da5cb5b146102745780638f18b00b146102c9578063a318b5f714610367578063abf410e5146103a6578063c1614d00146103fb578063e283040d1461043a578063f06bbf751461046b578063f2fde38b1461049c575b600080fd5b34156100ca57600080fd5b6100d26104d5565b005b34156100df57600080fd5b610214600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908060c0019060068060200260405190810160405280929190826006602002808284378201915050505050919080610100019060088060200260405190810160405280929190826008602002808284378201915050505050919080602001906001806020026040519081016040528092919082600160200280828437820191505050505091908060600190600380602002604051908101604052809291908260036020028082843782019150505050509190806060019060038060200260405190810160405280929190826003602002808284378201915050505050919080606001906003806020026040519081016040528092919082600360200280828437820191505050505091905050610593565b60405180826000191660001916815260200191505060405180910390f35b341561023d57600080fd5b610245610f75565b604051808215151515815260200191505060405180910390f35b341561026a57600080fd5b610272610f88565b005b341561027f57600080fd5b610287611048565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156102d457600080fd5b6103656004808060a0019060058060200260405190810160405280929190826005602002808284378201915050505050919080608001906004806020026040519081016040528092919082600460200280828437820191505050505091908060200190600180602002604051908101604052809291908260016020028082843782019150505050509190505061106d565b005b341561037257600080fd5b61038c600480803560001916906020019091905050611179565b604051808215151515815260200191505060405180910390f35b34156103b157600080fd5b6103b9611199565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561040657600080fd5b6104206004808035600019169060200190919050506111bf565b604051808215151515815260200191505060405180910390f35b341561044557600080fd5b61044d6111df565b60405180826000191660001916815260200191505060405180910390f35b341561047657600080fd5b61047e6111e7565b604051808261ffff1661ffff16815260200191505060405180910390f35b34156104a757600080fd5b6104d3600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506111ed565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561053057600080fd5b600060149054906101000a900460ff16151561054b57600080fd5b60008060146101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b600080600080600060149054906101000a900460ff161515156105b557600080fd5b61081160a0604051908101604052808d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663079dd4b76000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561068457600080fd5b6102c65a03f1151561069557600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c60006006811015156106df57fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600360068110151561072457fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c600460068110151561076957fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152506080604051908101604052808c60016008811015156107b857fe5b602002015181526020018c60026008811015156107d157fe5b602002015181526020018c60056008811015156107ea57fe5b602002015181526020018c600760088110151561080357fe5b60200201518152508a611342565b925060036000846000191660001916815260200190815260200160002060009054906101000a900460ff16156108a55782600019168b73ffffffffffffffffffffffffffffffffffffffff166001600381111561086a57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b60026000846000191660001916815260200190815260200160002060009054906101000a900460ff16156109375782600019168b73ffffffffffffffffffffffffffffffffffffffff16600060038111156108fc57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b61097d8b8489600160038110151561094b57fe5b602002015189600160038110151561095f57fe5b602002015189600160038110151561097357fe5b6020020151611598565b15156109e75782600019168b73ffffffffffffffffffffffffffffffffffffffff16600260038111156109ac57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b610a208960056008811015156109f957fe5b60200201518a6002600881101515610a0d57fe5b602002015161169f90919063ffffffff16565b9150610a408b8b6004600681101515610a3557fe5b6020020151846116bd565b1515610aa95782600019168b73ffffffffffffffffffffffffffffffffffffffff16600380811115610a6e57fe5b60ff167f2ced8b4371717a8c6ce644dc517a7eaf4c7c0b52e5ab304c4c7472b15588b10260405160405180910390a460006001029350610f67565b6000821115610add57610ad18a6004600681101515610ac457fe5b60200201518c30856117d9565b1515610adc57600080fd5b5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663079dd4b76000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610b6b57600080fd5b6102c65a03f11515610b7c57600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663e6488fc9308c8c8c8c8c8c6000604051602001526040518863ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200187600660200280838360005b83811015610c39578082015181840152602081019050610c1e565b5050505090500186600860200280838360005b83811015610c67578082015181840152602081019050610c4c565b5050505090500185600160200280838360005b83811015610c95578082015181840152602081019050610c7a565b5050505090500184600360200280838360005b83811015610cc3578082015181840152602081019050610ca8565b5050505090500183600360200280838360005b83811015610cf1578082015181840152602081019050610cd6565b5050505090500182600360200280838360005b83811015610d1f578082015181840152602081019050610d04565b50505050905001975050505050505050602060405180830381600087803b1515610d4857600080fd5b6102c65a03f11515610d5957600080fd5b505050604051805190509050600060010260001916816000191614151515610d8057600080fd5b600160036000856000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f8d898986000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610e4257600080fd5b6102c65a03f11515610e5357600080fd5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8c83600190046040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1515610f0257600080fd5b6102c65a03f11515610f1357600080fd5b505050806000191683600019168c73ffffffffffffffffffffffffffffffffffffffff167f44bca8cc6f9375e3d800b6361e71fdde37e4fc86bdc3a72c4f8f69bbd19a01f360405160405180910390a48093505b505050979650505050505050565b600060149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610fe357600080fd5b600060149054906101000a900460ff16151515610fff57600080fd5b6001600060146101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060149054906101000a900460ff1615151561108a57600080fd5b83600060058110151561109957fe5b602002015173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156110d757600080fd5b6110e2848484611342565b9050600160026000836000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550806000191684600060058110151561112c57fe5b602002015173ffffffffffffffffffffffffffffffffffffffff167f07d3242876ac355520b94ab74873262d83b5b81dbd5da781118f78cee0bbe74760405160405180910390a350505050565b60026020528060005260406000206000915054906101000a900460ff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60036020528060005260406000206000915054906101000a900460ff1681565b600060010281565b611f4081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561124857600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561128457600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600083600060058110151561135357fe5b602002015184600160058110151561136757fe5b602002015185600260058110151561137b57fe5b602002015186600360058110151561138f57fe5b60200201518760046005811015156113a357fe5b60200201518760006004811015156113b757fe5b60200201518860016004811015156113cb57fe5b60200201518960026004811015156113df57fe5b60200201518a60036004811015156113f357fe5b60200201518a600060018110151561140757fe5b6020020151604051808b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c0100000000000000000000000002815260140186815260200185815260200184815260200183815260200182600019166000191681526020019a5050505050505050505050604051809103902090509392505050565b600060018560405180807f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250601c0182600019166000191681526020019150506040518091039020858585604051600081526020016040526000604051602001526040518085600019166000191681526020018460ff1660ff16815260200183600019166000191681526020018260001916600019168152602001945050505050602060405160208103908084039060008661646e5a03f1151561165d57600080fd5b50506020604051035173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614905095945050505050565b60008082840190508381101515156116b357fe5b8091505092915050565b6000806000806116ce8688306118df565b92506116da86886119d7565b9150848210806116e957508483105b156116f757600093506117cf565b6117aa8630600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561178a57600080fd5b6102c65a03f1151561179b57600080fd5b505050604051805190506118df565b9050848110156117ca576117be8686611a9a565b15156117c957600080fd5b5b600193505b5050509392505050565b60008473ffffffffffffffffffffffffffffffffffffffff166323b872dd8585856000604051602001526040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15156118ba57600080fd5b6102c65a03f115156118cb57600080fd5b505050604051805190509050949350505050565b60008373ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e611f4061ffff1685856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600088803b15156119b657600080fd5b87f115156119c357600080fd5b505050506040518051905090509392505050565b60008273ffffffffffffffffffffffffffffffffffffffff166370a08231611f4061ffff16846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600088803b1515611a7a57600080fd5b87f11515611a8757600080fd5b5050505060405180519050905092915050565b60008273ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630eefdbad6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515611b4657600080fd5b6102c65a03f11515611b5757600080fd5b50505060405180519050846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515611bef57600080fd5b6102c65a03f11515611c0057600080fd5b505050604051805190509050929150505600a165627a7a7230582051723af670e00f905ed79837151ff2f428c566a7778657a079e3873cc19020a10029", + "sourceMap": "1086:10007:2:-;;;268:5:37;247:26;;;;;;;;;;;;;;;;;;;;2040:140:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;509:10:39;501:5;;:18;;;;;;;;;;;;;;;;;;2155:17:2;2119:16;;:54;;;;;;;;;;;;;;;;;;2040:140;1086:10007;;;;;;", + "deployedSourceMap": "1086:10007:2:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;833:87:37;;;;;;;;;;;;;;2398:3551:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;247:26:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;666:85;;;;;;;;;;;;;;238:20:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6048:607:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1502:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1333:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1559:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1380:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1441:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;832:169:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;833:87:37;653:5:39;;;;;;;;;;;639:19;;:10;:19;;;631:28;;;;;;;;568:6:37;;;;;;;;;;;560:15;;;;;;;;895:5;886:6;;:14;;;;;;;;;;;;;;;;;;906:9;;;;;;;;;;833:87::o;2398:3551:2:-;2835:20;2872:30;4402:25;5343:19;416:6:37;;;;;;;;;;;415:7;407:16;;;;;;;;2905:647:2;;;;;;;;;;2962:8;2905:647;;;;;;;;2996:16;;;;;;;;;;;:27;;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2905:647;;;;;;;;3067:14;3082:1;3067:17;;;;;;;;;;;;;2905:647;;;;;;;;3130:14;3145:1;3130:17;;;;;;;;;;;;;2905:647;;;;;;;;3191:14;3206:1;3191:17;;;;;;;;;;;;;2905:647;;;;;;;;;;;;;;;;3283:11;3295:1;3283:14;;;;;;;;;;;;;2905:647;;;;3323:11;3335:1;3323:14;;;;;;;;;;;;;2905:647;;;;3375:11;3387:1;3375:14;;;;;;;;;;;;;2905:647;;;;3423:11;3435:1;3423:14;;;;;;;;;;;;;2905:647;;;3503:12;2905:25;:647::i;:::-;2872:680;;3567:15;:39;3583:22;3567:39;;;;;;;;;;;;;;;;;;;;;;;;;;;3563:192;;;3682:22;3622:83;;;3672:8;3622:83;;3637:32;3631:39;;;;;;;;3622:83;;;;;;;;;;;;1433:1;1425:10;;3719:25;;;;3563:192;3769:18;:42;3788:22;3769:42;;;;;;;;;;;;;;;;;;;;;;;;;;;3765:190;;;3882:22;3827:78;;;3872:8;3827:78;;3842:27;3836:34;;;;;;;;3827:78;;;;;;;;;;;;1433:1;1425:10;;3919:25;;;;3765:190;3970:168;4000:8;4022:22;4058:11;4070:1;4058:14;;;;;;;;;;;;;4086:11;4098:1;4086:14;;;;;;;;;;;;;4114:11;4126:1;4114:14;;;;;;;;;;;;;3970:16;:168::i;:::-;3969:169;3965:384;;;4263:22;4154:145;;;4237:8;4154:145;;4186:32;4180:39;;;;;;;;4154:145;;;;;;;;;;;;1433:1;1425:10;;4313:25;;;;3965:384;4430:34;4449:11;4461:1;4449:14;;;;;;;;;;;;;4430:11;4442:1;4430:14;;;;;;;;;;;;;:18;;:34;;;;:::i;:::-;4402:62;;4480:129;4526:8;4548:14;4563:1;4548:17;;;;;;;;;;;;;4579:20;4480:32;:129::i;:::-;4479:130;4475:362;;;4751:22;4625:162;;;4725:8;4625:162;;4657:49;4651:56;;;;;;;;4625:162;;;;;;;;;;;;1433:1;1425:10;;4801:25;;;;4475:362;4935:1;4912:20;:24;4908:276;;;4977:182;5017:14;5032:1;5017:17;;;;;;;;;;;;;5056:8;5094:4;5121:20;4977:18;:182::i;:::-;4952:221;;;;;;;;4908:276;5365:16;;;;;;;;;;;:27;;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:43;;;5430:4;5449:14;5477:11;5502:12;5528:11;5553;5578;5365:234;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5343:256:2;;1433:1;1425:10;;5618:33;;;:11;:33;;;;;5610:42;;;;;;;;5705:4;5663:15;:39;5679:22;5663:39;;;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;5768:16;;;;;;;;;;;:26;;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:37;;;5806:8;5824:11;5816:20;;;5768:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5901:11;5848:65;;;5877:22;5848:65;;;5867:8;5848:65;;;;;;;;;;;;5931:11;5924:18;;429:1:37;2398:3551:2;;;;;;;;;;;;:::o;247:26:37:-;;;;;;;;;;;;;:::o;666:85::-;653:5:39;;;;;;;;;;;639:19;;:10;:19;;;631:28;;;;;;;;416:6:37;;;;;;;;;;;415:7;407:16;;;;;;;;729:4;720:6;;:13;;;;;;;;;;;;;;;;;;739:7;;;;;;;;;;666:85::o;238:20:39:-;;;;;;;;;;;;;:::o;6048:607:2:-;6342:30;416:6:37;;;;;;;;;;;415:7;407:16;;;;;;;;6309:19:2;6329:1;6309:22;;;;;;;;;;;;;6295:36;;:10;:36;;;6287:45;;;;;;;;6375:135;6414:19;6447:16;6477:23;6375:25;:135::i;:::-;6342:168;;6565:4;6520:18;:42;6539:22;6520:42;;;;;;;;;;;;;;;;;;:49;;;;;;;;;;;;;;;;;;6625:22;6579:69;;;6601:19;6621:1;6601:22;;;;;;;;;;;;;6579:69;;;;;;;;;;;;6048:607;;;;:::o;1502:51::-;;;;;;;;;;;;;;;;;;;;;;:::o;1333:40::-;;;;;;;;;;;;;:::o;1559:48::-;;;;;;;;;;;;;;;;;;;;;;:::o;1380:55::-;1433:1;1425:10;;1380:55;:::o;1441:54::-;1491:4;1441:54;:::o;832:169:39:-;653:5;;;;;;;;;;;639:19;;:10;:19;;;631:28;;;;;;;;928:1;908:22;;:8;:22;;;;900:31;;;;;;;;965:8;937:37;;958:5;;;;;;;;;;;937:37;;;;;;;;;;;;988:8;980:5;;:16;;;;;;;;;;;;;;;;;;832:169;:::o;6845:865:2:-;7051:31;7128:19;7148:1;7128:22;;;;;;;;;;;;;7176:19;7196:1;7176:22;;;;;;;;;;;;;7235:19;7255:1;7235:22;;;;;;;;;;;;;7299:19;7319:1;7299:22;;;;;;;;;;;;;7361:19;7381:1;7361:22;;;;;;;;;;;;;7424:16;7441:1;7424:19;;;;;;;;;;;;;7465:16;7482:1;7465:19;;;;;;;;;;;;;7518:16;7535:1;7518:19;;;;;;;;;;;;;7567:16;7584:1;7567:19;;;;;;;;;;;;;7638:23;7662:1;7638:26;;;;;;;;;;;;;7105:598;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7098:605;;6845:865;;;;;:::o;9165:360::-;9345:11;9389:129;9458:4;9412:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9477:1;9492;9507;9389:129;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9379:139;;:6;:139;;;9372:146;;9165:360;;;;;;;:::o;1007:129:38:-;1065:7;1080:9;1096:1;1092;:5;1080:17;;1115:1;1110;:6;;1103:14;;;;;;1130:1;1123:8;;1007:129;;;;;:::o;7921:1107:2:-;8096:37;8222:19;8307:20;8596:27;8244:53;8257:14;8273:8;8291:4;8244:12;:53::i;:::-;8222:75;;8330:36;8341:14;8357:8;8330:10;:36::i;:::-;8307:59;;8399:20;8381:15;:38;:79;;;;8440:20;8423:14;:37;8381:79;8377:122;;;8483:5;8476:12;;;;8377:122;8626:128;8652:14;8688:4;8707:16;;;;;;;;;;;:35;;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8626:12;:128::i;:::-;8596:158;;8881:20;8856:22;:45;8852:148;;;8925:63;8951:14;8967:20;8925:25;:63::i;:::-;8917:72;;;;;;;;8852:148;9017:4;9010:11;;7921:1107;;;;;;;;;:::o;10843:248::-;11001:13;11043:6;11037:26;;;11064:5;11071:3;11076:7;11037:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11030:54;;10843:248;;;;;;:::o;10004:337::-;10150:15;10238:5;10232:22;;;1491:4;10232:52;;10298:5;10317:7;10232:102;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10225:109;;10004:337;;;;;:::o;9621:265::-;9740:13;9826:5;9820:22;;;1491:4;9820:52;;9873:5;9820:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9813:66;;9621:265;;;;:::o;10458:272::-;10577:13;10619:5;10613:20;;;10655:16;;;;;;;;;;;:35;;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10707:6;10613:110;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10606:117;;10458:272;;;;:::o", + "source": "/*\n\n Copyright 2017 Dharma Labs Inc.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n*/\n\npragma solidity 0.4.18;\n\nimport \"./ContractRegistry.sol\";\nimport \"zeppelin-solidity/contracts/lifecycle/Pausable.sol\";\nimport \"zeppelin-solidity/contracts/math/SafeMath.sol\";\nimport \"zeppelin-solidity/contracts/token/ERC20/ERC20.sol\";\n\n\n/**\n * The CreditorProxy is a thin wrapper around the DebtKernel\n * It implements creditor-driven loans as specified by DIP-1\n *\n * Authors: Bo Henderson & Shivani Gupta & Dharma Team\n * DIP: https://github.com/dharmaprotocol/DIPs/issues/1\n */\ncontract CreditorProxy is Pausable {\n using SafeMath for uint;\n\n enum Errors {\n DEBT_OFFER_CANCELLED,\n DEBT_OFFER_ALREADY_FILLED,\n DEBT_OFFER_NON_CONSENSUAL,\n CREDITOR_BALANCE_OR_ALLOWANCE_INSUFFICIENT\n }\n\n ContractRegistry public contractRegistry;\n\n bytes32 constant public NULL_ISSUANCE_HASH = bytes32(0);\n uint16 constant public EXTERNAL_QUERY_GAS_LIMIT = 8000;\n\n mapping (bytes32 => bool) public debtOfferCancelled;\n mapping (bytes32 => bool) public debtOfferFilled;\n\n event LogDebtOfferCancelled(\n address indexed _creditor,\n bytes32 indexed _creditorCommitmentHash\n );\n\n event LogDebtOfferFilled(\n address indexed _creditor,\n bytes32 indexed _creditorCommitmentHash,\n bytes32 indexed _agreementId\n );\n\n event LogError(\n uint8 indexed _errorId,\n address indexed _creditor,\n bytes32 indexed _creditorCommitmentHash\n );\n\n function CreditorProxy(address _contractRegistry)\n public\n {\n contractRegistry = ContractRegistry(_contractRegistry);\n }\n\n /*\n * Submit debt order to DebtKernel if it is consensual with creditor's request\n * Creditor signature in arguments is only used internally,\n * It will not be verified by the Debt Kernel\n */\n function fillDebtOffer(\n address creditor,\n address[6] orderAddresses, // repayment-router, debtor, uw, tc, p-token, relayer\n uint[8] orderValues, // rr, salt, pa, uwFee, rFee, cFee, dFee, expTime\n bytes32[1] orderBytes32, // tcParams\n uint8[3] signaturesV, // debtV, credV, uwV\n bytes32[3] signaturesR,\n bytes32[3] signaturesS\n )\n public\n whenNotPaused\n returns (bytes32 _agreementId)\n {\n\n bytes32 creditorCommitmentHash = getCreditorCommitmentHash(\n [\n creditor,\n address(contractRegistry.debtKernel()), // debt kernel version\n orderAddresses[0], // repayment router version\n orderAddresses[3], // terms contract address\n orderAddresses[4] // principal token adddress\n\n ],\n [\n orderValues[1], // salt\n orderValues[2], // principal amount\n orderValues[5], // creditor fee\n orderValues[7] // commitmentExpirationTimestampInSec\n ],\n orderBytes32 // termsContractParameters\n );\n\n if (debtOfferFilled[creditorCommitmentHash]) {\n LogError(uint8(Errors.DEBT_OFFER_ALREADY_FILLED), creditor, creditorCommitmentHash);\n return NULL_ISSUANCE_HASH;\n }\n\n if (debtOfferCancelled[creditorCommitmentHash]) {\n LogError(uint8(Errors.DEBT_OFFER_CANCELLED), creditor, creditorCommitmentHash);\n return NULL_ISSUANCE_HASH;\n }\n\n if (!isValidSignature(\n creditor,\n creditorCommitmentHash,\n signaturesV[1],\n signaturesR[1],\n signaturesS[1]\n )) {\n LogError(\n uint8(Errors.DEBT_OFFER_NON_CONSENSUAL),\n creditor,\n creditorCommitmentHash\n );\n return NULL_ISSUANCE_HASH;\n }\n\n // principal amount + creditor fee\n uint totalCreditorPayment = orderValues[2].add(orderValues[5]);\n\n if (!hasSufficientBalanceAndAllowance(\n creditor,\n orderAddresses[4],\n totalCreditorPayment\n )) {\n LogError(\n uint8(Errors.CREDITOR_BALANCE_OR_ALLOWANCE_INSUFFICIENT),\n creditor,\n creditorCommitmentHash\n );\n return NULL_ISSUANCE_HASH;\n }\n\n // Transfer principal from creditor to CreditorProxy\n if (totalCreditorPayment > 0) {\n require(\n transferTokensFrom(\n orderAddresses[4],\n creditor,\n address(this),\n totalCreditorPayment\n )\n );\n }\n\n // Grant allowance to the TokenTransferProxy for this contract.\n\n\n // Fill debt order with this contract playing the role of creditor\n bytes32 agreementId = contractRegistry.debtKernel().fillDebtOrder(\n address(this),\n orderAddresses,\n orderValues,\n orderBytes32,\n signaturesV,\n signaturesR,\n signaturesS\n );\n\n require(agreementId != NULL_ISSUANCE_HASH);\n\n debtOfferFilled[creditorCommitmentHash] = true;\n\n // transfer debt token to real creditor\n contractRegistry.debtToken().transfer(creditor, uint256(agreementId));\n\n LogDebtOfferFilled(creditor, creditorCommitmentHash, agreementId);\n\n return agreementId;\n }\n\n /**\n * Allows creditor to prevent a debt offer from being used in the future\n */\n function cancelDebtOffer(\n address[5] commitmentAddresses,\n uint[4] commitmentValues,\n bytes32[1] termsContractParameters\n )\n public\n whenNotPaused\n {\n // sender must be the creditor\n require(msg.sender == commitmentAddresses[0]);\n bytes32 creditorCommitmentHash = getCreditorCommitmentHash(\n commitmentAddresses,\n commitmentValues,\n termsContractParameters\n );\n debtOfferCancelled[creditorCommitmentHash] = true;\n LogDebtOfferCancelled(commitmentAddresses[0], creditorCommitmentHash);\n }\n\n ////////////////////////\n // INTERNAL FUNCTIONS //\n ////////////////////////\n\n /**\n * Returns the messaged signed by the creditor to indicate their commitment\n */\n function getCreditorCommitmentHash(\n address[5] commitmentAddresses,\n uint[4] commitmentValues,\n bytes32[1] termsContractParameters\n )\n internal\n pure\n returns (bytes32 _creditorCommitmentHash)\n {\n return keccak256(\n commitmentAddresses[0], // creditor\n commitmentAddresses[1], // debt kernel version\n commitmentAddresses[2], // repayment router version\n commitmentAddresses[3], // terms contract address\n commitmentAddresses[4], // principal token address\n commitmentValues[0], // salt\n commitmentValues[1], // principal amount\n commitmentValues[2], // creditor fee\n commitmentValues[3], // commitmentExpirationTimestampInSec\n termsContractParameters[0] // terms contract parameters\n );\n }\n\n\n /**\n * Assert that the creditor has a sufficient token balance and has granted the token transfer\n * proxy contract sufficient allowance to suffice for the principal and creditor fee.\n */\n function hasSufficientBalanceAndAllowance(\n address creditor,\n address principalToken,\n uint totalCreditorPayment\n )\n internal\n returns (bool _isBalanceAndAllowanceSufficient)\n {\n // The allowance that this contract has for a creditor's tokens.\n uint proxyAllowance = getAllowance(principalToken, creditor, address(this));\n uint creditorBalance = getBalance(principalToken, creditor);\n\n if (creditorBalance < totalCreditorPayment || proxyAllowance < totalCreditorPayment) {\n return false;\n }\n\n // The allowance that the token transfer proxy has for this contract's tokens.\n uint tokenTransferAllowance = getAllowance(\n principalToken,\n address(this),\n contractRegistry.tokenTransferProxy()\n );\n\n // Ensure the token transfer proxy can transfer tokens from the creditor proxy\n if (tokenTransferAllowance < totalCreditorPayment) {\n require(setTokenTransferAllowance(principalToken, totalCreditorPayment));\n }\n\n return true;\n }\n\n /**\n * Given a hashed message, a signer's address, and a signature,\n * returns whether the signature is valid.\n */\n function isValidSignature(\n address signer,\n bytes32 hash,\n uint8 v,\n bytes32 r,\n bytes32 s\n )\n internal\n pure\n returns (bool _valid)\n {\n return signer == ecrecover(\n keccak256(\"\\x19Ethereum Signed Message:\\n32\", hash),\n v,\n r,\n s\n );\n }\n\n /**\n * Helper function for querying an address' balance on a given token.\n */\n function getBalance(\n address token,\n address owner\n )\n internal\n view\n returns (uint _balance)\n {\n // Limit gas to prevent reentrancy.\n return ERC20(token).balanceOf.gas(EXTERNAL_QUERY_GAS_LIMIT)(owner);\n }\n\n /**\n * Helper function for querying this contract's allowance for transferring the given token.\n */\n function getAllowance(\n address token,\n address owner,\n address granter\n )\n internal\n view\n returns (uint _allowance)\n {\n // Limit gas to prevent reentrancy.\n return ERC20(token).allowance.gas(EXTERNAL_QUERY_GAS_LIMIT)(\n owner,\n granter\n );\n }\n\n /**\n * Helper function for approving this address' allowance to Dharma's token transfer proxy.\n */\n function setTokenTransferAllowance(\n address token,\n uint amount\n )\n internal\n returns (bool _success)\n {\n return ERC20(token).approve(\n address(contractRegistry.tokenTransferProxy()),\n amount\n );\n }\n\n\n /**\n * Helper function for transferring a specified amount of tokens between two parties.\n */\n function transferTokensFrom(\n address _token,\n address _from,\n address _to,\n uint _amount\n )\n internal\n returns (bool _success)\n {\n return ERC20(_token).transferFrom(_from, _to, _amount);\n }\n}\n", "sourcePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/CreditorProxy.sol", "ast": { "attributes": { @@ -8924,7 +8924,7 @@ export const CreditorProxy = } }, "links": {}, - "address": "0xd9b303da12a84a405c482c91592b5bd00a2317e2" + "address": "0x384e128de8bc07a6ec4b09b3c09052037db23af1" }, "70": { "events": { @@ -9024,5 +9024,5 @@ export const CreditorProxy = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:53:24.855Z" + "updatedAt": "2018-10-09T23:24:24.866Z" } \ No newline at end of file diff --git a/artifacts/ts/DebtKernel.ts b/artifacts/ts/DebtKernel.ts index 3dedee10..aacbf302 100644 --- a/artifacts/ts/DebtKernel.ts +++ b/artifacts/ts/DebtKernel.ts @@ -437,7 +437,7 @@ export const DebtKernel = }, { "attributes": { - "SourceUnit": 3541, + "SourceUnit": 3549, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtToken.sol", "file": "./DebtToken.sol", "scope": 2639, @@ -452,7 +452,7 @@ export const DebtKernel = }, { "attributes": { - "SourceUnit": 4758, + "SourceUnit": 4766, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TermsContract.sol", "file": "./TermsContract.sol", "scope": 2639, @@ -467,7 +467,7 @@ export const DebtKernel = }, { "attributes": { - "SourceUnit": 5207, + "SourceUnit": 5215, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TokenTransferProxy.sol", "file": "./TokenTransferProxy.sol", "scope": 2639, @@ -17683,7 +17683,7 @@ export const DebtKernel = } }, "links": {}, - "address": "0x4a42fbdae13791341361f9d2dd69873d83e4b816" + "address": "0x24db52da9748fbb889a5bcc4468b32fbc9172348" }, "70": { "events": { @@ -17815,5 +17815,5 @@ export const DebtKernel = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:51:53.185Z" + "updatedAt": "2018-10-09T23:22:13.505Z" } \ No newline at end of file diff --git a/artifacts/ts/DebtRegistry.ts b/artifacts/ts/DebtRegistry.ts index f6d3134a..2b26dc77 100644 --- a/artifacts/ts/DebtRegistry.ts +++ b/artifacts/ts/DebtRegistry.ts @@ -572,7 +572,7 @@ export const DebtRegistry = }, { "attributes": { - "SourceUnit": 6272, + "SourceUnit": 6280, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/libraries/PermissionsLib.sol", "file": "./libraries/PermissionsLib.sol", "scope": 3167, @@ -7985,7 +7985,7 @@ export const DebtRegistry = } }, "links": {}, - "address": "0x0db51854d2b302e35d8f0f7a4fabb2415f9e42a5" + "address": "0x3940a1aa50eac96c2b0f47befb1443f5636649ab" }, "70": { "events": { @@ -8165,5 +8165,5 @@ export const DebtRegistry = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:51:53.167Z" + "updatedAt": "2018-10-09T23:22:13.473Z" } \ No newline at end of file diff --git a/artifacts/ts/DebtToken.ts b/artifacts/ts/DebtToken.ts index fb14c3ea..864fa15d 100644 --- a/artifacts/ts/DebtToken.ts +++ b/artifacts/ts/DebtToken.ts @@ -769,7 +769,7 @@ export const DebtToken = }, { "attributes": { - "SourceUnit": 3159, + "SourceUnit": 3167, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtRegistry.sol", "file": "./DebtRegistry.sol", "scope": 3549, @@ -784,7 +784,7 @@ export const DebtToken = }, { "attributes": { - "SourceUnit": 3551, + "SourceUnit": 3559, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/ERC165.sol", "file": "./ERC165.sol", "scope": 3549, @@ -799,7 +799,7 @@ export const DebtToken = }, { "attributes": { - "SourceUnit": 6272, + "SourceUnit": 6280, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/libraries/PermissionsLib.sol", "file": "./libraries/PermissionsLib.sol", "scope": 3549, @@ -6203,7 +6203,7 @@ export const DebtToken = } }, "links": {}, - "address": "0xa99e0834ce4ac707371cbd6d938773b660552b91" + "address": "0xf0b37b0f7e0715b5a7d19ffb2259bb9a8caa0720" }, "70": { "events": { @@ -6342,5 +6342,5 @@ export const DebtToken = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:53:04.888Z" + "updatedAt": "2018-10-09T23:23:58.036Z" } \ No newline at end of file diff --git a/artifacts/ts/DeprecatedERC721.ts b/artifacts/ts/DeprecatedERC721.ts index 82e60a06..18c8a5ed 100644 --- a/artifacts/ts/DeprecatedERC721.ts +++ b/artifacts/ts/DeprecatedERC721.ts @@ -790,5 +790,5 @@ export const DeprecatedERC721 = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.433Z" + "updatedAt": "2018-10-09T23:15:05.489Z" } \ No newline at end of file diff --git a/artifacts/ts/DharmaMultiSigWallet.ts b/artifacts/ts/DharmaMultiSigWallet.ts index d1966799..2c519028 100644 --- a/artifacts/ts/DharmaMultiSigWallet.ts +++ b/artifacts/ts/DharmaMultiSigWallet.ts @@ -658,7 +658,7 @@ export const DharmaMultiSigWallet = }, { "attributes": { - "SourceUnit": 13919, + "SourceUnit": 13927, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/wallet/MultiSigWallet.sol", "file": "./MultiSigWallet.sol", "scope": 12937, @@ -5192,7 +5192,7 @@ export const DharmaMultiSigWallet = "42": { "events": {}, "links": {}, - "address": "0x73b8e624c2e0e55e7eaf5ff669a7c63f95781bb4" + "address": "0xa721f5c413fc06104e2544f0413075bfc94d8363" }, "70": { "events": {}, @@ -5201,5 +5201,5 @@ export const DharmaMultiSigWallet = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:53:24.844Z" + "updatedAt": "2018-10-09T23:24:24.856Z" } \ No newline at end of file diff --git a/artifacts/ts/DummyContract.ts b/artifacts/ts/DummyContract.ts index a556e820..48e4b1ff 100644 --- a/artifacts/ts/DummyContract.ts +++ b/artifacts/ts/DummyContract.ts @@ -217,7 +217,7 @@ export const DummyContract = }, { "attributes": { - "SourceUnit": 6272, + "SourceUnit": 6280, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/libraries/PermissionsLib.sol", "file": "../libraries/PermissionsLib.sol", "scope": 9944, @@ -1770,7 +1770,7 @@ export const DummyContract = "42": { "events": {}, "links": {}, - "address": "0x64481c13201a7baabd3a440eeba57170336f0e70" + "address": "0x6fc77e8aa556b15ac07e61ebc0a56a4ff636eee9" }, "70": { "events": {}, @@ -1779,5 +1779,5 @@ export const DummyContract = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:01.258Z" + "updatedAt": "2018-10-09T23:19:45.788Z" } \ No newline at end of file diff --git a/artifacts/ts/DummyToken.ts b/artifacts/ts/DummyToken.ts index 06a643af..6313984c 100644 --- a/artifacts/ts/DummyToken.ts +++ b/artifacts/ts/DummyToken.ts @@ -2153,5 +2153,5 @@ export const DummyToken = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:48:16.849Z" + "updatedAt": "2018-10-09T23:17:48.460Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC165.ts b/artifacts/ts/ERC165.ts index eb803e81..c3b10bc2 100644 --- a/artifacts/ts/ERC165.ts +++ b/artifacts/ts/ERC165.ts @@ -172,5 +172,5 @@ export const ERC165 = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.420Z" + "updatedAt": "2018-10-09T23:15:05.470Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC20.ts b/artifacts/ts/ERC20.ts index b13e5057..4b869afa 100644 --- a/artifacts/ts/ERC20.ts +++ b/artifacts/ts/ERC20.ts @@ -742,5 +742,5 @@ export const ERC20 = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.433Z" + "updatedAt": "2018-10-09T23:15:05.489Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC20Basic.ts b/artifacts/ts/ERC20Basic.ts index 54f34773..ef3c7682 100644 --- a/artifacts/ts/ERC20Basic.ts +++ b/artifacts/ts/ERC20Basic.ts @@ -511,5 +511,5 @@ export const ERC20Basic = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.427Z" + "updatedAt": "2018-10-09T23:15:05.486Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721.ts b/artifacts/ts/ERC721.ts index cff60308..663452c7 100644 --- a/artifacts/ts/ERC721.ts +++ b/artifacts/ts/ERC721.ts @@ -1111,5 +1111,5 @@ export const ERC721 = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.439Z" + "updatedAt": "2018-10-09T23:15:05.493Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721Basic.ts b/artifacts/ts/ERC721Basic.ts index de553412..954daf38 100644 --- a/artifacts/ts/ERC721Basic.ts +++ b/artifacts/ts/ERC721Basic.ts @@ -1664,5 +1664,5 @@ export const ERC721Basic = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.452Z" + "updatedAt": "2018-10-09T23:15:05.501Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721BasicToken.ts b/artifacts/ts/ERC721BasicToken.ts index 724fce61..4addd693 100644 --- a/artifacts/ts/ERC721BasicToken.ts +++ b/artifacts/ts/ERC721BasicToken.ts @@ -8710,5 +8710,5 @@ export const ERC721BasicToken = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.625Z" + "updatedAt": "2018-10-09T23:15:05.786Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721CollateralizedSimpleInterestTermsContract.ts b/artifacts/ts/ERC721CollateralizedSimpleInterestTermsContract.ts index 19e1fbc1..84b90dac 100644 --- a/artifacts/ts/ERC721CollateralizedSimpleInterestTermsContract.ts +++ b/artifacts/ts/ERC721CollateralizedSimpleInterestTermsContract.ts @@ -430,7 +430,7 @@ export const ERC721CollateralizedSimpleInterestTermsContract = }, { "attributes": { - "SourceUnit": 6053, + "SourceUnit": 6061, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/examples/SimpleInterestTermsContract.sol", "file": "./SimpleInterestTermsContract.sol", "scope": 5357, @@ -445,7 +445,7 @@ export const ERC721CollateralizedSimpleInterestTermsContract = }, { "attributes": { - "SourceUnit": 4167, + "SourceUnit": 4175, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/ERC721Collateralizer.sol", "file": "../ERC721Collateralizer.sol", "scope": 5357, @@ -1446,7 +1446,7 @@ export const ERC721CollateralizedSimpleInterestTermsContract = "42": { "events": {}, "links": {}, - "address": "0xe44c8dbcb6dab51c4d5291788ec3fb82d2fbad12" + "address": "0x043e8c93aa3f535fb58e8280cead1d87100d8849" }, "70": { "events": {}, @@ -1455,5 +1455,5 @@ export const ERC721CollateralizedSimpleInterestTermsContract = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:53:04.862Z" + "updatedAt": "2018-10-09T23:23:58.011Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721Collateralizer.ts b/artifacts/ts/ERC721Collateralizer.ts index 73ebdf03..912861de 100644 --- a/artifacts/ts/ERC721Collateralizer.ts +++ b/artifacts/ts/ERC721Collateralizer.ts @@ -517,7 +517,7 @@ export const ERC721Collateralizer = }, { "attributes": { - "SourceUnit": 4758, + "SourceUnit": 4766, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TermsContract.sol", "file": "./TermsContract.sol", "scope": 4175, @@ -532,7 +532,7 @@ export const ERC721Collateralizer = }, { "attributes": { - "SourceUnit": 3159, + "SourceUnit": 3167, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtRegistry.sol", "file": "./DebtRegistry.sol", "scope": 4175, @@ -562,7 +562,7 @@ export const ERC721Collateralizer = }, { "attributes": { - "SourceUnit": 4458, + "SourceUnit": 4466, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/ERC721TokenRegistry.sol", "file": "./ERC721TokenRegistry.sol", "scope": 4175, @@ -577,7 +577,7 @@ export const ERC721Collateralizer = }, { "attributes": { - "SourceUnit": 6272, + "SourceUnit": 6280, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/libraries/PermissionsLib.sol", "file": "./libraries/PermissionsLib.sol", "scope": 4175, @@ -9499,7 +9499,7 @@ export const ERC721Collateralizer = } }, "links": {}, - "address": "0xf3abfc01a071e8bbf3f820c2629510b9bc5e3229" + "address": "0xa4408bcdbba1720d6973563a3c24965534c0d7b2" }, "70": { "events": { @@ -9648,5 +9648,5 @@ export const ERC721Collateralizer = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:53:04.896Z" + "updatedAt": "2018-10-09T23:23:58.045Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721Enumerable.ts b/artifacts/ts/ERC721Enumerable.ts index 69ea9d81..a191859b 100644 --- a/artifacts/ts/ERC721Enumerable.ts +++ b/artifacts/ts/ERC721Enumerable.ts @@ -1064,5 +1064,5 @@ export const ERC721Enumerable = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.440Z" + "updatedAt": "2018-10-09T23:15:05.493Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721Metadata.ts b/artifacts/ts/ERC721Metadata.ts index 9876c535..d0e9e183 100644 --- a/artifacts/ts/ERC721Metadata.ts +++ b/artifacts/ts/ERC721Metadata.ts @@ -1055,5 +1055,5 @@ export const ERC721Metadata = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.441Z" + "updatedAt": "2018-10-09T23:15:05.494Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721Receiver.ts b/artifacts/ts/ERC721Receiver.ts index 546d13ee..96a0bf72 100644 --- a/artifacts/ts/ERC721Receiver.ts +++ b/artifacts/ts/ERC721Receiver.ts @@ -275,5 +275,5 @@ export const ERC721Receiver = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.427Z" + "updatedAt": "2018-10-09T23:15:05.486Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721Token.ts b/artifacts/ts/ERC721Token.ts index f4fdc93a..ded222ad 100644 --- a/artifacts/ts/ERC721Token.ts +++ b/artifacts/ts/ERC721Token.ts @@ -5400,7 +5400,7 @@ export const ERC721Token = "42": { "events": {}, "links": {}, - "address": "0xebc1a917d464d779ad5eba480de9935bf4ce9760" + "address": "0x3e9171ebba163b92a271144b2fe907b10c9a5131" }, "70": { "events": {}, @@ -5409,5 +5409,5 @@ export const ERC721Token = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:01.301Z" + "updatedAt": "2018-10-09T23:19:45.827Z" } \ No newline at end of file diff --git a/artifacts/ts/ERC721TokenRegistry.ts b/artifacts/ts/ERC721TokenRegistry.ts index 460559a1..1f83119f 100644 --- a/artifacts/ts/ERC721TokenRegistry.ts +++ b/artifacts/ts/ERC721TokenRegistry.ts @@ -4184,7 +4184,7 @@ export const ERC721TokenRegistry = } }, "links": {}, - "address": "0xd1ec79ec665dddf7a65024c44dd75f625e88271f" + "address": "0xa6ff31840df1b2644f443410170412ed402df1bc" }, "70": { "events": { @@ -4211,5 +4211,5 @@ export const ERC721TokenRegistry = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:53:04.870Z" + "updatedAt": "2018-10-09T23:23:58.017Z" } \ No newline at end of file diff --git a/artifacts/ts/GeneScienceInterface.ts b/artifacts/ts/GeneScienceInterface.ts index 72aa8950..c1297012 100644 --- a/artifacts/ts/GeneScienceInterface.ts +++ b/artifacts/ts/GeneScienceInterface.ts @@ -51684,5 +51684,5 @@ export const GeneScienceInterface = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.863Z" + "updatedAt": "2018-10-09T23:15:06.621Z" } \ No newline at end of file diff --git a/artifacts/ts/IncompatibleTermsContract.ts b/artifacts/ts/IncompatibleTermsContract.ts index 85dd95ff..88d76b8b 100644 --- a/artifacts/ts/IncompatibleTermsContract.ts +++ b/artifacts/ts/IncompatibleTermsContract.ts @@ -152,7 +152,7 @@ export const IncompatibleTermsContract = }, { "attributes": { - "SourceUnit": 4758, + "SourceUnit": 4766, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TermsContract.sol", "file": "../../TermsContract.sol", "scope": 12594, @@ -988,7 +988,7 @@ export const IncompatibleTermsContract = "42": { "events": {}, "links": {}, - "address": "0xc8d55fd3717f8c3f8d31456504ab84b11b80520e" + "address": "0x0c5fdac9b1fd226bc853375a2f8c68fcdde5d194" }, "70": { "events": {}, @@ -997,5 +997,5 @@ export const IncompatibleTermsContract = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:25.365Z" + "updatedAt": "2018-10-09T23:20:25.126Z" } \ No newline at end of file diff --git a/artifacts/ts/KittiesERC721.ts b/artifacts/ts/KittiesERC721.ts index bd6edbce..ade81b43 100644 --- a/artifacts/ts/KittiesERC721.ts +++ b/artifacts/ts/KittiesERC721.ts @@ -51816,5 +51816,5 @@ export const KittiesERC721 = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.810Z" + "updatedAt": "2018-10-09T23:15:06.810Z" } \ No newline at end of file diff --git a/artifacts/ts/KittiesERC721Metadata.ts b/artifacts/ts/KittiesERC721Metadata.ts index e2be13a9..6c3a0e4e 100644 --- a/artifacts/ts/KittiesERC721Metadata.ts +++ b/artifacts/ts/KittiesERC721Metadata.ts @@ -51670,5 +51670,5 @@ export const KittiesERC721Metadata = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.886Z" + "updatedAt": "2018-10-09T23:15:06.098Z" } \ No newline at end of file diff --git a/artifacts/ts/KittiesOwnable.ts b/artifacts/ts/KittiesOwnable.ts index 04c33158..faa7de2e 100644 --- a/artifacts/ts/KittiesOwnable.ts +++ b/artifacts/ts/KittiesOwnable.ts @@ -51677,5 +51677,5 @@ export const KittiesOwnable = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.914Z" + "updatedAt": "2018-10-09T23:15:06.145Z" } \ No newline at end of file diff --git a/artifacts/ts/KittiesPausable.ts b/artifacts/ts/KittiesPausable.ts index fbd1fb79..c325d549 100644 --- a/artifacts/ts/KittiesPausable.ts +++ b/artifacts/ts/KittiesPausable.ts @@ -51725,5 +51725,5 @@ export const KittiesPausable = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.995Z" + "updatedAt": "2018-10-09T23:15:06.192Z" } \ No newline at end of file diff --git a/artifacts/ts/KittyAccessControl.ts b/artifacts/ts/KittyAccessControl.ts index ac12df76..a9df851b 100644 --- a/artifacts/ts/KittyAccessControl.ts +++ b/artifacts/ts/KittyAccessControl.ts @@ -51771,5 +51771,5 @@ export const KittyAccessControl = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.953Z" + "updatedAt": "2018-10-09T23:15:06.235Z" } \ No newline at end of file diff --git a/artifacts/ts/KittyAuction.ts b/artifacts/ts/KittyAuction.ts index d5f57a22..d054071b 100644 --- a/artifacts/ts/KittyAuction.ts +++ b/artifacts/ts/KittyAuction.ts @@ -52526,5 +52526,5 @@ export const KittyAuction = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:36.264Z" + "updatedAt": "2018-10-09T23:15:06.992Z" } \ No newline at end of file diff --git a/artifacts/ts/KittyBase.ts b/artifacts/ts/KittyBase.ts index 2be3ecef..f2d2d74c 100644 --- a/artifacts/ts/KittyBase.ts +++ b/artifacts/ts/KittyBase.ts @@ -51957,5 +51957,5 @@ export const KittyBase = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:36.187Z" + "updatedAt": "2018-10-09T23:15:06.304Z" } \ No newline at end of file diff --git a/artifacts/ts/KittyBreeding.ts b/artifacts/ts/KittyBreeding.ts index e0631a3c..4205ef44 100644 --- a/artifacts/ts/KittyBreeding.ts +++ b/artifacts/ts/KittyBreeding.ts @@ -52419,5 +52419,5 @@ export const KittyBreeding = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:36.217Z" + "updatedAt": "2018-10-09T23:15:06.903Z" } \ No newline at end of file diff --git a/artifacts/ts/KittyCore.ts b/artifacts/ts/KittyCore.ts index 132e3869..db483aa4 100644 --- a/artifacts/ts/KittyCore.ts +++ b/artifacts/ts/KittyCore.ts @@ -52747,7 +52747,7 @@ export const KittyCore = "42": { "events": {}, "links": {}, - "address": "0x116a62dad694e694f17cbccc917739c3f0c51666" + "address": "0xb130247732a351dbe4f6a463d0c9dd045e9d5f9d" }, "70": { "events": {}, @@ -52756,5 +52756,5 @@ export const KittyCore = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:53:04.937Z" + "updatedAt": "2018-10-09T23:23:58.086Z" } \ No newline at end of file diff --git a/artifacts/ts/KittyMinting.ts b/artifacts/ts/KittyMinting.ts index 5e0ec4cf..f3371232 100644 --- a/artifacts/ts/KittyMinting.ts +++ b/artifacts/ts/KittyMinting.ts @@ -52642,5 +52642,5 @@ export const KittyMinting = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:36.305Z" + "updatedAt": "2018-10-09T23:15:07.045Z" } \ No newline at end of file diff --git a/artifacts/ts/KittyOwnership.ts b/artifacts/ts/KittyOwnership.ts index e924c401..7f154603 100644 --- a/artifacts/ts/KittyOwnership.ts +++ b/artifacts/ts/KittyOwnership.ts @@ -52206,5 +52206,5 @@ export const KittyOwnership = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:36.421Z" + "updatedAt": "2018-10-09T23:15:06.755Z" } \ No newline at end of file diff --git a/artifacts/ts/Migrations.ts b/artifacts/ts/Migrations.ts index e73ffbe2..d5f992dc 100644 --- a/artifacts/ts/Migrations.ts +++ b/artifacts/ts/Migrations.ts @@ -819,7 +819,7 @@ export const Migrations = "42": { "events": {}, "links": {}, - "address": "0x4c4bd0258c47645a61a55c66c40168e61dcb19b2" + "address": "0x4ebdc600ff9d56be607c51ef918f0dcec4c0ebb8" }, "70": { "events": {}, @@ -828,5 +828,5 @@ export const Migrations = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:53:24.835Z" + "updatedAt": "2018-10-09T23:24:24.847Z" } \ No newline at end of file diff --git a/artifacts/ts/MintableERC721Token.ts b/artifacts/ts/MintableERC721Token.ts index c0294e99..5c238c67 100644 --- a/artifacts/ts/MintableERC721Token.ts +++ b/artifacts/ts/MintableERC721Token.ts @@ -483,7 +483,7 @@ export const MintableERC721Token = }, { "attributes": { - "SourceUnit": 3551, + "SourceUnit": 3559, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/ERC165.sol", "file": "../ERC165.sol", "scope": 10001, @@ -1237,7 +1237,7 @@ export const MintableERC721Token = "42": { "events": {}, "links": {}, - "address": "0x67b0b219faf38b7a862c480213b2860e645c264f" + "address": "0x574bacd5fb68c4e004546fe87b108bb6f5240842" }, "70": { "events": {}, @@ -1246,5 +1246,5 @@ export const MintableERC721Token = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:53:04.860Z" + "updatedAt": "2018-10-09T23:23:58.009Z" } \ No newline at end of file diff --git a/artifacts/ts/MintableToken.ts b/artifacts/ts/MintableToken.ts index 3edf2d40..f9c5f4a2 100644 --- a/artifacts/ts/MintableToken.ts +++ b/artifacts/ts/MintableToken.ts @@ -1665,5 +1665,5 @@ export const MintableToken = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.471Z" + "updatedAt": "2018-10-09T23:15:05.514Z" } \ No newline at end of file diff --git a/artifacts/ts/MockCollateralizedTermsContract.ts b/artifacts/ts/MockCollateralizedTermsContract.ts index 8f01cb98..3c104096 100644 --- a/artifacts/ts/MockCollateralizedTermsContract.ts +++ b/artifacts/ts/MockCollateralizedTermsContract.ts @@ -372,7 +372,7 @@ export const MockCollateralizedTermsContract = }, { "attributes": { - "SourceUnit": 10693, + "SourceUnit": 10701, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 10516, @@ -5723,7 +5723,7 @@ export const MockCollateralizedTermsContract = "42": { "events": {}, "links": {}, - "address": "0x67d4984f33adaa13b879dc532a49bc7a46140353" + "address": "0x261a62f4f3f50cedb05ba05236e04f1a67598352" }, "70": { "events": {}, @@ -5732,5 +5732,5 @@ export const MockCollateralizedTermsContract = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:01.318Z" + "updatedAt": "2018-10-09T23:19:45.835Z" } \ No newline at end of file diff --git a/artifacts/ts/MockContract.ts b/artifacts/ts/MockContract.ts index dae154a5..943a0e01 100644 --- a/artifacts/ts/MockContract.ts +++ b/artifacts/ts/MockContract.ts @@ -2544,5 +2544,5 @@ export const MockContract = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.500Z" + "updatedAt": "2018-10-09T23:15:05.525Z" } \ No newline at end of file diff --git a/artifacts/ts/MockDebtKernel.ts b/artifacts/ts/MockDebtKernel.ts index f281d6fb..68239f55 100644 --- a/artifacts/ts/MockDebtKernel.ts +++ b/artifacts/ts/MockDebtKernel.ts @@ -187,7 +187,7 @@ export const MockDebtKernel = }, { "attributes": { - "SourceUnit": 10693, + "SourceUnit": 10701, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 10844, @@ -2231,5 +2231,5 @@ export const MockDebtKernel = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.497Z" + "updatedAt": "2018-10-09T23:15:05.523Z" } \ No newline at end of file diff --git a/artifacts/ts/MockDebtRegistry.ts b/artifacts/ts/MockDebtRegistry.ts index a87ea4e9..09d06b09 100644 --- a/artifacts/ts/MockDebtRegistry.ts +++ b/artifacts/ts/MockDebtRegistry.ts @@ -466,7 +466,7 @@ export const MockDebtRegistry = }, { "attributes": { - "SourceUnit": 10693, + "SourceUnit": 10701, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 11222, @@ -5997,7 +5997,7 @@ export const MockDebtRegistry = "42": { "events": {}, "links": {}, - "address": "0x7593f653e23985ac6371a1e2d0a681f6e5534007" + "address": "0x1776579cf04dc9c93212796cb286b712c243666e" }, "70": { "events": {}, @@ -6006,5 +6006,5 @@ export const MockDebtRegistry = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:01.328Z" + "updatedAt": "2018-10-09T23:19:45.832Z" } \ No newline at end of file diff --git a/artifacts/ts/MockDebtToken.ts b/artifacts/ts/MockDebtToken.ts index 03043443..931cd528 100644 --- a/artifacts/ts/MockDebtToken.ts +++ b/artifacts/ts/MockDebtToken.ts @@ -353,7 +353,7 @@ export const MockDebtToken = }, { "attributes": { - "SourceUnit": 10693, + "SourceUnit": 10701, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 11511, @@ -4599,7 +4599,7 @@ export const MockDebtToken = "42": { "events": {}, "links": {}, - "address": "0xf655449119757b6fd26c45702718812dbbd51356" + "address": "0x939a43abc22d93c7d8146740a532b0d630f8239c" }, "70": { "events": {}, @@ -4608,5 +4608,5 @@ export const MockDebtToken = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:01.286Z" + "updatedAt": "2018-10-09T23:19:45.820Z" } \ No newline at end of file diff --git a/artifacts/ts/MockERC20Token.ts b/artifacts/ts/MockERC20Token.ts index 3262e1d1..75bedc17 100644 --- a/artifacts/ts/MockERC20Token.ts +++ b/artifacts/ts/MockERC20Token.ts @@ -315,7 +315,7 @@ export const MockERC20Token = }, { "attributes": { - "SourceUnit": 10693, + "SourceUnit": 10701, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 11767, @@ -4017,7 +4017,7 @@ export const MockERC20Token = "42": { "events": {}, "links": {}, - "address": "0x80bd8dc16d0b1bee8ce941ce2fb9108177a7dc85" + "address": "0xdbe3b7d496724ad8308ab434d59ab9896ddf245f" }, "70": { "events": {}, @@ -4026,5 +4026,5 @@ export const MockERC20Token = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:01.281Z" + "updatedAt": "2018-10-09T23:19:45.813Z" } \ No newline at end of file diff --git a/artifacts/ts/MockERC721Receiver.ts b/artifacts/ts/MockERC721Receiver.ts index c7f8df6e..f4e1383d 100644 --- a/artifacts/ts/MockERC721Receiver.ts +++ b/artifacts/ts/MockERC721Receiver.ts @@ -169,7 +169,7 @@ export const MockERC721Receiver = }, { "attributes": { - "SourceUnit": 10693, + "SourceUnit": 10701, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 11888, @@ -1845,7 +1845,7 @@ export const MockERC721Receiver = "42": { "events": {}, "links": {}, - "address": "0xeadebe1479a642dc27a2874233e5e2b6703a0442" + "address": "0x0ac01be77bebfd73d570fe3430eeaf731cc0f276" }, "70": { "events": {}, @@ -1854,5 +1854,5 @@ export const MockERC721Receiver = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:01.261Z" + "updatedAt": "2018-10-09T23:19:45.792Z" } \ No newline at end of file diff --git a/artifacts/ts/MockERC721Token.ts b/artifacts/ts/MockERC721Token.ts index c30efd25..30173d70 100644 --- a/artifacts/ts/MockERC721Token.ts +++ b/artifacts/ts/MockERC721Token.ts @@ -312,7 +312,7 @@ export const MockERC721Token = }, { "attributes": { - "SourceUnit": 10693, + "SourceUnit": 10701, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 12142, @@ -3995,7 +3995,7 @@ export const MockERC721Token = "42": { "events": {}, "links": {}, - "address": "0x5ff98c9ca70a7d2fdd1107c1a80d20c5fc8a3e40" + "address": "0x54115cd6562cb183cdd21a6e1fa5c6833f493dc2" }, "70": { "events": {}, @@ -4004,5 +4004,5 @@ export const MockERC721Token = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:01.278Z" + "updatedAt": "2018-10-09T23:19:45.810Z" } \ No newline at end of file diff --git a/artifacts/ts/MockTermsContract.ts b/artifacts/ts/MockTermsContract.ts index 39b11871..e3466071 100644 --- a/artifacts/ts/MockTermsContract.ts +++ b/artifacts/ts/MockTermsContract.ts @@ -276,7 +276,7 @@ export const MockTermsContract = }, { "attributes": { - "SourceUnit": 10693, + "SourceUnit": 10701, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 12354, @@ -3395,7 +3395,7 @@ export const MockTermsContract = "42": { "events": {}, "links": {}, - "address": "0x76dcdc1df7af00e87bb5dd8f600e5637053fc0e1" + "address": "0xb2864780e3d6eb844f2e2214ba12472eee6268fc" }, "70": { "events": {}, @@ -3404,5 +3404,5 @@ export const MockTermsContract = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:01.274Z" + "updatedAt": "2018-10-09T23:19:45.804Z" } \ No newline at end of file diff --git a/artifacts/ts/MockTokenRegistry.ts b/artifacts/ts/MockTokenRegistry.ts index a443b103..46d67c7b 100644 --- a/artifacts/ts/MockTokenRegistry.ts +++ b/artifacts/ts/MockTokenRegistry.ts @@ -161,7 +161,7 @@ export const MockTokenRegistry = }, { "attributes": { - "SourceUnit": 10693, + "SourceUnit": 10701, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 12450, @@ -1588,7 +1588,7 @@ export const MockTokenRegistry = "42": { "events": {}, "links": {}, - "address": "0x8d60b63345a4394a627672aca9f0f2541057d0ba" + "address": "0x173369a9a8fd5063849034932c1463562589e68c" }, "70": { "events": {}, @@ -1597,5 +1597,5 @@ export const MockTokenRegistry = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:01.268Z" + "updatedAt": "2018-10-09T23:19:45.790Z" } \ No newline at end of file diff --git a/artifacts/ts/MockTokenTransferProxy.ts b/artifacts/ts/MockTokenTransferProxy.ts index d8c1d6aa..b5e41915 100644 --- a/artifacts/ts/MockTokenTransferProxy.ts +++ b/artifacts/ts/MockTokenTransferProxy.ts @@ -149,7 +149,7 @@ export const MockTokenTransferProxy = }, { "attributes": { - "SourceUnit": 10693, + "SourceUnit": 10701, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/test/mocks/MockContract.sol", "file": "./MockContract.sol", "scope": 12526, @@ -1236,7 +1236,7 @@ export const MockTokenTransferProxy = "42": { "events": {}, "links": {}, - "address": "0xe73f46c08eb3a1d218af468c6dbefbc5967bb6bd" + "address": "0xc8ac0952c5752a371adbb8fff4a7ea90a69333ce" }, "70": { "events": {}, @@ -1245,5 +1245,5 @@ export const MockTokenTransferProxy = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:01.252Z" + "updatedAt": "2018-10-09T23:19:45.785Z" } \ No newline at end of file diff --git a/artifacts/ts/MultiSigWallet.ts b/artifacts/ts/MultiSigWallet.ts index 9b9c5a12..1519ddbf 100644 --- a/artifacts/ts/MultiSigWallet.ts +++ b/artifacts/ts/MultiSigWallet.ts @@ -13772,5 +13772,5 @@ export const MultiSigWallet = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.685Z" + "updatedAt": "2018-10-09T23:15:05.858Z" } \ No newline at end of file diff --git a/artifacts/ts/Ownable.ts b/artifacts/ts/Ownable.ts index 112c92a8..919a481c 100644 --- a/artifacts/ts/Ownable.ts +++ b/artifacts/ts/Ownable.ts @@ -838,5 +838,5 @@ export const Ownable = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.443Z" + "updatedAt": "2018-10-09T23:15:05.496Z" } \ No newline at end of file diff --git a/artifacts/ts/Pausable.ts b/artifacts/ts/Pausable.ts index 9e3d7a3d..7f1f5c72 100644 --- a/artifacts/ts/Pausable.ts +++ b/artifacts/ts/Pausable.ts @@ -880,5 +880,5 @@ export const Pausable = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.444Z" + "updatedAt": "2018-10-09T23:15:05.496Z" } \ No newline at end of file diff --git a/artifacts/ts/PermissionEvents.ts b/artifacts/ts/PermissionEvents.ts index d14ea932..27fda82f 100644 --- a/artifacts/ts/PermissionEvents.ts +++ b/artifacts/ts/PermissionEvents.ts @@ -2970,5 +2970,5 @@ export const PermissionEvents = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.509Z" + "updatedAt": "2018-10-09T23:15:05.538Z" } \ No newline at end of file diff --git a/artifacts/ts/PermissionsLib.ts b/artifacts/ts/PermissionsLib.ts index 90f2dc1e..ae89ad59 100644 --- a/artifacts/ts/PermissionsLib.ts +++ b/artifacts/ts/PermissionsLib.ts @@ -2977,7 +2977,7 @@ export const PermissionsLib = "42": { "events": {}, "links": {}, - "address": "0x7852987ebd814ccb8ae63ff0ebbebaf12b8b45ab" + "address": "0xb6bfbe48e19b22085ec4e256455052d950f2fc7d" }, "70": { "events": {}, @@ -2986,5 +2986,5 @@ export const PermissionsLib = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:53:04.866Z" + "updatedAt": "2018-10-09T23:23:58.013Z" } \ No newline at end of file diff --git a/artifacts/ts/RepaymentRouter.ts b/artifacts/ts/RepaymentRouter.ts index f4a9586b..5df66a6d 100644 --- a/artifacts/ts/RepaymentRouter.ts +++ b/artifacts/ts/RepaymentRouter.ts @@ -241,7 +241,7 @@ export const RepaymentRouter = }, { "attributes": { - "SourceUnit": 3159, + "SourceUnit": 3167, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtRegistry.sol", "file": "./DebtRegistry.sol", "scope": 4716, @@ -256,7 +256,7 @@ export const RepaymentRouter = }, { "attributes": { - "SourceUnit": 4758, + "SourceUnit": 4766, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TermsContract.sol", "file": "./TermsContract.sol", "scope": 4716, @@ -271,7 +271,7 @@ export const RepaymentRouter = }, { "attributes": { - "SourceUnit": 5207, + "SourceUnit": 5215, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/TokenTransferProxy.sol", "file": "./TokenTransferProxy.sol", "scope": 4716, @@ -3302,7 +3302,7 @@ export const RepaymentRouter = } }, "links": {}, - "address": "0x03ff589c02e794dbb55394ba86c62ba68e399688" + "address": "0x68133aab29535c46b44cf0d31e0161905c57bc01" }, "70": { "events": { @@ -3390,5 +3390,5 @@ export const RepaymentRouter = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:51:53.137Z" + "updatedAt": "2018-10-09T23:22:13.417Z" } \ No newline at end of file diff --git a/artifacts/ts/SafeMath.ts b/artifacts/ts/SafeMath.ts index 6913c02d..634eb141 100644 --- a/artifacts/ts/SafeMath.ts +++ b/artifacts/ts/SafeMath.ts @@ -1344,5 +1344,5 @@ export const SafeMath = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.450Z" + "updatedAt": "2018-10-09T23:15:05.500Z" } \ No newline at end of file diff --git a/artifacts/ts/SaleClockAuction.ts b/artifacts/ts/SaleClockAuction.ts index 2b0e1d19..c7e9de47 100644 --- a/artifacts/ts/SaleClockAuction.ts +++ b/artifacts/ts/SaleClockAuction.ts @@ -52025,5 +52025,5 @@ export const SaleClockAuction = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:36.391Z" + "updatedAt": "2018-10-09T23:15:06.528Z" } \ No newline at end of file diff --git a/artifacts/ts/SimpleInterestTermsContract.ts b/artifacts/ts/SimpleInterestTermsContract.ts index 6a63260c..54b40849 100644 --- a/artifacts/ts/SimpleInterestTermsContract.ts +++ b/artifacts/ts/SimpleInterestTermsContract.ts @@ -10513,7 +10513,7 @@ export const SimpleInterestTermsContract = "42": { "events": {}, "links": {}, - "address": "0x1cde816b6e0437f5b1b49edb58c4a8bf1dbda2d3" + "address": "0x77bdb2014e6048419706e50c2b7e53c662fe0fde" }, "70": { "events": {}, @@ -10522,5 +10522,5 @@ export const SimpleInterestTermsContract = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:50:25.381Z" + "updatedAt": "2018-10-09T23:20:25.143Z" } \ No newline at end of file diff --git a/artifacts/ts/SiringClockAuction.ts b/artifacts/ts/SiringClockAuction.ts index 22c8762c..2dce1b50 100644 --- a/artifacts/ts/SiringClockAuction.ts +++ b/artifacts/ts/SiringClockAuction.ts @@ -51978,5 +51978,5 @@ export const SiringClockAuction = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:36.126Z" + "updatedAt": "2018-10-09T23:15:06.459Z" } \ No newline at end of file diff --git a/artifacts/ts/StandardToken.ts b/artifacts/ts/StandardToken.ts index 25ff3669..b8257365 100644 --- a/artifacts/ts/StandardToken.ts +++ b/artifacts/ts/StandardToken.ts @@ -3733,5 +3733,5 @@ export const StandardToken = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.529Z" + "updatedAt": "2018-10-09T23:15:05.596Z" } \ No newline at end of file diff --git a/artifacts/ts/TermsContract.ts b/artifacts/ts/TermsContract.ts index 34aa45be..f34cd57d 100644 --- a/artifacts/ts/TermsContract.ts +++ b/artifacts/ts/TermsContract.ts @@ -780,5 +780,5 @@ export const TermsContract = }, "networks": {}, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:45:35.436Z" + "updatedAt": "2018-10-09T23:15:05.490Z" } \ No newline at end of file diff --git a/artifacts/ts/TokenRegistry.ts b/artifacts/ts/TokenRegistry.ts index 3f72ee50..2488393d 100644 --- a/artifacts/ts/TokenRegistry.ts +++ b/artifacts/ts/TokenRegistry.ts @@ -5120,7 +5120,7 @@ export const TokenRegistry = } }, "links": {}, - "address": "0xb6cf5855a7598441e02e7cd4ffffb6e0426984ff" + "address": "0x4b0116505c34c6adb5ee741ee67ac52e5215f650" }, "70": { "events": { @@ -5147,5 +5147,5 @@ export const TokenRegistry = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:51:53.143Z" + "updatedAt": "2018-10-09T23:22:13.423Z" } \ No newline at end of file diff --git a/artifacts/ts/TokenTransferProxy.ts b/artifacts/ts/TokenTransferProxy.ts index 94fc43c4..e9cce422 100644 --- a/artifacts/ts/TokenTransferProxy.ts +++ b/artifacts/ts/TokenTransferProxy.ts @@ -243,7 +243,7 @@ export const TokenTransferProxy = }, { "attributes": { - "SourceUnit": 3159, + "SourceUnit": 3167, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/DebtRegistry.sol", "file": "./DebtRegistry.sol", "scope": 5215, @@ -258,7 +258,7 @@ export const TokenTransferProxy = }, { "attributes": { - "SourceUnit": 6272, + "SourceUnit": 6280, "absolutePath": "/Users/chrismin/Documents/dev/dharma/charta/contracts/libraries/PermissionsLib.sol", "file": "./libraries/PermissionsLib.sol", "scope": 5215, @@ -1613,7 +1613,7 @@ export const TokenTransferProxy = } }, "links": {}, - "address": "0xf8181406f844d5c947481ec67c835b1384013c7e" + "address": "0xedaabddfbf00182b2f4c9ff00689ddaf4ff9f9d0" }, "70": { "events": { @@ -1686,5 +1686,5 @@ export const TokenTransferProxy = } }, "schemaVersion": "1.0.1", - "updatedAt": "2018-10-09T17:51:53.131Z" + "updatedAt": "2018-10-09T23:22:13.411Z" } \ No newline at end of file