add pass by reference