...
exercise solutions moved to appendix