added remove_reference