add my own typeclasses