uint8_t nsSampleWordBreaker::GetClass(char16_t c)
{
    // begin of the hack

    if (IS_ALPHABETICAL_SCRIPT(c))  {
        if(IS_ASCII(c))  {
            if(ASCII_IS_SPACE(c)) {
                return kWbClassSpace;
            } else if(ASCII_IS_ALPHA(c) || ASCII_IS_DIGIT(c)) {
                return kWbClassAlphaLetter;
            } else {
                return kWbClassPunct;
            }
        } else if(IS_THAI(c))	{
            return kWbClassThaiLetter;
        } else if (c == 0x00A0/*NBSP*/) {
            return kWbClassSpace;
        } else {
            return kWbClassAlphaLetter;
        }
    }  else {
        if(IS_HAN(c)) {
            return kWbClassHanLetter;
        } else if(IS_KATAKANA(c))   {
            return kWbClassKatakanaLetter;
        } else if(IS_HIRAGANA(c))   {
            return kWbClassHiraganaLetter;
        } else if(IS_HALFWIDTHKATAKANA(c))  {
            return kWbClassHWKatakanaLetter;
        } else  {
            return kWbClassAlphaLetter;
        }
    }
    return 0;
}
CPU_BOOLEAN  ASCII_IsSpace (CPU_CHAR  c)
{
    CPU_BOOLEAN  space;


    space = ASCII_IS_SPACE(c);

    return (space);
}