UNPKG

@tokamak-network/thanos-contracts

Version:
1 lines 126 kB
{"abi":[{"type":"constructor","inputs":[{"name":"_disputeGameFactory","type":"address","internalType":"contract IDisputeGameFactory"}],"stateMutability":"nonpayable"},{"type":"function","name":"anchors","inputs":[{"name":"","type":"uint32","internalType":"GameType"}],"outputs":[{"name":"root","type":"bytes32","internalType":"Hash"},{"name":"l2BlockNumber","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"disputeGameFactory","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IDisputeGameFactory"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"_startingAnchorRoots","type":"tuple[]","internalType":"struct AnchorStateRegistry.StartingAnchorRoot[]","components":[{"name":"gameType","type":"uint32","internalType":"GameType"},{"name":"outputRoot","type":"tuple","internalType":"struct OutputRoot","components":[{"name":"root","type":"bytes32","internalType":"Hash"},{"name":"l2BlockNumber","type":"uint256","internalType":"uint256"}]}]},{"name":"_superchainConfig","type":"address","internalType":"contract SuperchainConfig"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setAnchorState","inputs":[{"name":"_game","type":"address","internalType":"contract IFaultDisputeGame"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"superchainConfig","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract SuperchainConfig"}],"stateMutability":"view"},{"type":"function","name":"tryUpdateAnchorState","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"version","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"error","name":"InvalidGameStatus","inputs":[]},{"type":"error","name":"Unauthorized","inputs":[]},{"type":"error","name":"UnregisteredGame","inputs":[]}],"bytecode":{"object":"0x60a060405234801561001057600080fd5b506040516111d73803806111d783398101604081905261002f9161010a565b6001600160a01b03811660805261004461004a565b5061013a565b600054610100900460ff16156100b65760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015610108576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b60006020828403121561011c57600080fd5b81516001600160a01b038116811461013357600080fd5b9392505050565b608051611074610163600039600081816101830152818161033c01526108f801526110746000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c80635e05fbd01161005b5780635e05fbd01461012a5780637258a8071461013d578063838c2d1e14610179578063f2b4e6171461018157600080fd5b806317cf21a91461008257806335e80ab31461009757806354fd4d50146100e1575b600080fd5b610095610090366004610b4c565b6101a7565b005b6002546100b79073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b61011d6040518060400160405280600581526020017f322e302e3000000000000000000000000000000000000000000000000000000081525081565b6040516100d89190610bea565b610095610138366004610cc6565b61061c565b61016461014b366004610df0565b6001602081905260009182526040909120805491015482565b604080519283526020830191909152016100d8565b610095610853565b7f00000000000000000000000000000000000000000000000000000000000000006100b7565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663452a93206040518163ffffffff1660e01b8152600401602060405180830381865afa158015610214573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102389190610e0d565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461029c576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008060008373ffffffffffffffffffffffffffffffffffffffff1663fa24f7436040518163ffffffff1660e01b8152600401600060405180830381865afa1580156102ec573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526103329190810190610e2a565b92509250925060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16635f0150cb8585856040518463ffffffff1660e01b815260040161039793929190610efb565b6040805180830381865afa1580156103b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103d79190610f29565b5090508473ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461043f576040517f6b0f689100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60028573ffffffffffffffffffffffffffffffffffffffff1663200d2ed26040518163ffffffff1660e01b8152600401602060405180830381865afa15801561048c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104b09190610f9f565b60028111156104c1576104c1610f70565b146104f8576040517f8f8af25f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60405180604001604052806105788773ffffffffffffffffffffffffffffffffffffffff1663bcef3b556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610551573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105759190610fc0565b90565b81526020018673ffffffffffffffffffffffffffffffffffffffff16638b85902b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ec9190610fc0565b905263ffffffff909416600090815260016020818152604090922086518155959091015194019390935550505050565b600054610100900460ff161580801561063c5750600054600160ff909116105b806106565750303b158015610656575060005460ff166001145b6106e6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840160405180910390fd5b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561074457600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b60005b83518110156107aa57600084828151811061076457610764610fd9565b60209081029190910181015180820151905163ffffffff1660009081526001808452604090912082518155919092015191015550806107a281611008565b915050610747565b50600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8416179055801561084e57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b600033905060008060008373ffffffffffffffffffffffffffffffffffffffff1663fa24f7436040518163ffffffff1660e01b8152600401600060405180830381865afa1580156108a8573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526108ee9190810190610e2a565b92509250925060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16635f0150cb8585856040518463ffffffff1660e01b815260040161095393929190610efb565b6040805180830381865afa15801561096f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109939190610f29565b5090508473ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146109fb576040517f6b0f689100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600160008563ffffffff1663ffffffff168152602001908152602001600020600101548573ffffffffffffffffffffffffffffffffffffffff16638b85902b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a69573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a8d9190610fc0565b11610a99575050505050565b60028573ffffffffffffffffffffffffffffffffffffffff1663200d2ed26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ae6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b0a9190610f9f565b6002811115610b1b57610b1b610f70565b146104f8575050505050565b73ffffffffffffffffffffffffffffffffffffffff81168114610b4957600080fd5b50565b600060208284031215610b5e57600080fd5b8135610b6981610b27565b9392505050565b60005b83811015610b8b578181015183820152602001610b73565b83811115610b9a576000848401525b50505050565b60008151808452610bb8816020860160208601610b70565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000610b696020830184610ba0565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610c4f57610c4f610bfd565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610c9c57610c9c610bfd565b604052919050565b63ffffffff81168114610b4957600080fd5b8035610cc181610b27565b919050565b6000806040808486031215610cda57600080fd5b833567ffffffffffffffff80821115610cf257600080fd5b818601915086601f830112610d0657600080fd5b8135602082821115610d1a57610d1a610bfd565b610d28818360051b01610c55565b8281528181019350606092830285018201928a841115610d4757600080fd5b948201945b83861015610dd457858b0381811215610d655760008081fd5b610d6d610c2c565b8735610d7881610ca4565b81527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08201891315610daa5760008081fd5b610db2610c2c565b8886013581528989013586820152818601528652509485019493820193610d4c565b509650610de2888201610cb6565b955050505050509250929050565b600060208284031215610e0257600080fd5b8135610b6981610ca4565b600060208284031215610e1f57600080fd5b8151610b6981610b27565b600080600060608486031215610e3f57600080fd5b8351610e4a81610ca4565b60208501516040860151919450925067ffffffffffffffff80821115610e6f57600080fd5b818601915086601f830112610e8357600080fd5b815181811115610e9557610e95610bfd565b610ec660207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c55565b9150808252876020828501011115610edd57600080fd5b610eee816020840160208601610b70565b5080925050509250925092565b63ffffffff84168152826020820152606060408201526000610f206060830184610ba0565b95945050505050565b60008060408385031215610f3c57600080fd5b8251610f4781610b27565b602084015190925067ffffffffffffffff81168114610f6557600080fd5b809150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b600060208284031215610fb157600080fd5b815160038110610b6957600080fd5b600060208284031215610fd257600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611060577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b506001019056fea164736f6c634300080f000a","sourceMap":"1269:3939:184:-:0;;;1998:144;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;2061:42:184;;;;2113:22;:20;:22::i;:::-;1998:144;1269:3939;;5366:279:48;5434:13;;;;;;;5433:14;5425:66;;;;-1:-1:-1;;;5425:66:48;;541:2:416;5425:66:48;;;523:21:416;580:2;560:18;;;553:30;619:34;599:18;;;592:62;-1:-1:-1;;;670:18:416;;;663:37;717:19;;5425:66:48;;;;;;;;5505:12;;5520:15;5505:12;;;:30;5501:138;;;5551:12;:30;;-1:-1:-1;;5551:30:48;5566:15;5551:30;;;;;;5600:28;;889:36:416;;;5600:28:48;;877:2:416;862:18;5600:28:48;;;;;;;5501:138;5366:279::o;14:320:416:-;114:6;167:2;155:9;146:7;142:23;138:32;135:52;;;183:1;180;173:12;135:52;209:16;;-1:-1:-1;;;;;254:31:416;;244:42;;234:70;;300:1;297;290:12;234:70;323:5;14:320;-1:-1:-1;;;14:320:416:o;747:184::-;1269:3939:184;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b506004361061007d5760003560e01c80635e05fbd01161005b5780635e05fbd01461012a5780637258a8071461013d578063838c2d1e14610179578063f2b4e6171461018157600080fd5b806317cf21a91461008257806335e80ab31461009757806354fd4d50146100e1575b600080fd5b610095610090366004610b4c565b6101a7565b005b6002546100b79073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b61011d6040518060400160405280600581526020017f322e302e3000000000000000000000000000000000000000000000000000000081525081565b6040516100d89190610bea565b610095610138366004610cc6565b61061c565b61016461014b366004610df0565b6001602081905260009182526040909120805491015482565b604080519283526020830191909152016100d8565b610095610853565b7f00000000000000000000000000000000000000000000000000000000000000006100b7565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663452a93206040518163ffffffff1660e01b8152600401602060405180830381865afa158015610214573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102389190610e0d565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461029c576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008060008373ffffffffffffffffffffffffffffffffffffffff1663fa24f7436040518163ffffffff1660e01b8152600401600060405180830381865afa1580156102ec573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526103329190810190610e2a565b92509250925060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16635f0150cb8585856040518463ffffffff1660e01b815260040161039793929190610efb565b6040805180830381865afa1580156103b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103d79190610f29565b5090508473ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461043f576040517f6b0f689100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60028573ffffffffffffffffffffffffffffffffffffffff1663200d2ed26040518163ffffffff1660e01b8152600401602060405180830381865afa15801561048c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104b09190610f9f565b60028111156104c1576104c1610f70565b146104f8576040517f8f8af25f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60405180604001604052806105788773ffffffffffffffffffffffffffffffffffffffff1663bcef3b556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610551573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105759190610fc0565b90565b81526020018673ffffffffffffffffffffffffffffffffffffffff16638b85902b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ec9190610fc0565b905263ffffffff909416600090815260016020818152604090922086518155959091015194019390935550505050565b600054610100900460ff161580801561063c5750600054600160ff909116105b806106565750303b158015610656575060005460ff166001145b6106e6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840160405180910390fd5b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561074457600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b60005b83518110156107aa57600084828151811061076457610764610fd9565b60209081029190910181015180820151905163ffffffff1660009081526001808452604090912082518155919092015191015550806107a281611008565b915050610747565b50600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8416179055801561084e57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b600033905060008060008373ffffffffffffffffffffffffffffffffffffffff1663fa24f7436040518163ffffffff1660e01b8152600401600060405180830381865afa1580156108a8573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526108ee9190810190610e2a565b92509250925060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16635f0150cb8585856040518463ffffffff1660e01b815260040161095393929190610efb565b6040805180830381865afa15801561096f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109939190610f29565b5090508473ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146109fb576040517f6b0f689100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600160008563ffffffff1663ffffffff168152602001908152602001600020600101548573ffffffffffffffffffffffffffffffffffffffff16638b85902b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a69573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a8d9190610fc0565b11610a99575050505050565b60028573ffffffffffffffffffffffffffffffffffffffff1663200d2ed26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ae6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b0a9190610f9f565b6002811115610b1b57610b1b610f70565b146104f8575050505050565b73ffffffffffffffffffffffffffffffffffffffff81168114610b4957600080fd5b50565b600060208284031215610b5e57600080fd5b8135610b6981610b27565b9392505050565b60005b83811015610b8b578181015183820152602001610b73565b83811115610b9a576000848401525b50505050565b60008151808452610bb8816020860160208601610b70565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000610b696020830184610ba0565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610c4f57610c4f610bfd565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610c9c57610c9c610bfd565b604052919050565b63ffffffff81168114610b4957600080fd5b8035610cc181610b27565b919050565b6000806040808486031215610cda57600080fd5b833567ffffffffffffffff80821115610cf257600080fd5b818601915086601f830112610d0657600080fd5b8135602082821115610d1a57610d1a610bfd565b610d28818360051b01610c55565b8281528181019350606092830285018201928a841115610d4757600080fd5b948201945b83861015610dd457858b0381811215610d655760008081fd5b610d6d610c2c565b8735610d7881610ca4565b81527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08201891315610daa5760008081fd5b610db2610c2c565b8886013581528989013586820152818601528652509485019493820193610d4c565b509650610de2888201610cb6565b955050505050509250929050565b600060208284031215610e0257600080fd5b8135610b6981610ca4565b600060208284031215610e1f57600080fd5b8151610b6981610b27565b600080600060608486031215610e3f57600080fd5b8351610e4a81610ca4565b60208501516040860151919450925067ffffffffffffffff80821115610e6f57600080fd5b818601915086601f830112610e8357600080fd5b815181811115610e9557610e95610bfd565b610ec660207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c55565b9150808252876020828501011115610edd57600080fd5b610eee816020840160208601610b70565b5080925050509250925092565b63ffffffff84168152826020820152606060408201526000610f206060830184610ba0565b95945050505050565b60008060408385031215610f3c57600080fd5b8251610f4781610b27565b602084015190925067ffffffffffffffff81168114610f6557600080fd5b809150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b600060208284031215610fb157600080fd5b815160038110610b6957600080fd5b600060208284031215610fd257600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611060577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b506001019056fea164736f6c634300080f000a","sourceMap":"1269:3939:184:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4206:1000;;;;;;:::i;:::-;;:::i;:::-;;1888:40;;;;;;;;;;;;693:42:416;681:55;;;663:74;;651:2;636:18;1888:40:184;;;;;;;;1579;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;2340:464::-;;;;;;:::i;:::-;;:::i;1777:46::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;5054:25:416;;;5110:2;5095:18;;5088:34;;;;5027:18;1777:46:184;4853:275:416;3016:1143:184;;;:::i;2851:118::-;2942:20;2851:118;;4206:1000;4292:16;;;;;;;;;;;:25;;;:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4278:41;;:10;:41;;;4274:68;;4328:14;;;;;;;;;;;;;;4274:68;4395:17;4414:15;4431:22;4457:5;:14;;;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4394:79;;;;;;4609:34;4660:20;:26;;;4700:8;4722:9;4745;4660:97;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4608:149;;;4847:5;4805:48;;4813:21;4805:48;;;4801:79;;4862:18;;;;;;;;;;;;;;4801:79;4980:24;4962:5;:12;;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:42;;;;;;;;:::i;:::-;;4958:74;;5013:19;;;;;;;;;;;;;;4958:74;5105:94;;;;;;;;5172:23;:5;:15;;;:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5331:6:198;5222:131;5172:23:184;5105:94;;;;5133:5;:19;;;:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5105:94;;5073:17;;;;;;;;:7;:17;;;;;;;;:126;;;;;;;;;;;;;;;-1:-1:-1;;;;4206:1000:184:o;2340:464::-;3100:19:48;3123:13;;;;;;3122:14;;3168:34;;;;-1:-1:-1;3186:12:48;;3201:1;3186:12;;;;:16;3168:34;3167:97;;;-1:-1:-1;3236:4:48;1465:19:64;:23;;;3208:55:48;;-1:-1:-1;3246:12:48;;;;;:17;3208:55;3146:190;;;;;;;8731:2:416;3146:190:48;;;8713:21:416;8770:2;8750:18;;;8743:30;8809:34;8789:18;;;8782:62;8880:16;8860:18;;;8853:44;8914:19;;3146:190:48;;;;;;;;3346:12;:16;;;;3361:1;3346:16;;;3372:65;;;;3406:13;:20;;;;;;;;3372:65;2522:9:184::1;2517:235;2541:20;:27;2537:1;:31;2517:235;;;2589:44;2636:20;2657:1;2636:23;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;2712:29;;::::1;::::0;2681:27;;2673:36:::1;;;::::0;;;:7:::1;:36:::0;;;;;;;:68;;;;;;;::::1;::::0;;::::1;::::0;-1:-1:-1;2570:3:184;::::1;::::0;::::1;:::i;:::-;;;;2517:235;;;-1:-1:-1::0;2761:16:184::1;:36:::0;;;::::1;;::::0;::::1;;::::0;;3457:99:48;;;;3507:5;3491:21;;;;;;3531:14;;-1:-1:-1;9639:36:416;;3531:14:48;;9627:2:416;9612:18;3531:14:48;;;;;;;3457:99;3090:472;2340:464:184;;:::o;3016:1143::-;3107:22;3150:10;3107:54;;3172:17;3191:15;3208:22;3234:4;:13;;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3171:78;;;;;;3385:34;3436:20;:26;;;3476:8;3498:9;3521;3436:97;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3384:149;;;3623:4;3581:47;;3589:21;3581:47;;;3577:78;;3637:18;;;;;;;;;;;;;;3577:78;3770:7;:17;3778:8;3770:17;;;;;;;;;;;;;;;:31;;;3746:4;:18;;;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:55;3742:92;;3817:7;;;;;3016:1143::o;3742:92::-;3928:24;3911:4;:11;;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:41;;;;;;;;:::i;:::-;;3907:78;;3968:7;;;;;3016:1143::o;14:173:416:-;119:42;112:5;108:54;101:5;98:65;88:93;;177:1;174;167:12;88:93;14:173;:::o;192:294::-;279:6;332:2;320:9;311:7;307:23;303:32;300:52;;;348:1;345;338:12;300:52;387:9;374:23;406:50;450:5;406:50;:::i;:::-;475:5;192:294;-1:-1:-1;;;192:294:416:o;748:258::-;820:1;830:113;844:6;841:1;838:13;830:113;;;920:11;;;914:18;901:11;;;894:39;866:2;859:10;830:113;;;961:6;958:1;955:13;952:48;;;996:1;987:6;982:3;978:16;971:27;952:48;;748:258;;;:::o;1011:317::-;1053:3;1091:5;1085:12;1118:6;1113:3;1106:19;1134:63;1190:6;1183:4;1178:3;1174:14;1167:4;1160:5;1156:16;1134:63;:::i;:::-;1242:2;1230:15;1247:66;1226:88;1217:98;;;;1317:4;1213:109;;1011:317;-1:-1:-1;;1011:317:416:o;1333:220::-;1482:2;1471:9;1464:21;1445:4;1502:45;1543:2;1532:9;1528:18;1520:6;1502:45;:::i;1558:184::-;1610:77;1607:1;1600:88;1707:4;1704:1;1697:15;1731:4;1728:1;1721:15;1747:251;1819:2;1813:9;;;1849:15;;1894:18;1879:34;;1915:22;;;1876:62;1873:88;;;1941:18;;:::i;:::-;1977:2;1970:22;1747:251;:::o;2003:334::-;2074:2;2068:9;2130:2;2120:13;;2135:66;2116:86;2104:99;;2233:18;2218:34;;2254:22;;;2215:62;2212:88;;;2280:18;;:::i;:::-;2316:2;2309:22;2003:334;;-1:-1:-1;2003:334:416:o;2342:144::-;2450:10;2443:5;2439:22;2432:5;2429:33;2419:61;;2476:1;2473;2466:12;2491:171;2577:20;;2606:50;2577:20;2606:50;:::i;:::-;2491:171;;;:::o;2667:1876::-;2824:6;2832;2863:2;2906;2894:9;2885:7;2881:23;2877:32;2874:52;;;2922:1;2919;2912:12;2874:52;2962:9;2949:23;2991:18;3032:2;3024:6;3021:14;3018:34;;;3048:1;3045;3038:12;3018:34;3086:6;3075:9;3071:22;3061:32;;3131:7;3124:4;3120:2;3116:13;3112:27;3102:55;;3153:1;3150;3143:12;3102:55;3189:2;3176:16;3211:4;3234:2;3230;3227:10;3224:36;;;3240:18;;:::i;:::-;3280:36;3312:2;3307;3304:1;3300:10;3296:19;3280:36;:::i;:::-;3350:15;;;3381:12;;;;-1:-1:-1;3412:4:416;3451:11;;;3443:20;;3439:29;;;3480:19;;;3477:39;;;3512:1;3509;3502:12;3477:39;3536:11;;;;3556:882;3572:6;3567:3;3564:15;3556:882;;;3649:3;3640:7;3636:17;3677:2;3673;3669:11;3666:101;;;3721:1;3750:2;3746;3739:14;3666:101;3793:22;;:::i;:::-;3856:3;3843:17;3873:55;3920:7;3873:55;:::i;:::-;3941:22;;3991:66;3983:75;;3979:84;-1:-1:-1;3976:174:416;;;4104:1;4133:2;4129;4122:14;3976:174;4178:22;;:::i;:::-;4242:12;;;4229:26;4213:43;;4307:12;;;4294:26;4276:16;;;4269:52;4341:14;;;4334:31;4378:18;;-1:-1:-1;3589:12:416;;;;4416;;;;3556:882;;;-1:-1:-1;4457:5:416;-1:-1:-1;4481:56:416;4518:18;;;4481:56;:::i;:::-;4471:66;;;;;;;2667:1876;;;;;:::o;4548:300::-;4638:6;4691:2;4679:9;4670:7;4666:23;4662:32;4659:52;;;4707:1;4704;4697:12;4659:52;4746:9;4733:23;4765:53;4812:5;4765:53;:::i;5394:270::-;5464:6;5517:2;5505:9;5496:7;5492:23;5488:32;5485:52;;;5533:1;5530;5523:12;5485:52;5565:9;5559:16;5584:50;5628:5;5584:50;:::i;5669:1034::-;5825:6;5833;5841;5894:2;5882:9;5873:7;5869:23;5865:32;5862:52;;;5910:1;5907;5900:12;5862:52;5942:9;5936:16;5961:53;6008:5;5961:53;:::i;:::-;6078:2;6063:18;;6057:25;6126:2;6111:18;;6105:25;6033:5;;-1:-1:-1;6057:25:416;-1:-1:-1;6149:18:416;6179:14;;;6176:34;;;6206:1;6203;6196:12;6176:34;6244:6;6233:9;6229:22;6219:32;;6289:7;6282:4;6278:2;6274:13;6270:27;6260:55;;6311:1;6308;6301:12;6260:55;6340:2;6334:9;6362:2;6358;6355:10;6352:36;;;6368:18;;:::i;:::-;6410:112;6518:2;6449:66;6442:4;6438:2;6434:13;6430:86;6426:95;6410:112;:::i;:::-;6397:125;;6545:2;6538:5;6531:17;6585:7;6580:2;6575;6571;6567:11;6563:20;6560:33;6557:53;;;6606:1;6603;6596:12;6557:53;6619:54;6670:2;6665;6658:5;6654:14;6649:2;6645;6641:11;6619:54;:::i;:::-;;6692:5;6682:15;;;;5669:1034;;;;;:::o;6708:435::-;6981:10;6973:6;6969:23;6958:9;6951:42;7029:6;7024:2;7013:9;7009:18;7002:34;7072:2;7067;7056:9;7052:18;7045:30;6932:4;7092:45;7133:2;7122:9;7118:18;7110:6;7092:45;:::i;:::-;7084:53;6708:435;-1:-1:-1;;;;;6708:435:416:o;7148:499::-;7282:6;7290;7343:2;7331:9;7322:7;7318:23;7314:32;7311:52;;;7359:1;7356;7349:12;7311:52;7391:9;7385:16;7410:50;7454:5;7410:50;:::i;:::-;7529:2;7514:18;;7508:25;7479:5;;-1:-1:-1;7577:18:416;7564:32;;7552:45;;7542:73;;7611:1;7608;7601:12;7542:73;7634:7;7624:17;;;7148:499;;;;;:::o;7652:184::-;7704:77;7701:1;7694:88;7801:4;7798:1;7791:15;7825:4;7822:1;7815:15;7841:277;7928:6;7981:2;7969:9;7960:7;7956:23;7952:32;7949:52;;;7997:1;7994;7987:12;7949:52;8029:9;8023:16;8068:1;8061:5;8058:12;8048:40;;8084:1;8081;8074:12;8123:212;8221:6;8274:2;8262:9;8253:7;8249:23;8245:32;8242:52;;;8290:1;8287;8280:12;8242:52;-1:-1:-1;8313:16:416;;8123:212;-1:-1:-1;8123:212:416:o;8944:184::-;8996:77;8993:1;8986:88;9093:4;9090:1;9083:15;9117:4;9114:1;9107:15;9133:349;9172:3;9203:66;9196:5;9193:77;9190:257;;9303:77;9300:1;9293:88;9404:4;9401:1;9394:15;9432:4;9429:1;9422:15;9190:257;-1:-1:-1;9474:1:416;9463:13;;9133:349::o","linkReferences":{},"immutableReferences":{"105752":[{"start":387,"length":32},{"start":828,"length":32},{"start":2296,"length":32}]}},"methodIdentifiers":{"anchors(uint32)":"7258a807","disputeGameFactory()":"f2b4e617","initialize((uint32,(bytes32,uint256))[],address)":"5e05fbd0","setAnchorState(address)":"17cf21a9","superchainConfig()":"35e80ab3","tryUpdateAnchorState()":"838c2d1e","version()":"54fd4d50"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.15+commit.e14f2714\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IDisputeGameFactory\",\"name\":\"_disputeGameFactory\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"InvalidGameStatus\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Unauthorized\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnregisteredGame\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"GameType\",\"name\":\"\",\"type\":\"uint32\"}],\"name\":\"anchors\",\"outputs\":[{\"internalType\":\"Hash\",\"name\":\"root\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"l2BlockNumber\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"disputeGameFactory\",\"outputs\":[{\"internalType\":\"contract IDisputeGameFactory\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"GameType\",\"name\":\"gameType\",\"type\":\"uint32\"},{\"components\":[{\"internalType\":\"Hash\",\"name\":\"root\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"l2BlockNumber\",\"type\":\"uint256\"}],\"internalType\":\"struct OutputRoot\",\"name\":\"outputRoot\",\"type\":\"tuple\"}],\"internalType\":\"struct AnchorStateRegistry.StartingAnchorRoot[]\",\"name\":\"_startingAnchorRoots\",\"type\":\"tuple[]\"},{\"internalType\":\"contract SuperchainConfig\",\"name\":\"_superchainConfig\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IFaultDisputeGame\",\"name\":\"_game\",\"type\":\"address\"}],\"name\":\"setAnchorState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"superchainConfig\",\"outputs\":[{\"internalType\":\"contract SuperchainConfig\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"tryUpdateAnchorState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"version\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"constructor\":{\"params\":{\"_disputeGameFactory\":\"DisputeGameFactory address.\"}},\"disputeGameFactory()\":{\"returns\":{\"_0\":\"DisputeGameFactory address.\"}},\"initialize((uint32,(bytes32,uint256))[],address)\":{\"params\":{\"_startingAnchorRoots\":\"An array of starting anchor roots.\",\"_superchainConfig\":\"The address of the SuperchainConfig contract.\"}},\"setAnchorState(address)\":{\"params\":{\"_game\":\"The game to set the anchor state for.\"}}},\"stateVariables\":{\"anchors\":{\"params\":{\"_gameType\":\"The game type to get the anchor state for.\"},\"return\":\"root The anchor state for the given game type.\",\"returns\":{\"root\":\"The anchor state for the given game type.\"}},\"version\":{\"custom:semver\":\"2.0.0\"}},\"title\":\"AnchorStateRegistry\",\"version\":1},\"userdoc\":{\"errors\":{\"InvalidGameStatus()\":[{\"notice\":\"Thrown when attempting to set an anchor state using an invalid game result.\"}],\"Unauthorized()\":[{\"notice\":\"Error for an unauthorized CALLER.\"}],\"UnregisteredGame()\":[{\"notice\":\"Thrown when attempting to set an anchor state using an unregistered game.\"}]},\"kind\":\"user\",\"methods\":{\"anchors(uint32)\":{\"notice\":\"Returns the anchor state for the given game type.\"},\"disputeGameFactory()\":{\"notice\":\"Returns the DisputeGameFactory address.\"},\"initialize((uint32,(bytes32,uint256))[],address)\":{\"notice\":\"Initializes the contract.\"},\"setAnchorState(address)\":{\"notice\":\"Sets the anchor state given the game.\"},\"superchainConfig()\":{\"notice\":\"Address of the SuperchainConfig contract.\"},\"tryUpdateAnchorState()\":{\"notice\":\"Callable by FaultDisputeGame contracts to update the anchor state. Pulls the anchor state directly from the FaultDisputeGame contract and stores it in the registry if the new anchor state is valid and the state is newer than the current anchor state.\"},\"version()\":{\"notice\":\"Semantic version.\"}},\"notice\":\"The AnchorStateRegistry is a contract that stores the latest \\\"anchor\\\" state for each available FaultDisputeGame type. The anchor state is the latest state that has been proposed on L1 and was not challenged within the challenge period. By using stored anchor states, new FaultDisputeGame instances can be initialized with a more recent starting state which reduces the amount of required offchain computation.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/dispute/AnchorStateRegistry.sol\":\"AnchorStateRegistry\"},\"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/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x2a21b14ff90012878752f230d3ffd5c3405e5938d06c97a7d89c0a64561d0d66\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3313a8f9bb1f9476857c9050067b31982bf2140b83d84f3bc0cec1f62bbe947f\",\"dweb:/ipfs/Qma17Pk8NRe7aB4UD3jjVxk7nSFaov3eQyv86hcyqkwJRV\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0xd6153ce99bcdcce22b124f755e72553295be6abcd63804cfdffceb188b8bef10\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://35c47bece3c03caaa07fab37dd2bb3413bfbca20db7bd9895024390e0a469487\",\"dweb:/ipfs/QmPGWT2x3QHcKxqe6gRmAkdakhbaRgx3DLzcakHz5M4eXG\"]},\"src/L1/SuperchainConfig.sol\":{\"keccak256\":\"0x5fab874f980fe3e52c3398ddd25b655c56af0c98c15588b2ad9ebf30671d859d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4e0aa613d38eceb621f8569fc714f521bc1f2df3d029552186ab3cdf2ee5d53f\",\"dweb:/ipfs/QmZDzFxhTXLW79eohQbr1nghNh3oNC4CUfH7uMX8CsjVAB\"]},\"src/dispute/AnchorStateRegistry.sol\":{\"keccak256\":\"0xbdd7110fd78fab6df668e4cae3228c873eebe31c98741994508c52bda28a2073\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://09fa7ac7e88171b16d5ec02b94be03a4e574aa75f6b79ff1903c444a0726484a\",\"dweb:/ipfs/QmRFEeZJPaNYHaRbZqSRgbf7hEmRqBkC7WuvAxcGT6HM44\"]},\"src/dispute/interfaces/IAnchorStateRegistry.sol\":{\"keccak256\":\"0x54756eef4ee83e2abf35752d2b68b775c5a6d09c425489def39baca81af92739\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b38629f62e2990b8c7b1246d1fd6c87c3bd1aaebf496098cb268a5d0b4037269\",\"dweb:/ipfs/QmbUEix26siwjHaTfUr1PfBoFyZuwYxDTc4udbUGxmAhYs\"]},\"src/dispute/interfaces/IDisputeGame.sol\":{\"keccak256\":\"0xa4d3617892dfee02890ea135e778ed0207aa8545c97cb2a421bae7c1a659baa0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0e31653e3463dbc3f3b572ca4a1198d9aadc7d8606a2b690a58e2c082a0d0090\",\"dweb:/ipfs/QmdbxJK4T5Hu652cSkxpAjYPxrK1i5ZM62oyopzmAzRn6M\"]},\"src/dispute/interfaces/IDisputeGameFactory.sol\":{\"keccak256\":\"0xcab52326762c570297a6f62addde4e4f9296bba85f2f1470f52a3c64f57c5b41\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://40decdf2e72938f55434d300ae5d2a607f1186c8595ff1cc3ce6c3f6d312b701\",\"dweb:/ipfs/QmaQEHn1FPjvinQTNth9vEx84iDEwtg2cVk9bLpnwLyzot\"]},\"src/dispute/interfaces/IFaultDisputeGame.sol\":{\"keccak256\":\"0x9655abdda7d33496f012e5a8bf492c7733573024cc7779dc79fb4553f11e9f0a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4f8f0acce831c36385a4b06a5142ddfc2dbe2e7c403193df2585293ef2821c03\",\"dweb:/ipfs/QmR4XJ8rG1aiR7NgyTNbQ4swe8CFWkytudbWiKKMaqiCMH\"]},\"src/dispute/interfaces/IInitializable.sol\":{\"keccak256\":\"0xbc553af6501a972850a98fc6284943f8e95a5183a7b4f64198c16fca2338c9dc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1f1c422ce4a9e72f0bbdec36434206da4af3a32d38f922acab957942e994ce5\",\"dweb:/ipfs/QmNQGWBceLxx1CKSMLfwTM584q8UCgUpF4rrFe8pdbWYtj\"]},\"src/dispute/lib/Errors.sol\":{\"keccak256\":\"0x59f7adeec32d10de65aa9417424dfc702c3f483a3f34b368924b141bbd33c2f4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9c47a4eacbbe2a2eaa313c0fe3081af0179d8ae3b2c0859d13a756dd30f930bc\",\"dweb:/ipfs/QmUQuQCdhB1WeRhcHhkVB3fUbPcWxK2V3jtUxSpfNKmgqs\"]},\"src/dispute/lib/LibPosition.sol\":{\"keccak256\":\"0x7c5f19f8f54f06de2ce1c6cdcc5c7af65ac405130a4066cdaf146ca315818241\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://06905e5ede94784e32748ad60557cb0b0829089d65430518e7042b80d2f64e2d\",\"dweb:/ipfs/QmeGKMmnFnow2VrRvTSPavCrToqQ3qDpEaR1tVoK6Hzg8K\"]},\"src/dispute/lib/LibUDT.sol\":{\"keccak256\":\"0x02eef648a47889c21c8261101c99a491e8497f9f7d088b66dffa4ded6afd7855\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88001eed40a7dbbc5193d9671e1c05273dce1ab2a95bb866543421d2863ed04e\",\"dweb:/ipfs/QmSNU8mFUFxhVdLBToL8r3v7tpugyvPDbDU4vkc3Xd4omX\"]},\"src/dispute/lib/Types.sol\":{\"keccak256\":\"0x227948243b4be041de133e1adc4b1dd49e9c1f519e4b5ab7f18c5bc9740539b9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ae2584956303586801a4c721ad39db90b8929101594f5bed10d77b28e66b3c11\",\"dweb:/ipfs/QmdoKT3UiTfBY3nBLjKRGJkngS7vq6exVQbuPqo5GwDCM1\"]},\"src/libraries/Storage.sol\":{\"keccak256\":\"0x7ce27a05552aa69afa6b2ab6684dfe99f27366cf8ef2046baeb1fb62fff0022f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a6a24f3ed56681720707a5ab0372fd67fcb1a4f6fb072c7140cda28bdb70f269\",\"dweb:/ipfs/QmW9uTpUULV4xmP7A7MoBDeDhVfQgmJG5qVUFGtXxWpWWK\"]},\"src/libraries/errors/CommonErrors.sol\":{\"keccak256\":\"0x2501548990823ff7110f08d4c31276e4375e3e3f5b15643a5e54f4b5d391bf20\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1dcfab9e2bc0bc905629ea923922b51defe34ae49a6dfcda2e73772c4ebe1b33\",\"dweb:/ipfs/QmcA5rm2kHt9RVnvuhC4vBsrZ5FsicUYVXdaGo5gUJDnUm\"]},\"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 IDisputeGameFactory","name":"_disputeGameFactory","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"type":"error","name":"InvalidGameStatus"},{"inputs":[],"type":"error","name":"Unauthorized"},{"inputs":[],"type":"error","name":"UnregisteredGame"},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"GameType","name":"","type":"uint32"}],"stateMutability":"view","type":"function","name":"anchors","outputs":[{"internalType":"Hash","name":"root","type":"bytes32"},{"internalType":"uint256","name":"l2BlockNumber","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"disputeGameFactory","outputs":[{"internalType":"contract IDisputeGameFactory","name":"","type":"address"}]},{"inputs":[{"internalType":"struct AnchorStateRegistry.StartingAnchorRoot[]","name":"_startingAnchorRoots","type":"tuple[]","components":[{"internalType":"GameType","name":"gameType","type":"uint32"},{"internalType":"struct OutputRoot","name":"outputRoot","type":"tuple","components":[{"internalType":"Hash","name":"root","type":"bytes32"},{"internalType":"uint256","name":"l2BlockNumber","type":"uint256"}]}]},{"internalType":"contract SuperchainConfig","name":"_superchainConfig","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"contract IFaultDisputeGame","name":"_game","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setAnchorState"},{"inputs":[],"stateMutability":"view","type":"function","name":"superchainConfig","outputs":[{"internalType":"contract SuperchainConfig","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"tryUpdateAnchorState"},{"inputs":[],"stateMutability":"view","type":"function","name":"version","outputs":[{"internalType":"string","name":"","type":"string"}]}],"devdoc":{"kind":"dev","methods":{"constructor":{"params":{"_disputeGameFactory":"DisputeGameFactory address."}},"disputeGameFactory()":{"returns":{"_0":"DisputeGameFactory address."}},"initialize((uint32,(bytes32,uint256))[],address)":{"params":{"_startingAnchorRoots":"An array of starting anchor roots.","_superchainConfig":"The address of the SuperchainConfig contract."}},"setAnchorState(address)":{"params":{"_game":"The game to set the anchor state for."}}},"version":1},"userdoc":{"kind":"user","methods":{"anchors(uint32)":{"notice":"Returns the anchor state for the given game type."},"disputeGameFactory()":{"notice":"Returns the DisputeGameFactory address."},"initialize((uint32,(bytes32,uint256))[],address)":{"notice":"Initializes the contract."},"setAnchorState(address)":{"notice":"Sets the anchor state given the game."},"superchainConfig()":{"notice":"Address of the SuperchainConfig contract."},"tryUpdateAnchorState()":{"notice":"Callable by FaultDisputeGame contracts to update the anchor state. Pulls the anchor state directly from the FaultDisputeGame contract and stores it in the registry if the new anchor state is valid and the state is newer than the current anchor state."},"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/dispute/AnchorStateRegistry.sol":"AnchorStateRegistry"},"evmVersion":"london","libraries":{"src/tokamak-contracts/USDC/L2/tokamak-USDC/v2/FiatTokenV2_2.sol:SignatureChecker":"0x4200000000000000000000000000000000000776"}},"sources":{"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x2a21b14ff90012878752f230d3ffd5c3405e5938d06c97a7d89c0a64561d0d66","urls":["bzz-raw://3313a8f9bb1f9476857c9050067b31982bf2140b83d84f3bc0cec1f62bbe947f","dweb:/ipfs/Qma17Pk8NRe7aB4UD3jjVxk7nSFaov3eQyv86hcyqkwJRV"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0xd6153ce99bcdcce22b124f755e72553295be6abcd63804cfdffceb188b8bef10","urls":["bzz-raw://35c47bece3c03caaa07fab37dd2bb3413bfbca20db7bd9895024390e0a469487","dweb:/ipfs/QmPGWT2x3QHcKxqe6gRmAkdakhbaRgx3DLzcakHz5M4eXG"],"license":"MIT"},"src/L1/SuperchainConfig.sol":{"keccak256":"0x5fab874f980fe3e52c3398ddd25b655c56af0c98c15588b2ad9ebf30671d859d","urls":["bzz-raw://4e0aa613d38eceb621f8569fc714f521bc1f2df3d029552186ab3cdf2ee5d53f","dweb:/ipfs/QmZDzFxhTXLW79eohQbr1nghNh3oNC4CUfH7uMX8CsjVAB"],"license":"MIT"},"src/dispute/AnchorStateRegistry.sol":{"keccak256":"0xbdd7110fd78fab6df668e4cae3228c873eebe31c98741994508c52bda28a2073","urls":["bzz-raw://09fa7ac7e88171b16d5ec02b94be03a4e574aa75f6b79ff1903c444a0726484a","dweb:/ipfs/QmRFEeZJPaNYHaRbZqSRgbf7hEmRqBkC7WuvAxcGT6HM44"],"license":"MIT"},"src/dispute/interfaces/IAnchorStateRegistry.sol":{"keccak256":"0x54756eef4ee83e2abf35752d2b68b775c5a6d09c425489def39baca81af92739","urls":["bzz-raw://b38629f62e2990b8c7b1246d1fd6c87c3bd1aaebf496098cb268a5d0b4037269","dweb:/ipfs/QmbUEix26siwjHaTfUr1PfBoFyZuwYxDTc4udbUGxmAhYs"],"license":"MIT"},"src/dispute/interfaces/IDisputeGame.sol":{"keccak256":"0xa4d3617892dfee02890ea135e778ed0207aa8545c97cb2a421bae7c1a659baa0","urls":["bzz-raw://0e31653e3463dbc3f3b572ca4a1198d9aadc7d8606a2b690a58e2c082a0d0090","dweb:/ipfs/QmdbxJK4T5Hu652cSkxpAjYPxrK1i5ZM62oyopzmAzRn6M"],"license":"MIT"},"src/dispute/interfaces/IDisputeGameFactory.sol":{"keccak256":"0xcab52326762c570297a6f62addde4e4f9296bba85f2f1470f52a3c64f57c5b41","urls":["bzz-raw://40decdf2e72938f55434d300ae5d2a607f1186c8595ff1cc3ce6c3f6d312b701","dweb:/ipfs/QmaQEHn1FPjvinQTNth9vEx84iDEwtg2cVk9bLpnwLyzot"],"license":"MIT"},"src/dispute/interfaces/IFaultDisputeGame.sol":{"keccak256":"0x9655abdda7d33496f012e5a8bf492c7733573024cc7779dc79fb4553f11e9f0a","urls":["bzz-raw://4f8f0acce831c36385a4b06a5142ddfc2dbe2e7c403193df2585293ef2821c03","dweb:/ipfs/QmR4XJ8rG1aiR7NgyTNbQ4swe8CFWkytudbWiKKMaqiCMH"],"license":"MIT"},"src/dispute/interfaces/IInitializable.sol":{"keccak256":"0xbc553af6501a972850a98fc6284943f8e95a5183a7b4f64198c16fca2338c9dc","urls":["bzz-raw://b1f1c422ce4a9e72f0bbdec36434206da4af3a32d38f922acab957942e994ce5","dweb:/ipfs/QmNQGWBceLxx1CKSMLfwTM584q8UCgUpF4rrFe8pdbWYtj"],"license":"MIT"},"src/dispute/lib/Errors.sol":{"keccak256":"0x59f7adeec32d10de65aa9417424dfc702c3f483a3f34b368924b141bbd33c2f4","urls":["bzz-raw://9c47a4eacbbe2a2eaa313c0fe3081af0179d8ae3b2c0859d13a756dd30f930bc","dweb:/ipfs/QmUQuQCdhB1WeRhcHhkVB3fUbPcWxK2V3jtUxSpfNKmgqs"],"license":"MIT"},"src/dispute/lib/LibPosition.sol":{"keccak256":"0x7c5f19f8f54f06de2ce1c6cdcc5c7af65ac405130a4066cdaf146ca315818241","urls":["bzz-raw://06905e5ede94784e32748ad60557cb0b0829089d65430518e7042b80d2f64e2d","dweb:/ipfs/QmeGKMmnFnow2VrRvTSPavCrToqQ3qDpEaR1tVoK6Hzg8K"],"license":"MIT"},"src/dispute/lib/LibUDT.sol":{"keccak256":"0x02eef648a47889c21c8261101c99a491e8497f9f7d088b66dffa4ded6afd7855","urls":["bzz-raw://88001eed40a7dbbc5193d9671e1c05273dce1ab2a95bb866543421d2863ed04e","dweb:/ipfs/QmSNU8mFUFxhVdLBToL8r3v7tpugyvPDbDU4vkc3Xd4omX"],"license":"MIT"},"src/dispute/lib/Types.sol":{"keccak256":"0x227948243b4be041de133e1adc4b1dd49e9c1f519e4b5ab7f18c5bc9740539b9","urls":["bzz-raw://ae2584956303586801a4c721ad39db90b8929101594f5bed10d77b28e66b3c11","dweb:/ipfs/QmdoKT3UiTfBY3nBLjKRGJkngS7vq6exVQbuPqo5GwDCM1"],"license":"MIT"},"src/libraries/Storage.sol":{"keccak256":"0x7ce27a05552aa69afa6b2ab6684dfe99f27366cf8ef2046baeb1fb62fff0022f","urls":["bzz-raw://a6a24f3ed56681720707a5ab0372fd67fcb1a4f6fb072c7140cda28bdb70f269","dweb:/ipfs/QmW9uTpUULV4xmP7A7MoBDeDhVfQgmJG5qVUFGtXxWpWWK"],"license":"MIT"},"src/libraries/errors/CommonErrors.sol":{"keccak256":"0x2501548990823ff7110f08d4c31276e4375e3e3f5b15643a5e54f4b5d391bf20","urls":["bzz-raw://1dcfab9e2bc0bc905629ea923922b51defe34ae49a6dfcda2e73772c4ebe1b33","dweb:/ipfs/QmcA5rm2kHt9RVnvuhC4vBsrZ5FsicUYVXdaGo5gUJDnUm"],"license":"MIT"},"src/universal/ISemver.sol":{"keccak256":"0xba34562a8026f59886d2e07d1d58d90b9691d00e0788c6263cef6c22740cab44","urls":["bzz-raw://0826f998632f83c103c3085bf2e872db79a69022b6d2e0444c83a64ca5283c2a","dweb:/ipfs/QmcJ7PNqkAfKqbjFGRordtAg1v9DvcBSKvdTkVvciLyvQR"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[{"astId":50145,"contract":"src/dispute/AnchorStateRegistry.sol:AnchorStateRegistry","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":50148,"contra