started work on generic vector module