Uses the new Vector<>. Code is more robust!