returned vector instead of list