contract Contract {
function main() {
memory[0x40:0x60] = 0x80;
if (msg.data.length < 0x04) {
label_006D:
var var0 = 0x0075;
var var1 = 0x0201;
func_0576();
var1 = 0x0211;
var var2 = 0x020c;
var2 =
func_0651();
var temp0 = msg.data.length;
memory[0x00:0x00 + temp0] = msg.data[0x00:0x00 + temp0];
var temp1;
temp1, memory[0x00:0x00] = address(var2).delegatecall.gas(msg.gas)(memory[0x00:0x00 + msg.data.length]);
var temp2 = returndata.length;
memory[0x00:0x00 + temp2] = returndata[0x00:0x00 + temp2];
if (temp1 == 0x00) { revert(memory[0x00:0x00 + returndata.length]); }
else { return memory[0x00:0x00 + returndata.length]; }
} else {
var0 = msg.data[0x00:0x20] / 0x0100000000000000000000000000000000000000000000000000000000 & 0xffffffff;
if (var0 == 0x3659cfe6) {
// Dispatch table entry for
upgradeTo(address)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x00b8;
var2 = msg.data[0x04:0x24] & 0xffffffffffffffffffffffffffffffffffffffff;
upgradeTo(var2);
stop();
} else if (var0 == 0x4f1ef286) {
// Dispatch table entry for
upgradeToAndCall(address,bytes)
var1 = 0x0106;
var2 = msg.data[0x04:0x24] & 0xffffffffffffffffffffffffffffffffffffffff;
var temp3 = msg.data[0x24:0x44] + 0x04;
var var4 = msg.data[temp3:temp3 + 0x20];
var var3 = temp3 + 0x20;
upgradeToAndCall(var2, var3, var4);
stop();
} else if (var0 == 0x5c60da1b) {
// Dispatch table entry for
implementation()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x011d;
var1 =
implementation();
var temp4 = memory[0x40:0x60];
memory[temp4:temp4 + 0x20] = var1 & 0xffffffffffffffffffffffffffffffffffffffff;
var temp5 = memory[0x40:0x60];
return memory[temp5:temp5 + (temp4 + 0x20) - temp5];
} else if (var0 == 0x8f283970) {
// Dispatch table entry for
changeAdmin(address)
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x01a0;
var2 = msg.data[0x04:0x24] & 0xffffffffffffffffffffffffffffffffffffffff;
changeAdmin(var2);
stop();
} else if (var0 == 0xf851a440) {
// Dispatch table entry for
admin()
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x01b7;
var1 =
admin();
var temp6 = memory[0x40:0x60];
memory[temp6:temp6 + 0x20] = var1 & 0xffffffffffffffffffffffffffffffffffffffff;
var temp7 = memory[0x40:0x60];
return memory[temp7:temp7 + (temp6 + 0x20) - temp7];
} else { goto label_006D; }
}
}
function upgradeTo(var arg0) {
var var0 = 0x021b;
var0 =
func_06A8();
if (msg.sender != var0 & 0xffffffffffffffffffffffffffffffffffffffff) {
var0 = 0x0264;
var var1 = 0x0201;
func_0576();
var1 = 0x0211;
var var2 = 0x020c;
var2 =
func_0651();
var temp0 = msg.data.length;
memory[0x00:0x00 + temp0] = msg.data[0x00:0x00 + temp0];
var temp1;
temp1, memory[0x00:0x00] = address(var2).delegatecall.gas(msg.gas)(memory[0x00:0x00 + msg.data.length]);
var temp2 = returndata.length;
memory[0x00:0x00 + temp2] = returndata[0x00:0x00 + temp2];
if (temp1 == 0x00) { revert(memory[0x00:0x00 + returndata.length]); }
else { return memory[0x00:0x00 + returndata.length]; }
} else {
var0 = 0x0257;
var1 = arg0;
func_06D9(var1);
return;
}
}
function upgradeToAndCall(var arg0, var arg1, var arg2) {
var var0 = 0x0270;
var0 =
func_06A8();
if (msg.sender != var0 & 0xffffffffffffffffffffffffffffffffffffffff) {
var0 = 0x0302;
var var1 = 0x0201;
func_0576();
var1 = 0x0211;
var var2 = 0x020c;
var2 =
func_0651();
var temp0 = msg.data.length;
memory[0x00:0x00 + temp0] = msg.data[0x00:0x00 + temp0];
var temp1;
temp1, memory[0x00:0x00] = address(var2).delegatecall.gas(msg.gas)(memory[0x00:0x00 + msg.data.length]);
var temp2 = returndata.length;
memory[0x00:0x00 + temp2] = returndata[0x00:0x00 + temp2];
if (temp1 == 0x00) { revert(memory[0x00:0x00 + returndata.length]); }
else { return memory[0x00:0x00 + returndata.length]; }
} else {
var0 = 0x02ac;
var1 = arg0;
func_06D9(var1);
var temp3 = arg2;
var temp4 = memory[0x40:0x60];
memory[temp4:temp4 + temp3] = msg.data[arg1:arg1 + temp3];
var temp5 = memory[0x40:0x60];
var temp6;
temp6, memory[temp5:temp5 + 0x00] = address(address(this)).call.gas(msg.gas).value(msg.value)(memory[temp5:temp5 + (temp4 + temp3) - temp5]);
if (temp6) { return; }
else { revert(memory[0x00:0x00]); }
}
}
function implementation() returns (var r0) {
var var0 = 0x00;
var var1 = 0x0312;
var1 =
func_06A8();
if (msg.sender != var1 & 0xffffffffffffffffffffffffffffffffffffffff) {
var1 = 0x035c;
var var2 = 0x0201;
func_0576();
var2 = 0x0211;
var var3 = 0x020c;
var3 =
func_0651();
var temp0 = msg.data.length;
memory[0x00:0x00 + temp0] = msg.data[0x00:0x00 + temp0];
var temp1;
temp1, memory[0x00:0x00] = address(var3).delegatecall.gas(msg.gas)(memory[0x00:0x00 + msg.data.length]);
var temp2 = returndata.length;
memory[0x00:0x00 + temp2] = returndata[0x00:0x00 + temp2];
if (temp1 == 0x00) { revert(memory[0x00:0x00 + returndata.length]); }
else { return memory[0x00:0x00 + returndata.length]; }
} else {
var1 = 0x034d;
return
func_0651();
}
}
function changeAdmin(var arg0) {
var var0 = 0x0368;
var0 =
func_06A8();
if (msg.sender != var0 & 0xffffffffffffffffffffffffffffffffffffffff) {
var0 = 0x051a;
var var1 = 0x0201;
func_0576();
var1 = 0x0211;
var var2 = 0x020c;
var2 =
func_0651();
var temp0 = msg.data.length;
memory[0x00:0x00 + temp0] = msg.data[0x00:0x00 + temp0];
var temp1;
temp1, memory[0x00:0x00] = address(var2).delegatecall.gas(msg.gas)(memory[0x00:0x00 + msg.data.length]);
var temp2 = returndata.length;
memory[0x00:0x00 + temp2] = returndata[0x00:0x00 + temp2];
if (temp1 == 0x00) { revert(memory[0x00:0x00 + returndata.length]); }
else { return memory[0x00:0x00 + returndata.length]; }
} else if (arg0 & 0xffffffffffffffffffffffffffffffffffffffff != 0xffffffffffffffffffffffffffffffffffffffff & 0x00) {
var0 = 0x7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f;
var1 = 0x048f;
var1 =
func_06A8();
var temp3 = memory[0x40:0x60];
memory[temp3:temp3 + 0x20] = var1 & 0xffffffffffffffffffffffffffffffffffffffff;
var temp4 = temp3 + 0x20;
memory[temp4:temp4 + 0x20] = arg0 & 0xffffffffffffffffffffffffffffffffffffffff;
var temp5 = memory[0x40:0x60];
log(memory[temp5:temp5 + (temp4 + 0x20) - temp5], [stack[-2]]);
var0 = 0x050d;
var1 = arg0;
func_0748(var1);
return;
} else {
var temp6 = memory[0x40:0x60];
memory[temp6:temp6 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000;
var temp7 = temp6 + 0x04;
var temp8 = temp7 + 0x20;
memory[temp7:temp7 + 0x20] = temp8 - temp7;
memory[temp8:temp8 + 0x20] = 0x36;
var temp9 = temp8 + 0x20;
memory[temp9:temp9 + 0x20] = 0x43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f;
memory[temp9 + 0x20:temp9 + 0x20 + 0x20] = 0x787920746f20746865207a65726f206164647265737300000000000000000000;
var temp10 = memory[0x40:0x60];
revert(memory[temp10:temp10 + (temp9 + 0x40) - temp10]);
}
}
function admin() returns (var r0) {
var var0 = 0x00;
var var1 = 0x0528;
var1 =
func_06A8();
if (msg.sender != var1 & 0xffffffffffffffffffffffffffffffffffffffff) {
var1 = 0x0572;
var var2 = 0x0201;
func_0576();
var2 = 0x0211;
var var3 = 0x020c;
var3 =
func_0651();
var temp0 = msg.data.length;
memory[0x00:0x00 + temp0] = msg.data[0x00:0x00 + temp0];
var temp1;
temp1, memory[0x00:0x00] = address(var3).delegatecall.gas(msg.gas)(memory[0x00:0x00 + msg.data.length]);
var temp2 = returndata.length;
memory[0x00:0x00 + temp2] = returndata[0x00:0x00 + temp2];
if (temp1 == 0x00) { revert(memory[0x00:0x00 + returndata.length]); }
else { return memory[0x00:0x00 + returndata.length]; }
} else {
var1 = 0x0563;
return
func_06A8();
}
}
function func_0576() {
var var0 = 0x057e;
var0 =
func_06A8();
if (msg.sender != var0 & 0xffffffffffffffffffffffffffffffffffffffff) {
var0 = 0x064f;
func_0777();
return;
} else {
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000;
var temp1 = temp0 + 0x04;
var temp2 = temp1 + 0x20;
memory[temp1:temp1 + 0x20] = temp2 - temp1;
memory[temp2:temp2 + 0x20] = 0x32;
var temp3 = temp2 + 0x20;
memory[temp3:temp3 + 0x20] = 0x43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e206672;
memory[temp3 + 0x20:temp3 + 0x20 + 0x20] = 0x6f6d207468652070726f78792061646d696e0000000000000000000000000000;
var temp4 = memory[0x40:0x60];
revert(memory[temp4:temp4 + (temp3 + 0x40) - temp4]);
}
}
function func_0651() returns (var r0) { return storage[0x7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c3]; }
function func_06A8() returns (var r0) { return storage[0x10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b]; }
function func_06D9(var arg0) {
var var0 = 0x06e2;
var var1 = arg0;
func_0779(var1);
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = arg0 & 0xffffffffffffffffffffffffffffffffffffffff;
var temp1 = memory[0x40:0x60];
log(memory[temp1:temp1 + (temp0 + 0x20) - temp1], [0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b]);
}
function func_0748(var arg0) {
storage[0x10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b] = arg0;
}
function func_0777() {}
function func_0779(var arg0) {
var var0 = 0x00;
var var1 = 0x0784;
var var2 = arg0;
var1 =
func_084B(var2);
if (var1) {
storage[0x7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c3] = arg0;
return;
} else {
var temp0 = memory[0x40:0x60];
memory[temp0:temp0 + 0x20] = 0x08c379a000000000000000000000000000000000000000000000000000000000;
var temp1 = temp0 + 0x04;
var temp2 = temp1 + 0x20;
memory[temp1:temp1 + 0x20] = temp2 - temp1;
memory[temp2:temp2 + 0x20] = 0x3b;
var temp3 = temp2 + 0x20;
memory[temp3:temp3 + 0x20] = 0x43616e6e6f742073657420612070726f787920696d706c656d656e746174696f;
memory[temp3 + 0x20:temp3 + 0x20 + 0x20] = 0x6e20746f2061206e6f6e2d636f6e747261637420616464726573730000000000;
var temp4 = memory[0x40:0x60];
revert(memory[temp4:temp4 + (temp3 + 0x40) - temp4]);
}
}
function func_084B(var arg0) returns (var r0) { return address(arg0).code.length > 0x00; }
}
label_0000:
0000 60 PUSH1 0x80
0002 60 PUSH1 0x40
0004 52 MSTORE
0005 60 PUSH1 0x04
0007 36 CALLDATASIZE
0008 10 LT
0009 61 PUSH2 0x006d
000C 57 *JUMPI
label_000D:
000D 60 PUSH1 0x00
000F 35 CALLDATALOAD
0010 7C PUSH29 0x0100000000000000000000000000000000000000000000000000000000
002E 90 SWAP1
002F 04 DIV
0030 63 PUSH4 0xffffffff
0035 16 AND
0036 80 DUP1
0037 63 PUSH4 0x3659cfe6
003C 14 EQ
003D 61 PUSH2 0x0077
0040 57 *JUMPI
label_0041:
0041 80 DUP1
0042 63 PUSH4 0x4f1ef286
0047 14 EQ
0048 61 PUSH2 0x00ba
004B 57 *JUMPI
label_004C:
004C 80 DUP1
004D 63 PUSH4 0x5c60da1b
0052 14 EQ
0053 61 PUSH2 0x0108
0056 57 *JUMPI
label_0057:
0057 80 DUP1
0058 63 PUSH4 0x8f283970
005D 14 EQ
005E 61 PUSH2 0x015f
0061 57 *JUMPI
label_0062:
0062 80 DUP1
0063 63 PUSH4 0xf851a440
0068 14 EQ
0069 61 PUSH2 0x01a2
006C 57 *JUMPI
label_006D:
006D 5B JUMPDEST
006E 61 PUSH2 0x0075
0071 61 PUSH2 0x01f9
0074 56 *JUMP
0075 5B JUMPDEST
0076 00 *STOP
label_0077:
0077 5B JUMPDEST
0078 34 CALLVALUE
0079 80 DUP1
007A 15 ISZERO
007B 61 PUSH2 0x0083
007E 57 *JUMPI
label_007F:
007F 60 PUSH1 0x00
0081 80 DUP1
0082 FD *REVERT
label_0083:
0083 5B JUMPDEST
0084 50 POP
0085 61 PUSH2 0x00b8
0088 60 PUSH1 0x04
008A 80 DUP1
008B 36 CALLDATASIZE
008C 03 SUB
008D 81 DUP2
008E 01 ADD
008F 90 SWAP1
0090 80 DUP1
0091 80 DUP1
0092 35 CALLDATALOAD
0093 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00A8 16 AND
00A9 90 SWAP1
00AA 60 PUSH1 0x20
00AC 01 ADD
00AD 90 SWAP1
00AE 92 SWAP3
00AF 91 SWAP2
00B0 90 SWAP1
00B1 50 POP
00B2 50 POP
00B3 50 POP
00B4 61 PUSH2 0x0213
00B7 56 *JUMP
label_00B8:
00B8 5B JUMPDEST
00B9 00 *STOP
label_00BA:
00BA 5B JUMPDEST
00BB 61 PUSH2 0x0106
00BE 60 PUSH1 0x04
00C0 80 DUP1
00C1 36 CALLDATASIZE
00C2 03 SUB
00C3 81 DUP2
00C4 01 ADD
00C5 90 SWAP1
00C6 80 DUP1
00C7 80 DUP1
00C8 35 CALLDATALOAD
00C9 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00DE 16 AND
00DF 90 SWAP1
00E0 60 PUSH1 0x20
00E2 01 ADD
00E3 90 SWAP1
00E4 92 SWAP3
00E5 91 SWAP2
00E6 90 SWAP1
00E7 80 DUP1
00E8 35 CALLDATALOAD
00E9 90 SWAP1
00EA 60 PUSH1 0x20
00EC 01 ADD
00ED 90 SWAP1
00EE 82 DUP3
00EF 01 ADD
00F0 80 DUP1
00F1 35 CALLDATALOAD
00F2 90 SWAP1
00F3 60 PUSH1 0x20
00F5 01 ADD
00F6 91 SWAP2
00F7 90 SWAP1
00F8 91 SWAP2
00F9 92 SWAP3
00FA 93 SWAP4
00FB 91 SWAP2
00FC 92 SWAP3
00FD 93 SWAP4
00FE 90 SWAP1
00FF 50 POP
0100 50 POP
0101 50 POP
0102 61 PUSH2 0x0268
0105 56 *JUMP
label_0106:
0106 5B JUMPDEST
0107 00 *STOP
label_0108:
0108 5B JUMPDEST
0109 34 CALLVALUE
010A 80 DUP1
010B 15 ISZERO
010C 61 PUSH2 0x0114
010F 57 *JUMPI
label_0110:
0110 60 PUSH1 0x00
0112 80 DUP1
0113 FD *REVERT
label_0114:
0114 5B JUMPDEST
0115 50 POP
0116 61 PUSH2 0x011d
0119 61 PUSH2 0x0308
011C 56 *JUMP
label_011D:
011D 5B JUMPDEST
011E 60 PUSH1 0x40
0120 51 MLOAD
0121 80 DUP1
0122 82 DUP3
0123 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0138 16 AND
0139 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
014E 16 AND
014F 81 DUP2
0150 52 MSTORE
0151 60 PUSH1 0x20
0153 01 ADD
0154 91 SWAP2
0155 50 POP
0156 50 POP
0157 60 PUSH1 0x40
0159 51 MLOAD
015A 80 DUP1
015B 91 SWAP2
015C 03 SUB
015D 90 SWAP1
015E F3 *RETURN
label_015F:
015F 5B JUMPDEST
0160 34 CALLVALUE
0161 80 DUP1
0162 15 ISZERO
0163 61 PUSH2 0x016b
0166 57 *JUMPI
label_0167:
0167 60 PUSH1 0x00
0169 80 DUP1
016A FD *REVERT
label_016B:
016B 5B JUMPDEST
016C 50 POP
016D 61 PUSH2 0x01a0
0170 60 PUSH1 0x04
0172 80 DUP1
0173 36 CALLDATASIZE
0174 03 SUB
0175 81 DUP2
0176 01 ADD
0177 90 SWAP1
0178 80 DUP1
0179 80 DUP1
017A 35 CALLDATALOAD
017B 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0190 16 AND
0191 90 SWAP1
0192 60 PUSH1 0x20
0194 01 ADD
0195 90 SWAP1
0196 92 SWAP3
0197 91 SWAP2
0198 90 SWAP1
0199 50 POP
019A 50 POP
019B 50 POP
019C 61 PUSH2 0x0360
019F 56 *JUMP
label_01A0:
01A0 5B JUMPDEST
01A1 00 *STOP
label_01A2:
01A2 5B JUMPDEST
01A3 34 CALLVALUE
01A4 80 DUP1
01A5 15 ISZERO
01A6 61 PUSH2 0x01ae
01A9 57 *JUMPI
label_01AA:
01AA 60 PUSH1 0x00
01AC 80 DUP1
01AD FD *REVERT
label_01AE:
01AE 5B JUMPDEST
01AF 50 POP
01B0 61 PUSH2 0x01b7
01B3 61 PUSH2 0x051e
01B6 56 *JUMP
label_01B7:
01B7 5B JUMPDEST
01B8 60 PUSH1 0x40
01BA 51 MLOAD
01BB 80 DUP1
01BC 82 DUP3
01BD 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
01D2 16 AND
01D3 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
01E8 16 AND
01E9 81 DUP2
01EA 52 MSTORE
01EB 60 PUSH1 0x20
01ED 01 ADD
01EE 91 SWAP2
01EF 50 POP
01F0 50 POP
01F1 60 PUSH1 0x40
01F3 51 MLOAD
01F4 80 DUP1
01F5 91 SWAP2
01F6 03 SUB
01F7 90 SWAP1
01F8 F3 *RETURN
label_01F9:
01F9 5B JUMPDEST
01FA 61 PUSH2 0x0201
01FD 61 PUSH2 0x0576
0200 56 *JUMP
label_0201:
0201 5B JUMPDEST
0202 61 PUSH2 0x0211
0205 61 PUSH2 0x020c
0208 61 PUSH2 0x0651
020B 56 *JUMP
label_020C:
020C 5B JUMPDEST
020D 61 PUSH2 0x0682
0210 56 *JUMP
0211 5B JUMPDEST
0212 56 *JUMP
label_0213:
0213 5B JUMPDEST
0214 61 PUSH2 0x021b
0217 61 PUSH2 0x06a8
021A 56 *JUMP
label_021B:
021B 5B JUMPDEST
021C 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0231 16 AND
0232 33 CALLER
0233 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0248 16 AND
0249 14 EQ
024A 15 ISZERO
024B 61 PUSH2 0x025c
024E 57 *JUMPI
label_024F:
024F 61 PUSH2 0x0257
0252 81 DUP2
0253 61 PUSH2 0x06d9
0256 56 *JUMP
label_0257:
0257 5B JUMPDEST
0258 61 PUSH2 0x0265
025B 56 *JUMP
label_025C:
025C 5B JUMPDEST
025D 61 PUSH2 0x0264
0260 61 PUSH2 0x01f9
0263 56 *JUMP
0264 5B JUMPDEST
label_0265:
0265 5B JUMPDEST
0266 50 POP
0267 56 *JUMP
label_0268:
0268 5B JUMPDEST
0269 61 PUSH2 0x0270
026C 61 PUSH2 0x06a8
026F 56 *JUMP
label_0270:
0270 5B JUMPDEST
0271 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0286 16 AND
0287 33 CALLER
0288 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
029D 16 AND
029E 14 EQ
029F 15 ISZERO
02A0 61 PUSH2 0x02fa
02A3 57 *JUMPI
label_02A4:
02A4 61 PUSH2 0x02ac
02A7 83 DUP4
02A8 61 PUSH2 0x06d9
02AB 56 *JUMP
label_02AC:
02AC 5B JUMPDEST
02AD 30 ADDRESS
02AE 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
02C3 16 AND
02C4 34 CALLVALUE
02C5 83 DUP4
02C6 83 DUP4
02C7 60 PUSH1 0x40
02C9 51 MLOAD
02CA 80 DUP1
02CB 83 DUP4
02CC 83 DUP4
02CD 80 DUP1
02CE 82 DUP3
02CF 84 DUP5
02D0 37 CALLDATACOPY
02D1 82 DUP3
02D2 01 ADD
02D3 91 SWAP2
02D4 50 POP
02D5 50 POP
02D6 92 SWAP3
02D7 50 POP
02D8 50 POP
02D9 50 POP
02DA 60 PUSH1 0x00
02DC 60 PUSH1 0x40
02DE 51 MLOAD
02DF 80 DUP1
02E0 83 DUP4
02E1 03 SUB
02E2 81 DUP2
02E3 85 DUP6
02E4 87 DUP8
02E5 5A GAS
02E6 F1 CALL
02E7 92 SWAP3
02E8 50 POP
02E9 50 POP
02EA 50 POP
02EB 15 ISZERO
02EC 15 ISZERO
02ED 61 PUSH2 0x02f5
02F0 57 *JUMPI
label_02F1:
02F1 60 PUSH1 0x00
02F3 80 DUP1
02F4 FD *REVERT
label_02F5:
02F5 5B JUMPDEST
02F6 61 PUSH2 0x0303
02F9 56 *JUMP
label_02FA:
02FA 5B JUMPDEST
02FB 61 PUSH2 0x0302
02FE 61 PUSH2 0x01f9
0301 56 *JUMP
0302 5B JUMPDEST
label_0303:
0303 5B JUMPDEST
0304 50 POP
0305 50 POP
0306 50 POP
0307 56 *JUMP
label_0308:
0308 5B JUMPDEST
0309 60 PUSH1 0x00
030B 61 PUSH2 0x0312
030E 61 PUSH2 0x06a8
0311 56 *JUMP
label_0312:
0312 5B JUMPDEST
0313 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0328 16 AND
0329 33 CALLER
032A 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
033F 16 AND
0340 14 EQ
0341 15 ISZERO
0342 61 PUSH2 0x0354
0345 57 *JUMPI
label_0346:
0346 61 PUSH2 0x034d
0349 61 PUSH2 0x0651
034C 56 *JUMP
label_034D:
034D 5B JUMPDEST
034E 90 SWAP1
034F 50 POP
0350 61 PUSH2 0x035d
0353 56 *JUMP
label_0354:
0354 5B JUMPDEST
0355 61 PUSH2 0x035c
0358 61 PUSH2 0x01f9
035B 56 *JUMP
035C 5B JUMPDEST
label_035D:
035D 5B JUMPDEST
035E 90 SWAP1
035F 56 *JUMP
label_0360:
0360 5B JUMPDEST
0361 61 PUSH2 0x0368
0364 61 PUSH2 0x06a8
0367 56 *JUMP
label_0368:
0368 5B JUMPDEST
0369 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
037E 16 AND
037F 33 CALLER
0380 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0395 16 AND
0396 14 EQ
0397 15 ISZERO
0398 61 PUSH2 0x0512
039B 57 *JUMPI
label_039C:
039C 60 PUSH1 0x00
039E 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
03B3 16 AND
03B4 81 DUP2
03B5 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
03CA 16 AND
03CB 14 EQ
03CC 15 ISZERO
03CD 15 ISZERO
03CE 15 ISZERO
03CF 61 PUSH2 0x0466
03D2 57 *JUMPI
label_03D3:
03D3 60 PUSH1 0x40
03D5 51 MLOAD
03D6 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
03F7 81 DUP2
03F8 52 MSTORE
03F9 60 PUSH1 0x04
03FB 01 ADD
03FC 80 DUP1
03FD 80 DUP1
03FE 60 PUSH1 0x20
0400 01 ADD
0401 82 DUP3
0402 81 DUP2
0403 03 SUB
0404 82 DUP3
0405 52 MSTORE
0406 60 PUSH1 0x36
0408 81 DUP2
0409 52 MSTORE
040A 60 PUSH1 0x20
040C 01 ADD
040D 80 DUP1
040E 7F PUSH32 0x43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f
042F 81 DUP2
0430 52 MSTORE
0431 60 PUSH1 0x20
0433 01 ADD
0434 7F PUSH32 0x787920746f20746865207a65726f206164647265737300000000000000000000
0455 81 DUP2
0456 52 MSTORE
0457 50 POP
0458 60 PUSH1 0x40
045A 01 ADD
045B 91 SWAP2
045C 50 POP
045D 50 POP
045E 60 PUSH1 0x40
0460 51 MLOAD
0461 80 DUP1
0462 91 SWAP2
0463 03 SUB
0464 90 SWAP1
0465 FD *REVERT
label_0466:
0466 5B JUMPDEST
0467 7F PUSH32 0x7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f
0488 61 PUSH2 0x048f
048B 61 PUSH2 0x06a8
048E 56 *JUMP
label_048F:
048F 5B JUMPDEST
0490 82 DUP3
0491 60 PUSH1 0x40
0493 51 MLOAD
0494 80 DUP1
0495 83 DUP4
0496 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
04AB 16 AND
04AC 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
04C1 16 AND
04C2 81 DUP2
04C3 52 MSTORE
04C4 60 PUSH1 0x20
04C6 01 ADD
04C7 82 DUP3
04C8 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
04DD 16 AND
04DE 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
04F3 16 AND
04F4 81 DUP2
04F5 52 MSTORE
04F6 60 PUSH1 0x20
04F8 01 ADD
04F9 92 SWAP3
04FA 50 POP
04FB 50 POP
04FC 50 POP
04FD 60 PUSH1 0x40
04FF 51 MLOAD
0500 80 DUP1
0501 91 SWAP2
0502 03 SUB
0503 90 SWAP1
0504 A1 LOG1
0505 61 PUSH2 0x050d
0508 81 DUP2
0509 61 PUSH2 0x0748
050C 56 *JUMP
label_050D:
050D 5B JUMPDEST
050E 61 PUSH2 0x051b
0511 56 *JUMP
label_0512:
0512 5B JUMPDEST
0513 61 PUSH2 0x051a
0516 61 PUSH2 0x01f9
0519 56 *JUMP
051A 5B JUMPDEST
label_051B:
051B 5B JUMPDEST
051C 50 POP
051D 56 *JUMP
label_051E:
051E 5B JUMPDEST
051F 60 PUSH1 0x00
0521 61 PUSH2 0x0528
0524 61 PUSH2 0x06a8
0527 56 *JUMP
label_0528:
0528 5B JUMPDEST
0529 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
053E 16 AND
053F 33 CALLER
0540 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0555 16 AND
0556 14 EQ
0557 15 ISZERO
0558 61 PUSH2 0x056a
055B 57 *JUMPI
label_055C:
055C 61 PUSH2 0x0563
055F 61 PUSH2 0x06a8
0562 56 *JUMP
label_0563:
0563 5B JUMPDEST
0564 90 SWAP1
0565 50 POP
0566 61 PUSH2 0x0573
0569 56 *JUMP
label_056A:
056A 5B JUMPDEST
056B 61 PUSH2 0x0572
056E 61 PUSH2 0x01f9
0571 56 *JUMP
0572 5B JUMPDEST
label_0573:
0573 5B JUMPDEST
0574 90 SWAP1
0575 56 *JUMP
label_0576:
0576 5B JUMPDEST
0577 61 PUSH2 0x057e
057A 61 PUSH2 0x06a8
057D 56 *JUMP
label_057E:
057E 5B JUMPDEST
057F 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0594 16 AND
0595 33 CALLER
0596 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
05AB 16 AND
05AC 14 EQ
05AD 15 ISZERO
05AE 15 ISZERO
05AF 15 ISZERO
05B0 61 PUSH2 0x0647
05B3 57 *JUMPI
label_05B4:
05B4 60 PUSH1 0x40
05B6 51 MLOAD
05B7 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
05D8 81 DUP2
05D9 52 MSTORE
05DA 60 PUSH1 0x04
05DC 01 ADD
05DD 80 DUP1
05DE 80 DUP1
05DF 60 PUSH1 0x20
05E1 01 ADD
05E2 82 DUP3
05E3 81 DUP2
05E4 03 SUB
05E5 82 DUP3
05E6 52 MSTORE
05E7 60 PUSH1 0x32
05E9 81 DUP2
05EA 52 MSTORE
05EB 60 PUSH1 0x20
05ED 01 ADD
05EE 80 DUP1
05EF 7F PUSH32 0x43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e206672
0610 81 DUP2
0611 52 MSTORE
0612 60 PUSH1 0x20
0614 01 ADD
0615 7F PUSH32 0x6f6d207468652070726f78792061646d696e0000000000000000000000000000
0636 81 DUP2
0637 52 MSTORE
0638 50 POP
0639 60 PUSH1 0x40
063B 01 ADD
063C 91 SWAP2
063D 50 POP
063E 50 POP
063F 60 PUSH1 0x40
0641 51 MLOAD
0642 80 DUP1
0643 91 SWAP2
0644 03 SUB
0645 90 SWAP1
0646 FD *REVERT
label_0647:
0647 5B JUMPDEST
0648 61 PUSH2 0x064f
064B 61 PUSH2 0x0777
064E 56 *JUMP
label_064F:
064F 5B JUMPDEST
0650 56 *JUMP
label_0651:
0651 5B JUMPDEST
0652 60 PUSH1 0x00
0654 80 DUP1
0655 7F PUSH32 0x7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c3
0676 60 PUSH1 0x01
0678 02 MUL
0679 90 SWAP1
067A 50 POP
067B 80 DUP1
067C 54 SLOAD
067D 91 SWAP2
067E 50 POP
067F 50 POP
0680 90 SWAP1
0681 56 *JUMP
label_0682:
0682 5B JUMPDEST
0683 36 CALLDATASIZE
0684 60 PUSH1 0x00
0686 80 DUP1
0687 37 CALLDATACOPY
0688 60 PUSH1 0x00
068A 80 DUP1
068B 36 CALLDATASIZE
068C 60 PUSH1 0x00
068E 84 DUP5
068F 5A GAS
0690 F4 DELEGATECALL
0691 3D RETURNDATASIZE
0692 60 PUSH1 0x00
0694 80 DUP1
0695 3E RETURNDATACOPY
0696 80 DUP1
0697 60 PUSH1 0x00
0699 81 DUP2
069A 14 EQ
069B 61 PUSH2 0x06a3
069E 57 *JUMPI
label_069F:
069F 3D RETURNDATASIZE
06A0 60 PUSH1 0x00
06A2 F3 *RETURN
label_06A3:
06A3 5B JUMPDEST
06A4 3D RETURNDATASIZE
06A5 60 PUSH1 0x00
06A7 FD *REVERT
label_06A8:
06A8 5B JUMPDEST
06A9 60 PUSH1 0x00
06AB 80 DUP1
06AC 7F PUSH32 0x10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b
06CD 60 PUSH1 0x01
06CF 02 MUL
06D0 90 SWAP1
06D1 50 POP
06D2 80 DUP1
06D3 54 SLOAD
06D4 91 SWAP2
06D5 50 POP
06D6 50 POP
06D7 90 SWAP1
06D8 56 *JUMP
label_06D9:
06D9 5B JUMPDEST
06DA 61 PUSH2 0x06e2
06DD 81 DUP2
06DE 61 PUSH2 0x0779
06E1 56 *JUMP
label_06E2:
06E2 5B JUMPDEST
06E3 7F PUSH32 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b
0704 81 DUP2
0705 60 PUSH1 0x40
0707 51 MLOAD
0708 80 DUP1
0709 82 DUP3
070A 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
071F 16 AND
0720 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0735 16 AND
0736 81 DUP2
0737 52 MSTORE
0738 60 PUSH1 0x20
073A 01 ADD
073B 91 SWAP2
073C 50 POP
073D 50 POP
073E 60 PUSH1 0x40
0740 51 MLOAD
0741 80 DUP1
0742 91 SWAP2
0743 03 SUB
0744 90 SWAP1
0745 A1 LOG1
0746 50 POP
0747 56 *JUMP
label_0748:
0748 5B JUMPDEST
0749 60 PUSH1 0x00
074B 7F PUSH32 0x10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b
076C 60 PUSH1 0x01
076E 02 MUL
076F 90 SWAP1
0770 50 POP
0771 81 DUP2
0772 81 DUP2
0773 55 SSTORE
0774 50 POP
0775 50 POP
0776 56 *JUMP
label_0777:
0777 5B JUMPDEST
0778 56 *JUMP
label_0779:
0779 5B JUMPDEST
077A 60 PUSH1 0x00
077C 61 PUSH2 0x0784
077F 82 DUP3
0780 61 PUSH2 0x084b
0783 56 *JUMP
label_0784:
0784 5B JUMPDEST
0785 15 ISZERO
0786 15 ISZERO
0787 61 PUSH2 0x081e
078A 57 *JUMPI
label_078B:
078B 60 PUSH1 0x40
078D 51 MLOAD
078E 7F PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
07AF 81 DUP2
07B0 52 MSTORE
07B1 60 PUSH1 0x04
07B3 01 ADD
07B4 80 DUP1
07B5 80 DUP1
07B6 60 PUSH1 0x20
07B8 01 ADD
07B9 82 DUP3
07BA 81 DUP2
07BB 03 SUB
07BC 82 DUP3
07BD 52 MSTORE
07BE 60 PUSH1 0x3b
07C0 81 DUP2
07C1 52 MSTORE
07C2 60 PUSH1 0x20
07C4 01 ADD
07C5 80 DUP1
07C6 7F PUSH32 0x43616e6e6f742073657420612070726f787920696d706c656d656e746174696f
07E7 81 DUP2
07E8 52 MSTORE
07E9 60 PUSH1 0x20
07EB 01 ADD
07EC 7F PUSH32 0x6e20746f2061206e6f6e2d636f6e747261637420616464726573730000000000
080D 81 DUP2
080E 52 MSTORE
080F 50 POP
0810 60 PUSH1 0x40
0812 01 ADD
0813 91 SWAP2
0814 50 POP
0815 50 POP
0816 60 PUSH1 0x40
0818 51 MLOAD
0819 80 DUP1
081A 91 SWAP2
081B 03 SUB
081C 90 SWAP1
081D FD *REVERT
label_081E:
081E 5B JUMPDEST
081F 7F PUSH32 0x7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c3
0840 60 PUSH1 0x01
0842 02 MUL
0843 90 SWAP1
0844 50 POP
0845 81 DUP2
0846 81 DUP2
0847 55 SSTORE
0848 50 POP
0849 50 POP
084A 56 *JUMP
label_084B:
084B 5B JUMPDEST
084C 60 PUSH1 0x00
084E 80 DUP1
084F 82 DUP3
0850 3B EXTCODESIZE
0851 90 SWAP1
0852 50 POP
0853 60 PUSH1 0x00
0855 81 DUP2
0856 11 GT
0857 91 SWAP2
0858 50 POP
0859 50 POP
085A 91 SWAP2
085B 90 SWAP1
085C 50 POP
085D 56 *JUMP
085E 00 *STOP
085F A1 LOG1
0860 65 PUSH6 0x627a7a723058
0867 20 SHA3
0868 A4 LOG4
0869 A5 A5
086A 47 SELFBALANCE
086B CF CF
086C C7 C7
086D 20 SHA3
086E 2C 2C
086F 5A GAS
0870 CA CA
0871 AA AA
0872 E7 E7
0873 4D 4D
0874 42 TIMESTAMP
0875 8E DUP15
0876 98 SWAP9
0877 8B DUP12
0878 C6 C6
0879 2A 2A
087A D5 D5
087B 02 MUL
087C 4E 4E
087D B0 PUSH
087E 16 AND
087F 55 SSTORE
0880 32 ORIGIN
0881 D3 D3
0882 A8 A8
0883 F9 F9
0884 1D SAR
0885 B4 B4
0886 ED ED
0887 24 24
0888 00 *STOP
0889 29 29