finished subsection 3.2.3