Working Program. Next step, change vectors for sets to improve
performance