it is impossible to prove that a smart contract is secure