switched from call by name to call by value