working on vec operations