BCD

Tezos Contract Explorer
Search Networks Deploy
  • Home
  • /
  • Ghostnet
  • /
  • KT1C2Qz...ny9a
operations (1)Storage Code Interact Tokens Fork Statistics Details
Latest
​x
441
 
1
parameter (or
2
            (or (pair %cancel (map key_hash signature) (pair chain_id (pair nat nat)))
3
                (nat %execute))
4
            (or
5
              (pair %rotate (map key_hash signature)
6
                            (pair chain_id (pair nat (pair nat (list key)))))
7
              (pair %submit (map key_hash signature)
8
                            (pair chain_id (pair nat (lambda unit (list operation)))))));
9
storage (pair (pair (nat %operationId) (list %signers key))
10
              (pair (nat %threshold)
11
                    (pair
12
                      (big_map %timelock nat
13
                                         (pair timestamp (lambda unit (list operation))))
14
                      (nat %timelockSeconds))));
15
code { DUP ;
16
       CDR ;
17
       SWAP ;
18
       CAR ;
19
       IF_LEFT
20
         { IF_LEFT
21
             { DUP ;
22
               DUP ;
23
               CAR ;
24
               SWAP ;
25
               CDR ;
26
               DUP ;
27
               DUP ;
28
               CAR ;
29
               SWAP ;
30
               CDR ;
31
               DUP ;
32
               DUP ;
33
               CAR ;
34
               SWAP ;
35
               CDR ;
36
               CHAIN_ID ;
37
               PACK ;
38
               DIG 4 ;
39
               DUP ;
40
               DUG 5 ;
41
               PACK ;
42
               COMPARE ;
43
               EQ ;
44
               IF {} { PUSH string "BAD_CHAIN_ID" ; FAILWITH } ;
45
               PUSH nat 1 ;
46
               DIG 8 ;
47
               DUP ;
48
               DUG 9 ;
49
               CAR ;
50
               CAR ;
51
               ADD ;
52
               DIG 2 ;
53
               DUP ;
54
               DUG 3 ;
55
               COMPARE ;
56
               EQ ;
57
               IF {} { PUSH string "BAD_OP_ID" ; FAILWITH } ;
58
               PUSH nat 0 ;
59
               DIG 8 ;
60
               DUP ;
61
               DUG 9 ;
62
               CAR ;
63
               CDR ;
64
               ITER { DIG 7 ;
65
                      DUP ;
66
                      DUG 8 ;
67
                      SWAP ;
68
                      DUP ;
69
                      DUG 2 ;
70
                      HASH_KEY ;
71
                      MEM ;
72
                      IF
73
                        { DIG 6 ;
74
                          DUP ;
75
                          DUG 7 ;
76
                          PACK ;
77
                          DIG 8 ;
78
                          DUP ;
79
                          DUG 9 ;
80
                          DIG 2 ;
81
                          DUP ;
82
                          DUG 3 ;
83
                          HASH_KEY ;
84
                          GET ;
85
                          { IF_NONE { PUSH int 196 ; FAILWITH } {} } ;
86
                          DIG 2 ;
87
                          CHECK_SIGNATURE ;
88
                          IF {} { PUSH string "BAD_SIGNATURE" ; FAILWITH } ;
89
                          PUSH nat 1 ;
90
                          ADD }
91
                        { DROP } } ;
92
               DIG 8 ;
93
               DUP ;
94
               DUG 9 ;
95
               CDR ;
96
               CAR ;
97
               SWAP ;
98
               COMPARE ;
99
               GE ;
100
               IF
101
                 { SWAP ; DROP ; SWAP ; DROP ; SWAP ; DROP ; SWAP ; DROP ; SWAP ; DROP ; SWAP ; DROP }
102
                 { PUSH string "TOO_FEW_SIGS" ; FAILWITH } ;
103
               SWAP ;
104
               DUP ;
105
               CDR ;
106
               SWAP ;
107
               CAR ;
108
               DUP ;
109
               CDR ;
110
               SWAP ;
111
               CAR ;
112
               PUSH nat 1 ;
113
               ADD ;
114
               PAIR ;
115
               PAIR ;
116
               DUP ;
117
               CAR ;
118
               SWAP ;
119
               CDR ;
120
               DUP ;
121
               CAR ;
122
               SWAP ;
123
               CDR ;
124
               DUP ;
125
               CDR ;
126
               SWAP ;
127
               CAR ;
128
               NONE (pair timestamp (lambda unit (list operation))) ;
129
               DIG 5 ;
130
               UPDATE ;
131
               PAIR ;
132
               SWAP ;
133
               PAIR ;
134
               SWAP ;
135
               PAIR ;
136
               NIL operation }
137
             { SWAP ;
138
               DUP ;
139
               DUG 2 ;
140
               CDR ;
141
               CDR ;
142
               CAR ;
143
               SWAP ;
144
               DUP ;
145
               DUG 2 ;
146
               GET ;
147
               { IF_NONE { PUSH int 214 ; FAILWITH } {} } ;
148
               DUP ;
149
               CAR ;
150
               SWAP ;
151
               CDR ;
152
               NOW ;
153
               DIG 2 ;
154
               DUP ;
155
               DUG 3 ;
156
               DIG 5 ;
157
               DUP ;
158
               DUG 6 ;
159
               CDR ;
160
               CDR ;
161
               CDR ;
162
               INT ;
163
               ADD ;
164
               COMPARE ;
165
               LT ;
166
               IF { SWAP ; DROP } { PUSH string "TOO_EARLY" ; FAILWITH } ;
167
               DIG 2 ;
168
               DUP ;
169
               CAR ;
170
               SWAP ;
171
               CDR ;
172
               DUP ;
173
               CAR ;
174
               SWAP ;
175
               CDR ;
176
               DUP ;
177
               CDR ;
178
               SWAP ;
179
               CAR ;
180
               NONE (pair timestamp (lambda unit (list operation))) ;
181
               DIG 6 ;
182
               UPDATE ;
183
               PAIR ;
184
               SWAP ;
185
               PAIR ;
186
               SWAP ;
187
               PAIR ;
188
               SWAP ;
189
               NIL operation ;
190
               SWAP ;
191
               UNIT ;
192
               EXEC ;
193
               ITER { CONS } } }
194
         { IF_LEFT
195
             { DUP ;
196
               DUP ;
197
               CAR ;
198
               SWAP ;
199
               CDR ;
200
               DUP ;
201
               DUP ;
202
               CAR ;
203
               SWAP ;
204
               CDR ;
205
               DUP ;
206
               DUP ;
207
               CAR ;
208
               SWAP ;
209
               CDR ;
210
               CHAIN_ID ;
211
               PACK ;
212
               DIG 4 ;
213
               DUP ;
214
               DUG 5 ;
215
               PACK ;
216
               COMPARE ;
217
               EQ ;
218
               IF {} { PUSH string "BAD_CHAIN_ID" ; FAILWITH } ;
219
               PUSH nat 1 ;
220
               DIG 8 ;
221
               DUP ;
222
               DUG 9 ;
223
               CAR ;
224
               CAR ;
225
               ADD ;
226
               DIG 2 ;
227
               DUP ;
228
               DUG 3 ;
229
               COMPARE ;
230
               EQ ;
231
               IF {} { PUSH string "BAD_OP_ID" ; FAILWITH } ;
232
               PUSH nat 0 ;
233
               DIG 8 ;
234
               DUP ;
235
               DUG 9 ;
236
               CAR ;
237
               CDR ;
238
               ITER { DIG 7 ;
239
                      DUP ;
240
                      DUG 8 ;
241
                      SWAP ;
242
                      DUP ;
243
                      DUG 2 ;
244
                      HASH_KEY ;
245
                      MEM ;
246
                      IF
247
                        { DIG 6 ;
248
                          DUP ;
249
                          DUG 7 ;
250
                          PACK ;
251
                          DIG 8 ;
252
                          DUP ;
253
                          DUG 9 ;
254
                          DIG 2 ;
255
                          DUP ;
256
                          DUG 3 ;
257
                          HASH_KEY ;
258
                          GET ;
259
                          { IF_NONE { PUSH int 157 ; FAILWITH } {} } ;
260
                          DIG 2 ;
261
                          CHECK_SIGNATURE ;
262
                          IF {} { PUSH string "BAD_SIGNATURE" ; FAILWITH } ;
263
                          PUSH nat 1 ;
264
                          ADD }
265
                        { DROP } } ;
266
               DIG 8 ;
267
               DUP ;
268
               DUG 9 ;
269
               CDR ;
270
               CAR ;
271
               SWAP ;
272
               COMPARE ;
273
               GE ;
274
               IF
275
                 { SWAP ; DROP ; SWAP ; DROP ; SWAP ; DROP ; SWAP ; DROP ; SWAP ; DROP ; SWAP ; DROP }
276
                 { PUSH string "TOO_FEW_SIGS" ; FAILWITH } ;
277
               SWAP ;
278
               DUP ;
279
               CDR ;
280
               SWAP ;
281
               CAR ;
282
               DUP ;
283
               CDR ;
284
               SWAP ;
285
               CAR ;
286
               PUSH nat 1 ;
287
               ADD ;
288
               PAIR ;
289
               PAIR ;
290
               SWAP ;
291
               DUP ;
292
               CAR ;
293
               SWAP ;
294
               CDR ;
295
               DIG 2 ;
296
               DUP ;
297
               CAR ;
298
               SWAP ;
299
               CDR ;
300
               CDR ;
301
               DIG 3 ;
302
               PAIR ;
303
               SWAP ;
304
               PAIR ;
305
               DUP ;
306
               CDR ;
307
               SWAP ;
308
               CAR ;
309
               CAR ;
310
               DIG 2 ;
311
               SWAP ;
312
               PAIR ;
313
               PAIR }
314
             { DUP ;
315
               DUP ;
316
               CAR ;
317
               SWAP ;
318
               CDR ;
319
               DUP ;
320
               DUP ;
321
               CAR ;
322
               SWAP ;
323
               CDR ;
324
               DUP ;
325
               DUP ;
326
               CAR ;
327
               SWAP ;
328
               CDR ;
329
               CHAIN_ID ;
330
               PACK ;
331
               DIG 4 ;
332
               DUP ;
333
               DUG 5 ;
334
               PACK ;
335
               COMPARE ;
336
               EQ ;
337
               IF {} { PUSH string "BAD_CHAIN_ID" ; FAILWITH } ;
338
               PUSH nat 1 ;
339
               DIG 8 ;
340
               DUP ;
341
               DUG 9 ;
342
               CAR ;
343
               CAR ;
344
               ADD ;
345
               DIG 2 ;
346
               DUP ;
347
               DUG 3 ;
348
               COMPARE ;
349
               EQ ;
350
               IF {} { PUSH string "BAD_OP_ID" ; FAILWITH } ;
351
               PUSH nat 0 ;
352
               DIG 8 ;
353
               DUP ;
354
               DUG 9 ;
355
               CAR ;
356
               CDR ;
357
               ITER { DIG 7 ;
358
                      DUP ;
359
                      DUG 8 ;
360
                      SWAP ;
361
                      DUP ;
362
                      DUG 2 ;
363
                      HASH_KEY ;
364
                      MEM ;
365
                      IF
366
                        { DIG 6 ;
367
                          DUP ;
368
                          DUG 7 ;
369
                          PACK ;
370
                          DIG 8 ;
371
                          DUP ;
372
                          DUG 9 ;
373
                          DIG 2 ;
374
                          DUP ;
375
                          DUG 3 ;
376
                          HASH_KEY ;
377
                          GET ;
378
                          { IF_NONE { PUSH int 120 ; FAILWITH } {} } ;
379
                          DIG 2 ;
380
                          CHECK_SIGNATURE ;
381
                          IF {} { PUSH string "BAD_SIGNATURE" ; FAILWITH } ;
382
                          PUSH nat 1 ;
383
                          ADD }
384
                        { DROP } } ;
385
               DIG 8 ;
386
               DUP ;
387
               DUG 9 ;
388
               CDR ;
389
               CAR ;
390
               SWAP ;
391
               COMPARE ;
392
               GE ;
393
               IF
394
                 { SWAP ; DROP ; SWAP ; DROP ; SWAP ; DROP ; SWAP ; DROP ; SWAP ; DROP ; SWAP ; DROP }
395
                 { PUSH string "TOO_FEW_SIGS" ; FAILWITH } ;
396
               SWAP ;
397
               DUP ;
398
               CDR ;
399
               SWAP ;
400
               CAR ;
401
               DUP ;
402
               CDR ;
403
               SWAP ;
404
               CAR ;
405
               PUSH nat 1 ;
406
               ADD ;
407
               PAIR ;
408
               PAIR ;
409
               DUP ;
410
               DUG 2 ;
411
               DUP ;
412
               CAR ;
413
               SWAP ;
414
               CDR ;
415
               DUP ;
416
               CAR ;
417
               SWAP ;
418
               CDR ;
419
               DUP ;
420
               CDR ;
421
               SWAP ;
422
               CAR ;
423
               DIG 5 ;
424
               CAR ;
425
               CAR ;
426
               DIG 5 ;
427
               NOW ;
428
               PAIR ;
429
               SOME ;
430
               SWAP ;
431
               UPDATE ;
432
               PAIR ;
433
               SWAP ;
434
               PAIR ;
435
               SWAP ;
436
               PAIR } ;
437
           NIL operation } ;
438
       NIL operation ;
439
       SWAP ;
440
       ITER { CONS } ;
441
       PAIR }