0

This my OPCODE:

 INIT: 
       PUSH 0x0a(10 OPCODES=10 bytes) = 600a
       PUSH 0x0c = 600c
       PUSH 0x00 = 6000
       CODECOPY - Where, current location of runtime code, size of runtime code = 39
       PUSH 0x0a = 600a
       PUSH 0x00  = 6000
       RETURN (position=0x00, value size=0x0a) = f3
         Result = 600a600c600039600a6000f3

 RUNTIME: 
       PUSH 0xfa = 60fa
       PUSH 0x80 = 6080
       MSTORE 0x80,0xfa = 53
       PUSH 0x20 = 6020
       PUSH 0x80 = 6080
       RETURN (0x80, 0x20) = f3
         Result = 60fa60805360206080f3

Contract deployment passes successfully, but when I submit the challenge it says I haven't solved it yet. Could somebody tell me where is the error in my OPCODE?

1 Answer 1

0

It looks like your bytecode is wrong since your contract returns

113078212145816597093331040047546785012958969400039613319782796882727665664000

when called.

To check, I deployed a contract

contract DeployBytecode {
    
    // Create contract from bytecode
    function deployBytecode(bytes memory bytecode) public returns (address) {
        address retval;
        assembly{
            mstore(0x0, bytecode)
            retval := create(0,0xa0, calldatasize)
        }
        return retval;
   }
}

and deployed your bytecode with it, then got the address back and use this

contract Answer {
    function whatIsTheMeaningOfLife() external view returns(uint){
    }
}

to call the whatIsTheMeaningOfLife() and get that huge number.

Hope this helps

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.