{"contractName":"PayingProxy","abi":[{"inputs":[{"internalType":"address","name":"_masterCopy","type":"address"},{"internalType":"bytes","name":"initializer","type":"bytes"},{"internalType":"address payable","name":"funder","type":"address"},{"internalType":"address","name":"paymentToken","type":"address"},{"internalType":"uint256","name":"payment","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"}],"bytecode":"0x608060405234801561001057600080fd5b506040516105b73803806105b7833981810160405260a081101561003357600080fd5b81019080805190602001909291908051604051939291908464010000000082111561005d57600080fd5b8382019150602082018581111561007357600080fd5b825186600182028301116401000000008211171561009057600080fd5b8083526020830192505050908051906020019080838360005b838110156100c45780820151818401526020810190506100a9565b50505050905090810190601f1680156100f15780820380516001836020036101000a031916815260200191505b50604052602001805190602001909291908051906020019092919080519060200190929190505050848481600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156101a2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001806105936024913960400191505060405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505060008151111561022f5773ffffffffffffffffffffffffffffffffffffffff60005416600080835160208501846127105a03f46040513d6000823e600082141561022b573d81fd5b5050505b5050600081111561036657600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156102fe578273ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050506102f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260268152602001806105476026913960400191505060405180910390fd5b610365565b61030f82848361037060201b60201c565b610364576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602681526020018061056d6026913960400191505060405180910390fd5b5b5b505050505061048f565b600060608383604051602401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001925050506040516020818303038152906040527fa9059cbb000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505090506000808251602084016000896127105a03f16040513d81016040523d6000823e3d60008114610472576020811461047a5760009450610484565b829450610484565b8151158315171594505b505050509392505050565b60aa8061049d6000396000f3fe608060405273ffffffffffffffffffffffffffffffffffffffff600054167fa619486e0000000000000000000000000000000000000000000000000000000060003514156050578060005260206000f35b3660008037600080366000845af43d6000803e60008114156070573d6000fd5b3d6000f3fea265627a7a72315820956e2759042312e6d830db562760a9ef2e9609c126543f5d16394d0ba2cd8a6264736f6c634300050e0032436f756c64206e6f74207061792073616665206372656174696f6e2077697468206574686572436f756c64206e6f74207061792073616665206372656174696f6e207769746820746f6b656e496e76616c6964206d617374657220636f707920616464726573732070726f7669646564","deployedBytecode":"0x608060405273ffffffffffffffffffffffffffffffffffffffff600054167fa619486e0000000000000000000000000000000000000000000000000000000060003514156050578060005260206000f35b3660008037600080366000845af43d6000803e60008114156070573d6000fd5b3d6000f3fea265627a7a72315820956e2759042312e6d830db562760a9ef2e9609c126543f5d16394d0ba2cd8a6264736f6c634300050e0032","sourceMap":"467:1085:30:-;;;961:589;8:9:-1;5:2;;;30:1;27;20:12;5:2;961:589:30;;;;;;;;;;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;961:589:30;;;;;;;;;;;;;;;;;;;;;;19:11:-1;14:3;11:20;8:2;;;44:1;41;34:12;8:2;71:11;66:3;62:21;55:28;;123:4;118:3;114:14;159:9;141:16;138:31;135:2;;;182:1;179;172:12;135:2;219:3;213:10;330:9;325:1;311:12;307:20;289:16;285:43;282:58;261:11;247:12;244:29;233:115;230:2;;;361:1;358;351:12;230:2;384:12;379:3;372:25;420:4;415:3;411:14;404:21;;0:432;;961:589:30;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;961:589:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1116:11;1129;683::28;985:1:31;962:25;;:11;:25;;;;954:74;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1051:11;1038:10;;:24;;;;;;;;;;;;;;;;;;892:177;750:1:28;729:11;:18;:22;725:523;;;894:42;890:1;884:8;880:57;1058:1;1055;1041:11;1035:18;1028:4;1015:11;1011:22;999:10;991:5;986:3;982:15;969:91;1094:4;1088:11;1139:16;1136:1;1131:3;1116:40;1188:1;1179:7;1176:14;1173:2;;;1205:16;1200:3;1193:29;1173:2;844:394;;;;618:636;;1185:1:30;1175:7;:11;1171:373;;;1230:1;1206:26;;:12;:26;;;1202:332;;;1322:6;:11;;:20;1334:7;1322:20;;;;;;;;;;;;;;;;;;;;;;;1314:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1202:332;;;1432:44;1446:12;1460:6;1468:7;1432:13;;;:44;;:::i;:::-;1424:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1202:332;1171:373;961:589;;;;;467:1085;;438:807:10;575:16;607:17;680:8;690:6;627:70;;;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;627:70:10;;;;;;;38:4:-1;29:7;25:18;67:10;61:17;96:58;199:8;192:4;186;182:15;179:29;167:10;160:49;0:215;;;627:70:10;607:90;;874:1;871;864:4;858:11;851:4;845;841:15;838:1;831:5;823;818:3;814:15;809:67;906:4;900:11;946:16;941:3;937:26;931:4;924:40;1000:16;997:1;992:3;977:40;1037:16;1071:1;1066:33;;;;1117:4;1112:76;;;;1226:1;1211:16;;1030:199;;1066:33;1090:7;1075:22;;1066:33;;1112:76;1179:3;1173:10;1166:18;1156:7;1149:15;1146:39;1139:47;1124:62;;1030:199;;780:459;;;;;;;;:::o;467:1085:30:-;;;;;;;","deployedSourceMap":"467:1085:30:-;;;1348:42:31;1344:1;1338:8;1334:57;1526:66;1522:1;1509:15;1506:87;1503:2;;;1622:10;1619:1;1612:21;1660:4;1657:1;1650:15;1503:2;1711:14;1708:1;1705;1692:34;1806:1;1803;1787:14;1784:1;1772:10;1767:3;1754:54;1842:16;1839:1;1836;1821:38;1887:1;1878:7;1875:14;1872:2;;;1902:16;1899:1;1892:27;1872:2;1944:16;1941:1;1934:27","source":"pragma solidity >=0.5.0 <0.7.0;\nimport \"../common/SecuredTokenTransfer.sol\";\nimport \"./DelegateConstructorProxy.sol\";\n\n/// @title Paying Proxy - Generic proxy contract allows to execute all transactions applying the code of a master contract. It is possible to send along initialization data with the constructor. And sends funds after creation to a specified account.\n/// @author Stefan George - <stefan@gnosis.pm>\n/// @author Richard Meissner - <richard@gnosis.pm>\ncontract PayingProxy is DelegateConstructorProxy, SecuredTokenTransfer {\n\n    /// @dev Constructor function sets address of master copy contract.\n    /// @param _masterCopy Master copy address.\n    /// @param initializer Data used for a delegate call to initialize the contract.\n    /// @param funder Address that should be paid for the execution of this call\n    /// @param paymentToken Token that should be used for the payment (0 is ETH)\n    /// @param payment Value that should be paid\n    constructor(address _masterCopy, bytes memory initializer, address payable funder, address paymentToken, uint256 payment)\n        DelegateConstructorProxy(_masterCopy, initializer)\n        public\n    {\n        if (payment > 0) {\n            if (paymentToken == address(0)) {\n                 // solium-disable-next-line security/no-send\n                require(funder.send(payment), \"Could not pay safe creation with ether\");\n            } else {\n                require(transferToken(paymentToken, funder, payment), \"Could not pay safe creation with token\");\n            }\n        }\n    }\n}\n","compiler":{"name":"solc","version":"0.5.14+commit.01f1aaa4.Emscripten.clang"},"networks":{},"schemaVersion":"2.0.3","updatedAt":"2022-11-11T08:20:54.759Z"}