up until Ex.6 (hspec), not finished ex.6 yet