A comparative study of programmer-written and automatically inferred contracts | Synapse