Generalize a type signature a bit