vector instead pointer