in reply to Reference to a non-primitive (e.g. hash) local function variable is returned to the caller