Please dont use references for SGVector, you can do copy by value