code will run faster if you use initialization lists rather than assignment.