-
Notifications
You must be signed in to change notification settings - Fork 0
/
out
250 lines (235 loc) · 134 KB
/
out
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
diff --git a/etherman/smartcontracts/polygonzkevm/polygonzkevm.go b/etherman/smartcontracts/polygonzkevm/polygonzkevm.go
index 8eea7a3..31135eb 100644
--- a/etherman/smartcontracts/polygonzkevm/polygonzkevm.go
+++ b/etherman/smartcontracts/polygonzkevm/polygonzkevm.go
@@ -28,21 +28,6 @@ var (
_ = event.NewSubscription
)
-// PolygonZkEVMBatchData is an auto generated low-level Go binding around an user-defined struct.
-type PolygonZkEVMBatchData struct {
- Transactions []byte
- GlobalExitRoot [32]byte
- Timestamp uint64
- MinForcedTimestamp uint64
-}
-
-// PolygonZkEVMForcedBatchData is an auto generated low-level Go binding around an user-defined struct.
-type PolygonZkEVMForcedBatchData struct {
- Transactions []byte
- GlobalExitRoot [32]byte
- MinForcedTimestamp uint64
-}
-
// PolygonZkEVMInitializePackedParameters is an auto generated low-level Go binding around an user-defined struct.
type PolygonZkEVMInitializePackedParameters struct {
Admin common.Address
@@ -52,10 +37,17 @@ type PolygonZkEVMInitializePackedParameters struct {
TrustedAggregatorTimeout uint64
}
+// PolygonZkEVMPackedHotShotParams is an auto generated low-level Go binding around an user-defined struct.
+type PolygonZkEVMPackedHotShotParams struct {
+ OldAccInputHash [32]byte
+ NewAccInputHash [32]byte
+ CommProof []byte
+}
+
// PolygonzkevmMetaData contains all meta data concerning the Polygonzkevm contract.
var PolygonzkevmMetaData = &bind.MetaData{
- ABI: "[{\"inputs\":[{\"internalType\":\"contractIPolygonZkEVMGlobalExitRoot\",\"name\":\"_globalExitRootManager\",\"type\":\"address\"},{\"internalType\":\"contractIERC20Upgradeable\",\"name\":\"_matic\",\"type\":\"address\"},{\"internalType\":\"contractIVerifierRollup\",\"name\":\"_rollupVerifier\",\"type\":\"address\"},{\"internalType\":\"contractIPolygonZkEVMBridge\",\"name\":\"_bridgeAddress\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"_chainID\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"_forkID\",\"type\":\"uint64\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"BatchAlreadyVerified\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"BatchNotSequencedOrNotSequenceEnd\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ExceedMaxVerifyBatches\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"FinalNumBatchBelowLastVerifiedBatch\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"FinalNumBatchDoesNotMatchPendingState\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"FinalPendingStateNumInvalid\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ForceBatchTimeoutNotExpired\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ForceBatchesOverflow\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ForcedDataDoesNotMatch\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"GlobalExitRootNotExist\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"HaltTimeoutNotExpired\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InitNumBatchAboveLastVerifiedBatch\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InitNumBatchDoesNotMatchPendingState\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidProof\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidRangeBatchTimeTarget\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidRangeMultiplierBatchFee\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NewAccInputHashDoesNotExist\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NewPendingStateTimeoutMustBeLower\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NewTrustedAggregatorTimeoutMustBeLower\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotEnoughMaticAmount\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OldAccInputHashDoesNotExist\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OldStateRootDoesNotExist\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyAdmin\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyEmergencyState\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyNotEmergencyState\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyPendingAdmin\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyTrustedAggregator\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyTrustedSequencer\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PendingStateDoesNotExist\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PendingStateInvalid\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PendingStateNotConsolidable\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PendingStateTimeoutExceedHaltAggregationTimeout\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SequenceZeroBatches\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SequencedTimestampBelowForcedTimestamp\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SequencedTimestampInvalid\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StoredRootMustBeDifferentThanNewRoot\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TransactionsLengthAboveMax\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TrustedAggregatorTimeoutExceedHaltAggregationTimeout\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TrustedAggregatorTimeoutNotExpired\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AcceptAdminRole\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"numBatch\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"pendingStateNum\",\"type\":\"uint64\"}],\"name\":\"ConsolidatePendingState\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"EmergencyStateActivated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"EmergencyStateDeactivated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"forceBatchNum\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"lastGlobalExitRoot\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sequencer\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"transactions\",\"type\":\"bytes\"}],\"name\":\"ForceBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"numBatch\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"aggregator\",\"type\":\"address\"}],\"name\":\"OverridePendingState\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"storedStateRoot\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"provedStateRoot\",\"type\":\"bytes32\"}],\"name\":\"ProveNonDeterministicPendingState\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"numBatch\",\"type\":\"uint64\"}],\"name\":\"SequenceBatches\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"numBatch\",\"type\":\"uint64\"}],\"name\":\"SequenceForceBatches\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint16\",\"name\":\"newMultiplierBatchFee\",\"type\":\"uint16\"}],\"name\":\"SetMultiplierBatchFee\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"newPendingStateTimeout\",\"type\":\"uint64\"}],\"name\":\"SetPendingStateTimeout\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newTrustedAggregator\",\"type\":\"address\"}],\"name\":\"SetTrustedAggregator\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"newTrustedAggregatorTimeout\",\"type\":\"uint64\"}],\"name\":\"SetTrustedAggregatorTimeout\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newTrustedSequencer\",\"type\":\"address\"}],\"name\":\"SetTrustedSequencer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"newTrustedSequencerURL\",\"type\":\"string\"}],\"name\":\"SetTrustedSequencerURL\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"newVerifyBatchTimeTarget\",\"type\":\"uint64\"}],\"name\":\"SetVerifyBatchTimeTarget\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newPendingAdmin\",\"type\":\"address\"}],\"name\":\"TransferAdminRole\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"numBatch\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"forkID\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"version\",\"type\":\"string\"}],\"name\":\"UpdateZkEVMVersion\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"numBatch\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"aggregator\",\"type\":\"address\"}],\"name\":\"VerifyBatches\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"numBatch\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"aggregator\",\"type\":\"address\"}],\"name\":\"VerifyBatchesTrustedAggregator\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"acceptAdminRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"sequencedBatchNum\",\"type\":\"uint64\"}],\"name\":\"activateEmergencyState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"admin\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"batchFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"name\":\"batchNumToStateRoot\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"bridgeAddress\",\"outputs\":[{\"internalType\":\"contractIPolygonZkEVMBridge\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"calculateRewardPerBatch\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"chainID\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"pendingStateNum\",\"type\":\"uint64\"}],\"name\":\"consolidatePendingState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"deactivateEmergencyState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"transactions\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"maticAmount\",\"type\":\"uint256\"}],\"name\":\"forceBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"name\":\"forcedBatches\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"forkID\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getCurrentBatchFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"initNumBatch\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"finalNewBatch\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"newLocalExitRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"oldStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"newStateRoot\",\"type\":\"bytes32\"}],\"name\":\"getInputSnarkBytes\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getLastVerifiedBatch\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"globalExitRootManager\",\"outputs\":[{\"internalType\":\"contractIPolygonZkEVMGlobalExitRoot\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"admin\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"trustedSequencer\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"pendingStateTimeout\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"trustedAggregator\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"trustedAggregatorTimeout\",\"type\":\"uint64\"}],\"internalType\":\"structPolygonZkEVM.InitializePackedParameters\",\"name\":\"initializePackedParameters\",\"type\":\"tuple\"},{\"internalType\":\"bytes32\",\"name\":\"genesisRoot\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"_trustedSequencerURL\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_networkName\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_version\",\"type\":\"string\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isEmergencyState\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"pendingStateNum\",\"type\":\"uint64\"}],\"name\":\"isPendingStateConsolidable\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastBatchSequenced\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastForceBatch\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastForceBatchSequenced\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastPendingState\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastPendingStateConsolidated\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastTimestamp\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastVerifiedBatch\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"matic\",\"outputs\":[{\"internalType\":\"contractIERC20Upgradeable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"multiplierBatchFee\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"networkName\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"initPendingStateNum\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"finalPendingStateNum\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"initNumBatch\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"finalNewBatch\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"newLocalExitRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"newStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[2]\",\"name\":\"proofA\",\"type\":\"uint256[2]\"},{\"internalType\":\"uint256[2][2]\",\"name\":\"proofB\",\"type\":\"uint256[2][2]\"},{\"internalType\":\"uint256[2]\",\"name\":\"proofC\",\"type\":\"uint256[2]\"}],\"name\":\"overridePendingState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingAdmin\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingStateTimeout\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"pendingStateTransitions\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"timestamp\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"lastVerifiedBatch\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"exitRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"initPendingStateNum\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"finalPendingStateNum\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"initNumBatch\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"finalNewBatch\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"newLocalExitRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"newStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[2]\",\"name\":\"proofA\",\"type\":\"uint256[2]\"},{\"internalType\":\"uint256[2][2]\",\"name\":\"proofB\",\"type\":\"uint256[2][2]\"},{\"internalType\":\"uint256[2]\",\"name\":\"proofC\",\"type\":\"uint256[2]\"}],\"name\":\"proveNonDeterministicPendingState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rollupVerifier\",\"outputs\":[{\"internalType\":\"contractIVerifierRollup\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"transactions\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"globalExitRoot\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"timestamp\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"minForcedTimestamp\",\"type\":\"uint64\"}],\"internalType\":\"structPolygonZkEVM.BatchData[]\",\"name\":\"batches\",\"type\":\"tuple[]\"},{\"internalType\":\"address\",\"name\":\"l2Coinbase\",\"type\":\"address\"}],\"name\":\"sequenceBatches\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"transactions\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"globalExitRoot\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"minForcedTimestamp\",\"type\":\"uint64\"}],\"internalType\":\"structPolygonZkEVM.ForcedBatchData[]\",\"name\":\"batches\",\"type\":\"tuple[]\"}],\"name\":\"sequenceForceBatches\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"name\":\"sequencedBatches\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"accInputHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"sequencedTimestamp\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"previousLastBatchSequenced\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint16\",\"name\":\"newMultiplierBatchFee\",\"type\":\"uint16\"}],\"name\":\"setMultiplierBatchFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"newPendingStateTimeout\",\"type\":\"uint64\"}],\"name\":\"setPendingStateTimeout\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newTrustedAggregator\",\"type\":\"address\"}],\"name\":\"setTrustedAggregator\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"newTrustedAggregatorTimeout\",\"type\":\"uint64\"}],\"name\":\"setTrustedAggregatorTimeout\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newTrustedSequencer\",\"type\":\"address\"}],\"name\":\"setTrustedSequencer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"newTrustedSequencerURL\",\"type\":\"string\"}],\"name\":\"setTrustedSequencerURL\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"newVerifyBatchTimeTarget\",\"type\":\"uint64\"}],\"name\":\"setVerifyBatchTimeTarget\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newPendingAdmin\",\"type\":\"address\"}],\"name\":\"transferAdminRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"trustedAggregator\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"trustedAggregatorTimeout\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"trustedSequencer\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"trustedSequencerURL\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"verifyBatchTimeTarget\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"pendingStateNum\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"initNumBatch\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"finalNewBatch\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"newLocalExitRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"newStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[2]\",\"name\":\"proofA\",\"type\":\"uint256[2]\"},{\"internalType\":\"uint256[2][2]\",\"name\":\"proofB\",\"type\":\"uint256[2][2]\"},{\"internalType\":\"uint256[2]\",\"name\":\"proofC\",\"type\":\"uint256[2]\"}],\"name\":\"verifyBatches\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"pendingStateNum\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"initNumBatch\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"finalNewBatch\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"newLocalExitRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"newStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[2]\",\"name\":\"proofA\",\"type\":\"uint256[2]\"},{\"internalType\":\"uint256[2][2]\",\"name\":\"proofB\",\"type\":\"uint256[2][2]\"},{\"internalType\":\"uint256[2]\",\"name\":\"proofC\",\"type\":\"uint256[2]\"}],\"name\":\"verifyBatchesTrustedAggregator\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]",
- Bin: "0x6101406040523480156200001257600080fd5b5060405162004b7938038062004b798339810160408190526200003591620000a5565b6001600160a01b0395861660c05293851660805291841660a05290921660e0526001600160401b0391821661010052166101205262000131565b6001600160a01b03811681146200008557600080fd5b50565b80516001600160401b0381168114620000a057600080fd5b919050565b60008060008060008060c08789031215620000bf57600080fd5b8651620000cc816200006f565b6020880151909650620000df816200006f565b6040880151909550620000f2816200006f565b606088015190945062000105816200006f565b9250620001156080880162000088565b91506200012560a0880162000088565b90509295509295509295565b60805160a05160c05160e0516101005161012051614981620001f8600039600081816105de01528181610bc701526121bc0152600081816107160152610b9d0152600081816106dc0152818161263f015261366201526000818161082701528181610ef201528181611383015281816127650152818161291901528181612bd001526134360152600081816108c301528181612fa4015261396f0152600081816107cb0152818161168701528181611a7a015281816128ed015261306f01526149816000f3fe608060405234801561001057600080fd5b50600436106103835760003560e01c80638c3d7301116101de578063cfa8ed471161010f578063e7a7ed02116100ad578063f14916d61161007c578063f14916d61461090b578063f2fde38b1461091e578063f851a44014610931578063f8b823e41461094457600080fd5b8063e7a7ed02146108a4578063e8bf92ed146108be578063eaeb077b146108e5578063f020c93e146108f857600080fd5b8063d8d1091b116100e9578063d8d1091b1461085c578063d939b3151461086f578063dbc1697614610889578063e11f3f181461089157600080fd5b8063cfa8ed4714610808578063d02103ca14610822578063d2e129f91461084957600080fd5b8063ada8f9191161017c578063b4d63f5811610156578063b4d63f5814610766578063b6b0b097146107c6578063c0ed84e0146107ed578063c89e42df146107f557600080fd5b8063ada8f919146106fe578063adc879e914610711578063afd23cbe1461073857600080fd5b80639c9f3dfe116101b85780639c9f3dfe146106a95780639f0d039d146106bc578063a066215c146106c4578063a3c573eb146106d757600080fd5b80638c3d7301146106885780638da5cb5b1461069057806399f5634e146106a157600080fd5b80634a1a89a7116102b8578063715018a6116102565780637fcb3653116102305780637fcb3653146105c6578063831c7ead146105d9578063837a473814610600578063841b24d71461066e57600080fd5b8063715018a6146105985780637215541a146105a057806375c508b3146105b357600080fd5b8063542028d511610292578063542028d51461054a5780635e9145c9146105525780636b8616ce146105655780636ff512cc1461058557600080fd5b80634a1a89a7146104ef5780634a910e6a146105095780635392c5e01461051c57600080fd5b80632987898311610325578063423fa856116102ff578063423fa8561461049557806345605267146104af578063458c0477146104c95780634834a343146104dc57600080fd5b80632987898314610455578063383b3be81461046f578063394218e91461048257600080fd5b80631816b7e5116103615780631816b7e5146103ef57806319d8ac6114610404578063220d789914610417578063267822471461042a57600080fd5b80630a0d9fbe14610388578063107bf28c146103bd57806315064c96146103d2575b600080fd5b606f546103a09061010090046001600160401b031681565b6040516001600160401b0390911681526020015b60405180910390f35b6103c561094d565b6040516103b49190613ecc565b606f546103df9060ff1681565b60405190151581526020016103b4565b6104026103fd366004613edf565b6109db565b005b6073546103a0906001600160401b031681565b6103c5610425366004613f1f565b610ab9565b607b5461043d906001600160a01b031681565b6040516001600160a01b0390911681526020016103b4565b60745461043d90600160401b90046001600160a01b031681565b6103df61047d366004613f6c565b610c25565b610402610490366004613f6c565b610c6c565b6073546103a090600160401b90046001600160401b031681565b6073546103a090600160801b90046001600160401b031681565b6079546103a0906001600160401b031681565b6104026104ea366004613faf565b610d84565b6079546103a090600160401b90046001600160401b031681565b610402610517366004613f6c565b611060565b61053c61052a366004613f6c565b60756020526000908152604090205481565b6040519081526020016103b4565b6103c56110e8565b61040261056036600461409e565b6110f5565b61053c610573366004613f6c565b60716020526000908152604090205481565b6104026105933660046140f1565b6116f7565b610402611791565b6104026105ae366004613f6c565b6117a5565b6104026105c136600461410c565b6118fd565b6074546103a0906001600160401b031681565b6103a07f000000000000000000000000000000000000000000000000000000000000000081565b61064361060e3660046141aa565b6078602052600090815260409020805460018201546002909201546001600160401b0380831693600160401b90930416919084565b604080516001600160401b0395861681529490931660208501529183015260608201526080016103b4565b6079546103a090600160c01b90046001600160401b031681565b610402611998565b6033546001600160a01b031661043d565b61053c611a3f565b6104026106b7366004613f6c565b611b62565b60705461053c565b6104026106d2366004613f6c565b611c6e565b61043d7f000000000000000000000000000000000000000000000000000000000000000081565b61040261070c3660046140f1565b611d36565b6103a07f000000000000000000000000000000000000000000000000000000000000000081565b606f54610753906901000000000000000000900461ffff1681565b60405161ffff90911681526020016103b4565b6107a1610774366004613f6c565b607260205260009081526040902080546001909101546001600160401b0380821691600160401b90041683565b604080519384526001600160401b0392831660208501529116908201526060016103b4565b61043d7f000000000000000000000000000000000000000000000000000000000000000081565b6103a0611dbc565b610402610803366004614265565b611e09565b606f5461043d90600160581b90046001600160a01b031681565b61043d7f000000000000000000000000000000000000000000000000000000000000000081565b6104026108573660046142e2565b611e70565b61040261086a366004614394565b612244565b6079546103a090600160801b90046001600160401b031681565b610402612612565b61040261089f36600461410c565b6126b8565b6073546103a090600160c01b90046001600160401b031681565b61043d7f000000000000000000000000000000000000000000000000000000000000000081565b6104026108f33660046143d5565b612851565b610402610906366004613faf565b612b24565b6104026109193660046140f1565b612c71565b61040261092c3660046140f1565b612d0b565b607a5461043d906001600160a01b031681565b61053c60705481565b6077805461095a90614420565b80601f016020809104026020016040519081016040528092919081815260200182805461098690614420565b80156109d35780601f106109a8576101008083540402835291602001916109d3565b820191906000526020600020905b8154815290600101906020018083116109b657829003601f168201915b505050505081565b607a546001600160a01b03163314610a0657604051634755657960e01b815260040160405180910390fd5b6103e88161ffff161080610a1f57506103ff8161ffff16115b15610a56576040517f4c2533c800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b606f80546affff0000000000000000001916690100000000000000000061ffff8416908102919091179091556040519081527f7019933d795eba185c180209e8ae8bffbaa25bcef293364687702c31f4d302c5906020015b60405180910390a150565b6001600160401b038086166000818152607260205260408082205493881682529020546060929115801590610aec575081155b15610b23576040517f6818c29e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80610b5a576040517f66385b5100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604080516bffffffffffffffffffffffff193360601b166020820152603481019690965260548601929092526001600160c01b031960c098891b811660748701527f0000000000000000000000000000000000000000000000000000000000000000891b8116607c8701527f0000000000000000000000000000000000000000000000000000000000000000891b81166084870152608c86019490945260ac85015260cc840194909452509290931b90911660ec830152805180830360d401815260f4909201905290565b6079546001600160401b0382811660009081526078602052604081205490924292610c5b92600160801b90920481169116614470565b6001600160401b0316111592915050565b607a546001600160a01b03163314610c9757604051634755657960e01b815260040160405180910390fd5b62093a806001600160401b0382161115610cc457604051631d06e87960e01b815260040160405180910390fd5b606f5460ff16610d1d576079546001600160401b03600160c01b909104811690821610610d1d576040517f401636df00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6079805477ffffffffffffffffffffffffffffffffffffffffffffffff16600160c01b6001600160401b038416908102919091179091556040519081527f1f4fa24c2e4bad19a7f3ec5c5485f70d46c798461c2e684f55bbd0fc661373a190602001610aae565b606f5460ff1615610da857604051630bc011ff60e21b815260040160405180910390fd5b6079546001600160401b038781166000908152607260205260409020600101544292610ddf92600160c01b90910481169116614470565b6001600160401b03161115610e20576040517f8a0704d300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6103e8610e2d8888614497565b6001600160401b03161115610e5557604051635acfba9d60e11b815260040160405180910390fd5b610e658888888888888888612d98565b610e6e866130a4565b607954600160801b90046001600160401b0316600003610f5b576074805467ffffffffffffffff19166001600160401b0388811691821790925560009081526075602052604090208590556079541615610edc57607980546fffffffffffffffffffffffffffffffff191690555b6040516333d6247d60e01b8152600481018690527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906333d6247d90602401600060405180830381600087803b158015610f3e57600080fd5b505af1158015610f52573d6000803e3d6000fd5b50505050611015565b610f63613298565b607980546001600160401b0316906000610f7c836144b7565b82546001600160401b039182166101009390930a92830292820219169190911790915560408051608081018252428316815289831660208083019182528284018b8152606084018b8152607954871660009081526078909352949091209251835492518616600160401b026fffffffffffffffffffffffffffffffff199093169516949094171781559151600183015551600290910155505b60405184815233906001600160401b038816907f9c72852172521097ba7e1482e6b44b351323df0155f97f4ea18fcec28e1f5966906020015b60405180910390a35050505050505050565b607454600160401b90046001600160a01b031633146110dc57606f5460ff161561109d57604051630bc011ff60e21b815260040160405180910390fd5b6110a681610c25565b6110dc576040517f0ce9e4a200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6110e581613338565b50565b6076805461095a90614420565b606f5460ff161561111957604051630bc011ff60e21b815260040160405180910390fd5b606f54600160581b90046001600160a01b03163314611164576040517f11e7be1500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8160008190036111875760405163cb591a5f60e01b815260040160405180910390fd5b6103e88111156111aa57604051635acfba9d60e11b815260040160405180910390fd5b6073546001600160401b03600160401b82048116600081815260726020526040812054838516949293600160801b909304909216919082905b868110156115415760008a8a838181106111ff576111ff6144dd565b905060200281019061121191906144f3565b61121a90614513565b805180516020909101206060820151919250906001600160401b0316156113405785611245816144b7565b9650506000818360200151846060015160405160200161128593929190928352602083019190915260c01b6001600160c01b031916604082015260480190565b60408051601f1981840301815291815281516020928301206001600160401b038a166000908152607190935291205490915081146112d65760405163671ebaaf60e11b815260040160405180910390fd5b6001600160401b03808816600090815260716020526040808220919091556060850151908501519082169116101561133a576040517f7f7ab87200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50611457565b6020820151158015906113fa575060208201516040517f257b363200000000000000000000000000000000000000000000000000000000815260048101919091527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063257b3632906024016020604051808303816000875af11580156113d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113f8919061459f565b155b15611431576040517f73bd668d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b815151620493e01015611457576040516328a69b1f60e21b815260040160405180910390fd5b876001600160401b031682604001516001600160401b0316108061148757504282604001516001600160401b0316115b156114be576040517fea82791600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b602082810151604080850151815193840189905290830184905260608084019290925260c01b6001600160c01b03191660808301528b901b6bffffffffffffffffffffffff19166088820152609c016040516020818303038152906040528051906020012094508160400151975050508080611539906145b8565b9150506111e3565b5061154c8685614470565b6073549094506001600160401b03600160c01b909104811690841611156115865760405163c630a00d60e01b815260040160405180910390fd5b60006115928285614497565b6115a5906001600160401b0316886145d1565b60408051606081018252858152426001600160401b03908116602080840191825260738054600160401b9081900485168688019081528d861660008181526072909552979093209551865592516001909501805492519585166fffffffffffffffffffffffffffffffff199384161795851684029590951790945583548c8416911617930292909217905590915082811690851614611664576073805467ffffffffffffffff60801b1916600160801b6001600160401b038716021790555b6116af33308361167360705490565b61167d91906145e4565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169291906134f0565b6116b7613298565b6040516001600160401b038616907f303446e6a8cb73c83dff421c0b1d5e5ce0719dab1bff13660fc254e58cc17fce90600090a250505050505050505050565b607a546001600160a01b0316331461172257604051634755657960e01b815260040160405180910390fd5b606f80547fff0000000000000000000000000000000000000000ffffffffffffffffffffff16600160581b6001600160a01b038416908102919091179091556040519081527ff54144f9611984021529f814a1cb6a41e22c58351510a0d9f7e822618abb9cc090602001610aae565b6117996135a7565b6117a36000613601565b565b6033546001600160a01b031633146118f55760006117c1611dbc565b9050806001600160401b0316826001600160401b03161161180e576040517f812a372d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6073546001600160401b03600160401b9091048116908316118061184d57506001600160401b0380831660009081526072602052604090206001015416155b15611884576040517f98c5c01400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160401b0380831660009081526072602052604090206001015442916118b29162093a809116614470565b6001600160401b031611156118f3576040517fd257555a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505b6110e5613660565b606f5460ff161561192157604051630bc011ff60e21b815260040160405180910390fd5b6119328989898989898989896136db565b6001600160401b0386166000908152607560209081526040918290205482519081529081018690527f1f44c21118c4603cfb4e1b621dbcfa2b73efcececee2b99b620b2953d33a7010910160405180910390a161198d613660565b505050505050505050565b607b546001600160a01b031633146119dc576040517fd1ec4b2300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b607b54607a805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0390921691821790556040519081527f056dc487bbf0795d0bbb1b4f0af523a855503cff740bfb4d5475f7a90c091e8e9060200160405180910390a1565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015260009081906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906370a0823190602401602060405180830381865afa158015611ac1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ae5919061459f565b90506000611af1611dbc565b6073546001600160401b03600160401b8204811691611b2191600160801b8204811691600160c01b900416614497565b611b2b9190614470565b611b359190614497565b6001600160401b0316905080600003611b515760009250505090565b611b5b8183614611565b9250505090565b607a546001600160a01b03163314611b8d57604051634755657960e01b815260040160405180910390fd5b62093a806001600160401b0382161115611bba57604051630cc9650760e41b815260040160405180910390fd5b606f5460ff16611c13576079546001600160401b03600160801b909104811690821610611c13576040517f48a05a9000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6079805467ffffffffffffffff60801b1916600160801b6001600160401b038416908102919091179091556040519081527fc4121f4e22c69632ebb7cf1f462be0511dc034f999b52013eddfb24aab765c7590602001610aae565b607a546001600160a01b03163314611c9957604051634755657960e01b815260040160405180910390fd5b62015180816001600160401b03161115611cdf576040517fe067dfe800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b606f805468ffffffffffffffff0019166101006001600160401b038416908102919091179091556040519081527f1b023231a1ab6b5d93992f168fb44498e1a7e64cef58daff6f1c216de6a68c2890602001610aae565b607a546001600160a01b03163314611d6157604051634755657960e01b815260040160405180910390fd5b607b805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0383169081179091556040519081527fa5b56b7906fd0a20e3f35120dd8343db1e12e037a6c90111c7e42885e82a1ce690602001610aae565b6079546000906001600160401b031615611df957506079546001600160401b03908116600090815260786020526040902054600160401b90041690565b506074546001600160401b031690565b607a546001600160a01b03163314611e3457604051634755657960e01b815260040160405180910390fd5b6076611e408282614673565b507f6b8f723a4c7a5335cafae8a598a0aa0301be1387c037dccc085b62add6448b2081604051610aae9190613ecc565b600054610100900460ff1615808015611e905750600054600160ff909116105b80611eaa5750303b158015611eaa575060005460ff166001145b611f215760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084015b60405180910390fd5b6000805460ff191660011790558015611f44576000805461ff0019166101001790555b611f5160208801886140f1565b607a805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055611f8e60408801602089016140f1565b606f80546001600160a01b0392909216600160581b027fff0000000000000000000000000000000000000000ffffffffffffffffffffff909216919091179055611fde60808801606089016140f1565b607480546001600160a01b0392909216600160401b027fffffffff0000000000000000000000000000000000000000ffffffffffffffff9092169190911790556000805260756020527ff9e3fbf150b7a0077118526f473c53cb4734f166167e2c6213e3567dd390b4ad86905560766120578682614673565b5060776120648582614673565b5062093a806120796060890160408a01613f6c565b6001600160401b031611156120a157604051630cc9650760e41b815260040160405180910390fd5b6120b16060880160408901613f6c565b607980546001600160401b0392909216600160801b0267ffffffffffffffff60801b1990921691909117905562093a806120f160a0890160808a01613f6c565b6001600160401b0316111561211957604051631d06e87960e01b815260040160405180910390fd5b61212960a0880160808901613f6c565b6079805477ffffffffffffffffffffffffffffffffffffffffffffffff16600160c01b6001600160401b039390931692909202919091179055670de0b6b3a7640000607055606f80546affffffffffffffffffff0019166a03ea000000000000070800179055612197613a5c565b7fed7be53c9f1a96a481223b15568a5b1a475e01a74b347d6ca187c8bf0c078cd660007f000000000000000000000000000000000000000000000000000000000000000085856040516121ed949392919061475b565b60405180910390a1801561223b576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b606f5460ff161561226857604051630bc011ff60e21b815260040160405180910390fd5b80600081900361228b5760405163cb591a5f60e01b815260040160405180910390fd5b6103e88111156122ae57604051635acfba9d60e11b815260040160405180910390fd5b6073546001600160401b03600160c01b82048116916122d6918491600160801b900416614792565b11156122f55760405163c630a00d60e01b815260040160405180910390fd5b6073546001600160401b03600160401b820481166000818152607260205260408120549193600160801b9004909216915b848110156124fc576000878783818110612342576123426144dd565b905060200281019061235491906147a5565b61235d906147bb565b905083612369816144b7565b825180516020918201208185015160408087015190519499509194506000936123b39386939101928352602083019190915260c01b6001600160c01b031916604082015260480190565b60408051601f1981840301815291815281516020928301206001600160401b0389166000908152607190935291205490915081146124045760405163671ebaaf60e11b815260040160405180910390fd5b6001600160401b0386166000908152607160205260408120556124286001896145d1565b840361248357426206978084604001516124429190614470565b6001600160401b03161115612483576040517fc44a082100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6020838101516040805192830188905282018490526060808301919091524260c01b6001600160c01b031916608083015233901b6bffffffffffffffffffffffff19166088820152609c0160405160208183030381529060405280519060200120945050505080806124f4906145b8565b915050612326565b506125078484614470565b607380546001600160401b0342811667ffffffffffffffff199092168217808455604080516060810182528781526020808201958652600160401b9384900485168284019081528589166000818152607290935284832093518455965160019390930180549151871686026fffffffffffffffffffffffffffffffff1990921693871693909317179091558554938916600160801b0267ffffffffffffffff60801b19938602939093167fffffffffffffffff00000000000000000000000000000000ffffffffffffffff90941693909317919091179093559151929550917f648a61dd2438f072f5a1960939abd30f37aea80d2e94c9792ad142d3e0a490a49190a2505050505050565b607a546001600160a01b0316331461263d57604051634755657960e01b815260040160405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663dbc169766040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561269857600080fd5b505af11580156126ac573d6000803e3d6000fd5b505050506117a3613ae2565b607454600160401b90046001600160a01b031633146126ea5760405163bbcbbc0560e01b815260040160405180910390fd5b6126fb8989898989898989896136db565b6074805467ffffffffffffffff19166001600160401b038881169182179092556000908152607560205260409020859055607954161561274f57607980546fffffffffffffffffffffffffffffffff191690555b6040516333d6247d60e01b8152600481018690527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906333d6247d90602401600060405180830381600087803b1580156127b157600080fd5b505af11580156127c5573d6000803e3d6000fd5b50506079805477ffffffffffffffffffffffffffffffffffffffffffffffff167a093a80000000000000000000000000000000000000000000000000179055505060405184815233906001600160401b038816907fcc1b5520188bf1dd3e63f98164b577c4d75c11a619ddea692112f0d1aec4cf729060200160405180910390a3505050505050505050565b606f5460ff161561287557604051630bc011ff60e21b815260040160405180910390fd5b600061288060705490565b9050818111156128bc576040517f4732fdb500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b620493e08311156128e0576040516328a69b1f60e21b815260040160405180910390fd5b6129156001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163330846134f0565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316633ed691ef6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612975573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612999919061459f565b60738054919250600160c01b9091046001600160401b03169060186129bd836144b7565b91906101000a8154816001600160401b0302191690836001600160401b031602179055505084846040516129f2929190614836565b60408051918290038220602083015281018290526001600160c01b03194260c01b16606082015260680160408051808303601f190181529181528151602092830120607354600160c01b90046001600160401b031660009081526071909352912055323303612ac057607354604080518381523360208201526060918101829052600091810191909152600160c01b9091046001600160401b0316907ff94bb37db835f1ab585ee00041849a09b12cd081d77fa15ca070757619cbc9319060800160405180910390a2612b1d565b607360189054906101000a90046001600160401b03166001600160401b03167ff94bb37db835f1ab585ee00041849a09b12cd081d77fa15ca070757619cbc93182338888604051612b149493929190614846565b60405180910390a25b5050505050565b607454600160401b90046001600160a01b03163314612b565760405163bbcbbc0560e01b815260040160405180910390fd5b612b668888888888888888612d98565b6074805467ffffffffffffffff19166001600160401b0388811691821790925560009081526075602052604090208590556079541615612bba57607980546fffffffffffffffffffffffffffffffff191690555b6040516333d6247d60e01b8152600481018690527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906333d6247d90602401600060405180830381600087803b158015612c1c57600080fd5b505af1158015612c30573d6000803e3d6000fd5b50506040518681523392506001600160401b03891691507fcb339b570a7f0b25afa7333371ff11192092a0aeace12b671f4c212f2815c6fe9060200161104e565b607a546001600160a01b03163314612c9c57604051634755657960e01b815260040160405180910390fd5b607480547fffffffff0000000000000000000000000000000000000000ffffffffffffffff16600160401b6001600160a01b038416908102919091179091556040519081527f61f8fec29495a3078e9271456f05fb0707fd4e41f7661865f80fc437d06681ca90602001610aae565b612d136135a7565b6001600160a01b038116612d8f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401611f18565b6110e581613601565b600080612da3611dbc565b90506001600160401b038a1615612e39576079546001600160401b03908116908b161115612de45760405163bb14c20560e01b815260040160405180910390fd5b6001600160401b03808b1660009081526078602052604090206002810154815490945090918b8116600160401b9092041614612e3357604051632bd2e3e760e01b815260040160405180910390fd5b50612ea5565b6001600160401b038916600090815260756020526040902054915081612e72576040516324cbdcc360e11b815260040160405180910390fd5b806001600160401b0316896001600160401b03161115612ea557604051630f2b74f160e11b815260040160405180910390fd5b806001600160401b0316886001600160401b031611612ef0576040517fb9b18f5700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000612eff8a8a8a868b610ab9565b905060007f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001600283604051612f34919061486f565b602060405180830381855afa158015612f51573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190612f74919061459f565b612f7e9190614881565b6040805160208101825282815290516343753b4d60e01b81529192506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916343753b4d91612fde918b918b918b9190600401614895565b602060405180830381865afa158015612ffb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061301f9190614903565b61303c576040516309bde33960e01b815260040160405180910390fd5b6130963361304a858d614497565b6001600160401b031661305b611a3f565b61306591906145e4565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169190613b53565b505050505050505050505050565b60006130ae611dbc565b9050816000806130be8484614497565b606f546001600160401b0391821692506000916130e191610100900416426145d1565b90505b846001600160401b0316846001600160401b031614613181576001600160401b038085166000908152607260205260409020600181015490911682101561317557600181015461314490600160401b90046001600160401b031686614497565b613157906001600160401b031685614792565b6001820154600160401b90046001600160401b03169550935061317b565b50613181565b506130e4565b600061318d84846145d1565b9050808410156131e457838103600c81116131a857806131ab565b600c5b9050806103e80a81606f60099054906101000a900461ffff1661ffff160a60705402816131da576131da6145fb565b0460705550613254565b808403600c81116131f557806131f8565b600c5b90506000816103e80a82606f60099054906101000a900461ffff1661ffff160a670de0b6b3a7640000028161322f5761322f6145fb565b04905080607054670de0b6b3a7640000028161324d5761324d6145fb565b0460705550505b683635c9adc5dea00000607054111561327957683635c9adc5dea0000060705561223b565b633b9aca00607054101561223b57633b9aca0060705550505050505050565b6079546001600160401b03600160401b82048116911611156117a3576079546000906132d590600160401b90046001600160401b03166001614470565b90506132e081610c25565b156110e5576079546000906002906133029084906001600160401b0316614497565b61330c9190614925565b6133169083614470565b905061332181610c25565b156133335761332f81613338565b5050565b61332f825b6079546001600160401b03600160401b909104811690821611158061336b57506079546001600160401b03908116908216115b156133a2576040517fd086b70b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160401b038181166000818152607860209081526040808320805460748054600160401b9283900490981667ffffffffffffffff1990981688179055600282015487865260759094529382902092909255607980546fffffffffffffffff000000000000000019169390940292909217909255600182015490516333d6247d60e01b815260048101919091529091907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906333d6247d90602401600060405180830381600087803b15801561348257600080fd5b505af1158015613496573d6000803e3d6000fd5b50505050826001600160401b0316816001600160401b03167f328d3c6c0fd6f1be0515e422f2d87e59f25922cbc2233568515a0c4bc3f8510e84600201546040516134e391815260200190565b60405180910390a3505050565b6040516001600160a01b03808516602483015283166044820152606481018290526135a19085907f23b872dd00000000000000000000000000000000000000000000000000000000906084015b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090931692909217909152613ba1565b50505050565b6033546001600160a01b031633146117a35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401611f18565b603380546001600160a01b0383811673ffffffffffffffffffffffffffffffffffffffff19831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316632072f6c56040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156136bb57600080fd5b505af11580156136cf573d6000803e3d6000fd5b505050506117a3613c86565b60006001600160401b038a161561376f576079546001600160401b03908116908b16111561371c5760405163bb14c20560e01b815260040160405180910390fd5b506001600160401b03808a1660009081526078602052604090206002810154815490928a8116600160401b909204161461376957604051632bd2e3e760e01b815260040160405180910390fd5b506137d7565b506001600160401b038716600090815260756020526040902054806137a7576040516324cbdcc360e11b815260040160405180910390fd5b6074546001600160401b0390811690891611156137d757604051630f2b74f160e11b815260040160405180910390fd5b6079546001600160401b03908116908a1611806138065750896001600160401b0316896001600160401b031611155b8061382757506079546001600160401b03600160401b9091048116908a1611155b1561385e576040517fbfa7079f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160401b03898116600090815260786020526040902054600160401b90048116908816146138bb576040517f32a2a77f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006138ca898989858a610ab9565b905060007f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f00000016002836040516138ff919061486f565b602060405180830381855afa15801561391c573d6000803e3d6000fd5b5050506040513d601f19601f8201168201806040525081019061393f919061459f565b6139499190614881565b6040805160208101825282815290516343753b4d60e01b81529192506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916343753b4d916139a9918a918a918a9190600401614895565b602060405180830381865afa1580156139c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139ea9190614903565b613a07576040516309bde33960e01b815260040160405180910390fd5b6001600160401b038b16600090815260786020526040902060020154879003613096576040517fa47276bd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600054610100900460ff16613ad95760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401611f18565b6117a333613601565b606f5460ff16613b1e576040517f5386698100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b606f805460ff191690556040517f1e5e34eea33501aecf2ebec9fe0e884a40804275ea7fe10b2ba084c8374308b390600090a1565b6040516001600160a01b038316602482015260448101829052613b9c9084907fa9059cbb000000000000000000000000000000000000000000000000000000009060640161353d565b505050565b6000613bf6826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316613ce29092919063ffffffff16565b805190915015613b9c5780806020019051810190613c149190614903565b613b9c5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f742073756363656564000000000000000000000000000000000000000000006064820152608401611f18565b606f5460ff1615613caa57604051630bc011ff60e21b815260040160405180910390fd5b606f805460ff191660011790556040517f2261efe5aef6fedc1fd1550b25facc9181745623049c7901287030b9ad1a549790600090a1565b6060613cf18484600085613cfb565b90505b9392505050565b606082471015613d735760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c00000000000000000000000000000000000000000000000000006064820152608401611f18565b6001600160a01b0385163b613dca5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401611f18565b600080866001600160a01b03168587604051613de6919061486f565b60006040518083038185875af1925050503d8060008114613e23576040519150601f19603f3d011682016040523d82523d6000602084013e613e28565b606091505b5091509150613e38828286613e43565b979650505050505050565b60608315613e52575081613cf4565b825115613e625782518084602001fd5b8160405162461bcd60e51b8152600401611f189190613ecc565b60005b83811015613e97578181015183820152602001613e7f565b50506000910152565b60008151808452613eb8816020860160208601613e7c565b601f01601f19169290920160200192915050565b602081526000613cf46020830184613ea0565b600060208284031215613ef157600080fd5b813561ffff81168114613cf457600080fd5b80356001600160401b0381168114613f1a57600080fd5b919050565b600080600080600060a08688031215613f3757600080fd5b613f4086613f03565b9450613f4e60208701613f03565b94979496505050506040830135926060810135926080909101359150565b600060208284031215613f7e57600080fd5b613cf482613f03565b8060408101831015613f9857600080fd5b92915050565b8060808101831015613f9857600080fd5b6000806000806000806000806101a0898b031215613fcc57600080fd5b613fd589613f03565b9750613fe360208a01613f03565b9650613ff160408a01613f03565b9550606089013594506080890135935061400e8a60a08b01613f87565b925061401d8a60e08b01613f9e565b915061402d8a6101608b01613f87565b90509295985092959890939650565b60008083601f84011261404e57600080fd5b5081356001600160401b0381111561406557600080fd5b6020830191508360208260051b850101111561408057600080fd5b9250929050565b80356001600160a01b0381168114613f1a57600080fd5b6000806000604084860312156140b357600080fd5b83356001600160401b038111156140c957600080fd5b6140d58682870161403c565b90945092506140e8905060208501614087565b90509250925092565b60006020828403121561410357600080fd5b613cf482614087565b60008060008060008060008060006101c08a8c03121561412b57600080fd5b6141348a613f03565b985061414260208b01613f03565b975061415060408b01613f03565b965061415e60608b01613f03565b955060808a0135945060a08a0135935061417b8b60c08c01613f87565b925061418b8b6101008c01613f9e565b915061419b8b6101808c01613f87565b90509295985092959850929598565b6000602082840312156141bc57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126141ea57600080fd5b81356001600160401b0380821115614204576142046141c3565b604051601f8301601f19908116603f0116810190828211818310171561422c5761422c6141c3565b8160405283815286602085880101111561424557600080fd5b836020870160208301376000602085830101528094505050505092915050565b60006020828403121561427757600080fd5b81356001600160401b0381111561428d57600080fd5b614299848285016141d9565b949350505050565b60008083601f8401126142b357600080fd5b5081356001600160401b038111156142ca57600080fd5b60208301915083602082850101111561408057600080fd5b6000806000806000808688036101208112156142fd57600080fd5b60a081121561430b57600080fd5b5086955060a0870135945060c08701356001600160401b038082111561433057600080fd5b61433c8a838b016141d9565b955060e089013591508082111561435257600080fd5b61435e8a838b016141d9565b945061010089013591508082111561437557600080fd5b5061438289828a016142a1565b979a9699509497509295939492505050565b600080602083850312156143a757600080fd5b82356001600160401b038111156143bd57600080fd5b6143c98582860161403c565b90969095509350505050565b6000806000604084860312156143ea57600080fd5b83356001600160401b0381111561440057600080fd5b61440c868287016142a1565b909790965060209590950135949350505050565b600181811c9082168061443457607f821691505b60208210810361445457634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b6001600160401b038181168382160190808211156144905761449061445a565b5092915050565b6001600160401b038281168282160390808211156144905761449061445a565b60006001600160401b038083168181036144d3576144d361445a565b6001019392505050565b634e487b7160e01b600052603260045260246000fd5b60008235607e1983360301811261450957600080fd5b9190910192915050565b60006080823603121561452557600080fd5b604051608081016001600160401b038282108183111715614548576145486141c3565b81604052843591508082111561455d57600080fd5b5061456a368286016141d9565b8252506020830135602082015261458360408401613f03565b604082015261459460608401613f03565b606082015292915050565b6000602082840312156145b157600080fd5b5051919050565b6000600182016145ca576145ca61445a565b5060010190565b81810381811115613f9857613f9861445a565b8082028115828204841417613f9857613f9861445a565b634e487b7160e01b600052601260045260246000fd5b600082614620576146206145fb565b500490565b601f821115613b9c57600081815260208120601f850160051c8101602086101561464c5750805b601f850160051c820191505b8181101561466b57828155600101614658565b505050505050565b81516001600160401b0381111561468c5761468c6141c3565b6146a08161469a8454614420565b84614625565b602080601f8311600181146146d557600084156146bd5750858301515b600019600386901b1c1916600185901b17855561466b565b600085815260208120601f198616915b82811015614704578886015182559484019460019091019084016146e5565b50858210156147225787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60006001600160401b03808716835280861660208401525060606040830152614788606083018486614732565b9695505050505050565b80820180821115613f9857613f9861445a565b60008235605e1983360301811261450957600080fd5b6000606082360312156147cd57600080fd5b604051606081016001600160401b0382821081831117156147f0576147f06141c3565b81604052843591508082111561480557600080fd5b50614812368286016141d9565b8252506020830135602082015261482b60408401613f03565b604082015292915050565b8183823760009101908152919050565b8481526001600160a01b0384166020820152606060408201526000614788606083018486614732565b60008251614509818460208701613e7c565b600082614890576148906145fb565b500690565b61012081016040808784378083018660005b60028110156148c4578382843791830191908301906001016148a7565b505050808560c08501375061010082018360005b60018110156148f75781518352602092830192909101906001016148d8565b50505095945050505050565b60006020828403121561491557600080fd5b81518015158114613cf457600080fd5b60006001600160401b038084168061493f5761493f6145fb565b9216919091049291505056fea264697066735822122072ed050d1998118630bb876e7055794a22f8bedaec013380c1d9e72b528968db64736f6c63430008110033",
+ ABI: "[{\"inputs\":[{\"internalType\":\"contractIPolygonZkEVMGlobalExitRoot\",\"name\":\"_globalExitRootManager\",\"type\":\"address\"},{\"internalType\":\"contractIERC20Upgradeable\",\"name\":\"_matic\",\"type\":\"address\"},{\"internalType\":\"contractIVerifierRollup\",\"name\":\"_rollupVerifier\",\"type\":\"address\"},{\"internalType\":\"contractIPolygonZkEVMBridge\",\"name\":\"_bridgeAddress\",\"type\":\"address\"},{\"internalType\":\"contractIHotShot\",\"name\":\"_hotshotAddress\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"_chainID\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"_forkID\",\"type\":\"uint64\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"BatchAlreadyVerified\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"BatchNotSequencedOrNotSequenceEnd\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ExceedMaxVerifyBatches\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"FinalNumBatchBelowLastVerifiedBatch\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"FinalNumBatchDoesNotMatchPendingState\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"FinalPendingStateNumInvalid\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ForceBatchTimeoutNotExpired\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ForceBatchesOverflow\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ForcedDataDoesNotMatch\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"GlobalExitRootNotExist\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"HaltTimeoutNotExpired\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InitNumBatchAboveLastVerifiedBatch\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InitNumBatchDoesNotMatchPendingState\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidProof\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidRangeBatchTimeTarget\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidRangeMultiplierBatchFee\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NewAccInputHashDoesNotExist\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NewPendingStateTimeoutMustBeLower\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NewTrustedAggregatorTimeoutMustBeLower\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotEnoughMaticAmount\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OldAccInputHashDoesNotExist\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OldStateRootDoesNotExist\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyAdmin\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyEmergencyState\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyNotEmergencyState\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyPendingAdmin\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyTrustedAggregator\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyTrustedSequencer\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PendingStateDoesNotExist\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PendingStateInvalid\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PendingStateNotConsolidable\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PendingStateTimeoutExceedHaltAggregationTimeout\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SequenceZeroBatches\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SequencedTimestampBelowForcedTimestamp\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SequencedTimestampInvalid\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StoredRootMustBeDifferentThanNewRoot\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TransactionsLengthAboveMax\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TrustedAggregatorTimeoutExceedHaltAggregationTimeout\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TrustedAggregatorTimeoutNotExpired\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AcceptAdminRole\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"numBatch\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"pendingStateNum\",\"type\":\"uint64\"}],\"name\":\"ConsolidatePendingState\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"EmergencyStateActivated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"EmergencyStateDeactivated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"forceBatchNum\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"lastGlobalExitRoot\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sequencer\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"transactions\",\"type\":\"bytes\"}],\"name\":\"ForceBatch\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"numBatch\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"aggregator\",\"type\":\"address\"}],\"name\":\"OverridePendingState\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"storedStateRoot\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"provedStateRoot\",\"type\":\"bytes32\"}],\"name\":\"ProveNonDeterministicPendingState\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"numBatch\",\"type\":\"uint64\"}],\"name\":\"SequenceBatches\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"numBatch\",\"type\":\"uint64\"}],\"name\":\"SequenceForceBatches\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint16\",\"name\":\"newMultiplierBatchFee\",\"type\":\"uint16\"}],\"name\":\"SetMultiplierBatchFee\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"newPendingStateTimeout\",\"type\":\"uint64\"}],\"name\":\"SetPendingStateTimeout\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newTrustedAggregator\",\"type\":\"address\"}],\"name\":\"SetTrustedAggregator\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"newTrustedAggregatorTimeout\",\"type\":\"uint64\"}],\"name\":\"SetTrustedAggregatorTimeout\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newTrustedSequencer\",\"type\":\"address\"}],\"name\":\"SetTrustedSequencer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"newTrustedSequencerURL\",\"type\":\"string\"}],\"name\":\"SetTrustedSequencerURL\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"newVerifyBatchTimeTarget\",\"type\":\"uint64\"}],\"name\":\"SetVerifyBatchTimeTarget\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newPendingAdmin\",\"type\":\"address\"}],\"name\":\"TransferAdminRole\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"numBatch\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"forkID\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"version\",\"type\":\"string\"}],\"name\":\"UpdateZkEVMVersion\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"numBatch\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"aggregator\",\"type\":\"address\"}],\"name\":\"VerifyBatches\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"numBatch\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"aggregator\",\"type\":\"address\"}],\"name\":\"VerifyBatchesTrustedAggregator\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"acceptAdminRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"sequencedBatchNum\",\"type\":\"uint64\"}],\"name\":\"activateEmergencyState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"admin\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"batchFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"name\":\"batchNumToStateRoot\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"bridgeAddress\",\"outputs\":[{\"internalType\":\"contractIPolygonZkEVMBridge\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"calculateRewardPerBatch\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"chainID\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"pendingStateNum\",\"type\":\"uint64\"}],\"name\":\"consolidatePendingState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"deactivateEmergencyState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"name\":\"forcedBatches\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"forkID\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getCurrentBatchFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"initNumBatch\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"finalNewBatch\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"newLocalExitRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"oldStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"newStateRoot\",\"type\":\"bytes32\"}],\"name\":\"getInputSnarkBytes\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getLastVerifiedBatch\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"globalExitRootManager\",\"outputs\":[{\"internalType\":\"contractIPolygonZkEVMGlobalExitRoot\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"hotShot\",\"outputs\":[{\"internalType\":\"contractIHotShot\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"admin\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"trustedSequencer\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"pendingStateTimeout\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"trustedAggregator\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"trustedAggregatorTimeout\",\"type\":\"uint64\"}],\"internalType\":\"structPolygonZkEVM.InitializePackedParameters\",\"name\":\"initializePackedParameters\",\"type\":\"tuple\"},{\"internalType\":\"bytes32\",\"name\":\"genesisRoot\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"_trustedSequencerURL\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_networkName\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_version\",\"type\":\"string\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isEmergencyState\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"pendingStateNum\",\"type\":\"uint64\"}],\"name\":\"isPendingStateConsolidable\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastBatchSequenced\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastForceBatch\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastForceBatchSequenced\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastPendingState\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastPendingStateConsolidated\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastTimestamp\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"lastVerifiedBatch\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"matic\",\"outputs\":[{\"internalType\":\"contractIERC20Upgradeable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"multiplierBatchFee\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"networkName\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"initPendingStateNum\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"finalPendingStateNum\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"initNumBatch\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"finalNewBatch\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"newLocalExitRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"newStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[2]\",\"name\":\"proofA\",\"type\":\"uint256[2]\"},{\"internalType\":\"uint256[2][2]\",\"name\":\"proofB\",\"type\":\"uint256[2][2]\"},{\"internalType\":\"uint256[2]\",\"name\":\"proofC\",\"type\":\"uint256[2]\"}],\"name\":\"overridePendingState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingAdmin\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingStateTimeout\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"pendingStateTransitions\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"timestamp\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"lastVerifiedBatch\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"exitRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"stateRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"initPendingStateNum\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"finalPendingStateNum\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"initNumBatch\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"finalNewBatch\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"newLocalExitRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"newStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[2]\",\"name\":\"proofA\",\"type\":\"uint256[2]\"},{\"internalType\":\"uint256[2][2]\",\"name\":\"proofB\",\"type\":\"uint256[2][2]\"},{\"internalType\":\"uint256[2]\",\"name\":\"proofC\",\"type\":\"uint256[2]\"}],\"name\":\"proveNonDeterministicPendingState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rollupVerifier\",\"outputs\":[{\"internalType\":\"contractIVerifierRollup\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"name\":\"sequencedBatches\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"accInputHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"sequencedTimestamp\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"previousLastBatchSequenced\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint16\",\"name\":\"newMultiplierBatchFee\",\"type\":\"uint16\"}],\"name\":\"setMultiplierBatchFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"newPendingStateTimeout\",\"type\":\"uint64\"}],\"name\":\"setPendingStateTimeout\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newTrustedAggregator\",\"type\":\"address\"}],\"name\":\"setTrustedAggregator\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"newTrustedAggregatorTimeout\",\"type\":\"uint64\"}],\"name\":\"setTrustedAggregatorTimeout\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newTrustedSequencer\",\"type\":\"address\"}],\"name\":\"setTrustedSequencer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"newTrustedSequencerURL\",\"type\":\"string\"}],\"name\":\"setTrustedSequencerURL\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"newVerifyBatchTimeTarget\",\"type\":\"uint64\"}],\"name\":\"setVerifyBatchTimeTarget\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newPendingAdmin\",\"type\":\"address\"}],\"name\":\"transferAdminRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"trustedAggregator\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"trustedAggregatorTimeout\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"trustedSequencer\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"trustedSequencerURL\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"verifyBatchTimeTarget\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"pendingStateNum\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"initNumBatch\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"finalNewBatch\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"newLocalExitRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"newStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[2]\",\"name\":\"proofA\",\"type\":\"uint256[2]\"},{\"internalType\":\"uint256[2][2]\",\"name\":\"proofB\",\"type\":\"uint256[2][2]\"},{\"internalType\":\"uint256[2]\",\"name\":\"proofC\",\"type\":\"uint256[2]\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"oldAccInputHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"newAccInputHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"commProof\",\"type\":\"bytes\"}],\"internalType\":\"structPolygonZkEVM.PackedHotShotParams\",\"name\":\"packedHotShotParams\",\"type\":\"tuple\"}],\"name\":\"verifyBatches\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"pendingStateNum\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"initNumBatch\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"finalNewBatch\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"newLocalExitRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"newStateRoot\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[2]\",\"name\":\"proofA\",\"type\":\"uint256[2]\"},{\"internalType\":\"uint256[2][2]\",\"name\":\"proofB\",\"type\":\"uint256[2][2]\"},{\"internalType\":\"uint256[2]\",\"name\":\"proofC\",\"type\":\"uint256[2]\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"oldAccInputHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"newAccInputHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"commProof\",\"type\":\"bytes\"}],\"internalType\":\"structPolygonZkEVM.PackedHotShotParams\",\"name\":\"packedHotShotParams\",\"type\":\"tuple\"}],\"name\":\"verifyBatchesTrustedAggregator\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]",
+ Bin: "0x6101606040523480156200001257600080fd5b5060405162003af238038062003af28339810160408190526200003591620000ac565b6001600160a01b0396871660c05294861660805292851660a05290841660e052909216610100526001600160401b039182166101205216610140526200014f565b6001600160a01b03811681146200008c57600080fd5b50565b80516001600160401b0381168114620000a757600080fd5b919050565b600080600080600080600060e0888a031215620000c857600080fd5b8751620000d58162000076565b6020890151909750620000e88162000076565b6040890151909650620000fb8162000076565b60608901519095506200010e8162000076565b6080890151909450620001218162000076565b92506200013160a089016200008f565b91506200014160c089016200008f565b905092959891949750929550565b60805160a05160c05160e0516101005161012051610140516138d1620002216000396000818161055101528181610a7101528181611a070152612b4101526000818161069c01528181610a500152612b200152600081816104b60152818161207f015261211e01526000818161064f01528181611abc01526123f30152600081816107a701528181610d1e0152818161149101528181611bd90152611e650152600081816108300152818161224001526126ce01526000818161074b01528181611092015261230d01526138d16000f3fe608060405234801561001057600080fd5b50600436106102ed5760003560e01c8063841b24d711610193578063c0ed84e0116100e4578063e11f3f1811610092578063e11f3f18146107fe578063e7a7ed0214610811578063e8bf92ed1461082b578063f14916d614610852578063f2fde38b14610865578063f851a44014610878578063f8b823e41461088b57600080fd5b8063c0ed84e01461076d578063c89e42df14610775578063cfa8ed4714610788578063d02103ca146107a2578063d2e129f9146107c9578063d939b315146107dc578063dbc16976146107f657600080fd5b8063a3c573eb11610141578063a3c573eb1461064a578063aba576f114610671578063ada8f91914610684578063adc879e914610697578063afd23cbe146106be578063b4d63f58146106e6578063b6b0b0971461074657600080fd5b8063841b24d7146105e15780638c3d7301146105fb5780638da5cb5b1461060357806399f5634e146106145780639c9f3dfe1461061c5780639f0d039d1461062f578063a066215c1461063757600080fd5b80634a1a89a71161024d5780636ff512cc116101fb5780636ff512cc146104f8578063715018a61461050b5780637215541a1461051357806375c508b3146105265780637fcb365314610539578063831c7ead1461054c578063837a47381461057357600080fd5b80634a1a89a71461043b5780634a910e6a146104555780635392c5e014610468578063542028d514610496578063590ae2111461049e5780636375e13c146104b15780636b8616ce146104d857600080fd5b806326782247116102aa578063267822471461039457806329878983146103b4578063383b3be8146103ce578063394218e9146103e1578063423fa856146103f4578063456052671461040e578063458c04771461042857600080fd5b80630a0d9fbe146102f2578063107bf28c1461032757806315064c961461033c5780631816b7e51461035957806319d8ac611461036e578063220d789914610381575b600080fd5b606f5461030a9061010090046001600160401b031681565b6040516001600160401b0390911681526020015b60405180910390f35b61032f610894565b60405161031e9190612f01565b606f546103499060ff1681565b604051901515815260200161031e565b61036c610367366004612f1b565b610922565b005b60735461030a906001600160401b031681565b61032f61038f366004612f5b565b6109db565b607b546103a7906001600160a01b031681565b60405161031e9190612fa8565b6074546103a790600160401b90046001600160a01b031681565b6103496103dc366004612fbc565b610ac9565b61036c6103ef366004612fbc565b610b10565b60735461030a90600160401b90046001600160401b031681565b60735461030a90600160801b90046001600160401b031681565b60795461030a906001600160401b031681565b60795461030a90600160401b90046001600160401b031681565b61036c610463366004612fbc565b610bfe565b610488610476366004612fbc565b60756020526000908152604090205481565b60405190815260200161031e565b61032f610c6d565b61036c6104ac366004613116565b610c7a565b6103a77f000000000000000000000000000000000000000000000000000000000000000081565b6104886104e6366004612fbc565b60716020526000908152604090205481565b61036c6105063660046131ce565b610dce565b61036c610e4d565b61036c610521366004612fbc565b610e61565b61036c6105343660046131f7565b610f6e565b60745461030a906001600160401b031681565b61030a7f000000000000000000000000000000000000000000000000000000000000000081565b6105b6610581366004613295565b6078602052600090815260409020805460018201546002909201546001600160401b0380831693600160401b90930416919084565b604080516001600160401b03958616815294909316602085015291830152606082015260800161031e565b60795461030a90600160c01b90046001600160401b031681565b61036c611009565b6033546001600160a01b03166103a7565b61048861108d565b61036c61062a366004612fbc565b61119a565b607054610488565b61036c610645366004612fbc565b61128d565b6103a77f000000000000000000000000000000000000000000000000000000000000000081565b61036c61067f3660046132ae565b61133c565b61036c6106923660046131ce565b6115e8565b61030a7f000000000000000000000000000000000000000000000000000000000000000081565b606f546106d390600160481b900461ffff1681565b60405161ffff909116815260200161031e565b6107216106f4366004612fbc565b607260205260009081526040902080546001909101546001600160401b0380821691600160401b90041683565b604080519384526001600160401b03928316602085015291169082015260600161031e565b6103a77f000000000000000000000000000000000000000000000000000000000000000081565b61030a61165e565b61036c61078336600461338d565b6116ab565b606f546103a790600160581b90046001600160a01b031681565b6103a77f000000000000000000000000000000000000000000000000000000000000000081565b61036c6107d73660046133c1565b611712565b60795461030a90600160801b90046001600160401b031681565b61036c611a8f565b61036c61080c3660046131f7565b611b35565b60735461030a90600160c01b90046001600160401b031681565b6103a77f000000000000000000000000000000000000000000000000000000000000000081565b61036c6108603660046131ce565b611c90565b61036c6108733660046131ce565b611d0f565b607a546103a7906001600160a01b031681565b61048860705481565b607780546108a19061349f565b80601f01602080910402602001604051908101604052809291908181526020018280546108cd9061349f565b801561091a5780601f106108ef5761010080835404028352916020019161091a565b820191906000526020600020905b8154815290600101906020018083116108fd57829003601f168201915b505050505081565b607a546001600160a01b0316331461094d57604051634755657960e01b815260040160405180910390fd5b6103e88161ffff16108061096657506103ff8161ffff16115b1561098457604051630984a67960e31b815260040160405180910390fd5b606f805461ffff60481b1916600160481b61ffff8416908102919091179091556040519081527f7019933d795eba185c180209e8ae8bffbaa25bcef293364687702c31f4d302c5906020015b60405180910390a150565b6001600160401b038086166000818152607260205260408082205493881682529020546060929115801590610a0e575081155b15610a2c5760405163340c614f60e11b815260040160405180910390fd5b80610a4a576040516366385b5160e01b815260040160405180910390fd5b3385838a7f00000000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000089878d8f604051602001610aad9a999897969594939291906134d9565b6040516020818303038152906040529250505095945050505050565b6079546001600160401b0382811660009081526078602052604081205490924292610aff92600160801b90920481169116613562565b6001600160401b0316111592915050565b607a546001600160a01b03163314610b3b57604051634755657960e01b815260040160405180910390fd5b62093a806001600160401b0382161115610b6857604051631d06e87960e01b815260040160405180910390fd5b606f5460ff16610ba8576079546001600160401b03600160c01b909104811690821610610ba85760405163401636df60e01b815260040160405180910390fd5b607980546001600160c01b0316600160c01b6001600160401b038416908102919091179091556040519081527f1f4fa24c2e4bad19a7f3ec5c5485f70d46c798461c2e684f55bbd0fc661373a1906020016109d0565b607454600160401b90046001600160a01b03163314610c6157606f5460ff1615610c3b57604051630bc011ff60e21b815260040160405180910390fd5b610c4481610ac9565b610c6157604051630674f25160e11b815260040160405180910390fd5b610c6a81611d85565b50565b607680546108a19061349f565b607454600160401b90046001600160a01b03163314610cac5760405163bbcbbc0560e01b815260040160405180910390fd5b610cbd898989898989898989611f1f565b6074805467ffffffffffffffff19166001600160401b0389811691821790925560009081526075602052604090208690556079541615610d0857607980546001600160801b03191690555b6040516333d6247d60e01b8152600481018790527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906333d6247d90602401600060405180830381600087803b158015610d6a57600080fd5b505af1158015610d7e573d6000803e3d6000fd5b50506040518781523392506001600160401b038a1691507fcb339b570a7f0b25afa7333371ff11192092a0aeace12b671f4c212f2815c6fe906020015b60405180910390a3505050505050505050565b607a546001600160a01b03163314610df957604051634755657960e01b815260040160405180910390fd5b606f8054600160581b600160f81b031916600160581b6001600160a01b038416021790556040517ff54144f9611984021529f814a1cb6a41e22c58351510a0d9f7e822618abb9cc0906109d0908390612fa8565b610e55612345565b610e5f600061239f565b565b6033546001600160a01b03163314610f66576000610e7d61165e565b9050806001600160401b0316826001600160401b031611610eb15760405163812a372d60e01b815260040160405180910390fd5b6073546001600160401b03600160401b90910481169083161180610ef057506001600160401b0380831660009081526072602052604090206001015416155b15610f0e57604051632631700560e21b815260040160405180910390fd5b6001600160401b038083166000908152607260205260409020600101544291610f3c9162093a809116613562565b6001600160401b03161115610f645760405163692baaad60e11b815260040160405180910390fd5b505b610c6a6123f1565b606f5460ff1615610f9257604051630bc011ff60e21b815260040160405180910390fd5b610fa389898989898989898961246c565b6001600160401b0386166000908152607560209081526040918290205482519081529081018690527f1f44c21118c4603cfb4e1b621dbcfa2b73efcececee2b99b620b2953d33a7010910160405180910390a1610ffe6123f1565b505050505050505050565b607b546001600160a01b031633146110345760405163d1ec4b2360e01b815260040160405180910390fd5b607b54607a80546001600160a01b0319166001600160a01b0390921691821790556040517f056dc487bbf0795d0bbb1b4f0af523a855503cff740bfb4d5475f7a90c091e8e9161108391612fa8565b60405180910390a1565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231306040518263ffffffff1660e01b81526004016110dc9190612fa8565b602060405180830381865afa1580156110f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061111d9190613589565b9050600061112961165e565b6073546001600160401b03600160401b820481169161115991600160801b8204811691600160c01b9004166135a2565b6111639190613562565b61116d91906135a2565b6001600160401b03169050806000036111895760009250505090565b61119381836135d8565b9250505090565b607a546001600160a01b031633146111c557604051634755657960e01b815260040160405180910390fd5b62093a806001600160401b03821611156111f257604051630cc9650760e41b815260040160405180910390fd5b606f5460ff16611232576079546001600160401b03600160801b9091048116908216106112325760405163048a05a960e41b815260040160405180910390fd5b6079805467ffffffffffffffff60801b1916600160801b6001600160401b038416908102919091179091556040519081527fc4121f4e22c69632ebb7cf1f462be0511dc034f999b52013eddfb24aab765c75906020016109d0565b607a546001600160a01b031633146112b857604051634755657960e01b815260040160405180910390fd5b62015180816001600160401b031611156112e557604051631c0cfbfd60e31b815260040160405180910390fd5b606f805468ffffffffffffffff0019166101006001600160401b038416908102919091179091556040519081527f1b023231a1ab6b5d93992f168fb44498e1a7e64cef58daff6f1c216de6a68c28906020016109d0565b606f5460ff161561136057604051630bc011ff60e21b815260040160405180910390fd5b6079546001600160401b03888116600090815260726020526040902060010154429261139792600160c01b90910481169116613562565b6001600160401b031611156113bf57604051638a0704d360e01b815260040160405180910390fd5b6103e86113cc89896135a2565b6001600160401b031611156113f457604051635acfba9d60e11b815260040160405180910390fd5b61140d89898989898989896114088a6135ec565b611f1f565b611416876127b0565b607954600160801b90046001600160401b03166000036114fa576074805467ffffffffffffffff19166001600160401b038981169182179092556000908152607560205260409020869055607954161561147b57607980546001600160801b03191690555b6040516333d6247d60e01b8152600481018790527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906333d6247d90602401600060405180830381600087803b1580156114dd57600080fd5b505af11580156114f1573d6000803e3d6000fd5b505050506115ab565b6115026129a4565b607980546001600160401b031690600061151b836135f8565b82546001600160401b039182166101009390930a9283029282021916919091179091556040805160808101825242831681528a831660208083019182528284018c8152606084018c8152607954871660009081526078909352949091209251835492518616600160401b026001600160801b03199093169516949094171781559151600183015551600290910155505b60405185815233906001600160401b038916907f9c72852172521097ba7e1482e6b44b351323df0155f97f4ea18fcec28e1f596690602001610dbb565b607a546001600160a01b0316331461161357604051634755657960e01b815260040160405180910390fd5b607b80546001600160a01b0319166001600160a01b0383161790556040517fa5b56b7906fd0a20e3f35120dd8343db1e12e037a6c90111c7e42885e82a1ce6906109d0908390612fa8565b6079546000906001600160401b03161561169b57506079546001600160401b03908116600090815260786020526040902054600160401b90041690565b506074546001600160401b031690565b607a546001600160a01b031633146116d657604051634755657960e01b815260040160405180910390fd5b60766116e2828261366c565b507f6b8f723a4c7a5335cafae8a598a0aa0301be1387c037dccc085b62add6448b20816040516109d09190612f01565b600054610100900460ff16158080156117325750600054600160ff909116105b8061174c5750303b15801561174c575060005460ff166001145b6117b45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff1916600117905580156117d7576000805461ff0019166101001790555b6117e460208801886131ce565b607a80546001600160a01b0319166001600160a01b039290921691909117905561181460408801602089016131ce565b606f80546001600160a01b0392909216600160581b02600160581b600160f81b031990921691909117905561184f60808801606089016131ce565b607480546001600160a01b0392909216600160401b02600160401b600160e01b03199092169190911790556000805260756020527ff9e3fbf150b7a0077118526f473c53cb4734f166167e2c6213e3567dd390b4ad86905560766118b3868261366c565b5060776118c0858261366c565b5062093a806118d56060890160408a01612fbc565b6001600160401b031611156118fd57604051630cc9650760e41b815260040160405180910390fd5b61190d6060880160408901612fbc565b607980546001600160401b0392909216600160801b0267ffffffffffffffff60801b1990921691909117905562093a8061194d60a0890160808a01612fbc565b6001600160401b0316111561197557604051631d06e87960e01b815260040160405180910390fd5b61198560a0880160808901612fbc565b607980546001600160c01b0316600160c01b6001600160401b039390931692909202919091179055670de0b6b3a7640000607055606f80546affffffffffffffffffff0019166a03ea0000000000000708001790556119e2612a48565b7fed7be53c9f1a96a481223b15568a5b1a475e01a74b347d6ca187c8bf0c078cd660007f00000000000000000000000000000000000000000000000000000000000000008585604051611a38949392919061372b565b60405180910390a18015611a86576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b607a546001600160a01b03163314611aba57604051634755657960e01b815260040160405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663dbc169766040518163ffffffff1660e01b8152600401600060405180830381600087803b158015611b1557600080fd5b505af1158015611b29573d6000803e3d6000fd5b50505050610e5f612abc565b607454600160401b90046001600160a01b03163314611b675760405163bbcbbc0560e01b815260040160405180910390fd5b611b7889898989898989898961246c565b6074805467ffffffffffffffff19166001600160401b0388811691821790925560009081526075602052604090208590556079541615611bc357607980546001600160801b03191690555b6040516333d6247d60e01b8152600481018690527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906333d6247d90602401600060405180830381600087803b158015611c2557600080fd5b505af1158015611c39573d6000803e3d6000fd5b5050607980546001600160c01b031661127560c71b179055505060405184815233906001600160401b038816907fcc1b5520188bf1dd3e63f98164b577c4d75c11a619ddea692112f0d1aec4cf7290602001610dbb565b607a546001600160a01b03163314611cbb57604051634755657960e01b815260040160405180910390fd5b60748054600160401b600160e01b031916600160401b6001600160a01b038416021790556040517f61f8fec29495a3078e9271456f05fb0707fd4e41f7661865f80fc437d06681ca906109d0908390612fa8565b611d17612345565b6001600160a01b038116611d7c5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016117ab565b610c6a8161239f565b6079546001600160401b03600160401b9091048116908216111580611db857506079546001600160401b03908116908216115b15611dd65760405163d086b70b60e01b815260040160405180910390fd5b6001600160401b038181166000818152607860209081526040808320805460748054600160401b9283900490981667ffffffffffffffff19909816881790556002820154878652607590945293829020929092556079805467ffffffffffffffff60401b19169390940292909217909255600182015490516333d6247d60e01b815260048101919091529091907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906333d6247d90602401600060405180830381600087803b158015611eb157600080fd5b505af1158015611ec5573d6000803e3d6000fd5b50505050826001600160401b0316816001600160401b03167f328d3c6c0fd6f1be0515e422f2d87e59f25922cbc2233568515a0c4bc3f8510e8460020154604051611f1291815260200190565b60405180910390a3505050565b600080611f2a61165e565b90506001600160401b038b1615611fc0576079546001600160401b03908116908c161115611f6b5760405163bb14c20560e01b815260040160405180910390fd5b6001600160401b03808c1660009081526078602052604090206002810154815490945090918c8116600160401b9092041614611fba57604051632bd2e3e760e01b815260040160405180910390fd5b5061202c565b6001600160401b038a16600090815260756020526040902054915081611ff9576040516324cbdcc360e11b815260040160405180910390fd5b806001600160401b03168a6001600160401b0316111561202c57604051630f2b74f160e11b815260040160405180910390fd5b806001600160401b0316896001600160401b03161161205e5760405163b9b18f5760e01b815260040160405180910390fd5b6040516349ce899760e01b81526001600160401b038b1660048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906349ce899790602401602060405180830381865afa1580156120ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120f29190613589565b6040516349ce899760e01b81526001600160401b038c1660048201529091506000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906349ce899790602401602060405180830381865afa158015612165573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121899190613589565b9050600061219b858e8e8d8f8b612b14565b905060007f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f00000016002836040516121d09190613778565b602060405180830381855afa1580156121ed573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906122109190613589565b61221a9190613794565b6040805160208101825282815290516343753b4d60e01b81529192506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916343753b4d9161227a918e918e918e91906004016137a8565b602060405180830381865afa158015612297573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122bb9190613816565b6122d8576040516309bde33960e01b815260040160405180910390fd5b61233433868f6122e891906135a2565b6001600160401b03166122f961108d565b6123039190613838565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169190612b9c565b505050505050505050505050505050565b6033546001600160a01b03163314610e5f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016117ab565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316632072f6c56040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561244c57600080fd5b505af1158015612460573d6000803e3d6000fd5b50505050610e5f612bf3565b60006001600160401b038a1615612500576079546001600160401b03908116908b1611156124ad5760405163bb14c20560e01b815260040160405180910390fd5b506001600160401b03808a1660009081526078602052604090206002810154815490928a8116600160401b90920416146124fa57604051632bd2e3e760e01b815260040160405180910390fd5b50612568565b506001600160401b03871660009081526075602052604090205480612538576040516324cbdcc360e11b815260040160405180910390fd5b6074546001600160401b03908116908916111561256857604051630f2b74f160e11b815260040160405180910390fd5b6079546001600160401b03908116908a1611806125975750896001600160401b0316896001600160401b031611155b806125b857506079546001600160401b03600160401b9091048116908a1611155b156125d65760405163bfa7079f60e01b815260040160405180910390fd5b6001600160401b03898116600090815260786020526040902054600160401b900481169088161461261a576040516332a2a77f60e01b815260040160405180910390fd5b6000612629898989858a6109db565b905060007f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f000000160028360405161265e9190613778565b602060405180830381855afa15801561267b573d6000803e3d6000fd5b5050506040513d601f19601f8201168201806040525081019061269e9190613589565b6126a89190613794565b6040805160208101825282815290516343753b4d60e01b81529192506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916343753b4d91612708918a918a918a91906004016137a8565b602060405180830381865afa158015612725573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127499190613816565b612766576040516309bde33960e01b815260040160405180910390fd5b6001600160401b038b166000908152607860205260409020600201548790036127a25760405163a47276bd60e01b815260040160405180910390fd5b505050505050505050505050565b60006127ba61165e565b9050816000806127ca84846135a2565b606f546001600160401b0391821692506000916127ed916101009004164261384f565b90505b846001600160401b0316846001600160401b03161461288d576001600160401b038085166000908152607260205260409020600181015490911682101561288157600181015461285090600160401b90046001600160401b0316866135a2565b612863906001600160401b031685613862565b6001820154600160401b90046001600160401b031695509350612887565b5061288d565b506127f0565b6000612899848461384f565b9050808410156128f057838103600c81116128b457806128b7565b600c5b9050806103e80a81606f60099054906101000a900461ffff1661ffff160a60705402816128e6576128e66135c2565b0460705550612960565b808403600c81116129015780612904565b600c5b90506000816103e80a82606f60099054906101000a900461ffff1661ffff160a670de0b6b3a7640000028161293b5761293b6135c2565b04905080607054670de0b6b3a76400000281612959576129596135c2565b0460705550505b683635c9adc5dea00000607054111561298557683635c9adc5dea00000607055611a86565b633b9aca006070541015611a8657633b9aca0060705550505050505050565b6079546001600160401b03600160401b8204811691161115610e5f576079546000906129e190600160401b90046001600160401b03166001613562565b90506129ec81610ac9565b15610c6a57607954600090600290612a0e9084906001600160401b03166135a2565b612a189190613875565b612a229083613562565b9050612a2d81610ac9565b15612a3f57612a3b81611d85565b5050565b612a3b82611d85565b600054610100900460ff16612ab35760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016117ab565b610e5f3361239f565b606f5460ff16612adf57604051635386698160e01b815260040160405180910390fd5b606f805460ff191690556040517f1e5e34eea33501aecf2ebec9fe0e884a40804275ea7fe10b2ba084c8374308b390600090a1565b606033878360000151887f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000008988602001518a8d604051602001612b819a999897969594939291906134d9565b60405160208183030381529060405290509695505050505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052612bee908490612c4f565b505050565b606f5460ff1615612c1757604051630bc011ff60e21b815260040160405180910390fd5b606f805460ff191660011790556040517f2261efe5aef6fedc1fd1550b25facc9181745623049c7901287030b9ad1a549790600090a1565b6000612ca4826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316612d219092919063ffffffff16565b805190915015612bee5780806020019051810190612cc29190613816565b612bee5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016117ab565b6060612d308484600085612d38565b949350505050565b606082471015612d995760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016117ab565b600080866001600160a01b03168587604051612db59190613778565b60006040518083038185875af1925050503d8060008114612df2576040519150601f19603f3d011682016040523d82523d6000602084013e612df7565b606091505b5091509150612e0887838387612e13565b979650505050505050565b60608315612e82578251600003612e7b576001600160a01b0385163b612e7b5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016117ab565b5081612d30565b612d308383815115612e975781518083602001fd5b8060405162461bcd60e51b81526004016117ab9190612f01565b60005b83811015612ecc578181015183820152602001612eb4565b50506000910152565b60008151808452612eed816020860160208601612eb1565b601f01601f19169290920160200192915050565b602081526000612f146020830184612ed5565b9392505050565b600060208284031215612f2d57600080fd5b813561ffff81168114612f1457600080fd5b80356001600160401b0381168114612f5657600080fd5b919050565b600080600080600060a08688031215612f7357600080fd5b612f7c86612f3f565b9450612f8a60208701612f3f565b94979496505050506040830135926060810135926080909101359150565b6001600160a01b0391909116815260200190565b600060208284031215612fce57600080fd5b612f1482612f3f565b8060408101831015612fe857600080fd5b92915050565b8060808101831015612fe857600080fd5b634e487b7160e01b600052604160045260246000fd5b60006001600160401b038084111561302f5761302f612fff565b604051601f8501601f19908116603f0116810190828211818310171561305757613057612fff565b8160405280935085815286868601111561307057600080fd5b858560208301376000602087830101525050509392505050565b60006060828403121561309c57600080fd5b604051606081016001600160401b0382821081831117156130bf576130bf612fff565b81604052829350843583526020850135602084015260408501359150808211156130e857600080fd5b508301601f810185136130fa57600080fd5b61310985823560208401613015565b6040830152505092915050565b60008060008060008060008060006101c08a8c03121561313557600080fd5b61313e8a612f3f565b985061314c60208b01612f3f565b975061315a60408b01612f3f565b965060608a0135955060808a013594506131778b60a08c01612fd7565b93506131868b60e08c01612fee565b92506131968b6101608c01612fd7565b91506101a08a01356001600160401b038111156131b257600080fd5b6131be8c828d0161308a565b9150509295985092959850929598565b6000602082840312156131e057600080fd5b81356001600160a01b0381168114612f1457600080fd5b60008060008060008060008060006101c08a8c03121561321657600080fd5b61321f8a612f3f565b985061322d60208b01612f3f565b975061323b60408b01612f3f565b965061324960608b01612f3f565b955060808a0135945060a08a013593506132668b60c08c01612fd7565b92506132768b6101008c01612fee565b91506132868b6101808c01612fd7565b90509295985092959850929598565b6000602082840312156132a757600080fd5b5035919050565b60008060008060008060008060006101c08a8c0312156132cd57600080fd5b6132d68a612f3f565b98506132e460208b01612f3f565b97506132f260408b01612f3f565b965060608a0135955060808a0135945061330f8b60a08c01612fd7565b935061331e8b60e08c01612fee565b925061332e8b6101608c01612fd7565b91506101a08a01356001600160401b0381111561334a57600080fd5b8a016060818d03121561335c57600080fd5b809150509295985092959850929598565b600082601f83011261337e57600080fd5b612f1483833560208501613015565b60006020828403121561339f57600080fd5b81356001600160401b038111156133b557600080fd5b612d308482850161336d565b6000806000806000808688036101208112156133dc57600080fd5b60a08112156133ea57600080fd5b5086955060a0870135945060c08701356001600160401b038082111561340f57600080fd5b61341b8a838b0161336d565b955060e089013591508082111561343157600080fd5b61343d8a838b0161336d565b945061010089013591508082111561345457600080fd5b818901915089601f83011261346857600080fd5b81358181111561347757600080fd5b8a602082850101111561348957600080fd5b6020830194508093505050509295509295509295565b600181811c908216806134b357607f821691505b6020821081036134d357634e487b7160e01b600052602260045260246000fd5b50919050565b60609a909a1b6bffffffffffffffffffffffff19168a5260148a0198909852603489019690965260c094851b6001600160c01b031990811660548a015293851b8416605c89015291841b83166064880152606c870152608c86015260ac8501929092529190911b1660cc82015260d40190565b634e487b7160e01b600052601160045260246000fd5b6001600160401b038181168382160190808211156135825761358261354c565b5092915050565b60006020828403121561359b57600080fd5b5051919050565b6001600160401b038281168282160390808211156135825761358261354c565b634e487b7160e01b600052601260045260246000fd5b6000826135e7576135e76135c2565b500490565b6000612fe8368361308a565b60006001600160401b038083168181036136145761361461354c565b6001019392505050565b601f821115612bee57600081815260208120601f850160051c810160208610156136455750805b601f850160051c820191505b8181101561366457828155600101613651565b505050505050565b81516001600160401b0381111561368557613685612fff565b61369981613693845461349f565b8461361e565b602080601f8311600181146136ce57600084156136b65750858301515b600019600386901b1c1916600185901b178555613664565b600085815260208120601f198616915b828110156136fd578886015182559484019460019091019084016136de565b508582101561371b5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60006001600160401b03808716835280861660208401525060606040830152826060830152828460808401376000608084840101526080601f19601f850116830101905095945050505050565b6000825161378a818460208701612eb1565b9190910192915050565b6000826137a3576137a36135c2565b500690565b61012081016040808784378083018660005b60028110156137d7578382843791830191908301906001016137ba565b505050808560c08501375061010082018360005b600181101561380a5781518352602092830192909101906001016137eb565b50505095945050505050565b60006020828403121561382857600080fd5b81518015158114612f1457600080fd5b8082028115828204841417612fe857612fe861354c565b81810381811115612fe857612fe861354c565b80820180821115612fe857612fe861354c565b60006001600160401b038084168061388f5761388f6135c2565b9216919091049291505056fea2646970667358221220a5f22a17ed7cf1420048cd5b1cd0b8702e5e4386192f25025e0dd8ac6269e8ba64736f6c63430008110033",
}
// PolygonzkevmABI is the input ABI used to generate the binding from.
@@ -67,7 +59,7 @@ var PolygonzkevmABI = PolygonzkevmMetaData.ABI
var PolygonzkevmBin = PolygonzkevmMetaData.Bin
// DeployPolygonzkevm deploys a new Ethereum contract, binding an instance of Polygonzkevm to it.
-func DeployPolygonzkevm(auth *bind.TransactOpts, backend bind.ContractBackend, _globalExitRootManager common.Address, _matic common.Address, _rollupVerifier common.Address, _bridgeAddress common.Address, _chainID uint64, _forkID uint64) (common.Address, *types.Transaction, *Polygonzkevm, error) {
+func DeployPolygonzkevm(auth *bind.TransactOpts, backend bind.ContractBackend, _globalExitRootManager common.Address, _matic common.Address, _rollupVerifier common.Address, _bridgeAddress common.Address, _hotshotAddress common.Address, _chainID uint64, _forkID uint64) (common.Address, *types.Transaction, *Polygonzkevm, error) {
parsed, err := PolygonzkevmMetaData.GetAbi()
if err != nil {
return common.Address{}, nil, nil, err
@@ -76,7 +68,7 @@ func DeployPolygonzkevm(auth *bind.TransactOpts, backend bind.ContractBackend, _
return common.Address{}, nil, nil, errors.New("GetABI returned nil")
}
- address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(PolygonzkevmBin), backend, _globalExitRootManager, _matic, _rollupVerifier, _bridgeAddress, _chainID, _forkID)
+ address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(PolygonzkevmBin), backend, _globalExitRootManager, _matic, _rollupVerifier, _bridgeAddress, _hotshotAddress, _chainID, _forkID)
if err != nil {
return common.Address{}, nil, nil, err
}
@@ -597,6 +589,37 @@ func (_Polygonzkevm *PolygonzkevmCallerSession) GlobalExitRootManager() (common.
return _Polygonzkevm.Contract.GlobalExitRootManager(&_Polygonzkevm.CallOpts)
}
+// HotShot is a free data retrieval call binding the contract method 0x6375e13c.
+//
+// Solidity: function hotShot() view returns(address)
+func (_Polygonzkevm *PolygonzkevmCaller) HotShot(opts *bind.CallOpts) (common.Address, error) {
+ var out []interface{}
+ err := _Polygonzkevm.contract.Call(opts, &out, "hotShot")
+
+ if err != nil {
+ return *new(common.Address), err
+ }
+
+ out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address)
+
+ return out0, err
+
+}
+
+// HotShot is a free data retrieval call binding the contract method 0x6375e13c.
+//
+// Solidity: function hotShot() view returns(address)
+func (_Polygonzkevm *PolygonzkevmSession) HotShot() (common.Address, error) {
+ return _Polygonzkevm.Contract.HotShot(&_Polygonzkevm.CallOpts)
+}
+
+// HotShot is a free data retrieval call binding the contract method 0x6375e13c.
+//
+// Solidity: function hotShot() view returns(address)
+func (_Polygonzkevm *PolygonzkevmCallerSession) HotShot() (common.Address, error) {
+ return _Polygonzkevm.Contract.HotShot(&_Polygonzkevm.CallOpts)
+}
+
// IsEmergencyState is a free data retrieval call binding the contract method 0x15064c96.
//
// Solidity: function isEmergencyState() view returns(bool)
@@ -1437,27 +1460,6 @@ func (_Polygonzkevm *PolygonzkevmTransactorSession) DeactivateEmergencyState() (
return _Polygonzkevm.Contract.DeactivateEmergencyState(&_Polygonzkevm.TransactOpts)
}
-// ForceBatch is a paid mutator transaction binding the contract method 0xeaeb077b.
-//
-// Solidity: function forceBatch(bytes transactions, uint256 maticAmount) returns()
-func (_Polygonzkevm *PolygonzkevmTransactor) ForceBatch(opts *bind.TransactOpts, transactions []byte, maticAmount *big.Int) (*types.Transaction, error) {
- return _Polygonzkevm.contract.Transact(opts, "forceBatch", transactions, maticAmount)
-}
-
-// ForceBatch is a paid mutator transaction binding the contract method 0xeaeb077b.
-//
-// Solidity: function forceBatch(bytes transactions, uint256 maticAmount) returns()
-func (_Polygonzkevm *PolygonzkevmSession) ForceBatch(transactions []byte, maticAmount *big.Int) (*types.Transaction, error) {
- return _Polygonzkevm.Contract.ForceBatch(&_Polygonzkevm.TransactOpts, transactions, maticAmount)
-}
-
-// ForceBatch is a paid mutator transaction binding the contract method 0xeaeb077b.
-//
-// Solidity: function forceBatch(bytes transactions, uint256 maticAmount) returns()
-func (_Polygonzkevm *PolygonzkevmTransactorSession) ForceBatch(transactions []byte, maticAmount *big.Int) (*types.Transaction, error) {
- return _Polygonzkevm.Contract.ForceBatch(&_Polygonzkevm.TransactOpts, transactions, maticAmount)
-}
-
// Initialize is a paid mutator transaction binding the contract method 0xd2e129f9.
//
// Solidity: function initialize((address,address,uint64,address,uint64) initializePackedParameters, bytes32 genesisRoot, string _trustedSequencerURL, string _networkName, string _version) returns()
@@ -1542,48 +1544,6 @@ func (_Polygonzkevm *PolygonzkevmTransactorSession) RenounceOwnership() (*types.
return _Polygonzkevm.Contract.RenounceOwnership(&_Polygonzkevm.TransactOpts)
}
-// SequenceBatches is a paid mutator transaction binding the contract method 0x5e9145c9.
-//
-// Solidity: function sequenceBatches((bytes,bytes32,uint64,uint64)[] batches, address l2Coinbase) returns()
-func (_Polygonzkevm *PolygonzkevmTransactor) SequenceBatches(opts *bind.TransactOpts, batches []PolygonZkEVMBatchData, l2Coinbase common.Address) (*types.Transaction, error) {
- return _Polygonzkevm.contract.Transact(opts, "sequenceBatches", batches, l2Coinbase)
-}
-
-// SequenceBatches is a paid mutator transaction binding the contract method 0x5e9145c9.
-//
-// Solidity: function sequenceBatches((bytes,bytes32,uint64,uint64)[] batches, address l2Coinbase) returns()
-func (_Polygonzkevm *PolygonzkevmSession) SequenceBatches(batches []PolygonZkEVMBatchData, l2Coinbase common.Address) (*types.Transaction, error) {
- return _Polygonzkevm.Contract.SequenceBatches(&_Polygonzkevm.TransactOpts, batches, l2Coinbase)
-}
-
-// SequenceBatches is a paid mutator transaction binding the contract method 0x5e9145c9.
-//
-// Solidity: function sequenceBatches((bytes,bytes32,uint64,uint64)[] batches, address l2Coinbase) returns()
-func (_Polygonzkevm *PolygonzkevmTransactorSession) SequenceBatches(batches []PolygonZkEVMBatchData, l2Coinbase common.Address) (*types.Transaction, error) {
- return _Polygonzkevm.Contract.SequenceBatches(&_Polygonzkevm.TransactOpts, batches, l2Coinbase)
-}
-
-// SequenceForceBatches is a paid mutator transaction binding the contract method 0xd8d1091b.
-//
-// Solidity: function sequenceForceBatches((bytes,bytes32,uint64)[] batches) returns()
-func (_Polygonzkevm *PolygonzkevmTransactor) SequenceForceBatches(opts *bind.TransactOpts, batches []PolygonZkEVMForcedBatchData) (*types.Transaction, error) {
- return _Polygonzkevm.contract.Transact(opts, "sequenceForceBatches", batches)
-}
-
-// SequenceForceBatches is a paid mutator transaction binding the contract method 0xd8d1091b.
-//
-// Solidity: function sequenceForceBatches((bytes,bytes32,uint64)[] batches) returns()
-func (_Polygonzkevm *PolygonzkevmSession) SequenceForceBatches(batches []PolygonZkEVMForcedBatchData) (*types.Transaction, error) {
- return _Polygonzkevm.Contract.SequenceForceBatches(&_Polygonzkevm.TransactOpts, batches)
-}
-
-// SequenceForceBatches is a paid mutator transaction binding the contract method 0xd8d1091b.
-//
-// Solidity: function sequenceForceBatches((bytes,bytes32,uint64)[] batches) returns()
-func (_Polygonzkevm *PolygonzkevmTransactorSession) SequenceForceBatches(batches []PolygonZkEVMForcedBatchData) (*types.Transaction, error) {
- return _Polygonzkevm.Contract.SequenceForceBatches(&_Polygonzkevm.TransactOpts, batches)
-}
-
// SetMultiplierBatchFee is a paid mutator transaction binding the contract method 0x1816b7e5.
//
// Solidity: function setMultiplierBatchFee(uint16 newMultiplierBatchFee) returns()
@@ -1773,46 +1733,46 @@ func (_Polygonzkevm *PolygonzkevmTransactorSession) TransferOwnership(newOwner c
return _Polygonzkevm.Contract.TransferOwnership(&_Polygonzkevm.TransactOpts, newOwner)
}
-// VerifyBatches is a paid mutator transaction binding the contract method 0x4834a343.
+// VerifyBatches is a paid mutator transaction binding the contract method 0xaba576f1.
//
-// Solidity: function verifyBatches(uint64 pendingStateNum, uint64 initNumBatch, uint64 finalNewBatch, bytes32 newLocalExitRoot, bytes32 newStateRoot, uint256[2] proofA, uint256[2][2] proofB, uint256[2] proofC) returns()
-func (_Polygonzkevm *PolygonzkevmTransactor) VerifyBatches(opts *bind.TransactOpts, pendingStateNum uint64, initNumBatch uint64, finalNewBatch uint64, newLocalExitRoot [32]byte, newStateRoot [32]byte, proofA [2]*big.Int, proofB [2][2]*big.Int, proofC [2]*big.Int) (*types.Transaction, error) {
- return _Polygonzkevm.contract.Transact(opts, "verifyBatches", pendingStateNum, initNumBatch, finalNewBatch, newLocalExitRoot, newStateRoot, proofA, proofB, proofC)
+// Solidity: function verifyBatches(uint64 pendingStateNum, uint64 initNumBatch, uint64 finalNewBatch, bytes32 newLocalExitRoot, bytes32 newStateRoot, uint256[2] proofA, uint256[2][2] proofB, uint256[2] proofC, (bytes32,bytes32,bytes) packedHotShotParams) returns()
+func (_Polygonzkevm *PolygonzkevmTransactor) VerifyBatches(opts *bind.TransactOpts, pendingStateNum uint64, initNumBatch uint64, finalNewBatch uint64, newLocalExitRoot [32]byte, newStateRoot [32]byte, proofA [2]*big.Int, proofB [2][2]*big.Int, proofC [2]*big.Int, packedHotShotParams PolygonZkEVMPackedHotShotParams) (*types.Transaction, error) {
+ return _Polygonzkevm.contract.Transact(opts, "verifyBatches", pendingStateNum, initNumBatch, finalNewBatch, newLocalExitRoot, newStateRoot, proofA, proofB, proofC, packedHotShotParams)
}
-// VerifyBatches is a paid mutator transaction binding the contract method 0x4834a343.
+// VerifyBatches is a paid mutator transaction binding the contract method 0xaba576f1.
//
-// Solidity: function verifyBatches(uint64 pendingStateNum, uint64 initNumBatch, uint64 finalNewBatch, bytes32 newLocalExitRoot, bytes32 newStateRoot, uint256[2] proofA, uint256[2][2] proofB, uint256[2] proofC) returns()
-func (_Polygonzkevm *PolygonzkevmSession) VerifyBatches(pendingStateNum uint64, initNumBatch uint64, finalNewBatch uint64, newLocalExitRoot [32]byte, newStateRoot [32]byte, proofA [2]*big.Int, proofB [2][2]*big.Int, proofC [2]*big.Int) (*types.Transaction, error) {
- return _Polygonzkevm.Contract.VerifyBatches(&_Polygonzkevm.TransactOpts, pendingStateNum, initNumBatch, finalNewBatch, newLocalExitRoot, newStateRoot, proofA, proofB, proofC)
+// Solidity: function verifyBatches(uint64 pendingStateNum, uint64 initNumBatch, uint64 finalNewBatch, bytes32 newLocalExitRoot, bytes32 newStateRoot, uint256[2] proofA, uint256[2][2] proofB, uint256[2] proofC, (bytes32,bytes32,bytes) packedHotShotParams) returns()
+func (_Polygonzkevm *PolygonzkevmSession) VerifyBatches(pendingStateNum uint64, initNumBatch uint64, finalNewBatch uint64, newLocalExitRoot [32]byte, newStateRoot [32]byte, proofA [2]*big.Int, proofB [2][2]*big.Int, proofC [2]*big.Int, packedHotShotParams PolygonZkEVMPackedHotShotParams) (*types.Transaction, error) {
+ return _Polygonzkevm.Contract.VerifyBatches(&_Polygonzkevm.TransactOpts, pendingStateNum, initNumBatch, finalNewBatch, newLocalExitRoot, newStateRoot, proofA, proofB, proofC, packedHotShotParams)
}
-// VerifyBatches is a paid mutator transaction binding the contract method 0x4834a343.
+// VerifyBatches is a paid mutator transaction binding the contract method 0xaba576f1.
//
-// Solidity: function verifyBatches(uint64 pendingStateNum, uint64 initNumBatch, uint64 finalNewBatch, bytes32 newLocalExitRoot, bytes32 newStateRoot, uint256[2] proofA, uint256[2][2] proofB, uint256[2] proofC) returns()
-func (_Polygonzkevm *PolygonzkevmTransactorSession) VerifyBatches(pendingStateNum uint64, initNumBatch uint64, finalNewBatch uint64, newLocalExitRoot [32]byte, newStateRoot [32]byte, proofA [2]*big.Int, proofB [2][2]*big.Int, proofC [2]*big.Int) (*types.Transaction, error) {
- return _Polygonzkevm.Contract.VerifyBatches(&_Polygonzkevm.TransactOpts, pendingStateNum, initNumBatch, finalNewBatch, newLocalExitRoot, newStateRoot, proofA, proofB, proofC)
+// Solidity: function verifyBatches(uint64 pendingStateNum, uint64 initNumBatch, uint64 finalNewBatch, bytes32 newLocalExitRoot, bytes32 newStateRoot, uint256[2] proofA, uint256[2][2] proofB, uint256[2] proofC, (bytes32,bytes32,bytes) packedHotShotParams) returns()
+func (_Polygonzkevm *PolygonzkevmTransactorSession) VerifyBatches(pendingStateNum uint64, initNumBatch uint64, finalNewBatch uint64, newLocalExitRoot [32]byte, newStateRoot [32]byte, proofA [2]*big.Int, proofB [2][2]*big.Int, proofC [2]*big.Int, packedHotShotParams PolygonZkEVMPackedHotShotParams) (*types.Transaction, error) {
+ return _Polygonzkevm.Contract.VerifyBatches(&_Polygonzkevm.TransactOpts, pendingStateNum, initNumBatch, finalNewBatch, newLocalExitRoot, newStateRoot, proofA, proofB, proofC, packedHotShotParams)
}
-// VerifyBatchesTrustedAggregator is a paid mutator transaction binding the contract method 0xf020c93e.
+// VerifyBatchesTrustedAggregator is a paid mutator transaction binding the contract method 0x590ae211.
//
-// Solidity: function verifyBatchesTrustedAggregator(uint64 pendingStateNum, uint64 initNumBatch, uint64 finalNewBatch, bytes32 newLocalExitRoot, bytes32 newStateRoot, uint256[2] proofA, uint256[2][2] proofB, uint256[2] proofC) returns()
-func (_Polygonzkevm *PolygonzkevmTransactor) VerifyBatchesTrustedAggregator(opts *bind.TransactOpts, pendingStateNum uint64, initNumBatch uint64, finalNewBatch uint64, newLocalExitRoot [32]byte, newStateRoot [32]byte, proofA [2]*big.Int, proofB [2][2]*big.Int, proofC [2]*big.Int) (*types.Transaction, error) {
- return _Polygonzkevm.contract.Transact(opts, "verifyBatchesTrustedAggregator", pendingStateNum, initNumBatch, finalNewBatch, newLocalExitRoot, newStateRoot, proofA, proofB, proofC)
+// Solidity: function verifyBatchesTrustedAggregator(uint64 pendingStateNum, uint64 initNumBatch, uint64 finalNewBatch, bytes32 newLocalExitRoot, bytes32 newStateRoot, uint256[2] proofA, uint256[2][2] proofB, uint256[2] proofC, (bytes32,bytes32,bytes) packedHotShotParams) returns()
+func (_Polygonzkevm *PolygonzkevmTransactor) VerifyBatchesTrustedAggregator(opts *bind.TransactOpts, pendingStateNum uint64, initNumBatch uint64, finalNewBatch uint64, newLocalExitRoot [32]byte, newStateRoot [32]byte, proofA [2]*big.Int, proofB [2][2]*big.Int, proofC [2]*big.Int, packedHotShotParams PolygonZkEVMPackedHotShotParams) (*types.Transaction, error) {
+ return _Polygonzkevm.contract.Transact(opts, "verifyBatchesTrustedAggregator", pendingStateNum, initNumBatch, finalNewBatch, newLocalExitRoot, newStateRoot, proofA, proofB, proofC, packedHotShotParams)
}
-// VerifyBatchesTrustedAggregator is a paid mutator transaction binding the contract method 0xf020c93e.
+// VerifyBatchesTrustedAggregator is a paid mutator transaction binding the contract method 0x590ae211.
//
-// Solidity: function verifyBatchesTrustedAggregator(uint64 pendingStateNum, uint64 initNumBatch, uint64 finalNewBatch, bytes32 newLocalExitRoot, bytes32 newStateRoot, uint256[2] proofA, uint256[2][2] proofB, uint256[2] proofC) returns()
-func (_Polygonzkevm *PolygonzkevmSession) VerifyBatchesTrustedAggregator(pendingStateNum uint64, initNumBatch uint64, finalNewBatch uint64, newLocalExitRoot [32]byte, newStateRoot [32]byte, proofA [2]*big.Int, proofB [2][2]*big.Int, proofC [2]*big.Int) (*types.Transaction, error) {
- return _Polygonzkevm.Contract.VerifyBatchesTrustedAggregator(&_Polygonzkevm.TransactOpts, pendingStateNum, initNumBatch, finalNewBatch, newLocalExitRoot, newStateRoot, proofA, proofB, proofC)
+// Solidity: function verifyBatchesTrustedAggregator(uint64 pendingStateNum, uint64 initNumBatch, uint64 finalNewBatch, bytes32 newLocalExitRoot, bytes32 newStateRoot, uint256[2] proofA, uint256[2][2] proofB, uint256[2] proofC, (bytes32,bytes32,bytes) packedHotShotParams) returns()
+func (_Polygonzkevm *PolygonzkevmSession) VerifyBatchesTrustedAggregator(pendingStateNum uint64, initNumBatch uint64, finalNewBatch uint64, newLocalExitRoot [32]byte, newStateRoot [32]byte, proofA [2]*big.Int, proofB [2][2]*big.Int, proofC [2]*big.Int, packedHotShotParams PolygonZkEVMPackedHotShotParams) (*types.Transaction, error) {
+ return _Polygonzkevm.Contract.VerifyBatchesTrustedAggregator(&_Polygonzkevm.TransactOpts, pendingStateNum, initNumBatch, finalNewBatch, newLocalExitRoot, newStateRoot, proofA, proofB, proofC, packedHotShotParams)
}
-// VerifyBatchesTrustedAggregator is a paid mutator transaction binding the contract method 0xf020c93e.
+// VerifyBatchesTrustedAggregator is a paid mutator transaction binding the contract method 0x590ae211.
//
-// Solidity: function verifyBatchesTrustedAggregator(uint64 pendingStateNum, uint64 initNumBatch, uint64 finalNewBatch, bytes32 newLocalExitRoot, bytes32 newStateRoot, uint256[2] proofA, uint256[2][2] proofB, uint256[2] proofC) returns()
-func (_Polygonzkevm *PolygonzkevmTransactorSession) VerifyBatchesTrustedAggregator(pendingStateNum uint64, initNumBatch uint64, finalNewBatch uint64, newLocalExitRoot [32]byte, newStateRoot [32]byte, proofA [2]*big.Int, proofB [2][2]*big.Int, proofC [2]*big.Int) (*types.Transaction, error) {
- return _Polygonzkevm.Contract.VerifyBatchesTrustedAggregator(&_Polygonzkevm.TransactOpts, pendingStateNum, initNumBatch, finalNewBatch, newLocalExitRoot, newStateRoot, proofA, proofB, proofC)
+// Solidity: function verifyBatchesTrustedAggregator(uint64 pendingStateNum, uint64 initNumBatch, uint64 finalNewBatch, bytes32 newLocalExitRoot, bytes32 newStateRoot, uint256[2] proofA, uint256[2][2] proofB, uint256[2] proofC, (bytes32,bytes32,bytes) packedHotShotParams) returns()
+func (_Polygonzkevm *PolygonzkevmTransactorSession) VerifyBatchesTrustedAggregator(pendingStateNum uint64, initNumBatch uint64, finalNewBatch uint64, newLocalExitRoot [32]byte, newStateRoot [32]byte, proofA [2]*big.Int, proofB [2][2]*big.Int, proofC [2]*big.Int, packedHotShotParams PolygonZkEVMPackedHotShotParams) (*types.Transaction, error) {
+ return _Polygonzkevm.Contract.VerifyBatchesTrustedAggregator(&_Polygonzkevm.TransactOpts, pendingStateNum, initNumBatch, finalNewBatch, newLocalExitRoot, newStateRoot, proofA, proofB, proofC, packedHotShotParams)
}
// PolygonzkevmAcceptAdminRoleIterator is returned from FilterAcceptAdminRole and is used to iterate over the raw logs and unpacked data for AcceptAdminRole events raised by the Polygonzkevm contract.