added typeclass example