Completed section 3.3.4