refactor TH
avoid illegal repeated type variable issue

however, this makes our backend constraint different
Docekerfile: persistent user
fill out Key data family TH

works with mpsGeneric = False
unfortunately, doesn't compile with mpsGeneric = True