Ex. 8.4 implemented.