in stage1, we should get isPrint and isUpper from Compat.Unicode, not Data.Char