some more vector utilities