public boolean isWordStart(char c)
  {
    return 
      ((c >= '\u0041') && (c <= '\u005a')) || 
      ((c >= '\u0061') && (c <= '\u007a')) || 
      ((c >= '\u00c0') && (c <= '\u00d6')) || 
      ((c >= '\u00d8') && (c <= '\u00f6')) || 
      ((c >= '\u00f8') && (c <= '\u00ff')) || 
      ((c >= '\u0100') && (c <= '\u1fff')) || 
      ((c >= '\u3040') && (c <= '\u318f')) || 
      ((c >= '\u3300') && (c <= '\u337f')) || 
      ((c >= '\u3400') && (c <= '\u3d2d')) || 
      ((c >= '\u4e00') && (c <= '\u9fff')) || (
      (c >= '\uf900') && (c <= '\ufaff'));
  }