return values, and replace them with function argument declarations which the compiler move carefully checks.