using struct by_ref