Contracts, and code complexity