{
  "_format": "hh-sol-artifact-1",
  "contractName": "DSProxyFactory",
  "sourceName": "contracts/TestContracts/DappSys/proxy.sol",
  "abi": [
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "name": "isProxy",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "cache",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [],
      "name": "build",
      "outputs": [
        {
          "name": "proxy",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "owner",
          "type": "address"
        }
      ],
      "name": "build",
      "outputs": [
        {
          "name": "proxy",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "sender",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "owner",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "proxy",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "cache",
          "type": "address"
        }
      ],
      "name": "Created",
      "type": "event"
    }
  ],
  "bytecode": "0x608060405261000c61005b565b604051809103906000f080158015610028573d6000803e3d6000fd5b5060018054600160a060020a031916600160a060020a039290921691909117905534801561005557600080fd5b5061006b565b6040516102c7806110cb83390190565b6110518061007a6000396000f3006080604052600436106100615763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166329710388811461006657806360c7d295146100a85780638e1a55fc146100e6578063f3701da2146100fb575b600080fd5b34801561007257600080fd5b5061009473ffffffffffffffffffffffffffffffffffffffff60043516610129565b604080519115158252519081900360200190f35b3480156100b457600080fd5b506100bd61013e565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b3480156100f257600080fd5b506100bd61015a565b34801561010757600080fd5b506100bd73ffffffffffffffffffffffffffffffffffffffff6004351661016a565b60006020819052908152604090205460ff1681565b60015473ffffffffffffffffffffffffffffffffffffffff1681565b60006101653361016a565b905090565b60015460009073ffffffffffffffffffffffffffffffffffffffff1661018e610313565b73ffffffffffffffffffffffffffffffffffffffff909116815260405190819003602001906000f0801580156101c8573d6000803e3d6000fd5b506001546040805173ffffffffffffffffffffffffffffffffffffffff8085168252928316602082015281519394508286169333909316927f259b30ca39885c6d801a0b5dbc988640f3c25e2f37531fe138c5c5af8955d41b929181900390910190a38073ffffffffffffffffffffffffffffffffffffffff166313af4035836040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b1580156102c657600080fd5b505af11580156102da573d6000803e3d6000fd5b50505073ffffffffffffffffffffffffffffffffffffffff82166000908152602081905260409020805460ff1916600117905550919050565b604051610d0280610324833901905600608060405234801561001057600080fd5b50604051602080610d02833981016040819052905160018054600160a060020a03191633600160a060020a031690811790915590917fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9490600090a261007d8164010000000061008e810204565b151561008857600080fd5b506102ac565b60006100c6337fffffffff00000000000000000000000000000000000000000000000000000000833516640100000000610180810204565b15156100d157600080fd5b6040805134808252602082018381523693830184905260043593602435938493869333600160a060020a031693600080357fffffffff0000000000000000000000000000000000000000000000000000000016949092606082018484808284376040519201829003965090945050505050a4600160a060020a038416151561015857600080fd5b60028054600160a060020a038616600160a060020a0319909116179055600192505050919050565b600030600160a060020a031683600160a060020a031614156101a4575060016102a6565b600154600160a060020a03848116911614156101c2575060016102a6565b600054600160a060020a031615156101dc575060006102a6565b60008054604080517fb7009613000000000000000000000000000000000000000000000000000000008152600160a060020a03878116600483015230811660248301527fffffffff00000000000000000000000000000000000000000000000000000000871660448301529151919092169263b700961392606480820193602093909283900390910190829087803b15801561027757600080fd5b505af115801561028b573d6000803e3d6000fd5b505050506040513d60208110156102a157600080fd5b505190505b92915050565b610a47806102bb6000396000f30060806040526004361061008d5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166313af4035811461008f5780631cff79cd146100bd5780631f6a1eb91461013657806360c7d295146101f05780637a9e5e4b1461022e5780638da5cb5b1461025c578063948f507614610271578063bf7e214f146102b3575b005b34801561009b57600080fd5b5061008d73ffffffffffffffffffffffffffffffffffffffff600435166102c8565b60408051602060046024803582810135601f810185900485028601850190965285855261012495833573ffffffffffffffffffffffffffffffffffffffff169536956044949193909101919081908401838280828437509497506103689650505050505050565b60408051918252519081900360200190f35b6040805160206004803580820135601f81018490048402850184019095528484526101c094369492936024939284019190819084018382808284375050604080516020601f89358b018035918201839004830284018301909452808352979a9998810197919650918201945092508291508401838280828437509497506104729650505050505050565b6040805173ffffffffffffffffffffffffffffffffffffffff909316835260208301919091528051918290030190f35b3480156101fc57600080fd5b506102056106a9565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b34801561023a57600080fd5b5061008d73ffffffffffffffffffffffffffffffffffffffff600435166106c5565b34801561026857600080fd5b50610205610761565b34801561027d57600080fd5b5061029f73ffffffffffffffffffffffffffffffffffffffff6004351661077d565b604080519115158252519081900360200190f35b3480156102bf57600080fd5b50610205610895565b6102f3336000357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166108b1565b15156102fe57600080fd5b6001805473ffffffffffffffffffffffffffffffffffffffff191673ffffffffffffffffffffffffffffffffffffffff83811691909117918290556040519116907fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9490600090a250565b6000610395336000357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166108b1565b15156103a057600080fd5b604080513480825260208201838152369383018490526004359360243593849386933373ffffffffffffffffffffffffffffffffffffffff1693600080357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916949092606082018484808284376040519201829003965090945050505050a473ffffffffffffffffffffffffffffffffffffffff8516151561043e57600080fd5b60206000855160208701886113885a03f4600051935080156001811461046357610468565b600080fd5b5050505092915050565b6002546040517f8bf4515c000000000000000000000000000000000000000000000000000000008152602060048201818152855160248401528551600094859473ffffffffffffffffffffffffffffffffffffffff90911693638bf4515c93899390928392604490910191908501908083838b5b838110156104fe5781810151838201526020016104e6565b50505050905090810190601f16801561052b5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15801561054a57600080fd5b505af115801561055e573d6000803e3d6000fd5b505050506040513d602081101561057457600080fd5b5051915073ffffffffffffffffffffffffffffffffffffffff82161515610696576002546040517f7ed0c3b200000000000000000000000000000000000000000000000000000000815260206004820181815287516024840152875173ffffffffffffffffffffffffffffffffffffffff90941693637ed0c3b293899383926044909201919085019080838360005b8381101561061b578181015183820152602001610603565b50505050905090810190601f1680156106485780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15801561066757600080fd5b505af115801561067b573d6000803e3d6000fd5b505050506040513d602081101561069157600080fd5b505191505b6106a08284610368565b90509250929050565b60025473ffffffffffffffffffffffffffffffffffffffff1681565b6106f0336000357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166108b1565b15156106fb57600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff191673ffffffffffffffffffffffffffffffffffffffff838116919091178083556040519116917f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada491a250565b60015473ffffffffffffffffffffffffffffffffffffffff1681565b60006107aa336000357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166108b1565b15156107b557600080fd5b604080513480825260208201838152369383018490526004359360243593849386933373ffffffffffffffffffffffffffffffffffffffff1693600080357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916949092606082018484808284376040519201829003965090945050505050a473ffffffffffffffffffffffffffffffffffffffff8416151561085357600080fd5b6002805473ffffffffffffffffffffffffffffffffffffffff861673ffffffffffffffffffffffffffffffffffffffff19909116179055600192505050919050565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b60003073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156108ef57506001610a15565b60015473ffffffffffffffffffffffffffffffffffffffff8481169116141561091a57506001610a15565b60005473ffffffffffffffffffffffffffffffffffffffff16151561094157506000610a15565b60008054604080517fb700961300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015230811660248301527bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19871660448301529151919092169263b700961392606480820193602093909283900390910190829087803b1580156109e657600080fd5b505af11580156109fa573d6000803e3d6000fd5b505050506040513d6020811015610a1057600080fd5b505190505b929150505600a165627a7a7230582037cdb37d4f0850147f56c069336981e168abe42280fb2b02dbcaa48a4f0fc61a0029a165627a7a723058208e430fe4125169be7cbfe847412379f3a089604d4ea05c43a0a4875b5b12e1c90029608060405234801561001057600080fd5b506102a7806100206000396000f30060806040526004361061004b5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416637ed0c3b281146100505780638bf4515c146100d2575b600080fd5b34801561005c57600080fd5b506040805160206004803580820135601f81018490048402850184019095528484526100a994369492936024939284019190819084018382808284375094975061012b9650505050505050565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b3480156100de57600080fd5b506040805160206004803580820135601f81018490048402850184019095528484526100a99436949293602493928401919081908401838280828437509497506101f29650505050505050565b6000808251602084016000f09150813b156001811461004b5750826040518082805190602001908083835b602083106101755780518252601f199092019160209182019101610156565b51815160209384036101000a600019018019909216911617905260408051929094018290039091206000908152908190529190912080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff87161790555092949350505050565b600080826040518082805190602001908083835b602083106102255780518252601f199092019160209182019101610206565b51815160209384036101000a60001901801990921691161790526040805192909401829003909120600090815290819052919091205473ffffffffffffffffffffffffffffffffffffffff1696955050505050505600a165627a7a723058201fe996a12f6eeb402f75be7e2e5908c04a0baedc32e50b03040010961c3baaab0029",
  "deployedBytecode": "0x6080604052600436106100615763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166329710388811461006657806360c7d295146100a85780638e1a55fc146100e6578063f3701da2146100fb575b600080fd5b34801561007257600080fd5b5061009473ffffffffffffffffffffffffffffffffffffffff60043516610129565b604080519115158252519081900360200190f35b3480156100b457600080fd5b506100bd61013e565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b3480156100f257600080fd5b506100bd61015a565b34801561010757600080fd5b506100bd73ffffffffffffffffffffffffffffffffffffffff6004351661016a565b60006020819052908152604090205460ff1681565b60015473ffffffffffffffffffffffffffffffffffffffff1681565b60006101653361016a565b905090565b60015460009073ffffffffffffffffffffffffffffffffffffffff1661018e610313565b73ffffffffffffffffffffffffffffffffffffffff909116815260405190819003602001906000f0801580156101c8573d6000803e3d6000fd5b506001546040805173ffffffffffffffffffffffffffffffffffffffff8085168252928316602082015281519394508286169333909316927f259b30ca39885c6d801a0b5dbc988640f3c25e2f37531fe138c5c5af8955d41b929181900390910190a38073ffffffffffffffffffffffffffffffffffffffff166313af4035836040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b1580156102c657600080fd5b505af11580156102da573d6000803e3d6000fd5b50505073ffffffffffffffffffffffffffffffffffffffff82166000908152602081905260409020805460ff1916600117905550919050565b604051610d0280610324833901905600608060405234801561001057600080fd5b50604051602080610d02833981016040819052905160018054600160a060020a03191633600160a060020a031690811790915590917fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9490600090a261007d8164010000000061008e810204565b151561008857600080fd5b506102ac565b60006100c6337fffffffff00000000000000000000000000000000000000000000000000000000833516640100000000610180810204565b15156100d157600080fd5b6040805134808252602082018381523693830184905260043593602435938493869333600160a060020a031693600080357fffffffff0000000000000000000000000000000000000000000000000000000016949092606082018484808284376040519201829003965090945050505050a4600160a060020a038416151561015857600080fd5b60028054600160a060020a038616600160a060020a0319909116179055600192505050919050565b600030600160a060020a031683600160a060020a031614156101a4575060016102a6565b600154600160a060020a03848116911614156101c2575060016102a6565b600054600160a060020a031615156101dc575060006102a6565b60008054604080517fb7009613000000000000000000000000000000000000000000000000000000008152600160a060020a03878116600483015230811660248301527fffffffff00000000000000000000000000000000000000000000000000000000871660448301529151919092169263b700961392606480820193602093909283900390910190829087803b15801561027757600080fd5b505af115801561028b573d6000803e3d6000fd5b505050506040513d60208110156102a157600080fd5b505190505b92915050565b610a47806102bb6000396000f30060806040526004361061008d5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166313af4035811461008f5780631cff79cd146100bd5780631f6a1eb91461013657806360c7d295146101f05780637a9e5e4b1461022e5780638da5cb5b1461025c578063948f507614610271578063bf7e214f146102b3575b005b34801561009b57600080fd5b5061008d73ffffffffffffffffffffffffffffffffffffffff600435166102c8565b60408051602060046024803582810135601f810185900485028601850190965285855261012495833573ffffffffffffffffffffffffffffffffffffffff169536956044949193909101919081908401838280828437509497506103689650505050505050565b60408051918252519081900360200190f35b6040805160206004803580820135601f81018490048402850184019095528484526101c094369492936024939284019190819084018382808284375050604080516020601f89358b018035918201839004830284018301909452808352979a9998810197919650918201945092508291508401838280828437509497506104729650505050505050565b6040805173ffffffffffffffffffffffffffffffffffffffff909316835260208301919091528051918290030190f35b3480156101fc57600080fd5b506102056106a9565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b34801561023a57600080fd5b5061008d73ffffffffffffffffffffffffffffffffffffffff600435166106c5565b34801561026857600080fd5b50610205610761565b34801561027d57600080fd5b5061029f73ffffffffffffffffffffffffffffffffffffffff6004351661077d565b604080519115158252519081900360200190f35b3480156102bf57600080fd5b50610205610895565b6102f3336000357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166108b1565b15156102fe57600080fd5b6001805473ffffffffffffffffffffffffffffffffffffffff191673ffffffffffffffffffffffffffffffffffffffff83811691909117918290556040519116907fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9490600090a250565b6000610395336000357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166108b1565b15156103a057600080fd5b604080513480825260208201838152369383018490526004359360243593849386933373ffffffffffffffffffffffffffffffffffffffff1693600080357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916949092606082018484808284376040519201829003965090945050505050a473ffffffffffffffffffffffffffffffffffffffff8516151561043e57600080fd5b60206000855160208701886113885a03f4600051935080156001811461046357610468565b600080fd5b5050505092915050565b6002546040517f8bf4515c000000000000000000000000000000000000000000000000000000008152602060048201818152855160248401528551600094859473ffffffffffffffffffffffffffffffffffffffff90911693638bf4515c93899390928392604490910191908501908083838b5b838110156104fe5781810151838201526020016104e6565b50505050905090810190601f16801561052b5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15801561054a57600080fd5b505af115801561055e573d6000803e3d6000fd5b505050506040513d602081101561057457600080fd5b5051915073ffffffffffffffffffffffffffffffffffffffff82161515610696576002546040517f7ed0c3b200000000000000000000000000000000000000000000000000000000815260206004820181815287516024840152875173ffffffffffffffffffffffffffffffffffffffff90941693637ed0c3b293899383926044909201919085019080838360005b8381101561061b578181015183820152602001610603565b50505050905090810190601f1680156106485780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15801561066757600080fd5b505af115801561067b573d6000803e3d6000fd5b505050506040513d602081101561069157600080fd5b505191505b6106a08284610368565b90509250929050565b60025473ffffffffffffffffffffffffffffffffffffffff1681565b6106f0336000357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166108b1565b15156106fb57600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff191673ffffffffffffffffffffffffffffffffffffffff838116919091178083556040519116917f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada491a250565b60015473ffffffffffffffffffffffffffffffffffffffff1681565b60006107aa336000357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166108b1565b15156107b557600080fd5b604080513480825260208201838152369383018490526004359360243593849386933373ffffffffffffffffffffffffffffffffffffffff1693600080357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916949092606082018484808284376040519201829003965090945050505050a473ffffffffffffffffffffffffffffffffffffffff8416151561085357600080fd5b6002805473ffffffffffffffffffffffffffffffffffffffff861673ffffffffffffffffffffffffffffffffffffffff19909116179055600192505050919050565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b60003073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156108ef57506001610a15565b60015473ffffffffffffffffffffffffffffffffffffffff8481169116141561091a57506001610a15565b60005473ffffffffffffffffffffffffffffffffffffffff16151561094157506000610a15565b60008054604080517fb700961300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015230811660248301527bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19871660448301529151919092169263b700961392606480820193602093909283900390910190829087803b1580156109e657600080fd5b505af11580156109fa573d6000803e3d6000fd5b505050506040513d6020811015610a1057600080fd5b505190505b929150505600a165627a7a7230582037cdb37d4f0850147f56c069336981e168abe42280fb2b02dbcaa48a4f0fc61a0029a165627a7a723058208e430fe4125169be7cbfe847412379f3a089604d4ea05c43a0a4875b5b12e1c90029",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
