5:07pm EST updated code including comments final