contract Contract {
function main() {
var temp0 = msg.data.length;
memory[returndata.length:returndata.length + temp0] = msg.data[returndata.length:returndata.length + temp0];
var temp1 = returndata.length;
var temp2;
temp2, memory[returndata.length:returndata.length + returndata.length] = address(0xd631b04e8fdbe152ee4c05273588f444efdedfaf).delegatecall.gas(msg.gas)(memory[returndata.length:returndata.length + msg.data.length]);
var temp3 = returndata.length;
memory[temp1:temp1 + temp3] = returndata[temp1:temp1 + temp3];
var var1 = temp1;
var var0 = returndata.length;
if (temp2) { return memory[var1:var1 + var0]; }
else { revert(memory[var1:var1 + var0]); }
}
}