"Bad jump destination" is a generic error message that means the transaction has failed.
The exact error depends on the contract and the operation. You have to check the contract and the parameters of the operation you are trying to complete.
It looks like you have just under 10 coins, and tried to withdraw 11. Try withdrawing ~9.9999 instead.
Approach
"Bad Jump" usually means that the method called throw;
at some point, so let's try to find it.
From your Etherscan link, click the contract address, and then the [Contract Source] tab. Find the withdrawToken() method that the etherscan transaction page says you called:
function withdrawToken(address token, uint amount) {
if (token==0) throw;
if (tokens[token][msg.sender] < amount) throw;
...
}
token
was set to 0x8f3470a7388c05ee4e7af3d01d8c722b0ff52374
, so the first throw
isn't the problem.
The next line checks how many tokens you own to make sure you don't withdraw more than that. Let's find out how many you own.
msg.sender
was 0x253b8771fd0b2d6f4e7db5aaaee0ede207cb31ab
in the transaction you shared. We can look up the balance with that info in the MyEtherWallet Contracts tab.
Copy in the contract address from the Etherscan transaction page. Copy in the ABI from the Etherscan [Contract Source] tab. Copy in the token address from the first argument at the bottom of the Etherscan txn page. Copy in the owner address from the "From" field in the Etherscan txn page. Click the [Read] button. It should look like:
The hex value of that balance is (in ipython
):
In [1]: hex(9999925439648120384)
Out[1]: '0x8ac6df349a9e3e40'
Your original transaction requested a balance of 0x98a7d9b8314c0000
which is larger than the token balance. That would cause a throw
and the withdrawal to fail. Depending on how you input the withdrawal, you can try withdrawing your full amount as: 9999925439648120384
, 9.999925439648120384
, or 0x8ac6df349a9e3e40
.
Best Answer
I believe that the issue is that EqualToken assesses a fee for each transfer, so although you approved EtherDelta to take a certain number of tokens, you can actually only transfer that number of tokens less the fee, which is, I believe, 1%.
Based on your current balance and the required 1% fee, you should be able to transfer 29411.1564788 tokens to EtherDelta. Try again with that amount. (In case it makes things easier, using the 18 decimal places, that amount is
0x63a61c9ee7bae800000
in hex.)