solidity program from scratch with full code