call-by-value-and-call-by-reference