[4] | 1 | #ifndef __WINE_TCHAR_H
|
---|
| 2 | #define __WINE_TCHAR_H
|
---|
| 3 |
|
---|
| 4 | #include "windef.h"
|
---|
| 5 |
|
---|
| 6 | #ifdef __cplusplus
|
---|
| 7 | extern "C" {
|
---|
| 8 | #endif
|
---|
| 9 |
|
---|
| 10 | /* FIXME: this should be in direct.h but since it's a standard C library include (on some systems)... */
|
---|
| 11 | #define _chdir chdir
|
---|
| 12 | #define _rmdir rmdir
|
---|
| 13 |
|
---|
[5148] | 14 | #ifndef __WIN32OS2__
|
---|
| 15 |
|
---|
[4] | 16 | /* FIXME: this should be in io.h but I believe it's a standard include on some systems... */
|
---|
| 17 | /* would need unistd.h */
|
---|
| 18 | #define _access access
|
---|
| 19 | /* would need sys/stat.h */
|
---|
| 20 | #define _chmod chmod
|
---|
| 21 | /* would need fcntl.h */
|
---|
| 22 | #define _creat creat
|
---|
| 23 | #define _open open
|
---|
| 24 | /* FIXME: we need _S_IWRITE, _O_CREAT ... */
|
---|
| 25 | /* FIXME: _fsopen is not implemented */
|
---|
| 26 | #define sopen _sopen
|
---|
| 27 | /* FIXME: _sopen is not implemented */
|
---|
| 28 |
|
---|
| 29 | /* FIXME: this should be in stdio.h but since it's a standard C library include... */
|
---|
| 30 | #define fgetchar getchar
|
---|
| 31 | #define fputchar putchar
|
---|
| 32 | #define _popen popen
|
---|
| 33 | #define _tempnam tempnam
|
---|
| 34 | #define _vsnprintf vsnprintf
|
---|
| 35 |
|
---|
| 36 | /* FIXME: this should be in stdlib.h but since it's a standard C library include... */
|
---|
| 37 | /* FIXME: itoa and ltoa are missing */
|
---|
| 38 | /* FIXME: _makepath is not implemented */
|
---|
| 39 | /* FIXME: _searchenv is not implemented */
|
---|
| 40 | /* FIXME: _splitpath is not implemented */
|
---|
| 41 |
|
---|
| 42 | /* FIXME: this should be in string.h but since it's a standard C library include... */
|
---|
| 43 | #define _stricmp strcasecmp
|
---|
| 44 | #define _strcmpi strcasecmp
|
---|
| 45 | #define strcmpi strcasecmp
|
---|
| 46 | #define _strnicmp strncasecmp
|
---|
| 47 | #define strnicmp strncasecmp
|
---|
| 48 | #define _strdup strdup
|
---|
| 49 | /* FIXME: stricoll is not implemented but strcasecmp is probably close enough in most cases */
|
---|
| 50 | #define _stricoll strcasecmp
|
---|
| 51 | #define stricoll _stricoll
|
---|
| 52 | #define strlwr _strlwr
|
---|
| 53 | char *_strlwr(char *string);
|
---|
| 54 | #define strnset _strnset
|
---|
| 55 | /* FIXME: _strnset is not implemented */
|
---|
| 56 | #define strrev _strrev
|
---|
| 57 | char *_strrev(char *string);
|
---|
| 58 | #define strset _strset
|
---|
| 59 | /* FIXME: _strset is not implemented */
|
---|
| 60 | #define strupr _strupr
|
---|
| 61 | char *_strupr(char *string);
|
---|
| 62 | #define ultoa _ultoa
|
---|
| 63 | /* FIXME: _ultoa is not implemented */
|
---|
| 64 |
|
---|
| 65 | /* FIXME: this should be in sys/stat.h but since it's a standard C library include... */
|
---|
| 66 | #define _stat stat
|
---|
| 67 |
|
---|
| 68 | /* FIXME: this should be in time.h but since it's a standard C library include... */
|
---|
| 69 | /* FIXME: _strdate is not implemented */
|
---|
| 70 | /* FIXME: _strtime is not implemented */
|
---|
| 71 |
|
---|
| 72 | /* FIXME: this should be in utime.h but since it's a standard C library include... */
|
---|
| 73 | #define _utime utime
|
---|
| 74 |
|
---|
[3850] | 75 | #endif //__WIN32OS2__
|
---|
[4] | 76 |
|
---|
| 77 | /*****************************************************************************
|
---|
| 78 | * tchar routines
|
---|
| 79 | */
|
---|
| 80 | #define _strdec(start,current) (start<current?(current)-1:NULL)
|
---|
| 81 | #define _strinc(current) ((current)+1)
|
---|
| 82 | /* FIXME: _strncnt ans strncnt are missing */
|
---|
| 83 | /* FIXME: _strspnp is not implemented */
|
---|
| 84 |
|
---|
| 85 |
|
---|
| 86 | /*****************************************************************************
|
---|
| 87 | * tchar mappings
|
---|
| 88 | */
|
---|
| 89 | #ifndef _UNICODE
|
---|
| 90 | #include <string.h>
|
---|
| 91 | #ifndef _MBCS
|
---|
| 92 | #define WINE_tchar_routine(std,mbcs,unicode) std
|
---|
| 93 | #else /* _MBCS defined */
|
---|
| 94 | #define WINE_tchar_routine(std,mbcs,unicode) mbcs
|
---|
| 95 | #endif
|
---|
| 96 | #else /* _UNICODE defined */
|
---|
| 97 | #define WINE_tchar_routine(std,mbcs,unicode) unicode
|
---|
| 98 | #endif
|
---|
| 99 |
|
---|
| 100 | #define WINE_tchar_true(a) (1)
|
---|
| 101 | #define WINE_tchar_false(a) (0)
|
---|
| 102 | #define WINE_tchar_tclen(a) (1)
|
---|
| 103 | #define WINE_tchar_tccpy(a,b) do { *(a)=*(b); } while (0)
|
---|
| 104 |
|
---|
| 105 | #define _fgettc WINE_tchar_routine(fgetc, fgetc, fgetwc)
|
---|
| 106 | #define _fgettchar WINE_tchar_routine(fgetchar, fgetchar, _fgetwchar)
|
---|
| 107 | #define _fgetts WINE_tchar_routine(fgets, fgets, fgetws)
|
---|
| 108 | #define _fputtc WINE_tchar_routine(fputc, fputc, fputwc)
|
---|
| 109 | #define _fputtchar WINE_tchar_routine(fputchar, fputchar, _fputwchar)
|
---|
| 110 | #define _fputts WINE_tchar_routine(fputs, fputs, fputws)
|
---|
| 111 | #define _ftprintf WINE_tchar_routine(fprintf, fprintf, fwprintf)
|
---|
| 112 | #define _ftscanf WINE_tchar_routine(fscanf, fscanf, fwscanf)
|
---|
| 113 | #define _gettc WINE_tchar_routine(getc, getc, getwc)
|
---|
| 114 | #define _gettchar WINE_tchar_routine(getchar, getchar, getwchar)
|
---|
| 115 | #define _getts WINE_tchar_routine(gets, gets, getws)
|
---|
| 116 | #define _isalnum WINE_tchar_routine(isalnum, _ismbcalnum, iswalnum)
|
---|
| 117 | #define _istalpha WINE_tchar_routine(isalpha, _ismbcalpha, iswalpha)
|
---|
| 118 | #define _istascii WINE_tchar_routine(__isascii, __isascii, iswascii)
|
---|
| 119 | #define _istcntrl WINE_tchar_routine(iscntrl, iscntrl, iswcntrl)
|
---|
| 120 | #define _istdigit WINE_tchar_routine(isdigit, _ismbcdigit, iswdigit)
|
---|
| 121 | #define _istgraph WINE_tchar_routine(isgraph, _ismbcgraph, iswgraph)
|
---|
| 122 | #define _istlead WINE_tchar_routine(WINE_tchar_false,_ismbblead, WINE_tchar_false)
|
---|
| 123 | #define _istleadbyte WINE_tchar_routine(WINE_tchar_false,isleadbyte, WINE_tchar_false)
|
---|
| 124 | #define _istlegal WINE_tchar_routine(WINE_tchar_true, _ismbclegal, WINE_tchar_true)
|
---|
| 125 | #define _istlower WINE_tchar_routine(islower, _ismbcslower,iswlower)
|
---|
| 126 | #define _istprint WINE_tchar_routine(isprint, _ismbcprint, iswprint)
|
---|
| 127 | #define _istpunct WINE_tchar_routine(ispunct, _ismbcpunct, iswpunct)
|
---|
| 128 | #define _istspace WINE_tchar_routine(isspace, _ismbcspace, iswspace)
|
---|
| 129 | #define _istupper WINE_tchar_routine(isupper, _ismbcupper, iswupper)
|
---|
| 130 | #define _istxdigit WINE_tchar_routine(isxdigit, isxdigit, iswxdigit)
|
---|
| 131 | #define _itot WINE_tchar_routine(_itoa, _itoa, _itow)
|
---|
| 132 | #define _ltot WINE_tchar_routine(_ltoa, _ltoa, _ltow)
|
---|
[21504] | 133 | #define _ultot WINE_tchar_routine(_ultoa, _ultoa, _ultow)
|
---|
| 134 | #define _i64tot WINE_tchar_routine(_i64toa, _i64toa, _i64tow)
|
---|
| 135 | #define _l64tot WINE_tchar_routine(_l64toa, _l64toa, _l64tow)
|
---|
| 136 | #define _ul64tot WINE_tchar_routine(_ul64toa, _ul64toa, _ul64tow)
|
---|
[4] | 137 | #define _puttc WINE_tchar_routine(putc, putc, putwc)
|
---|
| 138 | #define _puttchar WINE_tchar_routine(putchar, putchar, putwchar)
|
---|
| 139 | #define _putts WINE_tchar_routine(puts, puts, putws)
|
---|
| 140 | #define _tmain WINE_tchar_routine(main, main, wmain)
|
---|
| 141 | #define _sntprintf WINE_tchar_routine(sprintf, sprintf, swprintf)
|
---|
| 142 | #define _stprintf WINE_tchar_routine(sprintf, sprintf, swprintf)
|
---|
| 143 | #define _stscanf WINE_tchar_routine(sscanf, sscanf, swscanf)
|
---|
| 144 | #define _taccess WINE_tchar_routine(_access, _access, _waccess)
|
---|
| 145 | #define _tasctime WINE_tchar_routine(asctime, asctime, _wasctime)
|
---|
| 146 | #define _tccpy WINE_tchar_routine(WINE_tchar_tccpy,_mbccpy, WINE_tchar_tccpy)
|
---|
| 147 | #define _tchdir WINE_tchar_routine(_chdir, _chdir, _wchdir)
|
---|
| 148 | #define _tclen WINE_tchar_routine(WINE_tchar_tclen,_mbclen, WINE_tchar_tclen)
|
---|
| 149 | #define _tchmod WINE_tchar_routine(_chmod, _chmod, _wchmod)
|
---|
| 150 | #define _tcreat WINE_tchar_routine(_creat, _creat, _wcreat)
|
---|
| 151 | #define _tcscat WINE_tchar_routine(strcat, _mbscat, wcscat)
|
---|
| 152 | #define _tcschr WINE_tchar_routine(strchr, _mbschr, wcschr)
|
---|
| 153 | #define _tcsclen WINE_tchar_routine(strlen, _mbslen, wcslen)
|
---|
| 154 | #define _tcscmp WINE_tchar_routine(strcmp, _mbscmp, wcscmp)
|
---|
| 155 | #define _tcscoll WINE_tchar_routine(strcoll, _mbscoll, wcscoll)
|
---|
| 156 | #define _tcscpy WINE_tchar_routine(strcpy, _mbscpy, wcscpy)
|
---|
| 157 | #define _tcscspn WINE_tchar_routine(strcspn, _mbscspn, wcscspn)
|
---|
| 158 | #define _tcsdec WINE_tchar_routine(_strdec, _mbsdec, _wcsdec)
|
---|
| 159 | #define _tcsdup WINE_tchar_routine(_strdup, _mbsdup, _wcsdup)
|
---|
| 160 | #define _tcsftime WINE_tchar_routine(strftime, strftime, wcsftime)
|
---|
[3850] | 161 | #define _tcsicmp WINE_tchar_routine(stricmp, _mbsicmp, _wcsicmp)
|
---|
[4] | 162 | #define _tcsicoll WINE_tchar_routine(_stricoll, _stricoll, _wcsicoll)
|
---|
| 163 | #define _tcsinc WINE_tchar_routine(_strinc, _mbsinc, _wcsinc)
|
---|
| 164 | #define _tcslen WINE_tchar_routine(strlen, strlen, wcslen)
|
---|
| 165 | #define _tcslwr WINE_tchar_routine(_strlwr, _mbslwr, _wcslwr)
|
---|
| 166 | #define _tcsnbcnt WINE_tchar_routine(_strncnt, _mbsnbcnt, _wcnscnt)
|
---|
| 167 | #define _tcsncat WINE_tchar_routine(strncat, _mbsnbcat, wcsncat)
|
---|
| 168 | #define _tcsnccat WINE_tchar_routine(strncat, _mbsncat, wcsncat)
|
---|
| 169 | #define _tcsncmp WINE_tchar_routine(strncmp, _mbsnbcmp, wcsncmp)
|
---|
| 170 | #define _tcsnccmp WINE_tchar_routine(strncmp, _mbsncmp, wcsncmp)
|
---|
| 171 | #define _tcsnccnt WINE_tchar_routine(_strncnt, _mbsnccnt, _wcsncnt)
|
---|
| 172 | #define _tcsnccpy WINE_tchar_routine(strncpy, _mbsncpy, wcsncpy)
|
---|
| 173 | #define _tcsncicmp WINE_tchar_routine(_strnicmp, _mbsnicmp, _wcsnicmp)
|
---|
| 174 | #define _tcsncpy WINE_tchar_routine(strncpy, _mbsnbcpy, wcsncpy)
|
---|
| 175 | #define _tcsncset WINE_tchar_routine(_strnset, _mbsnset, _wcsnset)
|
---|
| 176 | #define _tcsnextc WINE_tchar_routine(_strnextc, _mbsnextc, _wcsnextc)
|
---|
| 177 | #define _tcsnicmp WINE_tchar_routine(_strnicmp, _mbsnicmp, _wcsnicmp)
|
---|
| 178 | #define _tcsnicoll WINE_tchar_routine(_strnicoll, _strnicoll _wcsnicoll)
|
---|
| 179 | #define _tcsninc WINE_tchar_routine(_strninc, _mbsninc, _wcsninc)
|
---|
| 180 | #define _tcsnccnt WINE_tchar_routine(_strncnt, _mbsnccnt, _wcsncnt)
|
---|
| 181 | #define _tcsnset WINE_tchar_routine(_strnset, _mbsnbset, _wcsnset)
|
---|
| 182 | #define _tcspbrk WINE_tchar_routine(strpbrk, _mbspbrk, wcspbrk)
|
---|
| 183 | #define _tcsspnp WINE_tchar_routine(_strspnp, _mbsspnp, _wcsspnp)
|
---|
| 184 | #define _tcsrchr WINE_tchar_routine(strrchr, _mbsrchr, wcsrchr)
|
---|
| 185 | #define _tcsrev WINE_tchar_routine(_strrev, _mbsrev, _wcsrev)
|
---|
| 186 | #define _tcsset WINE_tchar_routine(_strset, _mbsset, _wcsset)
|
---|
| 187 | #define _tcsspn WINE_tchar_routine(strspn, _mbsspn, wcsspn)
|
---|
| 188 | #define _tcsstr WINE_tchar_routine(strstr, _mbsstr, wcsstr)
|
---|
| 189 | #define _tcstod WINE_tchar_routine(strtod, strtod, wcstod)
|
---|
| 190 | #define _tcstok WINE_tchar_routine(strtok, _mbstok, wcstok)
|
---|
| 191 | #define _tcstol WINE_tchar_routine(strtol, strtol, wcstol)
|
---|
| 192 | #define _tcstoul WINE_tchar_routine(strtoul, strtoul, wcstoul)
|
---|
| 193 | #define _tcsupr WINE_tchar_routine(_strupr, _mbsupr, _wcsupr)
|
---|
| 194 | #define _tcsxfrm WINE_tchar_routine(strxfrm, strxfrm, wcsxfrm)
|
---|
| 195 | #define _tctime WINE_tchar_routine(ctime, ctime, _wctime)
|
---|
| 196 | #define _texecl WINE_tchar_routine(_execl, _execl, _wexecl)
|
---|
| 197 | #define _texecle WINE_tchar_routine(_execle, _execle, _wexecle)
|
---|
| 198 | #define _texeclp WINE_tchar_routine(_execlp, _execlp, _wexeclp)
|
---|
| 199 | #define _texeclpe WINE_tchar_routine(_execlpe, _execlpe, _wexeclpe)
|
---|
| 200 | #define _texecv WINE_tchar_routine(_execv, _execv, _wexecv)
|
---|
| 201 | #define _texecve WINE_tchar_routine(_execve, _execve, _wexecve)
|
---|
| 202 | #define _texecvp WINE_tchar_routine(_execvp, _execvp, _wexecvp)
|
---|
| 203 | #define _texecvpe WINE_tchar_routine(_execvpe, _execvpe, _wexecvpe)
|
---|
| 204 | #define _tfdopen WINE_tchar_routine(_fdopen, _fdopen, _wfdopen)
|
---|
| 205 | #define _tfindfirst WINE_tchar_routine(_findfirst, _findfirst, _wfindfirst)
|
---|
| 206 | #define _tfindnext WINE_tchar_routine(_findnext, _findnext, _wfindnext)
|
---|
| 207 | #define _tfopen WINE_tchar_routine(fopen, fopen, _wfopen)
|
---|
| 208 | #define _tfreopen WINE_tchar_routine(freopen, freopen, _wfreopen)
|
---|
| 209 | #define _tfsopen WINE_tchar_routine(_fsopen, _fsopen, _wfsopen)
|
---|
| 210 | #define _tfullpath WINE_tchar_routine(_fullpath, _fullpath, _wfullpath)
|
---|
| 211 | #define _tgetcwd WINE_tchar_routine(_getcwd, _getcwd, _wgetcwd)
|
---|
| 212 | #define _tgetenv WINE_tchar_routine(getenv, getenv, _wgetenv)
|
---|
| 213 | #define _tmain WINE_tchar_routine(main, main, wmain)
|
---|
| 214 | #define _tmakepath WINE_tchar_routine(_makepath, _makepath, _wmakepath)
|
---|
| 215 | #define _tmkdir WINE_tchar_routine(_mkdir, _mkdir, _wmkdir)
|
---|
| 216 | #define _tmktemp WINE_tchar_routine(_mktemp, _mktemp, _wmktemp)
|
---|
| 217 | #define _tperror WINE_tchar_routine(perror, perror, _wperror)
|
---|
| 218 | #define _topen WINE_tchar_routine(_open, _open, _wopen)
|
---|
| 219 | #define _totlower WINE_tchar_routine(tolower, _mbctolower, towlower)
|
---|
| 220 | #define _totupper WINE_tchar_routine(toupper, _mbctoupper, towupper)
|
---|
| 221 | #define _tpopen WINE_tchar_routine(_popen, _popen, _wpopen)
|
---|
| 222 | #define _tprintf WINE_tchar_routine(printf, printf, wprintf)
|
---|
| 223 | #define _tremove WINE_tchar_routine(remove, remove, _wremove)
|
---|
| 224 | #define _trename WINE_tchar_routine(rename, rename, _wrename)
|
---|
| 225 | #define _trmdir WINE_tchar_routine(_rmdir, _rmdir, _wrmdir)
|
---|
| 226 | #define _tsearchenv WINE_tchar_routine(_searchenv, _searchenv, _wsearchenv)
|
---|
| 227 | #define _tscanf WINE_tchar_routine(scanf, scanf, wscanf)
|
---|
| 228 | #define _tsetlocale WINE_tchar_routine(setlocale, setlocale, _wsetlocale)
|
---|
| 229 | #define _tsopen WINE_tchar_routine(_sopen, _sopen, _wsopen)
|
---|
| 230 | #define _tspawnl WINE_tchar_routine(_spawnl, _spawnl, _wspawnl)
|
---|
| 231 | #define _tspawnle WINE_tchar_routine(_spawnle, _spawnle, _wspawnle)
|
---|
| 232 | #define _tspawnlp WINE_tchar_routine(_spawnlp, _spawnlp, _wspawnlp)
|
---|
| 233 | #define _tspawnlpe WINE_tchar_routine(_spawnlpe, _spawnlpe, _wspawnlpe)
|
---|
| 234 | #define _tspawnv WINE_tchar_routine(_spawnv, _spawnv, _wspawnv)
|
---|
| 235 | #define _tspawnve WINE_tchar_routine(_spawnve, _spawnve, _wspawnve)
|
---|
| 236 | #define _tspawnvp WINE_tchar_routine(_spawnvp, _spawnvp, _tspawnvp)
|
---|
| 237 | #define _tspawnvpe WINE_tchar_routine(_spawnvpe, _spawnvpe, _tspawnvpe)
|
---|
| 238 | #define _tsplitpath WINE_tchar_routine(_splitpath, _splitpath, _wsplitpath)
|
---|
| 239 | #define _tstat WINE_tchar_routine(_stat, _stat, _wstat)
|
---|
| 240 | #define _tstrdate WINE_tchar_routine(_strdate, _strdate, _wstrdate)
|
---|
| 241 | #define _tstrtime WINE_tchar_routine(_strtime, _strtime, _wstrtime)
|
---|
| 242 | #define _tsystem WINE_tchar_routine(system, system, _wsystem)
|
---|
| 243 | #define _ttempnam WINE_tchar_routine(_tempnam, _tempnam, _wtempnam)
|
---|
| 244 | #define _ttmpnam WINE_tchar_routine(tmpnam, tmpnam, _wtmpnam)
|
---|
| 245 | #define _ttoi WINE_tchar_routine(atoi, atoi, _wtoi)
|
---|
| 246 | #define _ttol WINE_tchar_routine(atol, atol, _wtol)
|
---|
| 247 | #define _tutime WINE_tchar_routine(_utime, _utime, _wutime)
|
---|
| 248 | #define _tWinMain WINE_tchar_routine(WinMain, WinMain, wWinMain)
|
---|
| 249 | #define _ungettc WINE_tchar_routine(ungetc, ungetc, ungetwc)
|
---|
| 250 | #define _vftprintf WINE_tchar_routine(vfprintf, vfprintf, vfwprintf)
|
---|
| 251 | #define _vsntprintf WINE_tchar_routine(_vsnprintf, _vsnprintf, _vsnwprintf)
|
---|
| 252 | #define _vstprintf WINE_tchar_routine(vsprintf, vsprintf, vswprintf)
|
---|
| 253 | #define _vtprintf WINE_tchar_routine(vprintf, vprintf, vwprintf)
|
---|
| 254 |
|
---|
| 255 | #define _T(x) __T(x)
|
---|
| 256 | #define _TEXT(x) __T(x)
|
---|
[21505] | 257 | #ifdef UNICODE
|
---|
| 258 | #define __T(x) L##x
|
---|
| 259 | #else
|
---|
[4] | 260 | #define __T(x) x
|
---|
[21505] | 261 | #endif
|
---|
[4] | 262 |
|
---|
[21399] | 263 | /* TCHAR and friends are already defined in windef.h */
|
---|
| 264 | #if 0
|
---|
[4] | 265 | typedef CHAR _TCHARA;
|
---|
| 266 | typedef WCHAR _TCHARW;
|
---|
| 267 | DECL_WINELIB_TYPE_AW (_TCHAR)
|
---|
| 268 | typedef UCHAR _TUCHARA;
|
---|
| 269 | typedef WCHAR _TUCHARW;
|
---|
| 270 | DECL_WINELIB_TYPE_AW (_TUCHAR)
|
---|
| 271 | typedef CHAR TCHARA, *PTCHARA;
|
---|
| 272 | typedef WCHAR TCHARW, *PTCHARW;
|
---|
| 273 | DECL_WINELIB_TYPE_AW (TCHAR)
|
---|
| 274 | DECL_WINELIB_TYPE_AW (PTCHAR)
|
---|
| 275 | typedef LPWSTR PTSTRW, LPTSTRW;
|
---|
| 276 | typedef LPSTR PTSTRA, LPTSTRA;
|
---|
| 277 | DECL_WINELIB_TYPE_AW (PTSTR)
|
---|
[970] | 278 | //DECL_WINELIB_TYPE_AW (LPTSTR)
|
---|
[21399] | 279 | #endif
|
---|
| 280 |
|
---|
[4] | 281 | #ifdef __cplusplus
|
---|
| 282 | } /* extern "C" */
|
---|
| 283 | #endif
|
---|
[21399] | 284 |
|
---|
[4] | 285 | #endif /* __WINE_TCHAR_H */
|
---|