Well that was weird, adding a type constraint to the conversion methods would case UHC not to evaluate the expression due to lack of an argument... bug in their Hindley-Milner?