generate vectors