vectorization added