before typeclass 101