Working A2. Need to finish pretty print.