use reference instead