{"abi":[{"type":"constructor","inputs":[{"name":"_safe","type":"address","internalType":"contract GnosisSafe"}],"stateMutability":"nonpayable"},{"type":"function","name":"checkAfterExecution","inputs":[{"name":"","type":"bytes32","internalType":"bytes32"},{"name":"","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"checkTransaction","inputs":[{"name":"to","type":"address","internalType":"address"},{"name":"value","type":"uint256","internalType":"uint256"},{"name":"data","type":"bytes","internalType":"bytes"},{"name":"operation","type":"uint8","internalType":"enum Enum.Operation"},{"name":"safeTxGas","type":"uint256","internalType":"uint256"},{"name":"baseGas","type":"uint256","internalType":"uint256"},{"name":"gasPrice","type":"uint256","internalType":"uint256"},{"name":"gasToken","type":"address","internalType":"address"},{"name":"refundReceiver","type":"address","internalType":"address payable"},{"name":"signatures","type":"bytes","internalType":"bytes"},{"name":"msgSender","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"lastLive","inputs":[{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"safe","inputs":[],"outputs":[{"name":"safe_","type":"address","internalType":"contract GnosisSafe"}],"stateMutability":"view"},{"type":"function","name":"showLiveness","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"version","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"event","name":"OwnerRecorded","inputs":[{"name":"owner","type":"address","indexed":false,"internalType":"address"}],"anonymous":false}],"bytecode":{"object":"0x60a06040523480156200001157600080fd5b506040516200167138038062001671833981016040819052620000349162000170565b806001600160a01b03166080816001600160a01b0316815250506000816001600160a01b031663a0e67e2b6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156200008f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620000b99190810190620001bf565b905060005b81518110156200014e576000828281518110620000df57620000df62000291565b6020908102919091018101516001600160a01b0381166000818152808452604090819020429055519081529092507f833bc129023866d52116d61e94b791eb8be46f05709362e0bcf1fe7c1a8c225c910160405180910390a150806200014581620002a7565b915050620000be565b505050620002cf565b6001600160a01b03811681146200016d57600080fd5b50565b6000602082840312156200018357600080fd5b8151620001908162000157565b9392505050565b634e487b7160e01b600052604160045260246000fd5b8051620001ba8162000157565b919050565b60006020808385031215620001d357600080fd5b82516001600160401b0380821115620001eb57600080fd5b818501915085601f8301126200020057600080fd5b81518181111562000215576200021562000197565b8060051b604051601f19603f830116810181811085821117156200023d576200023d62000197565b6040529182528482019250838101850191888311156200025c57600080fd5b938501935b8285101562000285576200027585620001ad565b8452938501939285019262000261565b98975050505050505050565b634e487b7160e01b600052603260045260246000fd5b600060018201620002c857634e487b7160e01b600052601160045260246000fd5b5060010190565b6080516113566200031b60003960008181609101528181610195015281816102f8015281816103fa0152818161044101528181610544015281816106e601526108be01526113566000f3fe608060405234801561001057600080fd5b50600436106100725760003560e01c806375f0bb521161005057806375f0bb52146101135780639327136814610126578063e458779b1461013957600080fd5b8063186f0354146100775780634c205d0d146100c057806354fd4d50146100ca575b600080fd5b60405173ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001681526020015b60405180910390f35b6100c8610167565b005b6101066040518060400160405280600581526020017f312e302e3000000000000000000000000000000000000000000000000000000081525081565b6040516100b79190610df4565b6100c8610121366004610f57565b6102ec565b6100c861013436600461104a565b6106da565b61015961014736600461107a565b60006020819052908152604090205481565b6040519081526020016100b7565b6040517f2f54bf6e0000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690632f54bf6e90602401602060405180830381865afa1580156101f1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102159190611097565b6102a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f4c6976656e65737347756172643a206f6e6c792053616665206f776e6572732060448201527f6d61792064656d6f6e737472617465206c6976656e657373000000000000000060648201526084015b60405180910390fd5b336000818152602081815260409182902042905590519182527f833bc129023866d52116d61e94b791eb8be46f05709362e0bcf1fe7c1a8c225c910160405180910390a1565b6102f46108a6565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a0e67e2b6040518163ffffffff1660e01b8152600401600060405180830381865afa158015610361573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526103a791908101906110b4565b905060005b81518110156103f5576103e28282815181106103ca576103ca611166565b6020026020010151600161096d90919063ffffffff16565b50806103ed816111c4565b9150506103ac565b5060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663d8d11f788e8e8e8e8e8e8e8e8e60017f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663affed0e06040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ce91906111fc565b6104d89190611215565b6040518b63ffffffff1660e01b81526004016104fd9a9998979695949392919061122c565b602060405180830381865afa15801561051a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061053e91906111fc565b905060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663e75235b86040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105d191906111fc565b905060006105e0838784610998565b905060005b81518110156106c8574260008084848151811061060457610604611166565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507f833bc129023866d52116d61e94b791eb8be46f05709362e0bcf1fe7c1a8c225c82828151811061067d5761067d611166565b60200260200101516040516106ae919073ffffffffffffffffffffffffffffffffffffffff91909116815260200190565b60405180910390a1806106c0816111c4565b9150506105e5565b50505050505050505050505050505050565b6106e26108a6565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a0e67e2b6040518163ffffffff1660e01b8152600401600060405180830381865afa15801561074f573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016820160405261079591908101906110b4565b905060005b815181101561081a5760008282815181106107b7576107b7611166565b602002602001015190506107d5816001610bb590919063ffffffff16565b15156000036108075773ffffffffffffffffffffffffffffffffffffffff811660009081526020819052604090204290555b5080610812816111c4565b91505061079a565b5060006108276001610bd7565b905060005b815181101561089f57600082828151811061084957610849611166565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff81166000908152918290526040822091909155905061088a600182610bb5565b50508080610897906111c4565b91505061082c565b5050505050565b3373ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000161461096b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f4c6976656e65737347756172643a206f6e6c7920536166652063616e2063616c60448201527f6c20746869732066756e6374696f6e0000000000000000000000000000000000606482015260840161029d565b565b600061098f8373ffffffffffffffffffffffffffffffffffffffff8416610beb565b90505b92915050565b60608167ffffffffffffffff8111156109b3576109b3610e3c565b6040519080825280602002602001820160405280156109dc578160200160208202803683370190505b50905060008060008060005b86811015610ba9576041818102890160208101516040820151919092015160ff16955090935091506000849003610a24578260001c9450610b5f565b8360ff16600103610a3a578260001c9450610b5f565b601e8460ff161115610aff576040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c81018a9052600190605c0160405160208183030381529060405280519060200120600486610a9f91906112f7565b6040805160008152602081018083529390935260ff90911690820152606081018590526080810184905260a0016020604051602081039080840390855afa158015610aee573d6000803e3d6000fd5b505050602060405103519450610b5f565b6040805160008152602081018083528b905260ff861691810191909152606081018490526080810183905260019060a0016020604051602081039080840390855afa158015610b52573d6000803e3d6000fd5b5050506020604051035194505b84868281518110610b7257610b72611166565b73ffffffffffffffffffffffffffffffffffffffff9092166020928302919091019091015280610ba1816111c4565b9150506109e8565b50505050509392505050565b600061098f8373ffffffffffffffffffffffffffffffffffffffff8416610c3a565b60606000610be483610d2d565b9392505050565b6000818152600183016020526040812054610c3257508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610992565b506000610992565b60008181526001830160205260408120548015610d23576000610c5e600183611215565b8554909150600090610c7290600190611215565b9050818114610cd7576000866000018281548110610c9257610c92611166565b9060005260206000200154905080876000018481548110610cb557610cb5611166565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080610ce857610ce861131a565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610992565b6000915050610992565b606081600001805480602002602001604051908101604052809291908181526020018280548015610d7d57602002820191906000526020600020905b815481526020019060010190808311610d69575b50505050509050919050565b6000815180845260005b81811015610daf57602081850181015186830182015201610d93565b81811115610dc1576000602083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061098f6020830184610d89565b73ffffffffffffffffffffffffffffffffffffffff81168114610e2957600080fd5b50565b8035610e3781610e07565b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610eb257610eb2610e3c565b604052919050565b600082601f830112610ecb57600080fd5b813567ffffffffffffffff811115610ee557610ee5610e3c565b610f1660207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610e6b565b818152846020838601011115610f2b57600080fd5b816020850160208301376000918101602001919091529392505050565b803560028110610e3757600080fd5b60008060008060008060008060008060006101608c8e031215610f7957600080fd5b610f828c610e2c565b9a5060208c0135995067ffffffffffffffff8060408e01351115610fa557600080fd5b610fb58e60408f01358f01610eba565b9950610fc360608e01610f48565b985060808d0135975060a08d0135965060c08d01359550610fe660e08e01610e2c565b9450610ff56101008e01610e2c565b9350806101208e0135111561100957600080fd5b5061101b8d6101208e01358e01610eba565b915061102a6101408d01610e2c565b90509295989b509295989b9093969950565b8015158114610e2957600080fd5b6000806040838503121561105d57600080fd5b82359150602083013561106f8161103c565b809150509250929050565b60006020828403121561108c57600080fd5b8135610be481610e07565b6000602082840312156110a957600080fd5b8151610be48161103c565b600060208083850312156110c757600080fd5b825167ffffffffffffffff808211156110df57600080fd5b818501915085601f8301126110f357600080fd5b81518181111561110557611105610e3c565b8060051b9150611116848301610e6b565b818152918301840191848101908884111561113057600080fd5b938501935b8385101561115a578451925061114a83610e07565b8282529385019390850190611135565b98975050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036111f5576111f5611195565b5060010190565b60006020828403121561120e57600080fd5b5051919050565b60008282101561122757611227611195565b500390565b600061014073ffffffffffffffffffffffffffffffffffffffff808e1684528c60208501528160408501526112638285018d610d89565b925060028b1061129c577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b8a60608501528960808501528860a08501528760c085015280871660e085015250506112e161010083018573ffffffffffffffffffffffffffffffffffffffff169052565b826101208301529b9a5050505050505050505050565b600060ff821660ff84168082101561131157611311611195565b90039392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea164736f6c634300080f000a","sourceMap":"1183:5732:171:-:0;;;2242:295;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2283:5;-1:-1:-1;;;;;2276:12:171;;;-1:-1:-1;;;;;2276:12:171;;;;;2298:23;2324:5;-1:-1:-1;;;;;2324:15:171;;:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2324:17:171;;;;;;;;;;;;:::i;:::-;2298:43;;2356:9;2351:180;2375:6;:13;2371:1;:17;2351:180;;;2409:13;2425:6;2432:1;2425:9;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;2448:15:171;;:8;:15;;;;;;;;;;;2466;2448:33;;2500:20;2149:51:416;;;2425:9:171;;-1:-1:-1;2500:20:171;;2122:18:416;2500:20:171;;;;;;;-1:-1:-1;2390:3:171;;;;:::i;:::-;;;;2351:180;;;;2266:271;2242:295;1183:5732;;14:143:416;-1:-1:-1;;;;;101:31:416;;91:42;;81:70;;147:1;144;137:12;81:70;14:143;:::o;162:283::-;252:6;305:2;293:9;284:7;280:23;276:32;273:52;;;321:1;318;311:12;273:52;353:9;347:16;372:43;409:5;372:43;:::i;:::-;434:5;162:283;-1:-1:-1;;;162:283:416:o;450:127::-;511:10;506:3;502:20;499:1;492:31;542:4;539:1;532:15;566:4;563:1;556:15;582:150;661:13;;683:43;661:13;683:43;:::i;:::-;582:150;;;:::o;737:1129::-;832:6;863:2;906;894:9;885:7;881:23;877:32;874:52;;;922:1;919;912:12;874:52;949:16;;-1:-1:-1;;;;;1014:14:416;;;1011:34;;;1041:1;1038;1031:12;1011:34;1079:6;1068:9;1064:22;1054:32;;1124:7;1117:4;1113:2;1109:13;1105:27;1095:55;;1146:1;1143;1136:12;1095:55;1175:2;1169:9;1197:2;1193;1190:10;1187:36;;;1203:18;;:::i;:::-;1249:2;1246:1;1242:10;1281:2;1275:9;1344:2;1340:7;1335:2;1331;1327:11;1323:25;1315:6;1311:38;1399:6;1387:10;1384:22;1379:2;1367:10;1364:18;1361:46;1358:72;;;1410:18;;:::i;:::-;1446:2;1439:22;1496:18;;;1530:15;;;;-1:-1:-1;1572:11:416;;;1568:20;;;1600:19;;;1597:39;;;1632:1;1629;1622:12;1597:39;1656:11;;;;1676:159;1692:6;1687:3;1684:15;1676:159;;;1758:34;1788:3;1758:34;:::i;:::-;1746:47;;1709:12;;;;1813;;;;1676:159;;;1854:6;737:1129;-1:-1:-1;;;;;;;;737:1129:416:o;1871:127::-;1932:10;1927:3;1923:20;1920:1;1913:31;1963:4;1960:1;1953:15;1987:4;1984:1;1977:15;2211:232;2250:3;2271:17;;;2268:140;;2330:10;2325:3;2321:20;2318:1;2311:31;2365:4;2362:1;2355:15;2393:4;2390:1;2383:15;2268:140;-1:-1:-1;2435:1:416;2424:13;;2211:232::o;:::-;1183:5732:171;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b50600436106100725760003560e01c806375f0bb521161005057806375f0bb52146101135780639327136814610126578063e458779b1461013957600080fd5b8063186f0354146100775780634c205d0d146100c057806354fd4d50146100ca575b600080fd5b60405173ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001681526020015b60405180910390f35b6100c8610167565b005b6101066040518060400160405280600581526020017f312e302e3000000000000000000000000000000000000000000000000000000081525081565b6040516100b79190610df4565b6100c8610121366004610f57565b6102ec565b6100c861013436600461104a565b6106da565b61015961014736600461107a565b60006020819052908152604090205481565b6040519081526020016100b7565b6040517f2f54bf6e0000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690632f54bf6e90602401602060405180830381865afa1580156101f1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102159190611097565b6102a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f4c6976656e65737347756172643a206f6e6c792053616665206f776e6572732060448201527f6d61792064656d6f6e737472617465206c6976656e657373000000000000000060648201526084015b60405180910390fd5b336000818152602081815260409182902042905590519182527f833bc129023866d52116d61e94b791eb8be46f05709362e0bcf1fe7c1a8c225c910160405180910390a1565b6102f46108a6565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a0e67e2b6040518163ffffffff1660e01b8152600401600060405180830381865afa158015610361573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526103a791908101906110b4565b905060005b81518110156103f5576103e28282815181106103ca576103ca611166565b6020026020010151600161096d90919063ffffffff16565b50806103ed816111c4565b9150506103ac565b5060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663d8d11f788e8e8e8e8e8e8e8e8e60017f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663affed0e06040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ce91906111fc565b6104d89190611215565b6040518b63ffffffff1660e01b81526004016104fd9a9998979695949392919061122c565b602060405180830381865afa15801561051a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061053e91906111fc565b905060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663e75235b86040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105d191906111fc565b905060006105e0838784610998565b905060005b81518110156106c8574260008084848151811061060457610604611166565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507f833bc129023866d52116d61e94b791eb8be46f05709362e0bcf1fe7c1a8c225c82828151811061067d5761067d611166565b60200260200101516040516106ae919073ffffffffffffffffffffffffffffffffffffffff91909116815260200190565b60405180910390a1806106c0816111c4565b9150506105e5565b50505050505050505050505050505050565b6106e26108a6565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a0e67e2b6040518163ffffffff1660e01b8152600401600060405180830381865afa15801561074f573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016820160405261079591908101906110b4565b905060005b815181101561081a5760008282815181106107b7576107b7611166565b602002602001015190506107d5816001610bb590919063ffffffff16565b15156000036108075773ffffffffffffffffffffffffffffffffffffffff811660009081526020819052604090204290555b5080610812816111c4565b91505061079a565b5060006108276001610bd7565b905060005b815181101561089f57600082828151811061084957610849611166565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff81166000908152918290526040822091909155905061088a600182610bb5565b50508080610897906111c4565b91505061082c565b5050505050565b3373ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000161461096b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f4c6976656e65737347756172643a206f6e6c7920536166652063616e2063616c60448201527f6c20746869732066756e6374696f6e0000000000000000000000000000000000606482015260840161029d565b565b600061098f8373ffffffffffffffffffffffffffffffffffffffff8416610beb565b90505b92915050565b60608167ffffffffffffffff8111156109b3576109b3610e3c565b6040519080825280602002602001820160405280156109dc578160200160208202803683370190505b50905060008060008060005b86811015610ba9576041818102890160208101516040820151919092015160ff16955090935091506000849003610a24578260001c9450610b5f565b8360ff16600103610a3a578260001c9450610b5f565b601e8460ff161115610aff576040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c81018a9052600190605c0160405160208183030381529060405280519060200120600486610a9f91906112f7565b6040805160008152602081018083529390935260ff90911690820152606081018590526080810184905260a0016020604051602081039080840390855afa158015610aee573d6000803e3d6000fd5b505050602060405103519450610b5f565b6040805160008152602081018083528b905260ff861691810191909152606081018490526080810183905260019060a0016020604051602081039080840390855afa158015610b52573d6000803e3d6000fd5b5050506020604051035194505b84868281518110610b7257610b72611166565b73ffffffffffffffffffffffffffffffffffffffff9092166020928302919091019091015280610ba1816111c4565b9150506109e8565b50505050509392505050565b600061098f8373ffffffffffffffffffffffffffffffffffffffff8416610c3a565b60606000610be483610d2d565b9392505050565b6000818152600183016020526040812054610c3257508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610992565b506000610992565b60008181526001830160205260408120548015610d23576000610c5e600183611215565b8554909150600090610c7290600190611215565b9050818114610cd7576000866000018281548110610c9257610c92611166565b9060005260206000200154905080876000018481548110610cb557610cb5611166565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080610ce857610ce861131a565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610992565b6000915050610992565b606081600001805480602002602001604051908101604052809291908181526020018280548015610d7d57602002820191906000526020600020905b815481526020019060010190808311610d69575b50505050509050919050565b6000815180845260005b81811015610daf57602081850181015186830182015201610d93565b81811115610dc1576000602083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061098f6020830184610d89565b73ffffffffffffffffffffffffffffffffffffffff81168114610e2957600080fd5b50565b8035610e3781610e07565b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610eb257610eb2610e3c565b604052919050565b600082601f830112610ecb57600080fd5b813567ffffffffffffffff811115610ee557610ee5610e3c565b610f1660207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610e6b565b818152846020838601011115610f2b57600080fd5b816020850160208301376000918101602001919091529392505050565b803560028110610e3757600080fd5b60008060008060008060008060008060006101608c8e031215610f7957600080fd5b610f828c610e2c565b9a5060208c0135995067ffffffffffffffff8060408e01351115610fa557600080fd5b610fb58e60408f01358f01610eba565b9950610fc360608e01610f48565b985060808d0135975060a08d0135965060c08d01359550610fe660e08e01610e2c565b9450610ff56101008e01610e2c565b9350806101208e0135111561100957600080fd5b5061101b8d6101208e01358e01610eba565b915061102a6101408d01610e2c565b90509295989b509295989b9093969950565b8015158114610e2957600080fd5b6000806040838503121561105d57600080fd5b82359150602083013561106f8161103c565b809150509250929050565b60006020828403121561108c57600080fd5b8135610be481610e07565b6000602082840312156110a957600080fd5b8151610be48161103c565b600060208083850312156110c757600080fd5b825167ffffffffffffffff808211156110df57600080fd5b818501915085601f8301126110f357600080fd5b81518181111561110557611105610e3c565b8060051b9150611116848301610e6b565b818152918301840191848101908884111561113057600080fd5b938501935b8385101561115a578451925061114a83610e07565b8282529385019390850190611135565b98975050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036111f5576111f5611195565b5060010190565b60006020828403121561120e57600080fd5b5051919050565b60008282101561122757611227611195565b500390565b600061014073ffffffffffffffffffffffffffffffffffffffff808e1684528c60208501528160408501526112638285018d610d89565b925060028b1061129c577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b8a60608501528960808501528860a08501528760c085015280871660e085015250506112e161010083018573ffffffffffffffffffffffffffffffffffffffff169052565b826101208301529b9a5050505050505050505050565b600060ff821660ff84168082101561131157611311611195565b90039392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea164736f6c634300080f000a","sourceMap":"1183:5732:171:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2655:78;;;362:42:416;2722:4:171;350:55:416;332:74;;320:2;305:18;2655:78:171;;;;;;;;6681:232;;;:::i;:::-;;1486:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;3145:1635::-;;;;;;:::i;:::-;;:::i;5234:1252::-;;;;;;:::i;:::-;;:::i;1801:43::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;4803:25:416;;;4791:2;4776:18;1801:43:171;4657:177:416;6681:232:171;6732:24;;;;;6745:10;6732:24;;;332:74:416;6732:4:171;:12;;;;;305:18:416;;6732:24:171;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6724:93;;;;;;;5522:2:416;6724:93:171;;;5504:21:416;5561:2;5541:18;;;5534:30;5600:34;5580:18;;;5573:62;5671:26;5651:18;;;5644:54;5715:19;;6724:93:171;;;;;;;;;6836:10;6827:8;:20;;;;;;;;;;;;6850:15;6827:38;;6881:25;;332:74:416;;;6881:25:171;;305:18:416;6881:25:171;;;;;;;6681:232::o;3145:1635::-;3570:18;:16;:18::i;:::-;3718:23;3744:4;:14;;;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3718:42;;3775:9;3770:96;3794:6;:13;3790:1;:17;3770:96;;;3828:27;3845:6;3852:1;3845:9;;;;;;;;:::i;:::-;;;;;;;3828:12;:16;;:27;;;;:::i;:::-;-1:-1:-1;3809:3:171;;;;:::i;:::-;;;;3770:96;;;;4046:14;4063:4;:23;;;4105:2;4128:5;4153:4;4182:9;4216;4248:7;4279:8;4311;4349:14;4400:1;4385:4;:10;;;:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:16;;;;:::i;:::-;4063:349;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4046:366;;4423:17;4443:4;:17;;;:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4423:39;;4472:24;4511:100;4547:6;4567:10;4599:9;4511:23;:100::i;:::-;4472:139;;4627:9;4622:152;4646:7;:14;4642:1;:18;4622:152;;;4704:15;4681:8;:20;4690:7;4698:1;4690:10;;;;;;;;:::i;:::-;;;;;;;4681:20;;;;;;;;;;;;;;;:38;;;;4738:25;4752:7;4760:1;4752:10;;;;;;;;:::i;:::-;;;;;;;4738:25;;;;;362:42:416;350:55;;;;332:74;;320:2;305:18;;158:254;4738:25:171;;;;;;;;4662:3;;;;:::i;:::-;;;;4622:152;;;;3506:1274;;;;3145:1635;;;;;;;;;;;:::o;5234:1252::-;5297:18;:16;:18::i;:::-;5366:28;5397:4;:14;;;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5366:47;;5525:9;5520:392;5544:11;:18;5540:1;:22;5520:392;;;5647:18;5668:11;5680:1;5668:14;;;;;;;;:::i;:::-;;;;;;;5647:35;;5700:31;5720:10;5700:12;:19;;:31;;;;:::i;:::-;:40;;5735:5;5700:40;5696:206;;5849:20;;;:8;:20;;;;;;;;;;5872:15;5849:38;;5696:206;-1:-1:-1;5564:3:171;;;;:::i;:::-;;;;5520:392;;;;6202:34;6239:21;:12;:19;:21::i;:::-;6202:58;;6275:9;6270:210;6294:17;:24;6290:1;:28;6270:210;;;6339:19;6361:17;6379:1;6361:20;;;;;;;;:::i;:::-;;;;;;;;;;;;6402:21;;;:8;:21;;;;;;;;;;6395:28;;;;6361:20;-1:-1:-1;6437:32:171;:12;6361:20;6437:19;:32::i;:::-;;6325:155;6320:3;;;;;:::i;:::-;;;;6270:210;;;;5287:1199;;5234:1252;;:::o;2830:146::-;2890:10;:27;2912:4;2890:27;;2882:87;;;;;;;9273:2:416;2882:87:171;;;9255:21:416;9312:2;9292:18;;;9285:30;9351:34;9331:18;;;9324:62;9422:17;9402:18;;;9395:45;9457:19;;2882:87:171;9071:411:416;2882:87:171;2830:146::o;8028:150:77:-;8098:4;8121:50;8126:3;8146:23;;;8121:4;:50::i;:::-;8114:57;;8028:150;;;;;:::o;2245:1696:173:-;2414:24;2478:18;2464:33;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2464:33:173;;2454:43;;2508:20;2538:7;2555:9;2574;2593;2612:1323;2628:18;2624:1;:22;2612:1323;;;1192:4;1188:14;;;1226:40;;1260:4;1226:40;;1220:47;1325:4;1291:40;;1285:47;1643:40;;;;1637:47;1686:4;1633:58;;-1:-1:-1;1220:47:173;;-1:-1:-1;1285:47:173;-1:-1:-1;2731:1:173;2726:6;;;2722:1164;;2951:1;2943:10;;2912:43;;2722:1164;;;2980:1;:6;;2985:1;2980:6;2976:910;;3197:1;3189:10;;3158:43;;2976:910;;;3230:2;3226:1;:6;;;3222:664;;;3562:62;;9729:66:416;3562:62:173;;;9717:79:416;9812:12;;;9805:28;;;3542:97:173;;9849:12:416;;3562:62:173;;;;;;;;;;;;3552:73;;;;;;3631:1;3627;:5;;;;:::i;:::-;3542:97;;;;;;;;;;;;10299:25:416;;;;10372:4;10360:17;;;10340:18;;;10333:45;10394:18;;;10387:34;;;10437:18;;;10430:34;;;10271:19;;3542:97:173;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3507:132;;3222:664;;;3843:28;;;;;;;;;;;;10299:25:416;;;10372:4;10360:17;;10340:18;;;10333:45;;;;10394:18;;;10387:34;;;10437:18;;;10430:34;;;3843:28:173;;10271:19:416;;3843:28:173;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3828:43;;3222:664;3912:12;3899:7;3907:1;3899:10;;;;;;;;:::i;:::-;:25;;;;:10;;;;;;;;;;;:25;2648:3;;;;:::i;:::-;;;;2612:1323;;;2444:1497;;;;;2245:1696;;;;;:::o;8346:156:77:-;8419:4;8442:53;8450:3;8470:23;;;8442:7;:53::i;9982:300::-;10045:16;10073:22;10098:19;10106:3;10098:7;:19::i;:::-;10073:44;9982:300;-1:-1:-1;;;9982:300:77:o;2113:404::-;2176:4;4250:19;;;:12;;;:19;;;;;;2192:319;;-1:-1:-1;2234:23:77;;;;;;;;:11;:23;;;;;;;;;;;;;2414:18;;2392:19;;;:12;;;:19;;;;;;:40;;;;2446:11;;2192:319;-1:-1:-1;2495:5:77;2488:12;;2685:1388;2751:4;2888:19;;;:12;;;:19;;;;;;2922:15;;2918:1149;;3291:21;3315:14;3328:1;3315:10;:14;:::i;:::-;3363:18;;3291:38;;-1:-1:-1;3343:17:77;;3363:22;;3384:1;;3363:22;:::i;:::-;3343:42;;3417:13;3404:9;:26;3400:398;;3450:17;3470:3;:11;;3482:9;3470:22;;;;;;;;:::i;:::-;;;;;;;;;3450:42;;3621:9;3592:3;:11;;3604:13;3592:26;;;;;;;;:::i;:::-;;;;;;;;;;;;:38;;;;3704:23;;;:12;;;:23;;;;;:36;;;3400:398;3876:17;;:3;;:17;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;3968:3;:12;;:19;3981:5;3968:19;;;;;;;;;;;3961:26;;;4009:4;4002:11;;;;;;;2918:1149;4051:5;4044:12;;;;;5469:109;5525:16;5560:3;:11;;5553:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5469:109;;;:::o;417:531:416:-;459:3;497:5;491:12;524:6;519:3;512:19;549:1;559:162;573:6;570:1;567:13;559:162;;;635:4;691:13;;;687:22;;681:29;663:11;;;659:20;;652:59;588:12;559:162;;;739:6;736:1;733:13;730:87;;;805:1;798:4;789:6;784:3;780:16;776:27;769:38;730:87;-1:-1:-1;862:2:416;850:15;867:66;846:88;837:98;;;;937:4;833:109;;417:531;-1:-1:-1;;417:531:416:o;953:220::-;1102:2;1091:9;1084:21;1065:4;1122:45;1163:2;1152:9;1148:18;1140:6;1122:45;:::i;1178:154::-;1264:42;1257:5;1253:54;1246:5;1243:65;1233:93;;1322:1;1319;1312:12;1233:93;1178:154;:::o;1337:134::-;1405:20;;1434:31;1405:20;1434:31;:::i;:::-;1337:134;;;:::o;1476:184::-;1528:77;1525:1;1518:88;1625:4;1622:1;1615:15;1649:4;1646:1;1639:15;1665:334;1736:2;1730:9;1792:2;1782:13;;1797:66;1778:86;1766:99;;1895:18;1880:34;;1916:22;;;1877:62;1874:88;;;1942:18;;:::i;:::-;1978:2;1971:22;1665:334;;-1:-1:-1;1665:334:416:o;2004:589::-;2046:5;2099:3;2092:4;2084:6;2080:17;2076:27;2066:55;;2117:1;2114;2107:12;2066:55;2153:6;2140:20;2179:18;2175:2;2172:26;2169:52;;;2201:18;;:::i;:::-;2245:114;2353:4;2284:66;2277:4;2273:2;2269:13;2265:86;2261:97;2245:114;:::i;:::-;2384:2;2375:7;2368:19;2430:3;2423:4;2418:2;2410:6;2406:15;2402:26;2399:35;2396:55;;;2447:1;2444;2437:12;2396:55;2512:2;2505:4;2497:6;2493:17;2486:4;2477:7;2473:18;2460:55;2560:1;2535:16;;;2553:4;2531:27;2524:38;;;;2539:7;2004:589;-1:-1:-1;;;2004:589:416:o;2598:150::-;2673:20;;2722:1;2712:12;;2702:40;;2738:1;2735;2728:12;2753:1210;2943:6;2951;2959;2967;2975;2983;2991;2999;3007;3015;3023:7;3077:3;3065:9;3056:7;3052:23;3048:33;3045:53;;;3094:1;3091;3084:12;3045:53;3117:29;3136:9;3117:29;:::i;:::-;3107:39;;3193:2;3182:9;3178:18;3165:32;3155:42;;3216:18;3283:2;3277;3266:9;3262:18;3249:32;3246:40;3243:60;;;3299:1;3296;3289:12;3243:60;3322:75;3389:7;3382:2;3371:9;3367:18;3354:32;3343:9;3339:48;3322:75;:::i;:::-;3312:85;;3416:45;3457:2;3446:9;3442:18;3416:45;:::i;:::-;3406:55;;3508:3;3497:9;3493:19;3480:33;3470:43;;3560:3;3549:9;3545:19;3532:33;3522:43;;3612:3;3601:9;3597:19;3584:33;3574:43;;3636:39;3670:3;3659:9;3655:19;3636:39;:::i;:::-;3626:49;;3694:39;3728:3;3717:9;3713:19;3694:39;:::i;:::-;3684:49;;3783:2;3776:3;3765:9;3761:19;3748:33;3745:41;3742:61;;;3799:1;3796;3789:12;3742:61;;3822:76;3890:7;3882:3;3871:9;3867:19;3854:33;3843:9;3839:49;3822:76;:::i;:::-;3812:86;;3918:39;3952:3;3941:9;3937:19;3918:39;:::i;:::-;3907:50;;2753:1210;;;;;;;;;;;;;;:::o;3968:118::-;4054:5;4047:13;4040:21;4033:5;4030:32;4020:60;;4076:1;4073;4066:12;4091:309;4156:6;4164;4217:2;4205:9;4196:7;4192:23;4188:32;4185:52;;;4233:1;4230;4223:12;4185:52;4269:9;4256:23;4246:33;;4329:2;4318:9;4314:18;4301:32;4342:28;4364:5;4342:28;:::i;:::-;4389:5;4379:15;;;4091:309;;;;;:::o;4405:247::-;4464:6;4517:2;4505:9;4496:7;4492:23;4488:32;4485:52;;;4533:1;4530;4523:12;4485:52;4572:9;4559:23;4591:31;4616:5;4591:31;:::i;5070:245::-;5137:6;5190:2;5178:9;5169:7;5165:23;5161:32;5158:52;;;5206:1;5203;5196:12;5158:52;5238:9;5232:16;5257:28;5279:5;5257:28;:::i;5745:1011::-;5840:6;5871:2;5914;5902:9;5893:7;5889:23;5885:32;5882:52;;;5930:1;5927;5920:12;5882:52;5963:9;5957:16;5992:18;6033:2;6025:6;6022:14;6019:34;;;6049:1;6046;6039:12;6019:34;6087:6;6076:9;6072:22;6062:32;;6132:7;6125:4;6121:2;6117:13;6113:27;6103:55;;6154:1;6151;6144:12;6103:55;6183:2;6177:9;6205:2;6201;6198:10;6195:36;;;6211:18;;:::i;:::-;6257:2;6254:1;6250:10;6240:20;;6280:28;6304:2;6300;6296:11;6280:28;:::i;:::-;6342:15;;;6412:11;;;6408:20;;;6373:12;;;;6440:19;;;6437:39;;;6472:1;6469;6462:12;6437:39;6496:11;;;;6516:210;6532:6;6527:3;6524:15;6516:210;;;6605:3;6599:10;6586:23;;6622:31;6647:5;6622:31;:::i;:::-;6666:18;;;6549:12;;;;6704;;;;6516:210;;;6745:5;5745:1011;-1:-1:-1;;;;;;;;5745:1011:416:o;6761:184::-;6813:77;6810:1;6803:88;6910:4;6907:1;6900:15;6934:4;6931:1;6924:15;6950:184;7002:77;6999:1;6992:88;7099:4;7096:1;7089:15;7123:4;7120:1;7113:15;7139:195;7178:3;7209:66;7202:5;7199:77;7196:103;;7279:18;;:::i;:::-;-1:-1:-1;7326:1:416;7315:13;;7139:195::o;7339:184::-;7409:6;7462:2;7450:9;7441:7;7437:23;7433:32;7430:52;;;7478:1;7475;7468:12;7430:52;-1:-1:-1;7501:16:416;;7339:184;-1:-1:-1;7339:184:416:o;7528:125::-;7568:4;7596:1;7593;7590:8;7587:34;;;7601:18;;:::i;:::-;-1:-1:-1;7638:9:416;;7528:125::o;7658:1219::-;8041:4;8070:3;8092:42;8173:2;8165:6;8161:15;8150:9;8143:34;8213:6;8208:2;8197:9;8193:18;8186:34;8256:2;8251;8240:9;8236:18;8229:30;8276:45;8317:2;8306:9;8302:18;8294:6;8276:45;:::i;:::-;8268:53;;8351:1;8343:6;8340:13;8330:201;;8387:77;8384:1;8377:88;8488:4;8485:1;8478:15;8516:4;8513:1;8506:15;8330:201;8567:6;8562:2;8551:9;8547:18;8540:34;8611:6;8605:3;8594:9;8590:19;8583:35;8655:6;8649:3;8638:9;8634:19;8627:35;8699:6;8693:3;8682:9;8678:19;8671:35;8755:2;8747:6;8743:15;8737:3;8726:9;8722:19;8715:44;;;8768:59;8822:3;8811:9;8807:19;8799:6;103:42;92:54;80:67;;14:139;8768:59;8864:6;8858:3;8847:9;8843:19;8836:35;7658:1219;;;;;;;;;;;;;:::o;9872:195::-;9910:4;9947;9944:1;9940:12;9979:4;9976:1;9972:12;10004:3;9999;9996:12;9993:38;;;10011:18;;:::i;:::-;10048:13;;;9872:195;-1:-1:-1;;;9872:195:416:o;10475:184::-;10527:77;10524:1;10517:88;10624:4;10621:1;10614:15;10648:4;10645:1;10638:15","linkReferences":{},"immutableReferences":{"99457":[{"start":145,"length":32},{"start":405,"length":32},{"start":760,"length":32},{"start":1018,"length":32},{"start":1089,"length":32},{"start":1348,"length":32},{"start":1766,"length":32},{"start":2238,"length":32}]}},"methodIdentifiers":{"checkAfterExecution(bytes32,bool)":"93271368","checkTransaction(address,uint256,bytes,uint8,uint256,uint256,uint256,address,address,bytes,address)":"75f0bb52","lastLive(address)":"e458779b","safe()":"186f0354","showLiveness()":"4c205d0d","version()":"54fd4d50"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.15+commit.e14f2714\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract GnosisSafe\",\"name\":\"_safe\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"OwnerRecorded\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"name\":\"checkAfterExecution\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"enum Enum.Operation\",\"name\":\"operation\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"safeTxGas\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"baseGas\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"gasPrice\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"internalType\":\"address payable\",\"name\":\"refundReceiver\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"signatures\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"msgSender\",\"type\":\"address\"}],\"name\":\"checkTransaction\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"lastLive\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"safe\",\"outputs\":[{\"internalType\":\"contract GnosisSafe\",\"name\":\"safe_\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"showLiveness\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"version\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"It keeps track of the last time each owner participated in signing a transaction.      If an owner does not participate in a transaction for a certain period of time, they are considered inactive.      This Guard is intended to be used in conjunction with the LivenessModule contract, but does      not depend on it.      Note: Both `checkTransaction` and `checkAfterExecution` are called once each by the Safe contract      before and after the execution of a transaction. It is critical that neither function revert,      otherwise the Safe contract will be unable to execute a transaction.\",\"events\":{\"OwnerRecorded(address)\":{\"params\":{\"owner\":\"The owner's address.\"}}},\"kind\":\"dev\",\"methods\":{\"checkAfterExecution(bytes32,bool)\":{\"details\":\"Called by the Safe contract after the execution of a transaction.      We use this post execution hook to compare the set of owners before and after.      If the set of owners has changed then we:      1. Add new owners to the lastLive mapping      2. Delete removed owners from the lastLive mapping\"},\"checkTransaction(address,uint256,bytes,uint8,uint256,uint256,uint256,address,address,bytes,address)\":{\"details\":\"Called by the Safe contract before execution of a transaction.\"},\"constructor\":{\"params\":{\"_safe\":\"The safe account for which this contract will be the guard.\"}},\"safe()\":{\"returns\":{\"safe_\":\"The Safe contract instance\"}}},\"stateVariables\":{\"version\":{\"custom:semver\":\"1.0.0\"}},\"title\":\"LivenessGuard\",\"version\":1},\"userdoc\":{\"events\":{\"OwnerRecorded(address)\":{\"notice\":\"Emitted when an owner is recorded.\"}},\"kind\":\"user\",\"methods\":{\"checkAfterExecution(bytes32,bool)\":{\"notice\":\"Update the lastLive mapping according to the set of owners before and after execution.\"},\"checkTransaction(address,uint256,bytes,uint8,uint256,uint256,uint256,address,address,bytes,address)\":{\"notice\":\"Records the most recent time which any owner has signed a transaction.\"},\"constructor\":{\"notice\":\"Constructor.\"},\"lastLive(address)\":{\"notice\":\"A mapping of the timestamp at which an owner last participated in signing a         an executed transaction, or called showLiveness.\"},\"safe()\":{\"notice\":\"Getter function for the Safe contract instance\"},\"showLiveness()\":{\"notice\":\"Enables an owner to demonstrate liveness by calling this method directly.         This is useful for owners who have not recently signed a transaction via the Safe.\"},\"version()\":{\"notice\":\"Semantic version.\"}},\"notice\":\"This Guard contract is used to track the liveness of Safe owners.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/Safe/LivenessGuard.sol\":\"LivenessGuard\"},\"evmVersion\":\"london\",\"libraries\":{\"src/tokamak-contracts/USDC/L2/tokamak-USDC/v2/FiatTokenV2_2.sol:SignatureChecker\":\"0x4200000000000000000000000000000000000776\"},\"metadata\":{\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":999999},\"remappings\":[\":@lib-keccak/=lib/lib-keccak/contracts/lib/\",\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/contracts_v3.1.0/=lib/openzeppelin-contracts_v3.1.0/contracts/\",\":@openzeppelin/contracts_v5.0.1/=lib/openzeppelin-contracts_v5.0.1/contracts/\",\":@rari-capital/solmate/=lib/solmate/\",\":@solady-test/=lib/lib-keccak/lib/solady/test/\",\":@solady/=lib/solady/src/\",\":automate/=lib/automate/contracts/\",\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":erc4626-tests/=lib/openzeppelin-contracts_v5.0.1/lib/erc4626-tests/\",\":forge-std/=lib/forge-std/src/\",\":gelato/=lib/automate/contracts/\",\":hardhat/=lib/automate/node_modules/hardhat/\",\":kontrol-cheatcodes/=lib/kontrol-cheatcodes/src/\",\":lib-keccak/=lib/lib-keccak/contracts/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-contracts_v3.1.0/=lib/openzeppelin-contracts_v3.1.0/contracts/\",\":openzeppelin-contracts_v5.0.1/=lib/openzeppelin-contracts_v5.0.1/\",\":prb-test/=lib/automate/lib/prb-test/src/\",\":prb/-est/=lib/automate/lib/prb-test/src/\",\":safe-contracts/=lib/safe-contracts/contracts/\",\":solady/=lib/solady/\",\":solmate/=lib/solmate/src/\"]},\"sources\":{\"lib/openzeppelin-contracts/contracts/utils/structs/EnumerableSet.sol\":{\"keccak256\":\"0x5050943b32b6a8f282573d166b2e9d87ab7eb4dbba4ab6acf36ecb54fe6995e4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d4831d777a29ebdf9f2caecd70e74b97bff1b70e53622fd0a02aed01e21c8271\",\"dweb:/ipfs/QmUqurVVnCc7XkMxb2k23TVQUtuhHZduJ3hTZarTJrqU24\"]},\"lib/safe-contracts/contracts/GnosisSafe.sol\":{\"keccak256\":\"0x2ca9e3e053c969b9364f62c50c2c25b92525db7fd0bad3ae1fb0c20dd575367c\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://ef1bceac49ae93b31aec41380862fdc267823c41e2dfefb9b7d70d0996e858e1\",\"dweb:/ipfs/QmWFU5bic2CGv8QgQ8bxJnjMfuJgNL2zZubt5hvzhcRZPc\"]},\"lib/safe-contracts/contracts/base/Executor.sol\":{\"keccak256\":\"0x4d3a900673473466bc27413fdbb11aae60b5580b792c49411f01544e0b24fe08\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://71ada0590998f47d1ee9759aa190c82d4b348d59a2f582747650d9720245a309\",\"dweb:/ipfs/Qmb9UudLoJpPutHVP9pXd1poP5CqFf5sxVFuYw14SYfRFk\"]},\"lib/safe-contracts/contracts/base/FallbackManager.sol\":{\"keccak256\":\"0x1be9f0f3e80a78134c2e3a026c6a14759785bd35d135e87a4a025aeb6742791f\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://44130f09921e895c0b9d7797de1d64940a8c43391efcda3a0208cb9ad96475a7\",\"dweb:/ipfs/QmUur4hzvCJ68PnW6zQFpemAMH2DH5mExPqSZdpKeY1ZRN\"]},\"lib/safe-contracts/contracts/base/GuardManager.sol\":{\"keccak256\":\"0x53a532a31f9632d5a73ad0df56f05bd2b66a2f781f571eb48d00367d370707f9\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://eebc15cb7c83cf9516514b34bd16fb19c08104c738fa172ae3c98c66b84708ed\",\"dweb:/ipfs/QmfJ4yX5WwHU58QVoxJFaejyerscTs6VCgn2TdUVrEZeTP\"]},\"lib/safe-contracts/contracts/base/ModuleManager.sol\":{\"keccak256\":\"0x5512760a0328309f82a71cbe2ac14e0942501b9d44d5fb417bd02174546672e5\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://763cf803a98a921d62ed51d7876a13aed63968c828f026ce2beb747d2631c0bc\",\"dweb:/ipfs/QmbHZoYsbkxC2kVCs4pQ4nRaFrcgU5X8FuLX7vV3qDR9Y5\"]},\"lib/safe-contracts/contracts/base/OwnerManager.sol\":{\"keccak256\":\"0x01a3d64cc0967f42ae63802409f5404d18352516ea2a6335005003d919ffcf12\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://91824103f2966612103705d6493290e193b0c0ca2bbe7141965184435dbb999b\",\"dweb:/ipfs/Qmd7u917v4DnD4hvQGAGbchVJ8A7pm1UCzCv7sAzQnRoi4\"]},\"lib/safe-contracts/contracts/common/Enum.sol\":{\"keccak256\":\"0x473e45b1a5cc47be494b0e123c9127f0c11c1e0992a321ae5a644c0bfdb2c14f\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://948e6d5a8bd7377f7795b6e28584eab9be5c0a8db240bf5e606744a175238c3d\",\"dweb:/ipfs/QmQQaUmQfpuejV41jbxKSTgEBYYCcVTjCsDMgf2htgz6ej\"]},\"lib/safe-contracts/contracts/common/EtherPaymentFallback.sol\":{\"keccak256\":\"0x1a7928d29877da84a3d0df846d5cd933d48ee095c1bde0aa044e249b12e27a72\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://962fc098cfdd8a43cc7d294c1105718ea985cacf1172ea0426f7370e2096b830\",\"dweb:/ipfs/QmdZrxJ7dSWuTjbrN133YiRDLwYQr21zLr3CqWWtowY9Gu\"]},\"lib/safe-contracts/contracts/common/SecuredTokenTransfer.sol\":{\"keccak256\":\"0x178682d8477da42936c7e8e24d39094c4ac08ecd8623794b9535d77001b665f1\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://2ae8a6d5c7d4cc19c3b957c8857e87e92a4570effebf32ba54184c2b8375a0a2\",\"dweb:/ipfs/QmVNgRcRVgQZriJm8KVXQvRbHQf74wH7ABmBNTjBTqBa8r\"]},\"lib/safe-contracts/contracts/common/SelfAuthorized.sol\":{\"keccak256\":\"0x59d36efca578b75541a776f62a0d0ef03712fc27b6647c3915c14b572106d7bc\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://8530c6e0392415d42486847cd4368d30f6cac42051596330692a571fcdbb9e29\",\"dweb:/ipfs/QmWw51Pshw5t2sMKANzxtfNdBSQUyQQpfTr3Mi7oNJGk7U\"]},\"lib/safe-contracts/contracts/common/SignatureDecoder.sol\":{\"keccak256\":\"0x2d37be182472ccfee62a33e9939f9b3d509be4c32e9fdebc2c1746c573655987\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://f76d96f10640beee7d4b4ad119bd3c64aeb26929011d9c1eec738c63ebc92f63\",\"dweb:/ipfs/QmaqgDocQumKeyUMgZU7STzpTASQjDbUxbQKuZ17xhLaXz\"]},\"lib/safe-contracts/contracts/common/Singleton.sol\":{\"keccak256\":\"0x6e02c18998de8834dd7d69890cb6ede996b6f635d2337081a596d91e35e2c648\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://ce1dfe9f820352b6f95b350ac0b3fa8afc24ad77bffffc2c9e00462e2a41a666\",\"dweb:/ipfs/QmVr2dCUbNbg5e7UsgngGij5mybgkXcbf5e5cPhT21aFXA\"]},\"lib/safe-contracts/contracts/common/StorageAccessible.sol\":{\"keccak256\":\"0x36853adb266c2ab7d3c612aca799441a86bd15d9e1d24fc6c70d63f5c2df3aaf\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://3f210f47e032444049040d2929b32e02089aac1d05b07dcd77ee34bb63505dfa\",\"dweb:/ipfs/QmbE8GXFAbthieTL51S2XPF5URyPaj1tDubVuhztkSoiPo\"]},\"lib/safe-contracts/contracts/external/GnosisSafeMath.sol\":{\"keccak256\":\"0x2a2b4d74f5834a9437be0cd3254d7a676698fc78aa47941c2009470196998d98\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://ea04449ba8b78ec44f3463b68cbce971875626e91d028add50900c41101a1156\",\"dweb:/ipfs/QmR95ci4HVkJuyYGvYRHVpp6N3wefu5WVDhipKwRechWV6\"]},\"lib/safe-contracts/contracts/interfaces/ISignatureValidator.sol\":{\"keccak256\":\"0x5b6e9bf17f28738ce88e751f420b0559f5151ba7bec2ff3c7bb31e42673d6801\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://bfdde8390deb619e38f98be67c5f9d26f12623855540af76b9f454142d3896c1\",\"dweb:/ipfs/QmZrr1ocToR5S62W177qV2csfs7wCQNs3t9vatyx32uLXz\"]},\"src/Safe/LivenessGuard.sol\":{\"keccak256\":\"0x78fbe21380e2a48d352185ffbe98a0acb9029e8dd8e09a183c0393b9c9a1b0d2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://12dd62f28f06a9ddc06d74a04b0a73aa018a1c97a476e342e7e10fc247e15ec6\",\"dweb:/ipfs/QmUyXRoKDPbCaRRork43nKSXBQkAtEJsck1XcbG8Q4EDqK\"]},\"src/Safe/SafeSigners.sol\":{\"keccak256\":\"0xc3c1ece8d6cdc8587926e2c67c401ee49a9adc2fbdb983679434f07c521576b5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6bf9dfb2dcc579a3cb58eb307223b48e5ee42678a42a4ba4453251a6e2c25ba3\",\"dweb:/ipfs/QmUwFHA8SxsVYBigJEsZaKqPuyYgYSa5juYXWZpYwfuNVT\"]},\"src/universal/ISemver.sol\":{\"keccak256\":\"0xba34562a8026f59886d2e07d1d58d90b9691d00e0788c6263cef6c22740cab44\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0826f998632f83c103c3085bf2e872db79a69022b6d2e0444c83a64ca5283c2a\",\"dweb:/ipfs/QmcJ7PNqkAfKqbjFGRordtAg1v9DvcBSKvdTkVvciLyvQR\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.15+commit.e14f2714"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"contract GnosisSafe","name":"_safe","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"owner","type":"address","indexed":false}],"type":"event","name":"OwnerRecorded","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"checkAfterExecution"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"enum Enum.Operation","name":"operation","type":"uint8"},{"internalType":"uint256","name":"safeTxGas","type":"uint256"},{"internalType":"uint256","name":"baseGas","type":"uint256"},{"internalType":"uint256","name":"gasPrice","type":"uint256"},{"internalType":"address","name":"gasToken","type":"address"},{"internalType":"address payable","name":"refundReceiver","type":"address"},{"internalType":"bytes","name":"signatures","type":"bytes"},{"internalType":"address","name":"msgSender","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"checkTransaction"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function","name":"lastLive","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"safe","outputs":[{"internalType":"contract GnosisSafe","name":"safe_","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"showLiveness"},{"inputs":[],"stateMutability":"view","type":"function","name":"version","outputs":[{"internalType":"string","name":"","type":"string"}]}],"devdoc":{"kind":"dev","methods":{"checkAfterExecution(bytes32,bool)":{"details":"Called by the Safe contract after the execution of a transaction.      We use this post execution hook to compare the set of owners before and after.      If the set of owners has changed then we:      1. Add new owners to the lastLive mapping      2. Delete removed owners from the lastLive mapping"},"checkTransaction(address,uint256,bytes,uint8,uint256,uint256,uint256,address,address,bytes,address)":{"details":"Called by the Safe contract before execution of a transaction."},"constructor":{"params":{"_safe":"The safe account for which this contract will be the guard."}},"safe()":{"returns":{"safe_":"The Safe contract instance"}}},"version":1},"userdoc":{"kind":"user","methods":{"checkAfterExecution(bytes32,bool)":{"notice":"Update the lastLive mapping according to the set of owners before and after execution."},"checkTransaction(address,uint256,bytes,uint8,uint256,uint256,uint256,address,address,bytes,address)":{"notice":"Records the most recent time which any owner has signed a transaction."},"constructor":{"notice":"Constructor."},"lastLive(address)":{"notice":"A mapping of the timestamp at which an owner last participated in signing a         an executed transaction, or called showLiveness."},"safe()":{"notice":"Getter function for the Safe contract instance"},"showLiveness()":{"notice":"Enables an owner to demonstrate liveness by calling this method directly.         This is useful for owners who have not recently signed a transaction via the Safe."},"version()":{"notice":"Semantic version."}},"version":1}},"settings":{"remappings":["@lib-keccak/=lib/lib-keccak/contracts/lib/","@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/contracts_v3.1.0/=lib/openzeppelin-contracts_v3.1.0/contracts/","@openzeppelin/contracts_v5.0.1/=lib/openzeppelin-contracts_v5.0.1/contracts/","@rari-capital/solmate/=lib/solmate/","@solady-test/=lib/lib-keccak/lib/solady/test/","@solady/=lib/solady/src/","automate/=lib/automate/contracts/","ds-test/=lib/forge-std/lib/ds-test/src/","erc4626-tests/=lib/openzeppelin-contracts_v5.0.1/lib/erc4626-tests/","forge-std/=lib/forge-std/src/","gelato/=lib/automate/contracts/","hardhat/=lib/automate/node_modules/hardhat/","kontrol-cheatcodes/=lib/kontrol-cheatcodes/src/","lib-keccak/=lib/lib-keccak/contracts/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-contracts_v3.1.0/=lib/openzeppelin-contracts_v3.1.0/contracts/","openzeppelin-contracts_v5.0.1/=lib/openzeppelin-contracts_v5.0.1/","prb-test/=lib/automate/lib/prb-test/src/","prb/-est/=lib/automate/lib/prb-test/src/","safe-contracts/=lib/safe-contracts/contracts/","solady/=lib/solady/","solmate/=lib/solmate/src/"],"optimizer":{"enabled":true,"runs":999999},"metadata":{"bytecodeHash":"none"},"compilationTarget":{"src/Safe/LivenessGuard.sol":"LivenessGuard"},"evmVersion":"london","libraries":{"src/tokamak-contracts/USDC/L2/tokamak-USDC/v2/FiatTokenV2_2.sol:SignatureChecker":"0x4200000000000000000000000000000000000776"}},"sources":{"lib/openzeppelin-contracts/contracts/utils/structs/EnumerableSet.sol":{"keccak256":"0x5050943b32b6a8f282573d166b2e9d87ab7eb4dbba4ab6acf36ecb54fe6995e4","urls":["bzz-raw://d4831d777a29ebdf9f2caecd70e74b97bff1b70e53622fd0a02aed01e21c8271","dweb:/ipfs/QmUqurVVnCc7XkMxb2k23TVQUtuhHZduJ3hTZarTJrqU24"],"license":"MIT"},"lib/safe-contracts/contracts/GnosisSafe.sol":{"keccak256":"0x2ca9e3e053c969b9364f62c50c2c25b92525db7fd0bad3ae1fb0c20dd575367c","urls":["bzz-raw://ef1bceac49ae93b31aec41380862fdc267823c41e2dfefb9b7d70d0996e858e1","dweb:/ipfs/QmWFU5bic2CGv8QgQ8bxJnjMfuJgNL2zZubt5hvzhcRZPc"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/base/Executor.sol":{"keccak256":"0x4d3a900673473466bc27413fdbb11aae60b5580b792c49411f01544e0b24fe08","urls":["bzz-raw://71ada0590998f47d1ee9759aa190c82d4b348d59a2f582747650d9720245a309","dweb:/ipfs/Qmb9UudLoJpPutHVP9pXd1poP5CqFf5sxVFuYw14SYfRFk"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/base/FallbackManager.sol":{"keccak256":"0x1be9f0f3e80a78134c2e3a026c6a14759785bd35d135e87a4a025aeb6742791f","urls":["bzz-raw://44130f09921e895c0b9d7797de1d64940a8c43391efcda3a0208cb9ad96475a7","dweb:/ipfs/QmUur4hzvCJ68PnW6zQFpemAMH2DH5mExPqSZdpKeY1ZRN"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/base/GuardManager.sol":{"keccak256":"0x53a532a31f9632d5a73ad0df56f05bd2b66a2f781f571eb48d00367d370707f9","urls":["bzz-raw://eebc15cb7c83cf9516514b34bd16fb19c08104c738fa172ae3c98c66b84708ed","dweb:/ipfs/QmfJ4yX5WwHU58QVoxJFaejyerscTs6VCgn2TdUVrEZeTP"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/base/ModuleManager.sol":{"keccak256":"0x5512760a0328309f82a71cbe2ac14e0942501b9d44d5fb417bd02174546672e5","urls":["bzz-raw://763cf803a98a921d62ed51d7876a13aed63968c828f026ce2beb747d2631c0bc","dweb:/ipfs/QmbHZoYsbkxC2kVCs4pQ4nRaFrcgU5X8FuLX7vV3qDR9Y5"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/base/OwnerManager.sol":{"keccak256":"0x01a3d64cc0967f42ae63802409f5404d18352516ea2a6335005003d919ffcf12","urls":["bzz-raw://91824103f2966612103705d6493290e193b0c0ca2bbe7141965184435dbb999b","dweb:/ipfs/Qmd7u917v4DnD4hvQGAGbchVJ8A7pm1UCzCv7sAzQnRoi4"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/common/Enum.sol":{"keccak256":"0x473e45b1a5cc47be494b0e123c9127f0c11c1e0992a321ae5a644c0bfdb2c14f","urls":["bzz-raw://948e6d5a8bd7377f7795b6e28584eab9be5c0a8db240bf5e606744a175238c3d","dweb:/ipfs/QmQQaUmQfpuejV41jbxKSTgEBYYCcVTjCsDMgf2htgz6ej"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/common/EtherPaymentFallback.sol":{"keccak256":"0x1a7928d29877da84a3d0df846d5cd933d48ee095c1bde0aa044e249b12e27a72","urls":["bzz-raw://962fc098cfdd8a43cc7d294c1105718ea985cacf1172ea0426f7370e2096b830","dweb:/ipfs/QmdZrxJ7dSWuTjbrN133YiRDLwYQr21zLr3CqWWtowY9Gu"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/common/SecuredTokenTransfer.sol":{"keccak256":"0x178682d8477da42936c7e8e24d39094c4ac08ecd8623794b9535d77001b665f1","urls":["bzz-raw://2ae8a6d5c7d4cc19c3b957c8857e87e92a4570effebf32ba54184c2b8375a0a2","dweb:/ipfs/QmVNgRcRVgQZriJm8KVXQvRbHQf74wH7ABmBNTjBTqBa8r"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/common/SelfAuthorized.sol":{"keccak256":"0x59d36efca578b75541a776f62a0d0ef03712fc27b6647c3915c14b572106d7bc","urls":["bzz-raw://8530c6e0392415d42486847cd4368d30f6cac42051596330692a571fcdbb9e29","dweb:/ipfs/QmWw51Pshw5t2sMKANzxtfNdBSQUyQQpfTr3Mi7oNJGk7U"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/common/SignatureDecoder.sol":{"keccak256":"0x2d37be182472ccfee62a33e9939f9b3d509be4c32e9fdebc2c1746c573655987","urls":["bzz-raw://f76d96f10640beee7d4b4ad119bd3c64aeb26929011d9c1eec738c63ebc92f63","dweb:/ipfs/QmaqgDocQumKeyUMgZU7STzpTASQjDbUxbQKuZ17xhLaXz"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/common/Singleton.sol":{"keccak256":"0x6e02c18998de8834dd7d69890cb6ede996b6f635d2337081a596d91e35e2c648","urls":["bzz-raw://ce1dfe9f820352b6f95b350ac0b3fa8afc24ad77bffffc2c9e00462e2a41a666","dweb:/ipfs/QmVr2dCUbNbg5e7UsgngGij5mybgkXcbf5e5cPhT21aFXA"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/common/StorageAccessible.sol":{"keccak256":"0x36853adb266c2ab7d3c612aca799441a86bd15d9e1d24fc6c70d63f5c2df3aaf","urls":["bzz-raw://3f210f47e032444049040d2929b32e02089aac1d05b07dcd77ee34bb63505dfa","dweb:/ipfs/QmbE8GXFAbthieTL51S2XPF5URyPaj1tDubVuhztkSoiPo"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/external/GnosisSafeMath.sol":{"keccak256":"0x2a2b4d74f5834a9437be0cd3254d7a676698fc78aa47941c2009470196998d98","urls":["bzz-raw://ea04449ba8b78ec44f3463b68cbce971875626e91d028add50900c41101a1156","dweb:/ipfs/QmR95ci4HVkJuyYGvYRHVpp6N3wefu5WVDhipKwRechWV6"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/interfaces/ISignatureValidator.sol":{"keccak256":"0x5b6e9bf17f28738ce88e751f420b0559f5151ba7bec2ff3c7bb31e42673d6801","urls":["bzz-raw://bfdde8390deb619e38f98be67c5f9d26f12623855540af76b9f454142d3896c1","dweb:/ipfs/QmZrr1ocToR5S62W177qV2csfs7wCQNs3t9vatyx32uLXz"],"license":"LGPL-3.0-only"},"src/Safe/LivenessGuard.sol":{"keccak256":"0x78fbe21380e2a48d352185ffbe98a0acb9029e8dd8e09a183c0393b9c9a1b0d2","urls":["bzz-raw://12dd62f28f06a9ddc06d74a04b0a73aa018a1c97a476e342e7e10fc247e15ec6","dweb:/ipfs/QmUyXRoKDPbCaRRork43nKSXBQkAtEJsck1XcbG8Q4EDqK"],"license":"MIT"},"src/Safe/SafeSigners.sol":{"keccak256":"0xc3c1ece8d6cdc8587926e2c67c401ee49a9adc2fbdb983679434f07c521576b5","urls":["bzz-raw://6bf9dfb2dcc579a3cb58eb307223b48e5ee42678a42a4ba4453251a6e2c25ba3","dweb:/ipfs/QmUwFHA8SxsVYBigJEsZaKqPuyYgYSa5juYXWZpYwfuNVT"],"license":"MIT"},"src/universal/ISemver.sol":{"keccak256":"0xba34562a8026f59886d2e07d1d58d90b9691d00e0788c6263cef6c22740cab44","urls":["bzz-raw://0826f998632f83c103c3085bf2e872db79a69022b6d2e0444c83a64ca5283c2a","dweb:/ipfs/QmcJ7PNqkAfKqbjFGRordtAg1v9DvcBSKvdTkVvciLyvQR"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[{"astId":99462,"contract":"src/Safe/LivenessGuard.sol:LivenessGuard","label":"lastLive","offset":0,"slot":"0","type":"t_mapping(t_address,t_uint256)"},{"astId":99466,"contract":"src/Safe/LivenessGuard.sol:LivenessGuard","label":"ownersBefore","offset":0,"slot":"1","type":"t_struct(AddressSet)57829_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_bytes32)dyn_storage":{"encoding":"dynamic_array","label":"bytes32[]","numberOfBytes":"32","base":"t_bytes32"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_mapping(t_address,t_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_mapping(t_bytes32,t_uint256)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_struct(AddressSet)57829_storage":{"encoding":"inplace","label":"struct EnumerableSet.AddressSet","numberOfBytes":"64","members":[{"astId":57828,"contract":"src/Safe/LivenessGuard.sol:LivenessGuard","label":"_inner","offset":0,"slot":"0","type":"t_struct(Set)57528_storage"}]},"t_struct(Set)57528_storage":{"encoding":"inplace","label":"struct EnumerableSet.Set","numberOfBytes":"64","members":[{"astId":57523,"contract":"src/Safe/LivenessGuard.sol:LivenessGuard","label":"_values","offset":0,"slot":"0","type":"t_array(t_bytes32)dyn_storage"},{"astId":57527,"contract":"src/Safe/LivenessGuard.sol:LivenessGuard","label":"_indexes","offset":0,"slot":"1","type":"t_mapping(t_bytes32,t_uint256)"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"}}},"userdoc":{"version":1,"kind":"user","methods":{"checkAfterExecution(bytes32,bool)":{"notice":"Update the lastLive mapping according to the set of owners before and after execution."},"checkTransaction(address,uint256,bytes,uint8,uint256,uint256,uint256,address,address,bytes,address)":{"notice":"Records the most recent time which any owner has signed a transaction."},"constructor":{"notice":"Constructor."},"lastLive(address)":{"notice":"A mapping of the timestamp at which an owner last participated in signing a         an executed transaction, or called showLiveness."},"safe()":{"notice":"Getter function for the Safe contract instance"},"showLiveness()":{"notice":"Enables an owner to demonstrate liveness by calling this method directly.         This is useful for owners who have not recently signed a transaction via the Safe."},"version()":{"notice":"Semantic version."}},"events":{"OwnerRecorded(address)":{"notice":"Emitted when an owner is recorded."}},"notice":"This Guard contract is used to track the liveness of Safe owners."},"devdoc":{"version":1,"kind":"dev","details":"It keeps track of the last time each owner participated in signing a transaction.      If an owner does not participate in a transaction for a certain period of time, they are considered inactive.      This Guard is intended to be used in conjunction with the LivenessModule contract, but does      not depend on it.      Note: Both `checkTransaction` and `checkAfterExecution` are called once each by the Safe contract      before and after the execution of a transaction. It is critical that neither function revert,      otherwise the Safe contract will be unable to execute a transaction.","methods":{"checkAfterExecution(bytes32,bool)":{"details":"Called by the Safe contract after the execution of a transaction.      We use this post execution hook to compare the set of owners before and after.      If the set of owners has changed then we:      1. Add new owners to the lastLive mapping      2. Delete removed owners from the lastLive mapping"},"checkTransaction(address,uint256,bytes,uint8,uint256,uint256,uint256,address,address,bytes,address)":{"details":"Called by the Safe contract before execution of a transaction."},"constructor":{"params":{"_safe":"The safe account for which this contract will be the guard."}},"safe()":{"returns":{"safe_":"The Safe contract instance"}}},"events":{"OwnerRecorded(address)":{"params":{"owner":"The owner's address."}}},"title":"LivenessGuard"},"ast":{"absolutePath":"src/Safe/LivenessGuard.sol","id":99797,"exportedSymbols":{"BaseGuard":[59190],"Enum":[60115],"EnumerableSet":[58116],"ISemver":[122319],"LivenessGuard":[99796],"Safe":[59069],"SafeSigners":[100506]},"nodeType":"SourceUnit","src":"32:6884:171","nodes":[{"id":99423,"nodeType":"PragmaDirective","src":"32:23:171","nodes":[],"literals":["solidity","0.8",".15"]},{"id":99425,"nodeType":"ImportDirective","src":"57:67:171","nodes":[],"absolutePath":"lib/safe-contracts/contracts/GnosisSafe.sol","file":"safe-contracts/GnosisSafe.sol","nameLocation":"-1:-1:-1","scope":99797,"sourceUnit":59070,"symbolAliases":[{"foreign":{"id":99424,"name":"GnosisSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59069,"src":"66:10:171","typeDescriptions":{}},"local":"Safe","nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":99427,"nodeType":"ImportDirective","src":"125:74:171","nodes":[],"absolutePath":"lib/safe-contracts/contracts/base/GuardManager.sol","file":"safe-contracts/base/GuardManager.sol","nameLocation":"-1:-1:-1","scope":99797,"sourceUnit":59231,"symbolAliases":[{"foreign":{"id":99426,"name":"Guard","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59190,"src":"134:5:171","typeDescriptions":{}},"local":"BaseGuard","nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":99429,"nodeType":"ImportDirective","src":"200:55:171","nodes":[],"absolutePath":"src/Safe/SafeSigners.sol","file":"src/Safe/SafeSigners.sol","nameLocation":"-1:-1:-1","scope":99797,"sourceUnit":100507,"symbolAliases":[{"foreign":{"id":99428,"name":"SafeSigners","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":100506,"src":"209:11:171","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":99431,"nodeType":"ImportDirective","src":"256:54:171","nodes":[],"absolutePath":"lib/safe-contracts/contracts/common/Enum.sol","file":"safe-contracts/common/Enum.sol","nameLocation":"-1:-1:-1","scope":99797,"sourceUnit":60116,"symbolAliases":[{"foreign":{"id":99430,"name":"Enum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60115,"src":"265:4:171","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":99433,"nodeType":"ImportDirective","src":"311:52:171","nodes":[],"absolutePath":"src/universal/ISemver.sol","file":"src/universal/ISemver.sol","nameLocation":"-1:-1:-1","scope":99797,"sourceUnit":122320,"symbolAliases":[{"foreign":{"id":99432,"name":"ISemver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":122319,"src":"320:7:171","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":99435,"nodeType":"ImportDirective","src":"364:88:171","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/structs/EnumerableSet.sol","file":"@openzeppelin/contracts/utils/structs/EnumerableSet.sol","nameLocation":"-1:-1:-1","scope":99797,"sourceUnit":58117,"symbolAliases":[{"foreign":{"id":99434,"name":"EnumerableSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58116,"src":"373:13:171","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":99796,"nodeType":"ContractDefinition","src":"1183:5732:171","nodes":[{"id":99444,"nodeType":"UsingForDirective","src":"1234:49:171","nodes":[],"global":false,"libraryName":{"id":99441,"name":"EnumerableSet","nodeType":"IdentifierPath","referencedDeclaration":58116,"src":"1240:13:171"},"typeName":{"id":99443,"nodeType":"UserDefinedTypeName","pathNode":{"id":99442,"name":"EnumerableSet.AddressSet","nodeType":"IdentifierPath","referencedDeclaration":57829,"src":"1258:24:171"},"referencedDeclaration":57829,"src":"1258:24:171","typeDescriptions":{"typeIdentifier":"t_struct$_AddressSet_$57829_storage_ptr","typeString":"struct EnumerableSet.AddressSet"}}},{"id":99449,"nodeType":"EventDefinition","src":"1382:35:171","nodes":[],"anonymous":false,"documentation":{"id":99445,"nodeType":"StructuredDocumentation","src":"1289:88:171","text":"@notice Emitted when an owner is recorded.\n @param owner The owner's address."},"eventSelector":"833bc129023866d52116d61e94b791eb8be46f05709362e0bcf1fe7c1a8c225c","name":"OwnerRecorded","nameLocation":"1388:13:171","parameters":{"id":99448,"nodeType":"ParameterList","parameters":[{"constant":false,"id":99447,"indexed":false,"mutability":"mutable","name":"owner","nameLocation":"1410:5:171","nodeType":"VariableDeclaration","scope":99449,"src":"1402:13:171","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":99446,"name":"address","nodeType":"ElementaryTypeName","src":"1402:7:171","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1401:15:171"}},{"id":99453,"nodeType":"VariableDeclaration","src":"1486:40:171","nodes":[],"baseFunctions":[122318],"constant":true,"documentation":{"id":99450,"nodeType":"StructuredDocumentation","src":"1423:58:171","text":"@notice Semantic version.\n @custom:semver 1.0.0"},"functionSelector":"54fd4d50","mutability":"constant","name":"version","nameLocation":"1509:7:171","scope":99796,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":99451,"name":"string","nodeType":"ElementaryTypeName","src":"1486:6:171","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":{"hexValue":"312e302e30","id":99452,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1519:7:171","typeDescriptions":{"typeIdentifier":"t_stringliteral_06c015bd22b4c69690933c1058878ebdfef31f9aaae40bbe86d8a09fe1b2972c","typeString":"literal_string \"1.0.0\""},"value":"1.0.0"},"visibility":"public"},{"id":99457,"nodeType":"VariableDeclaration","src":"1609:28:171","nodes":[],"constant":false,"documentation":{"id":99454,"nodeType":"StructuredDocumentation","src":"1533:71:171","text":"@notice The safe account for which this contract will be the guard."},"mutability":"immutable","name":"SAFE","nameLocation":"1633:4:171","scope":99796,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_GnosisSafe_$59069","typeString":"contract GnosisSafe"},"typeName":{"id":99456,"nodeType":"UserDefinedTypeName","pathNode":{"id":99455,"name":"Safe","nodeType":"IdentifierPath","referencedDeclaration":59069,"src":"1609:4:171"},"referencedDeclaration":59069,"src":"1609:4:171","typeDescriptions":{"typeIdentifier":"t_contract$_GnosisSafe_$59069","typeString":"contract GnosisSafe"}},"visibility":"internal"},{"id":99462,"nodeType":"VariableDeclaration","src":"1801:43:171","nodes":[],"constant":false,"documentation":{"id":99458,"nodeType":"StructuredDocumentation","src":"1644:152:171","text":"@notice A mapping of the timestamp at which an owner last participated in signing a\n         an executed transaction, or called showLiveness."},"functionSelector":"e458779b","mutability":"mutable","name":"lastLive","nameLocation":"1836:8:171","scope":99796,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":99461,"keyType":{"id":99459,"name":"address","nodeType":"ElementaryTypeName","src":"1809:7:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"1801:27:171","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueType":{"id":99460,"name":"uint256","nodeType":"ElementaryTypeName","src":"1820:7:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":99466,"nodeType":"VariableDeclaration","src":"2079:46:171","nodes":[],"constant":false,"documentation":{"id":99463,"nodeType":"StructuredDocumentation","src":"1851:223:171","text":"@notice An enumerable set of addresses used to store the list of owners before execution,\n         and then to update the lastLive mapping according to changes in the set observed\n         after execution."},"mutability":"mutable","name":"ownersBefore","nameLocation":"2113:12:171","scope":99796,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_AddressSet_$57829_storage","typeString":"struct EnumerableSet.AddressSet"},"typeName":{"id":99465,"nodeType":"UserDefinedTypeName","pathNode":{"id":99464,"name":"EnumerableSet.AddressSet","nodeType":"IdentifierPath","referencedDeclaration":57829,"src":"2079:24:171"},"referencedDeclaration":57829,"src":"2079:24:171","typeDescriptions":{"typeIdentifier":"t_struct$_AddressSet_$57829_storage_ptr","typeString":"struct EnumerableSet.AddressSet"}},"visibility":"internal"},{"id":99517,"nodeType":"FunctionDefinition","src":"2242:295:171","nodes":[],"body":{"id":99516,"nodeType":"Block","src":"2266:271:171","nodes":[],"statements":[{"expression":{"id":99475,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":99473,"name":"SAFE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99457,"src":"2276:4:171","typeDescriptions":{"typeIdentifier":"t_contract$_GnosisSafe_$59069","typeString":"contract GnosisSafe"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":99474,"name":"_safe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99470,"src":"2283:5:171","typeDescriptions":{"typeIdentifier":"t_contract$_GnosisSafe_$59069","typeString":"contract GnosisSafe"}},"src":"2276:12:171","typeDescriptions":{"typeIdentifier":"t_contract$_GnosisSafe_$59069","typeString":"contract GnosisSafe"}},"id":99476,"nodeType":"ExpressionStatement","src":"2276:12:171"},{"assignments":[99481],"declarations":[{"constant":false,"id":99481,"mutability":"mutable","name":"owners","nameLocation":"2315:6:171","nodeType":"VariableDeclaration","scope":99516,"src":"2298:23:171","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":99479,"name":"address","nodeType":"ElementaryTypeName","src":"2298:7:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":99480,"nodeType":"ArrayTypeName","src":"2298:9:171","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":99485,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":99482,"name":"_safe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99470,"src":"2324:5:171","typeDescriptions":{"typeIdentifier":"t_contract$_GnosisSafe_$59069","typeString":"contract GnosisSafe"}},"id":99483,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"getOwners","nodeType":"MemberAccess","referencedDeclaration":60107,"src":"2324:15:171","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function () view external returns (address[] memory)"}},"id":99484,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2324:17:171","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"VariableDeclarationStatement","src":"2298:43:171"},{"body":{"id":99514,"nodeType":"Block","src":"2395:136:171","statements":[{"assignments":[99498],"declarations":[{"constant":false,"id":99498,"mutability":"mutable","name":"owner","nameLocation":"2417:5:171","nodeType":"VariableDeclaration","scope":99514,"src":"2409:13:171","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":99497,"name":"address","nodeType":"ElementaryTypeName","src":"2409:7:171","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":99502,"initialValue":{"baseExpression":{"id":99499,"name":"owners","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99481,"src":"2425:6:171","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":99501,"indexExpression":{"id":99500,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99487,"src":"2432:1:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2425:9:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"2409:25:171"},{"expression":{"id":99508,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":99503,"name":"lastLive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99462,"src":"2448:8:171","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":99505,"indexExpression":{"id":99504,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99498,"src":"2457:5:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"2448:15:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":99506,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"2466:5:171","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":99507,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"timestamp","nodeType":"MemberAccess","src":"2466:15:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2448:33:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":99509,"nodeType":"ExpressionStatement","src":"2448:33:171"},{"eventCall":{"arguments":[{"id":99511,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99498,"src":"2514:5:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":99510,"name":"OwnerRecorded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99449,"src":"2500:13:171","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":99512,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2500:20:171","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":99513,"nodeType":"EmitStatement","src":"2495:25:171"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":99493,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":99490,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99487,"src":"2371:1:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":99491,"name":"owners","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99481,"src":"2375:6:171","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":99492,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"2375:13:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2371:17:171","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":99515,"initializationExpression":{"assignments":[99487],"declarations":[{"constant":false,"id":99487,"mutability":"mutable","name":"i","nameLocation":"2364:1:171","nodeType":"VariableDeclaration","scope":99515,"src":"2356:9:171","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":99486,"name":"uint256","nodeType":"ElementaryTypeName","src":"2356:7:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":99489,"initialValue":{"hexValue":"30","id":99488,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2368:1:171","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"2356:13:171"},"loopExpression":{"expression":{"id":99495,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"2390:3:171","subExpression":{"id":99494,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99487,"src":"2390:1:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":99496,"nodeType":"ExpressionStatement","src":"2390:3:171"},"nodeType":"ForStatement","src":"2351:180:171"}]},"documentation":{"id":99467,"nodeType":"StructuredDocumentation","src":"2132:105:171","text":"@notice Constructor.\n @param _safe The safe account for which this contract will be the guard."},"implemented":true,"kind":"constructor","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":99471,"nodeType":"ParameterList","parameters":[{"constant":false,"id":99470,"mutability":"mutable","name":"_safe","nameLocation":"2259:5:171","nodeType":"VariableDeclaration","scope":99517,"src":"2254:10:171","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_GnosisSafe_$59069","typeString":"contract GnosisSafe"},"typeName":{"id":99469,"nodeType":"UserDefinedTypeName","pathNode":{"id":99468,"name":"Safe","nodeType":"IdentifierPath","referencedDeclaration":59069,"src":"2254:4:171"},"referencedDeclaration":59069,"src":"2254:4:171","typeDescriptions":{"typeIdentifier":"t_contract$_GnosisSafe_$59069","typeString":"contract GnosisSafe"}},"visibility":"internal"}],"src":"2253:12:171"},"returnParameters":{"id":99472,"nodeType":"ParameterList","parameters":[],"src":"2266:0:171"},"scope":99796,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":99529,"nodeType":"FunctionDefinition","src":"2655:78:171","nodes":[],"body":{"id":99528,"nodeType":"Block","src":"2704:29:171","nodes":[],"statements":[{"expression":{"id":99526,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":99524,"name":"safe_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99522,"src":"2714:5:171","typeDescriptions":{"typeIdentifier":"t_contract$_GnosisSafe_$59069","typeString":"contract GnosisSafe"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":99525,"name":"SAFE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99457,"src":"2722:4:171","typeDescriptions":{"typeIdentifier":"t_contract$_GnosisSafe_$59069","typeString":"contract GnosisSafe"}},"src":"2714:12:171","typeDescriptions":{"typeIdentifier":"t_contract$_GnosisSafe_$59069","typeString":"contract GnosisSafe"}},"id":99527,"nodeType":"ExpressionStatement","src":"2714:12:171"}]},"documentation":{"id":99518,"nodeType":"StructuredDocumentation","src":"2543:107:171","text":"@notice Getter function for the Safe contract instance\n @return safe_ The Safe contract instance"},"functionSelector":"186f0354","implemented":true,"kind":"function","modifiers":[],"name":"safe","nameLocation":"2664:4:171","parameters":{"id":99519,"nodeType":"ParameterList","parameters":[],"src":"2668:2:171"},"returnParameters":{"id":99523,"nodeType":"ParameterList","parameters":[{"constant":false,"id":99522,"mutability":"mutable","name":"safe_","nameLocation":"2697:5:171","nodeType":"VariableDeclaration","scope":99529,"src":"2692:10:171","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_GnosisSafe_$59069","typeString":"contract GnosisSafe"},"typeName":{"id":99521,"nodeType":"UserDefinedTypeName","pathNode":{"id":99520,"name":"Safe","nodeType":"IdentifierPath","referencedDeclaration":59069,"src":"2692:4:171"},"referencedDeclaration":59069,"src":"2692:4:171","typeDescriptions":{"typeIdentifier":"t_contract$_GnosisSafe_$59069","typeString":"contract GnosisSafe"}},"visibility":"internal"}],"src":"2691:12:171"},"scope":99796,"stateMutability":"view","virtual":false,"visibility":"public"},{"id":99545,"nodeType":"FunctionDefinition","src":"2830:146:171","nodes":[],"body":{"id":99544,"nodeType":"Block","src":"2872:104:171","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":99540,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":99534,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"2890:3:171","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":99535,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"2890:10:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"id":99538,"name":"SAFE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99457,"src":"2912:4:171","typeDescriptions":{"typeIdentifier":"t_contract$_GnosisSafe_$59069","typeString":"contract GnosisSafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_GnosisSafe_$59069","typeString":"contract GnosisSafe"}],"id":99537,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2904:7:171","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":99536,"name":"address","nodeType":"ElementaryTypeName","src":"2904:7:171","typeDescriptions":{}}},"id":99539,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2904:13:171","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2890:27:171","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"4c6976656e65737347756172643a206f6e6c7920536166652063616e2063616c6c20746869732066756e6374696f6e","id":99541,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2919:49:171","typeDescriptions":{"typeIdentifier":"t_stringliteral_3f34796ee57037622d7d8a494e259636a99ed08727d2489bccc43b2ed21f100a","typeString":"literal_string \"LivenessGuard: only Safe can call this function\""},"value":"LivenessGuard: only Safe can call this function"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_3f34796ee57037622d7d8a494e259636a99ed08727d2489bccc43b2ed21f100a","typeString":"literal_string \"LivenessGuard: only Safe can call this function\""}],"id":99533,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"2882:7:171","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":99542,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2882:87:171","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":99543,"nodeType":"ExpressionStatement","src":"2882:87:171"}]},"documentation":{"id":99530,"nodeType":"StructuredDocumentation","src":"2739:86:171","text":"@notice Internal function to ensure that only the Safe can call certain functions."},"implemented":true,"kind":"function","modifiers":[],"name":"_requireOnlySafe","nameLocation":"2839:16:171","parameters":{"id":99531,"nodeType":"ParameterList","parameters":[],"src":"2855:2:171"},"returnParameters":{"id":99532,"nodeType":"ParameterList","parameters":[],"src":"2872:0:171"},"scope":99796,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":99674,"nodeType":"FunctionDefinition","src":"3145:1635:171","nodes":[],"body":{"id":99673,"nodeType":"Block","src":"3506:1274:171","nodes":[],"statements":[{"expression":{"id":99572,"name":"msgSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99569,"src":"3516:9:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":99573,"nodeType":"ExpressionStatement","src":"3516:9:171"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":99574,"name":"_requireOnlySafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99545,"src":"3570:16:171","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":99575,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3570:18:171","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":99576,"nodeType":"ExpressionStatement","src":"3570:18:171"},{"assignments":[99581],"declarations":[{"constant":false,"id":99581,"mutability":"mutable","name":"owners","nameLocation":"3735:6:171","nodeType":"VariableDeclaration","scope":99673,"src":"3718:23:171","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":99579,"name":"address","nodeType":"ElementaryTypeName","src":"3718:7:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":99580,"nodeType":"ArrayTypeName","src":"3718:9:171","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":99585,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":99582,"name":"SAFE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99457,"src":"3744:4:171","typeDescriptions":{"typeIdentifier":"t_contract$_GnosisSafe_$59069","typeString":"contract GnosisSafe"}},"id":99583,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"getOwners","nodeType":"MemberAccess","referencedDeclaration":60107,"src":"3744:14:171","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function () view external returns (address[] memory)"}},"id":99584,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3744:16:171","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"VariableDeclarationStatement","src":"3718:42:171"},{"body":{"id":99605,"nodeType":"Block","src":"3814:52:171","statements":[{"expression":{"arguments":[{"baseExpression":{"id":99600,"name":"owners","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99581,"src":"3845:6:171","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":99602,"indexExpression":{"id":99601,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99587,"src":"3852:1:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3845:9:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":99597,"name":"ownersBefore","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99466,"src":"3828:12:171","typeDescriptions":{"typeIdentifier":"t_struct$_AddressSet_$57829_storage","typeString":"struct EnumerableSet.AddressSet storage ref"}},"id":99599,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"add","nodeType":"MemberAccess","referencedDeclaration":57856,"src":"3828:16:171","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_AddressSet_$57829_storage_ptr_$_t_address_$returns$_t_bool_$bound_to$_t_struct$_AddressSet_$57829_storage_ptr_$","typeString":"function (struct EnumerableSet.AddressSet storage pointer,address) returns (bool)"}},"id":99603,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3828:27:171","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":99604,"nodeType":"ExpressionStatement","src":"3828:27:171"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":99593,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":99590,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99587,"src":"3790:1:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":99591,"name":"owners","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99581,"src":"3794:6:171","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":99592,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"3794:13:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3790:17:171","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":99606,"initializationExpression":{"assignments":[99587],"declarations":[{"constant":false,"id":99587,"mutability":"mutable","name":"i","nameLocation":"3783:1:171","nodeType":"VariableDeclaration","scope":99606,"src":"3775:9:171","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":99586,"name":"uint256","nodeType":"ElementaryTypeName","src":"3775:7:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":99589,"initialValue":{"hexValue":"30","id":99588,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3787:1:171","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"3775:13:171"},"loopExpression":{"expression":{"id":99595,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"3809:3:171","subExpression":{"id":99594,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99587,"src":"3809:1:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":99596,"nodeType":"ExpressionStatement","src":"3809:3:171"},"nodeType":"ForStatement","src":"3770:96:171"},{"assignments":[99608],"declarations":[{"constant":false,"id":99608,"mutability":"mutable","name":"txHash","nameLocation":"4054:6:171","nodeType":"VariableDeclaration","scope":99673,"src":"4046:14:171","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":99607,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4046:7:171","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":99626,"initialValue":{"arguments":[{"id":99611,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99548,"src":"4105:2:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":99612,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99550,"src":"4128:5:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":99613,"name":"data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99552,"src":"4153:4:171","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":99614,"name":"operation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99555,"src":"4182:9:171","typeDescriptions":{"typeIdentifier":"t_enum$_Operation_$60114","typeString":"enum Enum.Operation"}},{"id":99615,"name":"safeTxGas","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99557,"src":"4216:9:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":99616,"name":"baseGas","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99559,"src":"4248:7:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":99617,"name":"gasPrice","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99561,"src":"4279:8:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":99618,"name":"gasToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99563,"src":"4311:8:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":99619,"name":"refundReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99565,"src":"4349:14:171","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":99624,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":99620,"name":"SAFE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99457,"src":"4385:4:171","typeDescriptions":{"typeIdentifier":"t_contract$_GnosisSafe_$59069","typeString":"contract GnosisSafe"}},"id":99621,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"nonce","nodeType":"MemberAccess","referencedDeclaration":58199,"src":"4385:10:171","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint256_$","typeString":"function () view external returns (uint256)"}},"id":99622,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4385:12:171","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":99623,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4400:1:171","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"4385:16:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_enum$_Operation_$60114","typeString":"enum Enum.Operation"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address_payable","typeString":"address payable"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":99609,"name":"SAFE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99457,"src":"4063:4:171","typeDescriptions":{"typeIdentifier":"t_contract$_GnosisSafe_$59069","typeString":"contract GnosisSafe"}},"id":99610,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"getTransactionHash","nodeType":"MemberAccess","referencedDeclaration":59068,"src":"4063:23:171","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$_t_enum$_Operation_$60114_$_t_uint256_$_t_uint256_$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$_t_bytes32_$","typeString":"function (address,uint256,bytes memory,enum Enum.Operation,uint256,uint256,uint256,address,address,uint256) view external returns (bytes32)"}},"id":99625,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":["to","value","data","operation","safeTxGas","baseGas","gasPrice","gasToken","refundReceiver","_nonce"],"nodeType":"FunctionCall","src":"4063:349:171","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"4046:366:171"},{"assignments":[99628],"declarations":[{"constant":false,"id":99628,"mutability":"mutable","name":"threshold","nameLocation":"4431:9:171","nodeType":"VariableDeclaration","scope":99673,"src":"4423:17:171","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":99627,"name":"uint256","nodeType":"ElementaryTypeName","src":"4423:7:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":99632,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":99629,"name":"SAFE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99457,"src":"4443:4:171","typeDescriptions":{"typeIdentifier":"t_contract$_GnosisSafe_$59069","typeString":"contract GnosisSafe"}},"id":99630,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"getThreshold","nodeType":"MemberAccess","referencedDeclaration":60035,"src":"4443:17:171","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint256_$","typeString":"function () view external returns (uint256)"}},"id":99631,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4443:19:171","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"4423:39:171"},{"assignments":[99637],"declarations":[{"constant":false,"id":99637,"mutability":"mutable","name":"signers","nameLocation":"4489:7:171","nodeType":"VariableDeclaration","scope":99673,"src":"4472:24:171","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":99635,"name":"address","nodeType":"ElementaryTypeName","src":"4472:7:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":99636,"nodeType":"ArrayTypeName","src":"4472:9:171","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":99644,"initialValue":{"arguments":[{"id":99640,"name":"txHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99608,"src":"4547:6:171","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":99641,"name":"signatures","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99567,"src":"4567:10:171","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":99642,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99628,"src":"4599:9:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":99638,"name":"SafeSigners","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":100506,"src":"4511:11:171","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_SafeSigners_$100506_$","typeString":"type(library SafeSigners)"}},"id":99639,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"getNSigners","nodeType":"MemberAccess","referencedDeclaration":100505,"src":"4511:23:171","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_bytes32_$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (bytes32,bytes memory,uint256) pure returns (address[] memory)"}},"id":99643,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":["dataHash","signatures","requiredSignatures"],"nodeType":"FunctionCall","src":"4511:100:171","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"VariableDeclarationStatement","src":"4472:139:171"},{"body":{"id":99671,"nodeType":"Block","src":"4667:107:171","statements":[{"expression":{"id":99663,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":99656,"name":"lastLive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99462,"src":"4681:8:171","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":99660,"indexExpression":{"baseExpression":{"id":99657,"name":"signers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99637,"src":"4690:7:171","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":99659,"indexExpression":{"id":99658,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99646,"src":"4698:1:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4690:10:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"4681:20:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":99661,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"4704:5:171","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":99662,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"timestamp","nodeType":"MemberAccess","src":"4704:15:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4681:38:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":99664,"nodeType":"ExpressionStatement","src":"4681:38:171"},{"eventCall":{"arguments":[{"baseExpression":{"id":99666,"name":"signers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99637,"src":"4752:7:171","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":99668,"indexExpression":{"id":99667,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99646,"src":"4760:1:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4752:10:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":99665,"name":"OwnerRecorded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99449,"src":"4738:13:171","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":99669,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4738:25:171","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":99670,"nodeType":"EmitStatement","src":"4733:30:171"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":99652,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":99649,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99646,"src":"4642:1:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":99650,"name":"signers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99637,"src":"4646:7:171","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":99651,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"4646:14:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4642:18:171","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":99672,"initializationExpression":{"assignments":[99646],"declarations":[{"constant":false,"id":99646,"mutability":"mutable","name":"i","nameLocation":"4635:1:171","nodeType":"VariableDeclaration","scope":99672,"src":"4627:9:171","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":99645,"name":"uint256","nodeType":"ElementaryTypeName","src":"4627:7:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":99648,"initialValue":{"hexValue":"30","id":99647,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4639:1:171","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"4627:13:171"},"loopExpression":{"expression":{"id":99654,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"4662:3:171","subExpression":{"id":99653,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99646,"src":"4662:1:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":99655,"nodeType":"ExpressionStatement","src":"4662:3:171"},"nodeType":"ForStatement","src":"4622:152:171"}]},"baseFunctions":[59182],"documentation":{"id":99546,"nodeType":"StructuredDocumentation","src":"2982:158:171","text":"@notice Records the most recent time which any owner has signed a transaction.\n @dev Called by the Safe contract before execution of a transaction."},"functionSelector":"75f0bb52","implemented":true,"kind":"function","modifiers":[],"name":"checkTransaction","nameLocation":"3154:16:171","parameters":{"id":99570,"nodeType":"ParameterList","parameters":[{"constant":false,"id":99548,"mutability":"mutable","name":"to","nameLocation":"3188:2:171","nodeType":"VariableDeclaration","scope":99674,"src":"3180:10:171","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":99547,"name":"address","nodeType":"ElementaryTypeName","src":"3180:7:171","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":99550,"mutability":"mutable","name":"value","nameLocation":"3208:5:171","nodeType":"VariableDeclaration","scope":99674,"src":"3200:13:171","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":99549,"name":"uint256","nodeType":"ElementaryTypeName","src":"3200:7:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":99552,"mutability":"mutable","name":"data","nameLocation":"3236:4:171","nodeType":"VariableDeclaration","scope":99674,"src":"3223:17:171","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":99551,"name":"bytes","nodeType":"ElementaryTypeName","src":"3223:5:171","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":99555,"mutability":"mutable","name":"operation","nameLocation":"3265:9:171","nodeType":"VariableDeclaration","scope":99674,"src":"3250:24:171","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_Operation_$60114","typeString":"enum Enum.Operation"},"typeName":{"id":99554,"nodeType":"UserDefinedTypeName","pathNode":{"id":99553,"name":"Enum.Operation","nodeType":"IdentifierPath","referencedDeclaration":60114,"src":"3250:14:171"},"referencedDeclaration":60114,"src":"3250:14:171","typeDescriptions":{"typeIdentifier":"t_enum$_Operation_$60114","typeString":"enum Enum.Operation"}},"visibility":"internal"},{"constant":false,"id":99557,"mutability":"mutable","name":"safeTxGas","nameLocation":"3292:9:171","nodeType":"VariableDeclaration","scope":99674,"src":"3284:17:171","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":99556,"name":"uint256","nodeType":"ElementaryTypeName","src":"3284:7:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":99559,"mutability":"mutable","name":"baseGas","nameLocation":"3319:7:171","nodeType":"VariableDeclaration","scope":99674,"src":"3311:15:171","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":99558,"name":"uint256","nodeType":"ElementaryTypeName","src":"3311:7:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":99561,"mutability":"mutable","name":"gasPrice","nameLocation":"3344:8:171","nodeType":"VariableDeclaration","scope":99674,"src":"3336:16:171","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":99560,"name":"uint256","nodeType":"ElementaryTypeName","src":"3336:7:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":99563,"mutability":"mutable","name":"gasToken","nameLocation":"3370:8:171","nodeType":"VariableDeclaration","scope":99674,"src":"3362:16:171","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":99562,"name":"address","nodeType":"ElementaryTypeName","src":"3362:7:171","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":99565,"mutability":"mutable","name":"refundReceiver","nameLocation":"3404:14:171","nodeType":"VariableDeclaration","scope":99674,"src":"3388:30:171","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":99564,"name":"address","nodeType":"ElementaryTypeName","src":"3388:15:171","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"},{"constant":false,"id":99567,"mutability":"mutable","name":"signatures","nameLocation":"3441:10:171","nodeType":"VariableDeclaration","scope":99674,"src":"3428:23:171","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":99566,"name":"bytes","nodeType":"ElementaryTypeName","src":"3428:5:171","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":99569,"mutability":"mutable","name":"msgSender","nameLocation":"3469:9:171","nodeType":"VariableDeclaration","scope":99674,"src":"3461:17:171","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":99568,"name":"address","nodeType":"ElementaryTypeName","src":"3461:7:171","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3170:314:171"},"returnParameters":{"id":99571,"nodeType":"ParameterList","parameters":[],"src":"3506:0:171"},"scope":99796,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":99768,"nodeType":"FunctionDefinition","src":"5234:1252:171","nodes":[],"body":{"id":99767,"nodeType":"Block","src":"5287:1199:171","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":99682,"name":"_requireOnlySafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99545,"src":"5297:16:171","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":99683,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5297:18:171","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":99684,"nodeType":"ExpressionStatement","src":"5297:18:171"},{"assignments":[99689],"declarations":[{"constant":false,"id":99689,"mutability":"mutable","name":"ownersAfter","nameLocation":"5383:11:171","nodeType":"VariableDeclaration","scope":99767,"src":"5366:28:171","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":99687,"name":"address","nodeType":"ElementaryTypeName","src":"5366:7:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":99688,"nodeType":"ArrayTypeName","src":"5366:9:171","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":99693,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":99690,"name":"SAFE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99457,"src":"5397:4:171","typeDescriptions":{"typeIdentifier":"t_contract$_GnosisSafe_$59069","typeString":"contract GnosisSafe"}},"id":99691,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"getOwners","nodeType":"MemberAccess","referencedDeclaration":60107,"src":"5397:14:171","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function () view external returns (address[] memory)"}},"id":99692,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5397:16:171","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"VariableDeclarationStatement","src":"5366:47:171"},{"body":{"id":99726,"nodeType":"Block","src":"5569:343:171","statements":[{"assignments":[99706],"declarations":[{"constant":false,"id":99706,"mutability":"mutable","name":"ownerAfter","nameLocation":"5655:10:171","nodeType":"VariableDeclaration","scope":99726,"src":"5647:18:171","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":99705,"name":"address","nodeType":"ElementaryTypeName","src":"5647:7:171","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":99710,"initialValue":{"baseExpression":{"id":99707,"name":"ownersAfter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99689,"src":"5668:11:171","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":99709,"indexExpression":{"id":99708,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99695,"src":"5680:1:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5668:14:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"5647:35:171"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":99716,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":99713,"name":"ownerAfter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99706,"src":"5720:10:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":99711,"name":"ownersBefore","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99466,"src":"5700:12:171","typeDescriptions":{"typeIdentifier":"t_struct$_AddressSet_$57829_storage","typeString":"struct EnumerableSet.AddressSet storage ref"}},"id":99712,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"remove","nodeType":"MemberAccess","referencedDeclaration":57883,"src":"5700:19:171","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_AddressSet_$57829_storage_ptr_$_t_address_$returns$_t_bool_$bound_to$_t_struct$_AddressSet_$57829_storage_ptr_$","typeString":"function (struct EnumerableSet.AddressSet storage pointer,address) returns (bool)"}},"id":99714,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5700:31:171","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"66616c7365","id":99715,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"5735:5:171","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"src":"5700:40:171","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":99725,"nodeType":"IfStatement","src":"5696:206:171","trueBody":{"id":99724,"nodeType":"Block","src":"5742:160:171","statements":[{"expression":{"id":99722,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":99717,"name":"lastLive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99462,"src":"5849:8:171","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":99719,"indexExpression":{"id":99718,"name":"ownerAfter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99706,"src":"5858:10:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"5849:20:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":99720,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"5872:5:171","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":99721,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"timestamp","nodeType":"MemberAccess","src":"5872:15:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5849:38:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":99723,"nodeType":"ExpressionStatement","src":"5849:38:171"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":99701,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":99698,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99695,"src":"5540:1:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":99699,"name":"ownersAfter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99689,"src":"5544:11:171","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":99700,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"5544:18:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5540:22:171","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":99727,"initializationExpression":{"assignments":[99695],"declarations":[{"constant":false,"id":99695,"mutability":"mutable","name":"i","nameLocation":"5533:1:171","nodeType":"VariableDeclaration","scope":99727,"src":"5525:9:171","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":99694,"name":"uint256","nodeType":"ElementaryTypeName","src":"5525:7:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":99697,"initialValue":{"hexValue":"30","id":99696,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5537:1:171","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"5525:13:171"},"loopExpression":{"expression":{"id":99703,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"5564:3:171","subExpression":{"id":99702,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99695,"src":"5564:1:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":99704,"nodeType":"ExpressionStatement","src":"5564:3:171"},"nodeType":"ForStatement","src":"5520:392:171"},{"assignments":[99732],"declarations":[{"constant":false,"id":99732,"mutability":"mutable","name":"ownersBeforeCache","nameLocation":"6219:17:171","nodeType":"VariableDeclaration","scope":99767,"src":"6202:34:171","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":99730,"name":"address","nodeType":"ElementaryTypeName","src":"6202:7:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":99731,"nodeType":"ArrayTypeName","src":"6202:9:171","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":99736,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":99733,"name":"ownersBefore","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99466,"src":"6239:12:171","typeDescriptions":{"typeIdentifier":"t_struct$_AddressSet_$57829_storage","typeString":"struct EnumerableSet.AddressSet storage ref"}},"id":99734,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"values","nodeType":"MemberAccess","referencedDeclaration":57982,"src":"6239:19:171","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_AddressSet_$57829_storage_ptr_$returns$_t_array$_t_address_$dyn_memory_ptr_$bound_to$_t_struct$_AddressSet_$57829_storage_ptr_$","typeString":"function (struct EnumerableSet.AddressSet storage pointer) view returns (address[] memory)"}},"id":99735,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6239:21:171","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"VariableDeclarationStatement","src":"6202:58:171"},{"body":{"id":99765,"nodeType":"Block","src":"6325:155:171","statements":[{"assignments":[99749],"declarations":[{"constant":false,"id":99749,"mutability":"mutable","name":"ownerBefore","nameLocation":"6347:11:171","nodeType":"VariableDeclaration","scope":99765,"src":"6339:19:171","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":99748,"name":"address","nodeType":"ElementaryTypeName","src":"6339:7:171","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":99753,"initialValue":{"baseExpression":{"id":99750,"name":"ownersBeforeCache","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99732,"src":"6361:17:171","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":99752,"indexExpression":{"id":99751,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99738,"src":"6379:1:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6361:20:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"6339:42:171"},{"expression":{"id":99757,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"6395:28:171","subExpression":{"baseExpression":{"id":99754,"name":"lastLive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99462,"src":"6402:8:171","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":99756,"indexExpression":{"id":99755,"name":"ownerBefore","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99749,"src":"6411:11:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"6402:21:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":99758,"nodeType":"ExpressionStatement","src":"6395:28:171"},{"expression":{"arguments":[{"id":99762,"name":"ownerBefore","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99749,"src":"6457:11:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":99759,"name":"ownersBefore","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99466,"src":"6437:12:171","typeDescriptions":{"typeIdentifier":"t_struct$_AddressSet_$57829_storage","typeString":"struct EnumerableSet.AddressSet storage ref"}},"id":99761,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"remove","nodeType":"MemberAccess","referencedDeclaration":57883,"src":"6437:19:171","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_AddressSet_$57829_storage_ptr_$_t_address_$returns$_t_bool_$bound_to$_t_struct$_AddressSet_$57829_storage_ptr_$","typeString":"function (struct EnumerableSet.AddressSet storage pointer,address) returns (bool)"}},"id":99763,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6437:32:171","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":99764,"nodeType":"ExpressionStatement","src":"6437:32:171"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":99744,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":99741,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99738,"src":"6290:1:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":99742,"name":"ownersBeforeCache","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99732,"src":"6294:17:171","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":99743,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"6294:24:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6290:28:171","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":99766,"initializationExpression":{"assignments":[99738],"declarations":[{"constant":false,"id":99738,"mutability":"mutable","name":"i","nameLocation":"6283:1:171","nodeType":"VariableDeclaration","scope":99766,"src":"6275:9:171","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":99737,"name":"uint256","nodeType":"ElementaryTypeName","src":"6275:7:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":99740,"initialValue":{"hexValue":"30","id":99739,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6287:1:171","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"6275:13:171"},"loopExpression":{"expression":{"id":99746,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"6320:3:171","subExpression":{"id":99745,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99738,"src":"6320:1:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":99747,"nodeType":"ExpressionStatement","src":"6320:3:171"},"nodeType":"ForStatement","src":"6270:210:171"}]},"baseFunctions":[59189],"documentation":{"id":99675,"nodeType":"StructuredDocumentation","src":"4786:443:171","text":"@notice Update the lastLive mapping according to the set of owners before and after execution.\n @dev Called by the Safe contract after the execution of a transaction.\n      We use this post execution hook to compare the set of owners before and after.\n      If the set of owners has changed then we:\n      1. Add new owners to the lastLive mapping\n      2. Delete removed owners from the lastLive mapping"},"functionSelector":"93271368","implemented":true,"kind":"function","modifiers":[],"name":"checkAfterExecution","nameLocation":"5243:19:171","parameters":{"id":99680,"nodeType":"ParameterList","parameters":[{"constant":false,"id":99677,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":99768,"src":"5263:7:171","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":99676,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5263:7:171","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":99679,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":99768,"src":"5272:4:171","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":99678,"name":"bool","nodeType":"ElementaryTypeName","src":"5272:4:171","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"5262:15:171"},"returnParameters":{"id":99681,"nodeType":"ParameterList","parameters":[],"src":"5287:0:171"},"scope":99796,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":99795,"nodeType":"FunctionDefinition","src":"6681:232:171","nodes":[],"body":{"id":99794,"nodeType":"Block","src":"6714:199:171","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"expression":{"id":99775,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"6745:3:171","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":99776,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"6745:10:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":99773,"name":"SAFE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99457,"src":"6732:4:171","typeDescriptions":{"typeIdentifier":"t_contract$_GnosisSafe_$59069","typeString":"contract GnosisSafe"}},"id":99774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"isOwner","nodeType":"MemberAccess","referencedDeclaration":60056,"src":"6732:12:171","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view external returns (bool)"}},"id":99777,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6732:24:171","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"4c6976656e65737347756172643a206f6e6c792053616665206f776e657273206d61792064656d6f6e737472617465206c6976656e657373","id":99778,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6758:58:171","typeDescriptions":{"typeIdentifier":"t_stringliteral_012310aaf12af48dc480957a4fc455d53cd4ba66d63496f505d8e0b43a1f8d67","typeString":"literal_string \"LivenessGuard: only Safe owners may demonstrate liveness\""},"value":"LivenessGuard: only Safe owners may demonstrate liveness"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_012310aaf12af48dc480957a4fc455d53cd4ba66d63496f505d8e0b43a1f8d67","typeString":"literal_string \"LivenessGuard: only Safe owners may demonstrate liveness\""}],"id":99772,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"6724:7:171","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":99779,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6724:93:171","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":99780,"nodeType":"ExpressionStatement","src":"6724:93:171"},{"expression":{"id":99787,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":99781,"name":"lastLive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99462,"src":"6827:8:171","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":99784,"indexExpression":{"expression":{"id":99782,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"6836:3:171","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":99783,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"6836:10:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"6827:20:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":99785,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"6850:5:171","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":99786,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"timestamp","nodeType":"MemberAccess","src":"6850:15:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6827:38:171","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":99788,"nodeType":"ExpressionStatement","src":"6827:38:171"},{"eventCall":{"arguments":[{"expression":{"id":99790,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"6895:3:171","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":99791,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"6895:10:171","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":99789,"name":"OwnerRecorded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":99449,"src":"6881:13:171","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":99792,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6881:25:171","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":99793,"nodeType":"EmitStatement","src":"6876:30:171"}]},"documentation":{"id":99769,"nodeType":"StructuredDocumentation","src":"6492:184:171","text":"@notice Enables an owner to demonstrate liveness by calling this method directly.\n         This is useful for owners who have not recently signed a transaction via the Safe."},"functionSelector":"4c205d0d","implemented":true,"kind":"function","modifiers":[],"name":"showLiveness","nameLocation":"6690:12:171","parameters":{"id":99770,"nodeType":"ParameterList","parameters":[],"src":"6702:2:171"},"returnParameters":{"id":99771,"nodeType":"ParameterList","parameters":[],"src":"6714:0:171"},"scope":99796,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[{"baseName":{"id":99437,"name":"ISemver","nodeType":"IdentifierPath","referencedDeclaration":122319,"src":"1209:7:171"},"id":99438,"nodeType":"InheritanceSpecifier","src":"1209:7:171"},{"baseName":{"id":99439,"name":"BaseGuard","nodeType":"IdentifierPath","referencedDeclaration":59190,"src":"1218:9:171"},"id":99440,"nodeType":"InheritanceSpecifier","src":"1218:9:171"}],"canonicalName":"LivenessGuard","contractDependencies":[],"contractKind":"contract","documentation":{"id":99436,"nodeType":"StructuredDocumentation","src":"454:729:171","text":"@title LivenessGuard\n @notice This Guard contract is used to track the liveness of Safe owners.\n @dev It keeps track of the last time each owner participated in signing a transaction.\n      If an owner does not participate in a transaction for a certain period of time, they are considered inactive.\n      This Guard is intended to be used in conjunction with the LivenessModule contract, but does\n      not depend on it.\n      Note: Both `checkTransaction` and `checkAfterExecution` are called once each by the Safe contract\n      before and after the execution of a transaction. It is critical that neither function revert,\n      otherwise the Safe contract will be unable to execute a transaction."},"fullyImplemented":true,"linearizedBaseContracts":[99796,59190,122319],"name":"LivenessGuard","nameLocation":"1192:13:171","scope":99797,"usedErrors":[]}],"license":"MIT"},"id":171}