Trying to do type family version