working on implementing sections 9, 15.5-15.7 of the specification