Self-verifiable contracts using solc and IPFS