I noticed a small error in my definition of max: > max Type x = x > max Kind Sort = Kind > max Kind _ = Kind > max Sort _ = Sort (max Kind Sort) must be Sort!