change method to passed by pointer because of changing struct value in Add method

when I read this part it is very strange as in previous concept it tell me that if method passed by value it will not change the original struct value, so I assume it meant to be passed by pointer
I also found another place with this same thing so I create another PR with 2 commits