static mbstate_t mbstate = 0;
static mbstate_t mbstate;
size_t mbrtowc (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps){  static mbstate_t mbstate = 0;  if (!ps)    ps = &mbstate;  if (Charset_is_utf8)    return utf8rtowc (pwc, s, n, ps);  else  {    if (!s)    {      *ps = 0;      return 0;    }    if (!n)      return (size_t)-2;    if (pwc)      *pwc = (wchar_t)(unsigned char)*s;    return (*s != 0);  }}