added exercises and solutions