renamed pvector to vector and changed into generalized code