general adaption to vector class