w32tex
About: TeX Live provides a comprehensive TeX system including all the major TeX-related programs, macro packages, and fonts that are free software. Windows sources.
  Fossies Dox: w32tex-src.tar.xz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

output.c
Go to the documentation of this file.
1 /*
2  * These routines do most of the communicating with the printer.
3  *
4  * LINELENGTH tells the maximum line length to send out. It's been
5  * reduced to 72 because sometimes PostScript files are included in
6  * mail messages and many mailers mutilate longer lines.
7  */
8 #define LINELENGTH (72)
9 #include "dvips.h" /* The copyright notice in that file is included too! */
10 #include <ctype.h>
11 #include <stdlib.h>
12 
13 #ifdef OS2
14 #ifdef _MSC_VER
15 #define popen(pcmd, pmode) _popen(pcmd, pmode)
16 #define pclose(pstream) _pclose(pstream)
17 #endif
18 #endif
19 #if defined(WIN32) && defined(KPATHSEA)
20 #undef fopen
21 #undef popen
22 #undef pclose
23 extern FILE *generic_fsyscp_fopen(const char *name, const char *mode);
24 #define fopen(file, fmode) generic_fsyscp_fopen(file, fmode)
25 #define popen(pcmd, pmode) fsyscp_popen(pcmd, pmode)
26 #define pclose(pstream) _pclose(pstream)
27 #endif
28 
29 #ifdef __DJGPP__
30 #include <unistd.h> /* for `isatty' */
31 #endif
32 
33 /* UCS -> UTF-8 */
34 #define UCStoUTF8B1(x) (0xc0 + (((x) >> 6) & 0x1f))
35 #define UCStoUTF8B2(x) (0x80 + (((x) ) & 0x3f))
36 
37 #define UCStoUTF8C1(x) (0xe0 + (((x) >> 12) & 0x0f))
38 #define UCStoUTF8C2(x) (0x80 + (((x) >> 6) & 0x3f))
39 #define UCStoUTF8C3(x) (0x80 + (((x) ) & 0x3f))
40 
41 #define UCStoUTF8D1(x) (0xf0 + (((x) >> 18) & 0x07))
42 #define UCStoUTF8D2(x) (0x80 + (((x) >> 12) & 0x3f))
43 #define UCStoUTF8D3(x) (0x80 + (((x) >> 6) & 0x3f))
44 #define UCStoUTF8D4(x) (0x80 + (((x) ) & 0x3f))
45 
46 /* UTF-32 over U+FFFF -> UTF-16 surrogate pair */
47 #define UTF32toUTF16HS(x) (0xd800 + (((x-0x10000) >> 10) & 0x3ff))
48 #define UTF32toUTF16LS(x) (0xdc00 + ( x & 0x3ff))
49 
50 /*
51  * The external declarations:
52  */
53 #include "protos.h"
54 
55 char preamblecomment[256]; /* usually "TeX output ..." */
56 integer rdir = 0, fdir = 0;
57 /*
58  * We need a few statics to take care of things.
59  */
60 static void chrcmd(char c);
61 static void tell_needed_fonts(void);
62 static void print_composefont(void);
63 static void setdir(int d);
64 static int JIStoSJIS(int c);
65 
66 static Boolean any_dir = 0; /* did we output any direction commands? */
67 static Boolean jflag = 0;
68 static integer rhh, rvv;
69 static int instring;
70 static Boolean lastspecial = 1;
71 static shalfword d;
72 static Boolean popened = 0;
73 static int lastfont;
74 static char strbuffer[LINELENGTH + 20], *strbp = strbuffer;
75 static struct papsiz *finpapsiz;
76 static struct papsiz defpapsiz = {
77  0, 40258437L, 52099154L, "letter", ""
78 };
79 #ifdef CREATIONDATE
80 #if (!defined(VMS) && !defined(MSDOS) && !(defined(OS2) && defined(_MSC_VER)) && !defined(ATARIST))
81  /* VAXC/MSDOS don't like/need this !! */
82 #include <sys/types.h>
83 #ifndef WIN32
84 #include <sys/time.h> /* time(), at least on BSD Unix */
85 #endif
86 #endif
87 #include <time.h> /* asctime() and localtime(), at least on BSD Unix */
88 static time_t jobtime;
89 
90 #if defined(_MSC_VER)
91 #define strtoll _strtoi64
92 #endif
93 
94 #define INVALID_EPOCH_VALUE ((time_t) -1)
95 
96 static time_t
98 {
99  const char *source_date_epoch;
100  int64_t epoch;
101  char *endptr;
103 
104  source_date_epoch = getenv("SOURCE_DATE_EPOCH");
105  if (source_date_epoch) {
106  errno = 0;
107  epoch = strtoll(source_date_epoch, &endptr, 10);
108  if (!(epoch < 0 || *endptr != '\0' || errno != 0)) {
109  ret = (time_t) epoch;
110 #if defined(_MSC_VER)
111  if (ret > 32535291599ULL)
112  ret = 32535291599ULL;
113 #endif
114  }
115  }
116  return ret;
117 }
118 #endif /* CREATIONDATE */
119 
120 /*
121  * This routine copies a file down the pipe. Search path uses the
122  * header path.
123  *
124  * We add code to handle the case of MS-DOS font files.
125  *
126  * Format: 80 {01,02} four byte length in littleendian order data
127  * repeated possibly multiple times.
128  */
129 static const char *hxdata = "0123456789ABCDEF";
130 static int infigure;
131 static char possibleDSCLine[81],
133 void
134 copyfile_general(const char *s, struct header_list *cur_header)
135 {
136  FILE *f = NULL;
137  int c, prevc = '\n';
138  long len;
139  /* begin DOS EPS code */
140  int doseps = 0;
141  unsigned long dosepsbegin, dosepsend = 0;
142  int removingBytes = 0;
143  const char *scanForEnd = 0;
144  int scanningFont = 0;
145 
146  /* end DOS EPS code */
147 #if defined(VMCMS) || defined (MVSXA)
148  register char *lastdirsep;
149  register char *trunc_s;
150  trunc_s = s;
151 #endif
153 
154  switch (infigure) {
155  case 1:
156 /*
157  * Look in headerpath too, just in case. This allows common header
158  * or figure files to be installed in the .../ps directory.
159  */
160  f = search(figpath, s, READBIN);
161 #if defined(WIN32)
162  if (f == 0 && file_system_codepage != win32_codepage) {
163  int tmpcp = file_system_codepage;
164  file_system_codepage = win32_codepage;
165  f = search(figpath, s, READBIN);
166  file_system_codepage = tmpcp;
167  }
168 #endif
169  if (f == 0)
170  f = search(headerpath, s, READBIN);
171 #if defined(VMCMS) || defined (MVSXA)
172  lastdirsep = strrchr(s, '/');
173  if ( NULL != lastdirsep ) trunc_s = lastdirsep + 1;
174 #ifdef VMCMS
175  sprintf(errbuf,
176  "Couldn't find figure file %s with CMS name %s; continuing.", s, trunc_s);
177  if (secure == 2) {
178  strcat(errbuf, "\nNote that an absolute path or a relative path with .. are denied in -R2 mode.");
179  }
180 #else /* ! VMCMS */
181  sprintf(errbuf,
182  "Couldn't find figure file %s with MVS name %s; continuing.", s, trunc_s);
183  if (secure == 2) {
184  strcat(errbuf, "\nNote that an absolute path or a relative path with .. are denied in -R2 mode.");
185  }
186 #endif /* ! VMCMS */
187 #else /* ! (VMCMS || MVSXA) */
188  sprintf(errbuf, "Could not find figure file %.500s; continuing.", s);
189  if (secure == 2) {
190  strcat(errbuf, "\nNote that an absolute path or a relative path with .. are denied in -R2 mode.");
191  }
192 #endif /* !(VMCMS || MVSXA) */
193  break;
194 #ifndef VMCMS
195 #ifndef MVSXA
196 #ifndef VMS
197 #if !defined(MSDOS) || defined(__DJGPP__)
198 #ifndef ATARIST
199 #ifndef __THINK__
200  case 2:
201 #ifdef SECURE
202  sprintf(errbuf, "<%.500s>: Tick filename execution disabled", s);
203 #else
204 #ifdef OS2
205  if (_osmode == OS2_MODE) {
206 #endif
207  if (secure == 0) {
208  sprintf(errbuf, "Execution of <%.500s> failed ", s);
209  f = popen(s, "r");
210  if (f != 0)
211  SET_BINARY(fileno(f));
212  }
213  else {
214  sprintf(errbuf,"Secure mode is %d so execute <%.500s> will not run",
215  secure, s);
216  }
217 #ifdef OS2
218  }
219 #endif
220 #endif
221  break;
222 #endif
223 #endif
224 #endif
225 #endif
226 #endif
227 #endif
228  default:
229  f = search(headerpath, s, READBIN);
230  if(cur_header && (cur_header->precode || cur_header->postcode)) {
231  if(f==NULL)
232  f = search(figpath, s, READBIN);
233  }
234  sprintf(errbuf, "! Could not find header file %.500s.", s);
235  if (secure == 2) {
236  strcat(errbuf, "\nNote that an absolute path or a relative path with .. are denied in -R2 mode.");
237  }
238  break;
239  }
240  if (f==NULL) {
241  found_problems = 1; /* continue, but eventually exit unsuccessfully */
242  error(errbuf);
243  } else {
244  if (! quiet) {
245 #if defined(VMCMS) || defined (MVSXA)
246  if (strlen(s) + prettycolumn > STDOUTSIZE) {
247 #else
249 #endif
250  fprintf(stderr, "\n");
251  prettycolumn = 0;
252  }
253 #if defined(VMCMS) || defined (MVSXA)
254  fprintf(stderr, "<%s>", trunc_s);
255 #else
256  fprintf_str(stderr, "<%s>", realnameoffile);
257 #endif
258  fflush(stderr);
259 #if defined(VMCMS) || defined (MVSXA)
260  prettycolumn += 2 + strlen(s);
261 #else
263 #endif
264  }
265  if (linepos != 0)
266  putc('\n', bitfile);
267 /*
268  * Suggested by Andrew Trevorrow; don't ever BeginFont a file ending in .enc
269  */
270  if (infont && strstr(s,".enc"))
271  infont = 0;
272  if (! disablecomments) {
273  if (infigure)
274  fprintf(bitfile, "%%%%BeginDocument: %s\n", s);
275  else if (infont)
276  fprintf(bitfile, "%%%%BeginFont: %s\n", infont);
277 #ifdef HPS
278  else if (noprocset) {}
279 #endif
280  else
281  fprintf(bitfile, "%%%%BeginProcSet: %s 0 0\n", s);
282  }
283  if (cur_header && cur_header->precode) {
284  fprintf(bitfile, "%s\n", cur_header->precode);
285  free(cur_header->precode);
286  }
287  c = getc(f);
288  if (c == 0x80) {
289  while (1) {
290  c = getc(f);
291  switch(c) {
292 case 1:
293 case 2:
294  len = getc(f);
295  len += getc(f) * 256L;
296  len += getc(f) * 65536L;
297  len += getc(f) * 256L * 65536;
298  if (c == 1) {
299  while (len > 0) {
300  c = getc(f);
301  if (c == EOF) {
302  error("premature EOF in MS-DOS font file");
303  len = 0;
304  } else {
305  if (c == '\r') { /* Mac- or DOS-style text file */
306  putc('\n', bitfile);
307  if ((c = getc(f)) == '\n') /* DOS-style text */
308  len--; /* consume, but don't generate NL */
309  else
310  ungetc(c, f);
311  }
312  else
313  putc(c, bitfile);
314  len--;
315  }
316  }
317  } else {
318  putc('\n', bitfile);
319  prevc = 0;
320  while (len > 0) {
321  c = getc(f);
322  if (c == EOF) {
323  error("premature EOF in MS-DOS font file");
324  len = 0;
325  } else {
326  putc(hxdata[c >> 4], bitfile);
327  putc(hxdata[c & 15], bitfile);
328  len--;
329  prevc += 2;
330  if (prevc >= 76) {
331  putc('\n', bitfile);
332  prevc = 0;
333  }
334  }
335  }
336  }
337  break;
338 case 3:
339  goto msdosdone;
340 default:
341  error("saw type other than 1, 2, or 3 in MS-DOS font file");
342  break;
343  }
344  c = getc(f);
345  if (c == EOF)
346  break;
347  if (c != 0x80) {
348  error("saw non-MSDOS header in MSDOS font file");
349  break;
350  }
351  }
352 msdosdone:
353  prevc = 0;
354  } else {
355 /* begin DOS EPS code */
356  if (c == 'E'+0x80) {
357  if ((getc(f)=='P'+0x80) && (getc(f)=='S'+0x80)
358  && (getc(f)=='F'+0x80)) {
359  doseps = 1;
360  dosepsbegin = getc(f);
361  dosepsbegin += getc(f) * 256L;
362  dosepsbegin += getc(f) * 65536L;
363  dosepsbegin += getc(f) * 256L * 65536;
364  dosepsend = getc(f);
365  dosepsend += getc(f) * 256L;
366  dosepsend += getc(f) * 65536L;
367  dosepsend += getc(f) * 256L * 65536;
368  fseek(f, dosepsbegin, 0);
369  c = getc(f);
370  dosepsend--;
371  }
372  else {
373  rewind(f);
374  c = getc(f);
375  }
376  }
377 /* end DOS EPS code */
378  if (c != EOF) {
379  while (1) {
380  if (c == '\n') { /* end or beginning of line; check DSC */
381  *dscLinePointer = 0; /* make sure we terminate!
382  * might be a new empty line! */
383  if (strncmp(possibleDSCLine, "%%BeginBinary:", 14) == 0 ||
384  strncmp(possibleDSCLine, "%%BeginData:", 12) == 0 ||
385  strncmp(possibleDSCLine, "%%BeginFont:", 12) == 0) {
386  integer size = 0;
387  char *p = possibleDSCLine;
388  *dscLinePointer = 0;
389  *dscLineEnd = 0;
390  if (scanForEnd == 0 && removecomments) {
392  putc('\n', bitfile);
393  }
394 
395  if (strncmp(possibleDSCLine, "%%BeginFont:", 12) == 0) {
396 
397  /* Theoretically, we could wait until we see
398  the "currentfile eexec" and possibly even
399  check that the following data really looks
400  like binary before we begin verbatim
401  copying, but that would complicate the code
402  beyond our present needs. If we were going
403  to do that much work, this entire chunk of
404  code should probably be
405  rewritten. [dmj@ams.org, 2007/08/20] */
406 
407  scanForEnd = "%%EndFont";
408  scanningFont = 1;
409  } else {
410  scanningFont = 0;
411 
412  scanForEnd = 0;
413  while (*p != ':')
414  p++;
415  p++;
416  while (*p && *p <= ' ')
417  p++;
418  if ('0' > *p || *p > '9') {
419  /*
420  * No byte count! We need to scan for end binary
421  * or end data, and hope we get it right. Really
422  * the file is malformed.
423  */
424  scanForEnd = "Yes";
425  }
426  while ('0' <= *p && *p <= '9') {
427  size = size * 10 + *p - '0';
428  p++;
429  }
430  while (*p && *p <= ' ')
431  p++;
432  if (*p == 'h' || *p == 'H')
433  /*
434  * Illustrator 8 and 9 have bogus byte counts
435  * for hex data. But if it is hex, we assume
436  * that it is safe to use ASCII scanning, so
437  * we do so.
438  */
439  scanForEnd = "Yes";
440  while (*p > ' ') /* ignore Hex/Binary/ASCII */
441  p++;
442  while (*p && *p <= ' ')
443  p++;
444  putc(c, bitfile);
445  if (c == '\r') { /* maybe we have a DOS-style text file */
446  c = getc(f);
447  if (c == '\n') {
448  putc(c, bitfile);
449  dosepsend--;
450  } else
451  ungetc(c, f);
452  }
453  if (scanForEnd != 0) {
454  if (strncmp(possibleDSCLine, "%%BeginBinary", 13) == 0)
455  scanForEnd = "%%EndBinary";
456  else
457  scanForEnd = "%%EndData";
458  }
459  }
460  if (scanForEnd == 0) {
461  if (strncmp(p, "lines", 5) != 0 &&
462  strncmp(p, "Lines", 5) != 0) {
463  for (; size>0; size--) {
464  c = getc(f);
465  dosepsend--;
466  if (c == EOF)
467  error(
468  "! premature end of file in binary section");
469  putc(c, bitfile);
470  }
471  } else {
472  /*
473  * Count both newlines and returns, and when either
474  * goes over the count, we are done.
475  */
476  int newlines=0, returns=0;
477  while (newlines < size && returns < size) {
478  c = getc(f);
479  dosepsend--;
480  if (c == EOF)
481  error(
482  "! premature end of file in binary section");
483  putc(c, bitfile);
484  if (c == '\n')
485  newlines++;
486  else if (c == '\r')
487  returns++;
488  }
489  /*
490  * If we've seen precisely one too few newlines,
491  * and the next char is a newline, include it too.
492  */
493  if (returns == newlines + 1) {
494  if ((c = getc(f)) == '\n') {
495  putc(c, bitfile);
496  dosepsend--;
497  } else {
498  ungetc(c, f);
499  }
500  }
501  }
502  c = getc(f);
503  dosepsend--;
504  if (c == '\n' || c == '\r') {
505  putc(c, bitfile);
506  if (c == '\r') { /* DOS-style text file? */
507  c = getc(f);
508  dosepsend--;
509  if (c == '\n') {
510  putc(c, bitfile);
511  c = getc(f);
512  dosepsend--;
513  }
514  } else {
515  c = getc(f);
516  dosepsend--;
517  }
518  }
519  if (c != '%') {
520  /* try to find %%EndBinary or %%EndData anywhere
521  in the rest of the file, and pretend it
522  worked; this works around various Illustrator
523  bugs. -tgr, 14 June 2003 */
524  const char *m1 = "%%EndData";
525  const char *m2 = "%%EndBinary";
526  const char *p1 = m1;
527  const char *p2 = m2;
528  error(
529  " expected to see %%EndBinary at end of data; struggling on");
530  while (1) {
531  putc(c, bitfile);
532  if (c == '\r' || c == '\n') {
533  if (c == '\r') { /* DOS-style text file? */
534  c = getc(f);
535  if (c != '\n')
536  ungetc(c, f);
537  else
538  dosepsend--;
539  }
540  break;
541  }
542  c = getc(f);
543  dosepsend--;
544  if (c == EOF)
545  error(
546  "! premature end of file in binary section");
547  /*
548  * By the way, this code can be fooled by things like %%%EndBinary
549  * or even %%EndBi%%EndBinary, but this isn't valid DSC anyway.
550  * This comment is mainly here to prevent anyone else from emulating
551  * this code when doing stream-based substring matching.
552  */
553  if (c == *p1) {
554  p1++;
555  if (*p1 == 0)
556  break;
557  } else {
558  p1 = m1;
559  }
560  if (c == *p2) {
561  p2++;
562  if (*p2 == 0)
563  break;
564  } else {
565  p2 = m2;
566  }
567  }
568  }
569  while (1) {
570  putc(c, bitfile);
571  if (c == '\r' || c == '\n') {
572  if (c == '\r') { /* DOS-style text file? */
573  c = getc(f);
574  if (c != '\n')
575  ungetc(c, f);
576  else {
577  putc(c, bitfile);
578  dosepsend--;
579  }
580  }
581  break;
582  }
583  c = getc(f);
584  removingBytes = 0;
585  dosepsend--;
586  if (c == EOF)
587  error(
588  "! premature end of file in binary section");
589  }
590  c = getc(f);
591  dosepsend--;
592  }
593  } else if (scanForEnd && strncmp(possibleDSCLine, scanForEnd,
594  strlen(scanForEnd))==0) {
595  scanForEnd = 0;
596  scanningFont = 0;
597  }
599  } else if (dscLinePointer < dscLineEnd) {
600  *dscLinePointer++ = c;
601  if (removecomments && scanForEnd == 0 &&
602  c == '%' && dscLinePointer == possibleDSCLine + 1) {
603  /* % is first char */
604  c = getc(f);
605  if (c == '%' || c == '!')
606  removingBytes = 1;
607  if (c != EOF)
608  ungetc(c, f);
609  c = '%';
610  }
611  }
612 #if defined(VMCMS) || defined (MVSXA)
613  if (c != 0x37 || scanningFont) {
614 #else
615  if (c != 4 || scanningFont) {
616 #endif
617  if (!removingBytes)
618  putc(c, bitfile);
619  }
620  prevc = c;
621 /* begin DOS EPS code */
622  if (doseps && (dosepsend <= 0))
623  break; /* stop at end of DOS EPS PostScript section */
624 /* end DOS EPS code */
625  c = getc(f);
626  dosepsend--;
627  if (c == EOF)
628  break;
629  else if (c == '\r' && ! scanningFont) {
630  c = getc(f);
631  if (c == '\n') { /* DOS-style text file? */
632  if (!removingBytes) putc('\r', bitfile);
633  dosepsend--;
634  } else
635  ungetc(c, f);
636  c = '\n';
637  }
638  if (prevc == '\n')
639  removingBytes = 0;
640  }
641  }
642  }
643  if (prevc != '\n')
644  putc('\n', bitfile);
645  linepos = 0;
646 #ifndef VMCMS
647 #ifndef MVSXA
648 #ifndef VMS
649 #if !defined(MSDOS) || defined(__DJGPP__)
650 #ifndef ATARIST
651 #ifndef __THINK__
652  if (infigure == 2)
653 #ifdef OS2
654  {
655  if (_osmode == OS2_MODE)
656  pclose(f);
657  }
658 #else
659  pclose(f);
660 #endif
661  else
662 #endif
663 #endif
664 #endif
665 #endif
666 #endif
667 #endif
668  fclose(f);
669  if (cur_header && cur_header->postcode) {
670  fprintf(bitfile, "\n%s", cur_header->postcode);
671  free(cur_header->postcode);
672  }
673  if (!disablecomments) {
674  if (infigure)
675  fprintf(bitfile, "\n%%%%EndDocument\n");
676  else if (infont)
677  fprintf(bitfile, "\n%%%%EndFont\n");
678 #ifdef HPS
679  else if (noprocset) {}
680 #endif
681  else
682  fprintf(bitfile, "\n%%%%EndProcSet\n");
683  }
684  }
685 }
686 
687 void
688 copyfile(const char *s)
689 {
691 }
692 
693 /*
694  * For included PostScript graphics, we use the above routine, but
695  * with no fatal error message.
696  */
697 void
698 figcopyfile(char *s, int systemtype)
699 {
700  infigure = systemtype ? 2 : 1;
701  copyfile(s);
702  infigure = 0;
703 }
704 /*
705  * This next routine writes out a `special' character. In this case,
706  * we simply put it out, since any special character terminates the
707  * preceding token.
708  */
709 void
711 {
712  if (linepos >= LINELENGTH) {
713  putc('\n', bitfile);
714  linepos = 0;
715  }
716  putc(c, bitfile);
717  linepos++;
718  lastspecial = 1;
719 }
720 
721 void
723 {
724  if (linepos + instring >= LINELENGTH - 2) {
725  putc('\n', bitfile);
726  linepos = 0;
727  }
728  putc('(', bitfile);
729  *strbp = 0;
731  putc(')', bitfile);
732  linepos += instring + 2;
733  lastspecial = 1;
734  instring = 0;
735  strbp = strbuffer;
736 }
737 
738 #ifdef SHIFTLOWCHARS
739 /*
740  * moving chars 0-32 and 127 to higher positions
741  * is desirable when using some fonts
742  */
743 int
744 T1Char(int c)
745 {
746  int tmpchr = c;
747  if (shiftlowchars && curfnt->resfont) {
748  if ((tmpchr <= 0x20)&&(tmpchr>=0)) {
749  if (tmpchr < 0x0A) {
750  tmpchr += 0xA1;
751  }
752  else {
753  tmpchr += 0xA3;
754  }
755  }
756  else if (tmpchr == 0x7F) {
757  tmpchr = 0xC4;
758  }
759  }
760  if (curfnt->chardesc[tmpchr].flags2 & EXISTS)
761  tmpchr = c;
762  return tmpchr;
763 }
764 #endif
765 
766 void
767 scout(unsigned char c) /* string character out */
768 {
769 /*
770  * Is there room in the buffer? LINELENGTH-6 is used because we
771  * need room for (, ), and a possible four-byte string \000, for
772  * instance. If it is too long, we send out the string.
773  */
774  jflag = 0;
775  if (instring > LINELENGTH-6) {
776  stringend();
777  chrcmd('p');
778  }
779 #ifdef SHIFTLOWCHARS
780  c=T1Char(c);
781 #endif
782 /* changed next line to hex representation for VMCMS port
783  if (c<' ' || c > 126 || c=='%' ) {
784 */
785  if ( c<0x20 || c>= 0x7F || c==0x25 ) {
786  *strbp++ = '\\';
787  *strbp++ = '0' + ((c >> 6) & 3);
788  *strbp++ = '0' + ((c >> 3) & 7);
789  *strbp++ = '0' + (c & 7);
790  instring += 4;
791  } else {
792 #if defined(VMCMS) || defined (MVSXA)
793  c = ascii2ebcdic[c];
794 #endif
795  if (c == '(' || c == ')' || c == '\\') {
796  *strbp++ = '\\';
797  *strbp++ = c;
798  instring += 2;
799  } else {
800  *strbp++ = c;
801  instring++;
802  }
803  }
804 }
805 
806 static void
807 scout2(int c)
808 {
809  char s[64];
810 
811  sprintf(s, "<%04x>p", c);
812  cmdout(s);
813 }
814 
815 static void
816 jscout(int c, char *fs) /* string character out */
817 {
818  char s[64];
819 
820  if (!dir) {
821  numout(hh);
822  numout(vv);
823  } else {
824  numout(vv);
825  numout(-hh);
826  }
827  if (strstr(fs,"-UTF32-")!=NULL) {
828  snprintf(s, sizeof(s), "a<%08x>p", c);
829  } else if (strstr(fs,"-UTF8-")!=NULL) {
830  if (c<0x80) {
831  snprintf(s, sizeof(s), "a<%02x>p", c);
832  } else if (c<0x800) {
833  snprintf(s, sizeof(s), "a<%02x%02x>p", UCStoUTF8B1(c), UCStoUTF8B2(c));
834  } else if (c<0x10000) {
835  snprintf(s, sizeof(s), "a<%02x%02x%02x>p", UCStoUTF8C1(c),
837  } else if (c<0x110000) {
838  snprintf(s, sizeof(s), "a<%02x%02x%02x%02x>p", UCStoUTF8D1(c),
840  } else {
841  error("warning: Illegal code value.");
842  }
843  } else if (c>0xffff && strstr(fs,"-UTF16-")!=NULL) {
844  snprintf(s, sizeof(s), "a<%04x%04x>p",
846  } else {
847  if ((strstr(fs,"-RKSJ-")!=NULL)) c = JIStoSJIS(c);
848  snprintf(s, sizeof(s), "a<%04x>p", c);
849  }
850  cmdout(s);
851  instring = 0;
852  jflag = 1;
853  strbuffer[0] = '\0';
854 }
855 
856 void
857 cmdout(const char *s)
858 {
859  int l;
860 
861  /* hack added by dorab */
862  if (instring && !jflag) {
863  stringend();
864  chrcmd('p');
865  }
866  l = strlen(s);
867  if ((! lastspecial && linepos >= LINELENGTH - 20) ||
868  linepos + l >= LINELENGTH) {
869  putc('\n', bitfile);
870  linepos = 0;
871  } else if (! lastspecial) {
872  putc(' ', bitfile);
873  linepos++;
874  }
875  fputs(s, bitfile);
876  linepos += l;
877  lastspecial = 0;
878 }
879 
880 void psnameout(const char *s) {
881  // we lead with a special, so we don't need the space.
882  lastspecial = 1 ;
883  cmdout(s) ;
884 }
885 
886 void pslineout(const char *s) {
887  fputs(s, bitfile) ;
888  fprintf(bitfile, "\n");
889  linepos = 0;
890 }
891 
892 static void
893 chrcmd(char c)
894 {
895  if ((! lastspecial && linepos >= LINELENGTH - 20) ||
896  linepos + 2 > LINELENGTH) {
897  putc('\n', bitfile);
898  linepos = 0;
899  } else if (! lastspecial) {
900  putc(' ', bitfile);
901  linepos++;
902  }
903  putc(c, bitfile);
904  linepos++;
905  lastspecial = 0;
906 }
907 
908 void
909 floatout(float n)
910 {
911  char buf[50];
912 
913  snprintf(buf, sizeof(buf), "%.2f", n);
914  cmdout(buf);
915 }
916 
917 void
918 doubleout(double n)
919 {
920  char buf[50];
921 
922  snprintf(buf, sizeof(buf), "%g", n);
923  cmdout(buf);
924 }
925 
926 void
928 {
929  char buf[50];
930 
931 #ifdef SHORTINT
932  snprintf(buf, sizeof(buf), "%ld", n);
933 #else
934  snprintf(buf, sizeof(buf), "%d", n);
935 #endif
936  cmdout(buf);
937 }
938 
939 void
940 mhexout(register unsigned char *p,
941  register long len)
942 {
943  register const char *hexchar = hxdata;
944  register int n, k;
945 
946  while (len > 0) {
947  if (linepos > LINELENGTH - 2) {
948  putc('\n', bitfile);
949  linepos = 0;
950  }
951  k = (LINELENGTH - linepos) >> 1;
952  if (k > len)
953  k = len;
954  len -= k;
955  linepos += (k << 1);
956  while (k--) {
957  n = *p++;
958  putc(hexchar[n >> 4], bitfile);
959  putc(hexchar[n & 15], bitfile);
960  }
961  }
962 }
963 
964 static void
966 {
967  char buf[6];
968 
969  if (instring && !jflag) {
970  stringend();
971  chrcmd('p');
972  }
973  makepsname(buf, n);
974  cmdout(buf);
975 
977 }
978 
979 void
980 hvpos(void)
981 {
982  if (!dir) {
983  if (rvv != vv || jflag) {
984  if (instring) {
985  stringend();
986  numout(hh);
987  numout(vv);
988  chrcmd('y');
989  } else if (rhh != hh || jflag) {
990  numout(hh);
991  numout(vv);
992  chrcmd('a') ;
993  } else { /* hard to get this case, but it's there when you need it! */
994  numout(vv - rvv);
995  chrcmd('x');
996  }
997  rvv = vv;
998  } else if (rhh != hh || jflag) {
999  if (instring) {
1000  stringend();
1001  if (hh - rhh < 5 && rhh - hh < 5) {
1002 #if defined(VMCMS) || defined (MVSXA) /* should replace 'p' in non-VMCMS, non-MVSXA line as well */
1003  chrcmd(ascii2ebcdic[(char)(112 + hh - rhh)]);
1004 #else
1005  chrcmd((char)('p' + hh - rhh));
1006 #endif
1007  } else if (hh - rhh < d + 5 && rhh - hh < 5 - d) {
1008 #if defined(VMCMS) || defined (MVSXA) /* should replace 'g' in non-VMCMS, non-MVSXA line as well */
1009  chrcmd(ascii2ebcdic[(char)(103 + hh - rhh - d)]);
1010 #else
1011  chrcmd((char)('g' + hh - rhh - d));
1012 #endif
1013  d = hh - rhh;
1014  } else {
1015  numout(hh - rhh);
1016  chrcmd('b');
1017  d = hh - rhh;
1018  }
1019  } else {
1020  numout(hh - rhh);
1021  chrcmd('w');
1022  }
1023  }
1024  rhh = hh;
1025  } else {
1026  if (rhh != hh || jflag) {
1027  if (instring) {
1028  stringend();
1029  numout(vv);
1030  numout(-hh);
1031  chrcmd('y');
1032  } else if (rvv != vv || jflag) {
1033  numout(vv);
1034  numout(-hh);
1035  chrcmd('a');
1036  } else { /* hard to get this case, but it's there when you need it! */
1037  numout(rhh - hh);
1038  chrcmd('x');
1039  }
1040  rhh = hh;
1041  } else if (rvv != vv || jflag) {
1042  if (instring) {
1043  stringend();
1044  if (vv - rvv < 5 && rvv - vv < 5) {
1045 #if defined(VMCMS) || defined (MVSXA) /* should replace 'p' in non-VMCMS, non-MVSXA line as well */
1046  chrcmd(ascii2ebcdic[(char)(112 + vv - rvv)]);
1047 #else
1048  chrcmd((char)('p' + vv - rvv));
1049 #endif
1050  } else if (vv - rvv < d + 5 && rvv - vv < 5 - d) {
1051 #if defined(VMCMS) || defined (MVSXA) /* should replace 'g' in non-VMCMS, non-MVSXA line as well */
1052  chrcmd(ascii2ebcdic[(char)(103 + vv - rvv - d)]);
1053 #else
1054  chrcmd((char)('g' + vv - rvv - d));
1055 #endif
1056  d = vv - rvv;
1057  } else {
1058  numout(vv - rvv);
1059  chrcmd('b');
1060  d = vv - rvv;
1061  }
1062  } else {
1063  numout(vv - rvv);
1064  chrcmd('w');
1065  }
1066  }
1067  rvv = vv;
1068  }
1069 }
1070 
1071 /*
1072  * initprinter opens the bitfile and writes the initialization sequence
1073  * to it.
1074  */
1075 void
1076 newline(void)
1077 {
1078  if (linepos != 0) {
1079  fprintf(bitfile, "\n");
1080  linepos = 0;
1081  }
1082  lastspecial = 1;
1083 }
1084 
1085 void
1086 nlcmdout(const char *s)
1087 {
1088  newline();
1089  cmdout(s);
1090  newline();
1091 }
1092 /*
1093  * Is the dimension close enough for a match? We use 5bp
1094  * as a match; this is 65536*72.27*5/72 or 328909 scaled points.
1095  */
1096 static int
1098 {
1099  if (i < 0)
1100  i = -i;
1101  return (i <= 328909);
1102 }
1103 /*
1104  * A case-irrelevant string compare.
1105  */
1106 static int
1107 mlower(int c)
1108 {
1109  if ('A' <= c && c <= 'Z')
1110  return c - 'A' + 'a';
1111  else
1112  return c;
1113 }
1114 static int
1115 ncstrcmp(const char *a, const char *b)
1116 {
1117  while (*a && (*a == *b ||
1118  mlower(*a) == mlower(*b)))
1119  a++, b++;
1120  if (*a == 0 && *b == 0)
1121  return 0;
1122  else
1123  return 1;
1124 }
1125 /*
1126  * Find the paper size.
1127  */
1128 static void
1130  if (finpapsiz == 0) {
1131  struct papsiz *ps;
1132  struct papsiz *fps = 0;
1133  int ih, iv, it;
1134  int mindiff = 0x7fffffff;
1135 
1136  if (tryepsf && !landscape) {
1137  finpapsiz = &defpapsiz;
1140  return;
1141  }
1142  if (cropmarks) {
1143 /*
1144  * If user wanted crop marks, we increase the size of the page by
1145  * a half inch all around.
1146  */
1147  if (hpapersize == 0 || vpapersize == 0) {
1148  error(
1149  "warning: -k crop marks wanted, but no paper size specified; using default");
1150  if (landscape) {
1153  } else {
1156  }
1157  }
1158  hpapersize += 2368143L;
1159  vpapersize += 2368143L;
1161  }
1162  if (paperfmt && *paperfmt) {
1163  for (ps = papsizes; ps; ps = ps->next)
1164  if (ncstrcmp(paperfmt, ps->name)==0)
1165  finpapsiz = ps;
1166  if (finpapsiz == 0)
1167  error("no match for papersize");
1168  }
1169  if (finpapsiz == 0 && hpapersize > 0 && vpapersize > 0) {
1170  for (ps=papsizes; ps; ps = ps->next) {
1171  ih = ps->xsize-hpapersize;
1172  iv = ps->ysize-vpapersize;
1173  if (ih < 0) ih = -ih;
1174  if (iv < 0) iv = -iv;
1175  it = ih;
1176  if (it < iv) it = iv;
1177  if (it < mindiff) {
1178  mindiff = it;
1179  fps = ps;
1180  }
1181  }
1182  if (indelta(mindiff))
1183  landscape = 0;
1184  else
1185  fps = 0;
1186  mindiff = 0x7fffffff;
1187  if (fps == 0) {
1188  for (ps=papsizes; ps; ps = ps->next) {
1189  iv = ps->ysize-hpapersize;
1190  ih = ps->xsize-vpapersize;
1191  if (ih < 0) ih = -ih;
1192  if (iv < 0) iv = -iv;
1193  it = ih;
1194  if (it < iv) it = iv;
1195  if (it < mindiff) {
1196  mindiff = it;
1197  fps = ps;
1198  }
1199  }
1200  if (indelta(mindiff))
1201  landscape = 1;
1202  else
1203  fps = 0;
1204  if (fps == 0) {
1205  for (ps=papsizes; ps; ps = ps->next) {
1206  if (ps->ysize == 0 && ps->xsize == 0) {
1207  fps = ps;
1208  break;
1209  }
1210  }
1211  if (fps == 0) {
1213  error(
1214  "no match for special paper size found; using default");
1215  }
1216  }
1217  }
1218  finpapsiz = fps;
1219  }
1220  if (finpapsiz == 0) {
1221  if (papsizes)
1222  finpapsiz = papsizes;
1223  else
1224  finpapsiz = &defpapsiz;
1225 /*
1226  * But change xsize/ysize to match so bounding box works.
1227  */
1228  if (hpapersize && vpapersize) {
1229  if (landscape) {
1232  } else {
1235  }
1236  }
1237  }
1238 /*
1239  * Here, there was no papersize special. We set the paper size from
1240  * the selected paper format. If the selected paper format has no
1241  * sizes, we use the defaults.
1242  */
1243  if (hpapersize == 0 || vpapersize == 0) {
1244  if (finpapsiz->xsize == 0 || finpapsiz->ysize == 0) {
1247  }
1248  if (landscape) {
1251  } else {
1254  }
1255 /*
1256  * Here, there was a papersize special, but the selected paper
1257  * format has 0 0 for sizes. We set the sizes here so that the
1258  * bounding box works.
1259  */
1260  } else if (finpapsiz->xsize == 0 || finpapsiz->ysize == 0) {
1263 /*
1264  * Here, the user specified a size with -t, and there was a
1265  * papersize special, and its sizes were greater than zero.
1266  * We make sure the sizes are okay. Note that the user must have
1267  * specified landscape if this is desired.
1268  */
1269  } else if (paperfmt && *paperfmt) {
1270  if (landscape) {
1271  if (!indelta(vpapersize - finpapsiz->xsize) ||
1273  if (vpapersize > finpapsiz->xsize ||
1275  error("warning: -t selected paper may be too small");
1276  else
1277  error("note: -t selected paper may be too large");
1278  }
1279  } else {
1280  if (!indelta(hpapersize - finpapsiz->xsize) ||
1282  if (hpapersize > finpapsiz->xsize ||
1284  error("warning: -t selected paper may be too small");
1285  else
1286  error("note: -t selected paper may be too large");
1287  }
1288  }
1289  }
1290  }
1291 }
1292 /*
1293  * Convert scaled points to PostScript points. This is the same
1294  * as return (i * 72 / (65536 * 72.27)), which is the same as
1295  * dividing by 65781.76, but we want to round up.
1296  */
1297 static int
1299 {
1300  i += 65780L;
1301  return (i / 6578176L)*100 + (i % 6578176) * 100 / 6578176;
1302 }
1303 /*
1304  * Send out the special paper stuff. If `hed' is non-zero, only
1305  * send out lines starting with `!' else send all other lines out.
1306  */
1307 static void
1308 paperspec(const char *s, int hed)
1309 {
1310  int sendit;
1311 
1312  while (*s) {
1313  s++;
1314  if (*s == '\0')
1315  return;
1316  if (*s == '!') {
1317  s++;
1318  while (*s == ' ') s++;
1319  sendit = hed;
1320  } else
1321  sendit = ! hed;
1322  if (sendit) {
1323  while (*s && *s != '\n')
1324  putc(*s++, bitfile);
1325  putc('\n', bitfile);
1326  } else {
1327  while (*s && *s != '\n')
1328  s++;
1329  }
1330  }
1331 }
1332 static char *
1334 {
1335  if (tryepsf && paperfmt == 0 && *iname) {
1336  findbb(bop+44);
1337  return nextstring;
1338  }
1339  return 0;
1340 }
1341 static char *isepsf = 0;
1342 static int endprologsent;
1343 void
1345  FILE * pf = NULL;
1346  if (*oname != 0) {
1347 /*
1348  * We check to see if the first character is a exclamation
1349  * point, and popen if so.
1350  */
1351  if (*oname == '!' || *oname == '|') {
1352 #if defined(MSDOS) && !defined(__DJGPP__) || defined(VMS) || defined(VMCMS) || defined(MVSXA) || defined(__THINK__) || defined(ATARIST)
1353  error("! can't open output pipe");
1354 #else
1355 #ifdef OS2
1356  if (_osmode != OS2_MODE) {
1357  error("! can't open output pipe");
1358  } else {
1359 #endif
1360 #ifdef __DJGPP__
1361  /* Feature: if they pipe to "lpr" and there's no executable by
1362  that name anywhere in sight, write to local printer instead.
1363 
1364  We do this up front, before even trying to popen, because on
1365  MS-DOS popen always succeeds for writing (it only opens a
1366  temporary file), and by the time we get to actually run the
1367  (possibly nonexistent) program in pclose, it's too late to
1368  fall back.
1369 
1370  We don't use kpathsea functions here because they don't
1371  know about DOS-specific executable extensions, while we
1372  want to be able to find "lpr.exe", "lpr.com", "lpr.bat" etc. */
1373  extern char *__dosexec_find_on_path(const char *,
1374  char **, char *);
1375  extern char **environ;
1376  char *p = oname + 1;
1377  char found[FILENAME_MAX];
1378 
1379  while (ISSPACE(*p))
1380  p++;
1381  if (strncmp(p, "lpr", 3) == 0 && (ISSPACE(p[3]) || p[3] == '\0')
1382  && !__dosexec_find_on_path(oname+1, (char **)0, found)
1383  && !__dosexec_find_on_path(oname+1, environ, found))
1384  pf = fopen("PRN", "w");
1385 #endif
1386  if (pf == NULL && (pf = popen(oname+1, "w")) != NULL) {
1387  popened = 1;
1388  SET_BINARY(fileno(pf));
1389  }
1390  if (pf == NULL)
1391  error("! couldn't open output pipe");
1392  bitfile = pf;
1393 #ifdef OS2
1394  }
1395 #endif
1396 #endif /* MSDOS && !__DJGPP__ || VMS || ... */
1397  } else {
1398  if ((bitfile=fopen(oname,"w"))==NULL)
1399  error("! couldn't open PostScript file");
1401  }
1402  } else {
1403  bitfile = stdout;
1404  }
1405 
1406  /* Even PostScript output may include binary characters, so switch
1407  bitfile to binary mode. */
1408  if (O_BINARY && !isatty(fileno(bitfile)))
1410 }
1411 void
1413 {
1414  int n = sect->numpages * pagecopies * collatedcopies;
1415 #ifdef HPS
1416  if (!HPS_FLAG)
1417 #endif
1418  open_output();
1419 
1420  findpapersize();
1421  if (disablecomments) {
1422  fprintf(bitfile,
1423  "%%!PS (but not EPSF; comments have been disabled)\n");
1424  fprintf(stderr, "Warning: no %%%%Page comments generated.\n");
1425  } else {
1426  if (multiplesects) {
1427  fprintf(bitfile,
1428  "%%!PS (but not EPSF because of memory limits)\n");
1429  fprintf(stderr, "Warning: no %%%%Page comments generated.\n");
1430  } else {
1431  isepsf = epsftest(sect->bos);
1432  if (isepsf)
1433  fprintf(bitfile, "%%!PS-Adobe-2.0 EPSF-2.0\n");
1434  else
1435  fprintf(bitfile, "%%!PS-Adobe-2.0\n");
1436  }
1437  if (tryepsf && isepsf == 0)
1438  error("We tried, but couldn't make it EPSF.");
1439  fprintf(bitfile, "%%%%Creator: %s\n", banner + 8);
1440  if (*titlename)
1441  fprintf(bitfile, "%%%%Title: %s\n", titlename);
1442  else if (*iname)
1443  fprintf(bitfile, "%%%%Title: %s\n", xbasename(iname));
1444 #ifdef CREATIONDATE
1446  if (jobtime == INVALID_EPOCH_VALUE) {
1447  jobtime = time(0);
1448  }
1449  fprintf(bitfile, "%%%%CreationDate: %s", asctime(gmtime(&jobtime)));
1450 #endif
1451  if (! isepsf) {
1452 /*
1453  * Normally, we wouldn't want to add that second field
1454  * indicating that the page order is reversed, as per page
1455  * 644 of the Red book. But we have to, for many existing
1456  * spoolers.
1457  */
1458  fprintf(bitfile, "%%%%Pages: %d%s\n", (sepfiles ? n : totalpages),
1459  (reverse?" -1":""));
1460  fprintf(bitfile, "%%%%PageOrder: %sscend\n", reverse?"De":"A");
1461  }
1462  if (landscape) {
1463  fprintf(bitfile, "%%%%Orientation: Landscape\n");
1464  fprintf(bitfile, "%%%%BoundingBox: 0 0 %d %d\n",
1466  } else if (isepsf)
1467  fprintf(bitfile, "%%%%BoundingBox: %s\n", isepsf);
1468  else
1469  fprintf(bitfile, "%%%%BoundingBox: 0 0 %d %d\n",
1473  fprintf(bitfile, "%%%%EndComments\n");
1474 /*
1475  * If we encode Type 3 fonts with an encoding vector, this can cause
1476  * Distiller's autoorientation to get confused. We remedy this by
1477  * emitting underdocumented ViewingOrientation comments right after
1478  * EndComments. Known defect: if a user "flips" the landscape to be
1479  * 180 degrees using one of the \special{} commands available, the
1480  * document will be rendered in the viewer upside down. (But only
1481  * with bitmap font encoding enabled and bitmapped fonts actually used.)
1482  * --tgr, 29 February 2020.
1483  */
1484  if (encodetype3 && bitmapfontseen) {
1485  fprintf(bitfile, "%%%%BeginDefaults\n") ;
1486  if (landscape) {
1487  fprintf(bitfile, "%%%%ViewingOrientation: 0 -1 1 0\n") ;
1488  } else {
1489  fprintf(bitfile, "%%%%ViewingOrientation: 1 0 0 1\n") ;
1490  }
1491  fprintf(bitfile, "%%%%EndDefaults\n") ;
1492  }
1493  }
1494  {
1495  int i, len;
1496  char *p;
1497 
1498 /*
1499  * Here, too, we have to be careful not to exceed the line length
1500  * limitation, if possible.
1501  */
1502  fprintf(bitfile, "%%DVIPSWebPage: %s\n", banner2);
1503  fprintf(bitfile, "%%DVIPSCommandLine:");
1504  len = 18;
1505  for (i=0; i<gargc; i++) {
1506  p = gargv[i];
1507  while (*p > ' ')
1508  p++;
1509  if (*p)
1510  len += 2;
1511  len += strlen(gargv[i]) + 1;
1512  if (len > LINELENGTH) {
1513  fprintf(bitfile, "\n%%+");
1514  len = strlen(gargv[i]) + 3;
1515  if (*p)
1516  len += 2;
1517  }
1518  fprintf(bitfile, (*p ? " \"%s\"" : " %s"), gargv[i]);
1519  }
1520  fprintf(bitfile, "\n%%DVIPSParameters: dpi=%d", actualdpi);
1521  if (actualdpi != vactualdpi)
1522  fprintf(bitfile, "x%d", vactualdpi);
1523  if (compressed)
1524  fprintf(bitfile, ", compressed");
1525  if (removecomments)
1526  fprintf(bitfile, ", comments removed");
1527  fputc('\n', bitfile);
1528  }
1529 #if defined(VMCMS) || defined (MVSXA) /* convert preamblecomment to ebcdic so we can read it */
1530  {
1531  int i;
1532  for ( i=0; preamblecomment[i]; i++ )
1533  preamblecomment[i] = ascii2ebcdic[preamblecomment[i]];
1534  }
1535 #endif
1536  fprintf(bitfile, "%%DVIPSSource: %s\n", preamblecomment);
1537  linepos = 0;
1538  endprologsent = 0;
1539  if (safetyenclose)
1540  fprintf(bitfile, "/SafetyEnclosure save def\n");
1542  if (! headers_off)
1543  send_headers();
1544 }
1545 void
1546 setup(void) {
1547  newline();
1548  if (endprologsent == 0 && !disablecomments) {
1549  fprintf(bitfile, "%%%%EndProlog\n");
1550  fprintf(bitfile, "%%%%BeginSetup\n");
1551  if (vactualdpi == actualdpi)
1552  fprintf(bitfile, "%%%%Feature: *Resolution %ddpi\n",
1553  actualdpi);
1554  else
1555  fprintf(bitfile, "%%%%Feature: *Resolution %dx%ddpi\n",
1557  if (multiplesects && *(finpapsiz->specdat)) {
1558  fprintf(bitfile, "TeXDict begin\n");
1560  fprintf(bitfile, "end\n");
1561  }
1562  if (manualfeed)
1563  fprintf(bitfile, "%%%%Feature: *ManualFeed True\n");
1564 #ifdef HPS
1565  if (!HPS_FLAG)
1566 #endif
1567  if (multiplesects)
1568  fprintf(bitfile, "%%%%EndSetup\n");
1569  }
1570  if (multiplesects && ! disablecomments)
1571  fprintf(bitfile, "%%DVIPSBeginSection\n");
1572  cmdout("TeXDict");
1573  cmdout("begin");
1574  if (endprologsent || disablecomments || multiplesects == 0) {
1575  fprintf(bitfile, "\n");
1577  }
1578  if (manualfeed) cmdout("@manualfeed");
1579  if (landscape) cmdout("@landscape");
1580  if (numcopies != 1) {
1582  cmdout("@copies");
1583  }
1584  cmdout("end");
1585  if (endprologsent == 0 && !disablecomments) {
1586  newline();
1587  endprologsent = 1;
1588 #ifdef HPS
1589  if (!HPS_FLAG)
1590 #endif
1591  if (! multiplesects)
1592  fprintf(bitfile, "%%%%EndSetup\n");
1593  }
1594 #ifdef HPS
1595  if (HPS_FLAG) {
1596  fclose(bitfile);
1597  set_bitfile("body.tmp",0);
1598  }
1599 #endif
1600 }
1601 /*
1602  * cleanprinter is the antithesis of the above routine.
1603  */
1604 void
1606 {
1607  fprintf(bitfile, "\n");
1608  fprintf(bitfile, "userdict /end-hook known{end-hook}if\n");
1609  if (safetyenclose)
1610  fprintf(bitfile, "SafetyEnclosure restore\n");
1611  if (!disablecomments)
1612  fprintf(bitfile, "%%%%EOF\n");
1613  if (sendcontrolD)
1614  putc(4, bitfile);
1615  if (ferror(bitfile))
1616  error("Problems with file writing; probably disk full.");
1617 #if !defined(MSDOS) || defined(__DJGPP__)
1618 #ifndef VMS
1619 #ifndef MVSXA
1620 #ifndef VMCMS
1621 #ifndef __THINK__
1622 #ifndef ATARIST
1623 #ifdef OS2
1624  if (_osmode == OS2_MODE)
1625 #endif
1626  if (popened)
1627  pclose(bitfile);
1628 #endif
1629 #endif
1630 #endif
1631 #endif
1632 #endif
1633 #endif
1634  if (popened == 0)
1635  fclose(bitfile);
1636  bitfile = NULL;
1637 }
1638 
1639 /* this tells dvips that it has no clue where it is. */
1640 static int thispage = 0;
1642 void
1643 psflush(void) {
1644  rulex = ruley = rhh = rvv = -314159265;
1645  lastfont = -1;
1646 }
1647 /*
1648  * pageinit initializes the output variables.
1649  */
1650 void
1652 {
1653  psflush();
1654  newline();
1655  thispage++;
1656  if (!disablecomments) {
1657  if (multiplesects)
1658 #ifdef SHORTINT
1659  fprintf(bitfile, "%%DVIPSSectionPage: %ld\n", pagenum);
1660  else if (! isepsf)
1661  fprintf(bitfile, "%%%%Page: %ld %d\n", pagenum, thispage);
1662 #else
1663  fprintf(bitfile, "%%DVIPSSectionPage: %d\n", pagenum);
1664  else if (! isepsf)
1665  fprintf(bitfile, "%%%%Page: %d %d\n", pagenum, thispage);
1666 #endif
1667  }
1668  linepos = 0;
1669  cmdout("TeXDict");
1670  cmdout("begin");
1671 #ifdef HPS
1672  if (HPS_FLAG) {
1673  cmdout("HPSdict");
1674  cmdout("begin");
1675  }
1676 #endif
1677  if (landscape) cmdout("@landscape");
1679  numout((integer)thispage-1);
1680  cmdout("bop");
1681  d = 0;
1682 }
1683 
1684 
1685 
1686 /*
1687  * This routine ends a page.
1688  */
1689 void
1690 pageend(void)
1691 {
1692  if (instring) {
1693  stringend();
1694  chrcmd('p');
1695  }
1696  if (dir)
1697  cmdout("-90 rotate");
1698  if (any_dir)
1699  cmdout("dyy");
1700  cmdout("eop");
1701  cmdout("end");
1702 #ifdef HPS
1703  if (HPS_FLAG)
1704  cmdout("end");
1705 #endif
1706 }
1707 
1708 /*
1709  * drawrule draws a rule at the specified position.
1710  * It does nothing to save/restore the current position,
1711  * or even draw the current string. (Rules are normally
1712  * set below the baseline anyway, so this saves us on
1713  * output size almost always.)
1714  */
1715 void
1717 {
1718  if (!dir) {
1719  numout((integer)hh);
1720  numout((integer)vv);
1721  } else {
1722  numout((integer)vv);
1723  numout((integer)-hh);
1724  }
1725  if (rw == rulex && rh == ruley)
1726  chrcmd('V');
1727  else {
1728  numout((integer)rw);
1729  numout((integer)rh);
1730  chrcmd('v');
1731  rulex = rw;
1732  ruley = rh;
1733  }
1734 }
1735 
1736 /*
1737  * drawchar draws a character at the specified position.
1738  */
1739 void
1741 {
1742  if (rdir != dir || fdir != curfnt->dir) {
1743  if (curfnt->dir == 9)
1744  setdir(dir+2);
1745  else
1746  setdir(dir);
1747  rdir = dir;
1748  fdir = curfnt->dir;
1749  }
1750 
1751  if (curfnt->iswide == 0 && curfnt->codewidth == 2) {
1752  Boolean savejflag = jflag;
1753  jflag = 1;
1754  hvpos();
1755  jflag = savejflag;
1756  if (lastfont != curfnt->psname)
1757  fontout(curfnt->psname);
1758  scout2(cc);
1759  }
1760  else if (curfnt->iswide) {
1761  if (lastfont != curfnt->psname)
1762  fontout(curfnt->psname);
1763  jscout(cc, curfnt->resfont->PSname);
1764  }
1765  else {
1766  if (jflag) {
1767  if (!dir){
1768  numout(hh);
1769  numout(vv);
1770  }
1771  else {
1772  numout(vv);
1773  numout(-hh);
1774  }
1775  chrcmd('a');
1776  rhh = hh;
1777  rvv = vv;
1778  }
1779  else hvpos();
1780  if (lastfont != curfnt->psname)
1781  fontout(curfnt->psname);
1782  scout((unsigned char)cc);
1783  }
1784  if (!dir)
1785  rhh = hh + c->pixelwidth; /* rvv = rv */
1786  else
1787  rvv = vv + c->pixelwidth; /* rhh = rh */
1788 }
1789 /*
1790  * This routine sends out the document fonts comment.
1791  */
1792 static void
1794  struct header_list *hl = ps_fonts_used;
1795  char *q;
1796  int roomleft = -1;
1797 
1798  if (hl == 0)
1799  return;
1800  while (0 != (q=get_name(&hl))) {
1801  if ((int)strlen(q) >= roomleft) {
1802  if (roomleft != -1) {
1803  fprintf(bitfile, "\n%%%%+");
1804  roomleft = LINELENGTH - 3;
1805  } else {
1806  fprintf(bitfile, "%%%%DocumentFonts:");
1807  roomleft = LINELENGTH - 16;
1808  }
1809  }
1810  fprintf(bitfile, " %s", q);
1811  roomleft -= strlen(q) + 1;
1812  }
1813  fprintf(bitfile, "\n");
1814 }
1815 
1816 static void print_composefont(void)
1817 {
1818  struct header_list *hl = ps_fonts_used;
1819  int len;
1820  char *q, *p;
1821 
1822  if (hl == 0)
1823  return;
1824  while (0 != (q=get_name(&hl))) {
1825  len = strlen(q);
1826  if(len > 11 && (!strncmp(q+len-10, "Identity-H", 10) ||
1827  !strncmp(q+len-10, "Identity-V", 10))) {
1828  fprintf(bitfile, "%%%%BeginFont: %s\n", q);
1829  fprintf(bitfile, "/%s ", q);
1830  fprintf(bitfile, "/%s ", q+len-10);
1831  fprintf(bitfile, "[/");
1832  for(p=q; p <= q+len-12; p++)
1833  fprintf(bitfile, "%c", *p);
1834  fprintf(bitfile, "] composefont pop\n");
1835  fprintf(bitfile, "%%%%EndFont\n");
1836  }
1837  }
1838 }
1839 
1840 static void setdir(int d)
1841 {
1842  if (instring) {
1843  stringend();
1844  chrcmd('p');
1845  }
1846  switch(d) {
1847  case 1 :
1848  cmdout("dyt");
1849  break;
1850  case 2 :
1851  cmdout("dty");
1852  break;
1853  case 3 :
1854  cmdout("dtt");
1855  break;
1856  default :
1857  cmdout("dyy");
1858  break;
1859  }
1860  linepos += 4;
1861  any_dir = 1;
1862 }
1863 
1864 void cmddir(void)
1865 {
1866  if (dir != rdir) {
1867  if (dir)
1868  cmdout("90 rotate");
1869  else
1870  cmdout("-90 rotate");
1871  rdir = dir;
1872  }
1873 }
1874 
1875 static int JIStoSJIS(int c)
1876 {
1877  int high, low;
1878  int nh,nl;
1879 
1880  high = (c>>8) & 0xff;
1881  low = c & 0xff;
1882  nh = ((high-0x21)>>1) + 0x81;
1883  if (nh>0x9f)
1884  nh += 0x40;
1885  if (high & 1) {
1886  nl = low + 0x1f;
1887  if (low>0x5f)
1888  nl++;
1889  }
1890  else
1891  nl = low + 0x7e;
1892  if (((nh >= 0x81 && nh <= 0x9f) || (nh >= 0xe0 && nh <= 0xfc)) &&
1893  (nl >= 0x40 && nl <= 0xfc && nl != 0x7f))
1894  return((nh<<8) | nl);
1895  else
1896  return(0x813f);
1897 }
return _Result< 0 ? -1 :_Result;} #line 1069 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vsnwprintf_s_l(wchar_t *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsnwprintf_s((*__local_stdio_printf_options()), _Buffer, _BufferCount, _MaxCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1091 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vsnwprintf_s(wchar_t *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, wchar_t const *const _Format, va_list _ArgList) { return _vsnwprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format,((void *) 0), _ArgList);} #line 1108 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snwprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snwprintf(wchar_t *_Buffer, size_t _BufferCount, wchar_t const *_Format,...);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_vsnwprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _vsnwprintf(wchar_t *_Buffer, size_t _BufferCount, wchar_t const *_Format, va_list _Args);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_vsnwprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _vsnwprintf(wchar_t *_Buffer, size_t _BufferCount, wchar_t const *_Format, va_list _ArgList) { return _vsnwprintf_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1133 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf_c_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vswprintf((*__local_stdio_printf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1163 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf_c(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, va_list _ArgList) { return _vswprintf_c_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1179 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vswprintf_c_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);} #line 1196 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl __vswprintf_l(wchar_t *const _Buffer, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vswprintf_l(_Buffer,(size_t) -1, _Format, _Locale, _ArgList);} #line 1212 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf(wchar_t *const _Buffer, wchar_t const *const _Format, va_list _ArgList) { return _vswprintf_l(_Buffer,(size_t) -1, _Format,((void *) 0), _ArgList);} #line 1227 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl vswprintf(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, va_list _ArgList) { return _vswprintf_c_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1243 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf_s_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vswprintf_s((*__local_stdio_printf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1264 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl vswprintf_s(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, va_list _ArgList) { return _vswprintf_s_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1281 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" #line 1283 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf_p_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vswprintf_p((*__local_stdio_printf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1312 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf_p(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, va_list _ArgList) { return _vswprintf_p_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1328 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vscwprintf_l(wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vswprintf((*__local_stdio_printf_options())|(1ULL<< 1),((void *) 0), 0, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1347 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vscwprintf(wchar_t const *const _Format, va_list _ArgList) { return _vscwprintf_l(_Format,((void *) 0), _ArgList);} #line 1361 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vscwprintf_p_l(wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vswprintf_p((*__local_stdio_printf_options())|(1ULL<< 1),((void *) 0), 0, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1380 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vscwprintf_p(wchar_t const *const _Format, va_list _ArgList) { return _vscwprintf_p_l(_Format,((void *) 0), _ArgList);} #line 1394 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl __swprintf_l(wchar_t *const _Buffer, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=__vswprintf_l(_Buffer, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1414 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swprintf_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_c_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1435 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swprintf(wchar_t *const _Buffer, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=__vswprintf_l(_Buffer, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1454 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl swprintf(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_c_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1474 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "__swprintf_l_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl __swprintf_l(wchar_t *_Buffer, wchar_t const *_Format, _locale_t _Locale,...);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_vswprintf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl __vswprintf_l(wchar_t *_Buffer, wchar_t const *_Format, _locale_t _Locale, va_list _Args);__declspec(deprecated("This function or variable may be unsafe. Consider using " "swprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _swprintf(wchar_t *_Buffer, wchar_t const *_Format,...);__declspec(deprecated("This function or variable may be unsafe. Consider using " "vswprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _vswprintf(wchar_t *_Buffer, wchar_t const *_Format, va_list _Args);__inline int __cdecl _swprintf_s_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_s_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1511 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl swprintf_s(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_s_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1532 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" #line 1534 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swprintf_p_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_p_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1562 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swprintf_p(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_p_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1582 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swprintf_c_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_c_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1603 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swprintf_c(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_c_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1623 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snwprintf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snwprintf_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwprintf_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1646 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _snwprintf(wchar_t *_Buffer, size_t _BufferCount, wchar_t const *_Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwprintf_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1668 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _snwprintf_s_l(wchar_t *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1690 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _snwprintf_s(wchar_t *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1711 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _scwprintf_l(wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscwprintf_l(_Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1737 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _scwprintf(wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscwprintf_l(_Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1755 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _scwprintf_p_l(wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscwprintf_p_l(_Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1774 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _scwprintf_p(wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscwprintf_p_l(_Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1792 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" #pragma warning(push) #pragma warning(disable:4141 6054) #pragma warning(pop) #line 1856 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" int __cdecl __stdio_common_vswscanf(unsigned __int64 _Options, wchar_t const *_Buffer, size_t _BufferCount, wchar_t const *_Format, _locale_t _Locale, va_list _ArgList);__inline int __cdecl _vswscanf_l(wchar_t const *const _Buffer, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vswscanf((*__local_stdio_scanf_options()), _Buffer,(size_t) -1, _Format, _Locale, _ArgList);} #line 1897 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl vswscanf(wchar_t const *_Buffer, wchar_t const *_Format, va_list _ArgList) { return _vswscanf_l(_Buffer, _Format,((void *) 0), _ArgList);} #line 1912 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswscanf_s_l(wchar_t const *const _Buffer, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vswscanf((*__local_stdio_scanf_options())|(1ULL<< 0), _Buffer,(size_t) -1, _Format, _Locale, _ArgList);} #line 1930 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl vswscanf_s(wchar_t const *const _Buffer, wchar_t const *const _Format, va_list _ArgList) { return _vswscanf_s_l(_Buffer, _Format,((void *) 0), _ArgList);} #line 1947 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" #line 1949 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_vsnwscanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _vsnwscanf_l(wchar_t const *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vswscanf((*__local_stdio_scanf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);} #line 1976 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vsnwscanf_s_l(wchar_t const *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vswscanf((*__local_stdio_scanf_options())|(1ULL<< 0), _Buffer, _BufferCount, _Format, _Locale, _ArgList);} #line 1995 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_swscanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _swscanf_l(wchar_t const *const _Buffer, wchar_t const *const _Format, _locale_t _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswscanf_l(_Buffer, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2015 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "swscanf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl swscanf(wchar_t const *const _Buffer, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswscanf_l(_Buffer, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2034 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swscanf_s_l(wchar_t const *const _Buffer, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswscanf_s_l(_Buffer, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2054 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl swscanf_s(wchar_t const *const _Buffer, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswscanf_s_l(_Buffer, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2075 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" #line 2077 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snwscanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snwscanf_l(wchar_t const *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwscanf_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2100 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snwscanf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snwscanf(wchar_t const *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwscanf_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2122 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _snwscanf_s_l(wchar_t const *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwscanf_s_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2143 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _snwscanf_s(wchar_t const *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwscanf_s_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2163 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __pragma(pack(pop))#pragma warning(pop) #pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) __pragma(pack(push, 8)) typedef __int64 fpos_t;errno_t __cdecl _get_stream_buffer_pointers(FILE *_Stream, char ***_Base, char ***_Pointer, int **_Count);errno_t __cdecl clearerr_s(FILE *_Stream);errno_t __cdecl fopen_s(FILE **_Stream, char const *_FileName, char const *_Mode);size_t __cdecl fread_s(void *_Buffer, size_t _BufferSize, size_t _ElementSize, size_t _ElementCount, FILE *_Stream);errno_t __cdecl freopen_s(FILE **_Stream, char const *_FileName, char const *_Mode, FILE *_OldStream);char *__cdecl gets_s(char *_Buffer, rsize_t _Size);errno_t __cdecl tmpfile_s(FILE **_Stream);errno_t __cdecl tmpnam_s(char *_Buffer, rsize_t _Size);#line 145 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" void __cdecl clearerr(FILE *_Stream);int __cdecl fclose(FILE *_Stream);int __cdecl _fcloseall(void);FILE *__cdecl _fdopen(int _FileHandle, char const *_Mode);int __cdecl feof(FILE *_Stream);int __cdecl ferror(FILE *_Stream);int __cdecl fflush(FILE *_Stream);int __cdecl fgetc(FILE *_Stream);int __cdecl _fgetchar(void);int __cdecl fgetpos(FILE *_Stream, fpos_t *_Position);char *__cdecl fgets(char *_Buffer, int _MaxCount, FILE *_Stream);int __cdecl _fileno(FILE *_Stream);int __cdecl _flushall(void);__declspec(deprecated("This function or variable may be unsafe. Consider using " "fopen_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) FILE *__cdecl fopen(char const *_FileName, char const *_Mode);int __cdecl fputc(int _Character, FILE *_Stream);int __cdecl _fputchar(int _Character);int __cdecl fputs(char const *_Buffer, FILE *_Stream);size_t __cdecl fread(void *_Buffer, size_t _ElementSize, size_t _ElementCount, FILE *_Stream);__declspec(deprecated("This function or variable may be unsafe. Consider using " "freopen_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) FILE *__cdecl freopen(char const *_FileName, char const *_Mode, FILE *_Stream);FILE *__cdecl _fsopen(char const *_FileName, char const *_Mode, int _ShFlag);int __cdecl fsetpos(FILE *_Stream, fpos_t const *_Position);int __cdecl fseek(FILE *_Stream, long _Offset, int _Origin);int __cdecl _fseeki64(FILE *_Stream, __int64 _Offset, int _Origin);long __cdecl ftell(FILE *_Stream);__int64 __cdecl _ftelli64(FILE *_Stream);size_t __cdecl fwrite(void const *_Buffer, size_t _ElementSize, size_t _ElementCount, FILE *_Stream);int __cdecl getc(FILE *_Stream);int __cdecl getchar(void);int __cdecl _getmaxstdio(void);int __cdecl _getw(FILE *_Stream);void __cdecl perror(char const *_ErrorMessage);int __cdecl _pclose(FILE *_Stream);FILE *__cdecl _popen(char const *_Command, char const *_Mode);#line 344 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" int __cdecl putc(int _Character, FILE *_Stream);int __cdecl putchar(int _Character);int __cdecl puts(char const *_Buffer);int __cdecl _putw(int _Word, FILE *_Stream);int __cdecl remove(char const *_FileName);int __cdecl rename(char const *_OldFileName, char const *_NewFileName);int __cdecl _unlink(char const *_FileName);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_unlink" ". See online help for details.")) int __cdecl unlink(char const *_FileName);#line 391 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" void __cdecl rewind(FILE *_Stream);int __cdecl _rmtmp(void);__declspec(deprecated("This function or variable may be unsafe. Consider using " "setvbuf" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) void __cdecl setbuf(FILE *_Stream, char *_Buffer);int __cdecl _setmaxstdio(int _Maximum);int __cdecl setvbuf(FILE *_Stream, char *_Buffer, int _Mode, size_t _Size);__declspec(allocator) char *__cdecl _tempnam(char const *_DirectoryName, char const *_FilePrefix);__declspec(deprecated("This function or variable may be unsafe. Consider using " "tmpfile_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) FILE *__cdecl tmpfile(void);__declspec(deprecated("This function or variable may be unsafe. Consider using " "tmpnam_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl tmpnam(char *_Buffer);int __cdecl ungetc(int _Character, FILE *_Stream);void __cdecl _lock_file(FILE *_Stream);void __cdecl _unlock_file(FILE *_Stream);int __cdecl _fclose_nolock(FILE *_Stream);int __cdecl _fflush_nolock(FILE *_Stream);int __cdecl _fgetc_nolock(FILE *_Stream);int __cdecl _fputc_nolock(int _Character, FILE *_Stream);size_t __cdecl _fread_nolock(void *_Buffer, size_t _ElementSize, size_t _ElementCount, FILE *_Stream);size_t __cdecl _fread_nolock_s(void *_Buffer, size_t _BufferSize, size_t _ElementSize, size_t _ElementCount, FILE *_Stream);int __cdecl _fseek_nolock(FILE *_Stream, long _Offset, int _Origin);int __cdecl _fseeki64_nolock(FILE *_Stream, __int64 _Offset, int _Origin);long __cdecl _ftell_nolock(FILE *_Stream);__int64 __cdecl _ftelli64_nolock(FILE *_Stream);size_t __cdecl _fwrite_nolock(void const *_Buffer, size_t _ElementSize, size_t _ElementCount, FILE *_Stream);int __cdecl _getc_nolock(FILE *_Stream);int __cdecl _putc_nolock(int _Character, FILE *_Stream);int __cdecl _ungetc_nolock(int _Character, FILE *_Stream);int *__cdecl __p__commode(void);#line 596 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" int __cdecl __stdio_common_vfprintf(unsigned __int64 _Options, FILE *_Stream, char const *_Format, _locale_t _Locale, va_list _ArgList);int __cdecl __stdio_common_vfprintf_s(unsigned __int64 _Options, FILE *_Stream, char const *_Format, _locale_t _Locale, va_list _ArgList);int __cdecl __stdio_common_vfprintf_p(unsigned __int64 _Options, FILE *_Stream, char const *_Format, _locale_t _Locale, va_list _ArgList);__inline int __cdecl _vfprintf_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vfprintf((*__local_stdio_printf_options()), _Stream, _Format, _Locale, _ArgList);} #line 648 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vfprintf(FILE *const _Stream, char const *const _Format, va_list _ArgList) { return _vfprintf_l(_Stream, _Format,((void *) 0), _ArgList);} #line 662 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vfprintf_s_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vfprintf_s((*__local_stdio_printf_options()), _Stream, _Format, _Locale, _ArgList);} #line 677 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vfprintf_s(FILE *const _Stream, char const *const _Format, va_list _ArgList) { return _vfprintf_s_l(_Stream, _Format,((void *) 0), _ArgList);} #line 693 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 695 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vfprintf_p_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vfprintf_p((*__local_stdio_printf_options()), _Stream, _Format, _Locale, _ArgList);} #line 710 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vfprintf_p(FILE *const _Stream, char const *const _Format, va_list _ArgList) { return _vfprintf_p_l(_Stream, _Format,((void *) 0), _ArgList);} #line 724 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vprintf_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vfprintf_l((__acrt_iob_func(1)), _Format, _Locale, _ArgList);} #line 738 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vprintf(char const *const _Format, va_list _ArgList) { return _vfprintf_l((__acrt_iob_func(1)), _Format,((void *) 0), _ArgList);} #line 751 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vprintf_s_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vfprintf_s_l((__acrt_iob_func(1)), _Format, _Locale, _ArgList);} #line 765 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vprintf_s(char const *const _Format, va_list _ArgList) { return _vfprintf_s_l((__acrt_iob_func(1)), _Format,((void *) 0), _ArgList);} #line 780 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 782 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vprintf_p_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vfprintf_p_l((__acrt_iob_func(1)), _Format, _Locale, _ArgList);} #line 796 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vprintf_p(char const *const _Format, va_list _ArgList) { return _vfprintf_p_l((__acrt_iob_func(1)), _Format,((void *) 0), _ArgList);} #line 809 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _fprintf_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_l(_Stream, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 828 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl fprintf(FILE *const _Stream, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_l(_Stream, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 846 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" int __cdecl _set_printf_count_output(int _Value);int __cdecl _get_printf_count_output(void);__inline int __cdecl _fprintf_s_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_s_l(_Stream, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 871 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl fprintf_s(FILE *const _Stream, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_s_l(_Stream, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 891 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 893 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _fprintf_p_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_p_l(_Stream, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 912 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _fprintf_p(FILE *const _Stream, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_p_l(_Stream, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 930 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _printf_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_l((__acrt_iob_func(1)), _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 948 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl printf(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_l((__acrt_iob_func(1)), _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 965 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _printf_s_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_s_l((__acrt_iob_func(1)), _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 983 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl printf_s(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_s_l((__acrt_iob_func(1)), _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1002 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1004 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _printf_p_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_p_l((__acrt_iob_func(1)), _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1022 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _printf_p(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_p_l((__acrt_iob_func(1)), _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1039 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" int __cdecl __stdio_common_vfscanf(unsigned __int64 _Options, FILE *_Stream, char const *_Format, _locale_t _Locale, va_list _Arglist);__inline int __cdecl _vfscanf_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vfscanf((*__local_stdio_scanf_options()), _Stream, _Format, _Locale, _ArgList);} #line 1070 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vfscanf(FILE *const _Stream, char const *const _Format, va_list _ArgList) { return _vfscanf_l(_Stream, _Format,((void *) 0), _ArgList);} #line 1084 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vfscanf_s_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vfscanf((*__local_stdio_scanf_options())|(1ULL<< 0), _Stream, _Format, _Locale, _ArgList);} #line 1101 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vfscanf_s(FILE *const _Stream, char const *const _Format, va_list _ArgList) { return _vfscanf_s_l(_Stream, _Format,((void *) 0), _ArgList);} #line 1118 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1120 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vscanf_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vfscanf_l((__acrt_iob_func(0)), _Format, _Locale, _ArgList);} #line 1134 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vscanf(char const *const _Format, va_list _ArgList) { return _vfscanf_l((__acrt_iob_func(0)), _Format,((void *) 0), _ArgList);} #line 1147 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vscanf_s_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vfscanf_s_l((__acrt_iob_func(0)), _Format, _Locale, _ArgList);} #line 1161 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vscanf_s(char const *const _Format, va_list _ArgList) { return _vfscanf_s_l((__acrt_iob_func(0)), _Format,((void *) 0), _ArgList);} #line 1176 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1178 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_fscanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _fscanf_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_l(_Stream, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1197 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "fscanf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl fscanf(FILE *const _Stream, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_l(_Stream, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1215 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _fscanf_s_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_s_l(_Stream, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1234 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl fscanf_s(FILE *const _Stream, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_s_l(_Stream, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1254 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1256 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_scanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _scanf_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_l((__acrt_iob_func(0)), _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1274 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "scanf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl scanf(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_l((__acrt_iob_func(0)), _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1291 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _scanf_s_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_s_l((__acrt_iob_func(0)), _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1309 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl scanf_s(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_s_l((__acrt_iob_func(0)), _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1328 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1330 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" int __cdecl __stdio_common_vsprintf(unsigned __int64 _Options, char *_Buffer, size_t _BufferCount, char const *_Format, _locale_t _Locale, va_list _ArgList);int __cdecl __stdio_common_vsprintf_s(unsigned __int64 _Options, char *_Buffer, size_t _BufferCount, char const *_Format, _locale_t _Locale, va_list _ArgList);int __cdecl __stdio_common_vsnprintf_s(unsigned __int64 _Options, char *_Buffer, size_t _BufferCount, size_t _MaxCount, char const *_Format, _locale_t _Locale, va_list _ArgList);int __cdecl __stdio_common_vsprintf_p(unsigned __int64 _Options, char *_Buffer, size_t _BufferCount, char const *_Format, _locale_t _Locale, va_list _ArgList);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_vsnprintf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _vsnprintf_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsprintf((*__local_stdio_printf_options())|(1ULL<< 0), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1399 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsnprintf(char *const _Buffer, size_t const _BufferCount, char const *const _Format, va_list _ArgList) { return _vsnprintf_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1415 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vsnprintf(char *const _Buffer, size_t const _BufferCount, char const *const _Format, va_list _ArgList) { int const _Result=__stdio_common_vsprintf((*__local_stdio_printf_options())|(1ULL<< 1), _Buffer, _BufferCount, _Format,((void *) 0), _ArgList);return _Result< 0 ? -1 :_Result;} #line 1446 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_vsprintf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _vsprintf_l(char *const _Buffer, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vsnprintf_l(_Buffer,(size_t) -1, _Format, _Locale, _ArgList);} #line 1462 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "vsprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl vsprintf(char *const _Buffer, char const *const _Format, va_list _ArgList) { return _vsnprintf_l(_Buffer,(size_t) -1, _Format,((void *) 0), _ArgList);} #line 1477 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsprintf_s_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsprintf_s((*__local_stdio_printf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1498 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vsprintf_s(char *const _Buffer, size_t const _BufferCount, char const *const _Format, va_list _ArgList) { return _vsprintf_s_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1516 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1526 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsprintf_p_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsprintf_p((*__local_stdio_printf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1547 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsprintf_p(char *const _Buffer, size_t const _BufferCount, char const *const _Format, va_list _ArgList) { return _vsprintf_p_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1563 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsnprintf_s_l(char *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsnprintf_s((*__local_stdio_printf_options()), _Buffer, _BufferCount, _MaxCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1585 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsnprintf_s(char *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, char const *const _Format, va_list _ArgList) { return _vsnprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format,((void *) 0), _ArgList);} #line 1602 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vsnprintf_s(char *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, char const *const _Format, va_list _ArgList) { return _vsnprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format,((void *) 0), _ArgList);} #line 1630 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1641 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vscprintf_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsprintf((*__local_stdio_printf_options())|(1ULL<< 1),((void *) 0), 0, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1659 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vscprintf(char const *const _Format, va_list _ArgList) { return _vscprintf_l(_Format,((void *) 0), _ArgList);} #line 1672 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vscprintf_p_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsprintf_p((*__local_stdio_printf_options())|(1ULL<< 1),((void *) 0), 0, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1690 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vscprintf_p(char const *const _Format, va_list _ArgList) { return _vscprintf_p_l(_Format,((void *) 0), _ArgList);} #line 1703 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsnprintf_c_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsprintf((*__local_stdio_printf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1723 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsnprintf_c(char *const _Buffer, size_t const _BufferCount, char const *const _Format, va_list _ArgList) { return _vsnprintf_c_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1739 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_sprintf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _sprintf_l(char *const _Buffer, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsprintf_l(_Buffer, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1761 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl sprintf(char *const _Buffer, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsprintf_l(_Buffer, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1782 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "sprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) int __cdecl sprintf(char *_Buffer, char const *_Format,...);__declspec(deprecated("This function or variable may be unsafe. Consider using " "vsprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) int __cdecl vsprintf(char *_Buffer, char const *_Format, va_list _Args);__inline int __cdecl _sprintf_s_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsprintf_s_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1810 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl sprintf_s(char *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsprintf_s_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1832 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1834 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _sprintf_p_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsprintf_p_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1862 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _sprintf_p(char *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsprintf_p_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1882 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snprintf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snprintf_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnprintf_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1905 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl snprintf(char *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=vsnprintf(_Buffer, _BufferCount, _Format, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1936 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _snprintf(char *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnprintf(_Buffer, _BufferCount, _Format, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1956 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) int __cdecl _snprintf(char *_Buffer, size_t _BufferCount, char const *_Format,...);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_vsnprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) int __cdecl _vsnprintf(char *_Buffer, size_t _BufferCount, char const *_Format, va_list _Args);__inline int __cdecl _snprintf_c_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnprintf_c_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1986 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _snprintf_c(char *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnprintf_c_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2006 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _snprintf_s_l(char *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2028 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _snprintf_s(char *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2049 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _scprintf_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscprintf_l(_Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2075 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _scprintf(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscprintf_l(_Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2092 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _scprintf_p_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscprintf_p_l(_Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2110 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _scprintf_p(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscprintf_p(_Format, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2127 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" int __cdecl __stdio_common_vsscanf(unsigned __int64 _Options, char const *_Buffer, size_t _BufferCount, char const *_Format, _locale_t _Locale, va_list _ArgList);__inline int __cdecl _vsscanf_l(char const *const _Buffer, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vsscanf((*__local_stdio_scanf_options()), _Buffer,(size_t) -1, _Format, _Locale, _ArgList);} #line 2158 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vsscanf(char const *const _Buffer, char const *const _Format, va_list _ArgList) { return _vsscanf_l(_Buffer, _Format,((void *) 0), _ArgList);} #line 2172 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsscanf_s_l(char const *const _Buffer, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vsscanf((*__local_stdio_scanf_options())|(1ULL<< 0), _Buffer,(size_t) -1, _Format, _Locale, _ArgList);} #line 2189 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #pragma warning(push) #pragma warning(disable:6530) __inline int __cdecl vsscanf_s(char const *const _Buffer, char const *const _Format, va_list _ArgList) { return _vsscanf_s_l(_Buffer, _Format,((void *) 0), _ArgList);} #line 2208 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #pragma warning(pop) #line 2219 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_sscanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _sscanf_l(char const *const _Buffer, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsscanf_l(_Buffer, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2238 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "sscanf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl sscanf(char const *const _Buffer, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsscanf_l(_Buffer, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2256 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _sscanf_s_l(char const *const _Buffer, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsscanf_s_l(_Buffer, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2275 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl sscanf_s(char const *const _Buffer, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=vsscanf_s(_Buffer, _Format, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2297 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 2299 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #pragma warning(push) #pragma warning(disable:6530) __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snscanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snscanf_l(char const *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=__stdio_common_vsscanf((*__local_stdio_scanf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2326 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snscanf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snscanf(char const *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=__stdio_common_vsscanf((*__local_stdio_scanf_options()), _Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2349 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _snscanf_s_l(char const *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=__stdio_common_vsscanf((*__local_stdio_scanf_options())|(1ULL<< 0), _Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2374 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _snscanf_s(char const *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=__stdio_common_vsscanf((*__local_stdio_scanf_options())|(1ULL<< 0), _Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2397 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #pragma warning(pop) __declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_tempnam" ". See online help for details.")) char *__cdecl tempnam(char const *_Directory, char const *_FilePrefix);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_fcloseall" ". See online help for details.")) int __cdecl fcloseall(void);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_fdopen" ". See online help for details.")) FILE *__cdecl fdopen(int _FileHandle, char const *_Format);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_fgetchar" ". See online help for details.")) int __cdecl fgetchar(void);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_fileno" ". See online help for details.")) int __cdecl fileno(FILE *_Stream);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_flushall" ". See online help for details.")) int __cdecl flushall(void);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_fputchar" ". See online help for details.")) int __cdecl fputchar(int _Ch);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_getw" ". See online help for details.")) int __cdecl getw(FILE *_Stream);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_putw" ". See online help for details.")) int __cdecl putw(int _Ch, FILE *_Stream);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_rmtmp" ". See online help for details.")) int __cdecl rmtmp(void);#line 2441 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h"__pragma(pack(pop))#pragma warning(pop) #pragma once#pragma once#pragma once#pragma once#pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) __pragma(pack(push, 8)) int *__cdecl _errno(void);errno_t __cdecl _set_errno(int _Value);errno_t __cdecl _get_errno(int *_Value);unsigned long *__cdecl __doserrno(void);errno_t __cdecl _set_doserrno(unsigned long _Value);errno_t __cdecl _get_doserrno(unsigned long *_Value);__pragma(pack(pop))#pragma warning(pop) #pragma once#pragma warning(push)#pragma warning(disable:4514 4820) __pragma(pack(push, 8)) void *__cdecl memchr(void const *_Buf, int _Val, size_t _MaxCount);int __cdecl memcmp(void const *_Buf1, void const *_Buf2, size_t _Size);void *__cdecl memcpy(void *_Dst, void const *_Src, size_t _Size);void *__cdecl memmove(void *_Dst, void const *_Src, size_t _Size);void *__cdecl memset(void *_Dst, int _Val, size_t _Size);char *__cdecl strchr(char const *_Str, int _Val);char *__cdecl strrchr(char const *_Str, int _Ch);char *__cdecl strstr(char const *_Str, char const *_SubStr);wchar_t *__cdecl wcschr(wchar_t const *_Str, wchar_t _Ch);wchar_t *__cdecl wcsrchr(wchar_t const *_Str, wchar_t _Ch);wchar_t *__cdecl wcsstr(wchar_t const *_Str, wchar_t const *_SubStr);__pragma(pack(pop))#pragma warning(pop) #pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) __pragma(pack(push, 8)) static __inline errno_t __cdecl memcpy_s(void *const _Destination, rsize_t const _DestinationSize, void const *const _Source, rsize_t const _SourceSize) { if(_SourceSize==0) { return 0;} { int _Expr_val=!!(_Destination !=((void *) 0));if(!(_Expr_val)) {(*_errno())=22;_invalid_parameter_noinfo();return 22;} } ;if(_Source==((void *) 0)||_DestinationSize< _SourceSize) { memset(_Destination, 0, _DestinationSize);{ int _Expr_val=!!(_Source !=((void *) 0));if(!(_Expr_val)) {(*_errno())=22;_invalid_parameter_noinfo();return 22;} } ;{ int _Expr_val=!!(_DestinationSize >=_SourceSize);if(!(_Expr_val)) {(*_errno())=34;_invalid_parameter_noinfo();return 34;} } ;return 22 ;} memcpy(_Destination, _Source, _SourceSize);return 0;} static __inline errno_t __cdecl memmove_s(void *const _Destination, rsize_t const _DestinationSize, void const *const _Source, rsize_t const _SourceSize) { if(_SourceSize==0) { return 0;} { int _Expr_val=!!(_Destination !=((void *) 0));if(!(_Expr_val)) {(*_errno())=22;_invalid_parameter_noinfo();return 22;} } ;{ int _Expr_val=!!(_Source !=((void *) 0));if(!(_Expr_val)) {(*_errno())=22;_invalid_parameter_noinfo();return 22;} } ;{ int _Expr_val=!!(_DestinationSize >=_SourceSize);if(!(_Expr_val)) {(*_errno())=34;_invalid_parameter_noinfo();return 34;} } ;memmove(_Destination, _Source, _SourceSize);return 0;}#pragma warning(pop) __pragma(pack(pop))#pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) __pragma(pack(push, 8)) int __cdecl _memicmp(void const *_Buf1, void const *_Buf2, size_t _Size);int __cdecl _memicmp_l(void const *_Buf1, void const *_Buf2, size_t _Size, _locale_t _Locale);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_memccpy" ". See online help for details.")) void *__cdecl memccpy(void *_Dst, void const *_Src, int _Val, size_t _Size);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_memicmp" ". See online help for details.")) int __cdecl memicmp(void const *_Buf1, void const *_Buf2, size_t _Size);__pragma(pack(pop))#pragma warning(pop) #pragma once#pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) __pragma(pack(push, 8)) errno_t __cdecl wcscat_s(wchar_t *_Destination, rsize_t _SizeInWords, wchar_t const *_Source);errno_t __cdecl wcscpy_s(wchar_t *_Destination, rsize_t _SizeInWords, wchar_t const *_Source);errno_t __cdecl wcsncat_s(wchar_t *_Destination, rsize_t _SizeInWords, wchar_t const *_Source, rsize_t _MaxCount);errno_t __cdecl wcsncpy_s(wchar_t *_Destination, rsize_t _SizeInWords, wchar_t const *_Source, rsize_t _MaxCount);wchar_t *__cdecl wcstok_s(wchar_t *_String, wchar_t const *_Delimiter, wchar_t **_Context);__declspec(allocator) wchar_t *__cdecl _wcsdup(wchar_t const *_String);__declspec(deprecated("This function or variable may be unsafe. Consider using " "wcscat_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl wcscat(wchar_t *_Destination, wchar_t const *_Source);int __cdecl wcscmp(wchar_t const *_String1, wchar_t const *_String2);__declspec(deprecated("This function or variable may be unsafe. Consider using " "wcscpy_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl wcscpy(wchar_t *_Destination, wchar_t const *_Source);size_t __cdecl wcscspn(wchar_t const *_String, wchar_t const *_Control);size_t __cdecl wcslen(wchar_t const *_String);size_t __cdecl wcsnlen(wchar_t const *_Source, size_t _MaxCount);static __inline size_t __cdecl wcsnlen_s(wchar_t const *_Source, size_t _MaxCount) { return(_Source==0) ? 0 :wcsnlen(_Source, _MaxCount);}__declspec(deprecated("This function or variable may be unsafe. Consider using " "wcsncat_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl wcsncat(wchar_t *_Destination, wchar_t const *_Source, size_t _Count);int __cdecl wcsncmp(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount);__declspec(deprecated("This function or variable may be unsafe. Consider using " "wcsncpy_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl wcsncpy(wchar_t *_Destination, wchar_t const *_Source, size_t _Count);wchar_t *__cdecl wcspbrk(wchar_t const *_String, wchar_t const *_Control);size_t __cdecl wcsspn(wchar_t const *_String, wchar_t const *_Control);__declspec(deprecated("This function or variable may be unsafe. Consider using " "wcstok_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl wcstok(wchar_t *_String, wchar_t const *_Delimiter, wchar_t **_Context);#line 237 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstring.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "wcstok_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) static __inline wchar_t *__cdecl _wcstok(wchar_t *const _String, wchar_t const *const _Delimiter) { return wcstok(_String, _Delimiter, 0);} __declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcserror_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcserror(int _ErrorNumber);errno_t __cdecl _wcserror_s(wchar_t *_Buffer, size_t _SizeInWords, int _ErrorNumber);__declspec(deprecated("This function or variable may be unsafe. Consider using " "__wcserror_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl __wcserror(wchar_t const *_String);errno_t __cdecl __wcserror_s(wchar_t *_Buffer, size_t _SizeInWords, wchar_t const *_ErrorMessage);int __cdecl _wcsicmp(wchar_t const *_String1, wchar_t const *_String2);int __cdecl _wcsicmp_l(wchar_t const *_String1, wchar_t const *_String2, _locale_t _Locale);int __cdecl _wcsnicmp(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount);int __cdecl _wcsnicmp_l(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount, _locale_t _Locale);errno_t __cdecl _wcsnset_s(wchar_t *_Destination, size_t _SizeInWords, wchar_t _Value, size_t _MaxCount);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcsnset_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcsnset(wchar_t *_String, wchar_t _Value, size_t _MaxCount);wchar_t *__cdecl _wcsrev(wchar_t *_String);errno_t __cdecl _wcsset_s(wchar_t *_Destination, size_t _SizeInWords, wchar_t _Value);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcsset_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcsset(wchar_t *_String, wchar_t _Value);errno_t __cdecl _wcslwr_s(wchar_t *_String, size_t _SizeInWords);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcslwr_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcslwr(wchar_t *_String);errno_t __cdecl _wcslwr_s_l(wchar_t *_String, size_t _SizeInWords, _locale_t _Locale);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcslwr_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcslwr_l(wchar_t *_String, _locale_t _Locale);errno_t __cdecl _wcsupr_s(wchar_t *_String, size_t _Size);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcsupr_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcsupr(wchar_t *_String);errno_t __cdecl _wcsupr_s_l(wchar_t *_String, size_t _Size, _locale_t _Locale);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcsupr_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcsupr_l(wchar_t *_String, _locale_t _Locale);size_t __cdecl wcsxfrm(wchar_t *_Destination, wchar_t const *_Source, size_t _MaxCount);size_t __cdecl _wcsxfrm_l(wchar_t *_Destination, wchar_t const *_Source, size_t _MaxCount, _locale_t _Locale);int __cdecl wcscoll(wchar_t const *_String1, wchar_t const *_String2);int __cdecl _wcscoll_l(wchar_t const *_String1, wchar_t const *_String2, _locale_t _Locale);int __cdecl _wcsicoll(wchar_t const *_String1, wchar_t const *_String2);int __cdecl _wcsicoll_l(wchar_t const *_String1, wchar_t const *_String2, _locale_t _Locale);int __cdecl _wcsncoll(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount);int __cdecl _wcsncoll_l(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount, _locale_t _Locale);int __cdecl _wcsnicoll(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount);int __cdecl _wcsnicoll_l(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount, _locale_t _Locale);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsdup" ". See online help for details.")) wchar_t *__cdecl wcsdup(wchar_t const *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsicmp" ". See online help for details.")) int __cdecl wcsicmp(wchar_t const *_String1, wchar_t const *_String2);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsnicmp" ". See online help for details.")) int __cdecl wcsnicmp(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsnset" ". See online help for details.")) wchar_t *__cdecl wcsnset(wchar_t *_String, wchar_t _Value, size_t _MaxCount);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsrev" ". See online help for details.")) wchar_t *__cdecl wcsrev(wchar_t *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsset" ". See online help for details.")) wchar_t *__cdecl wcsset(wchar_t *_String, wchar_t _Value);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcslwr" ". See online help for details.")) wchar_t *__cdecl wcslwr(wchar_t *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsupr" ". See online help for details.")) wchar_t *__cdecl wcsupr(wchar_t *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsicoll" ". See online help for details.")) int __cdecl wcsicoll(wchar_t const *_String1, wchar_t const *_String2);__pragma(pack(pop))#pragma warning(pop) #pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) __pragma(pack(push, 8)) errno_t __cdecl strcpy_s(char *_Destination, rsize_t _SizeInBytes, char const *_Source);errno_t __cdecl strcat_s(char *_Destination, rsize_t _SizeInBytes, char const *_Source);errno_t __cdecl strerror_s(char *_Buffer, size_t _SizeInBytes, int _ErrorNumber);errno_t __cdecl strncat_s(char *_Destination, rsize_t _SizeInBytes, char const *_Source, rsize_t _MaxCount);errno_t __cdecl strncpy_s(char *_Destination, rsize_t _SizeInBytes, char const *_Source, rsize_t _MaxCount);char *__cdecl strtok_s(char *_String, char const *_Delimiter, char **_Context);void *__cdecl _memccpy(void *_Dst, void const *_Src, int _Val, size_t _MaxCount);__declspec(deprecated("This function or variable may be unsafe. Consider using " "strcat_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl strcat(char *_Destination, char const *_Source);int __cdecl strcmp(char const *_Str1, char const *_Str2);int __cdecl _strcmpi(char const *_String1, char const *_String2);int __cdecl strcoll(char const *_String1, char const *_String2);int __cdecl _strcoll_l(char const *_String1, char const *_String2, _locale_t _Locale);__declspec(deprecated("This function or variable may be unsafe. Consider using " "strcpy_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl strcpy(char *_Destination, char const *_Source);size_t __cdecl strcspn(char const *_Str, char const *_Control);__declspec(allocator) char *__cdecl _strdup(char const *_Source);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strerror_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strerror(char const *_ErrorMessage);errno_t __cdecl _strerror_s(char *_Buffer, size_t _SizeInBytes, char const *_ErrorMessage);__declspec(deprecated("This function or variable may be unsafe. Consider using " "strerror_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl strerror(int _ErrorMessage);int __cdecl _stricmp(char const *_String1, char const *_String2);int __cdecl _stricoll(char const *_String1, char const *_String2);int __cdecl _stricoll_l(char const *_String1, char const *_String2, _locale_t _Locale);int __cdecl _stricmp_l(char const *_String1, char const *_String2, _locale_t _Locale);size_t __cdecl strlen(char const *_Str);errno_t __cdecl _strlwr_s(char *_String, size_t _Size);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strlwr_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strlwr(char *_String);errno_t __cdecl _strlwr_s_l(char *_String, size_t _Size, _locale_t _Locale);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strlwr_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strlwr_l(char *_String, _locale_t _Locale);__declspec(deprecated("This function or variable may be unsafe. Consider using " "strncat_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl strncat(char *_Destination, char const *_Source, size_t _Count);int __cdecl strncmp(char const *_Str1, char const *_Str2, size_t _MaxCount);int __cdecl _strnicmp(char const *_String1, char const *_String2, size_t _MaxCount);int __cdecl _strnicmp_l(char const *_String1, char const *_String2, size_t _MaxCount, _locale_t _Locale);int __cdecl _strnicoll(char const *_String1, char const *_String2, size_t _MaxCount);int __cdecl _strnicoll_l(char const *_String1, char const *_String2, size_t _MaxCount, _locale_t _Locale);int __cdecl _strncoll(char const *_String1, char const *_String2, size_t _MaxCount);int __cdecl _strncoll_l(char const *_String1, char const *_String2, size_t _MaxCount, _locale_t _Locale);size_t __cdecl __strncnt(char const *_String, size_t _Count);__declspec(deprecated("This function or variable may be unsafe. Consider using " "strncpy_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl strncpy(char *_Destination, char const *_Source, size_t _Count);size_t __cdecl strnlen(char const *_String, size_t _MaxCount);static __inline size_t __cdecl strnlen_s(char const *_String, size_t _MaxCount) { return _String==0 ? 0 :strnlen(_String, _MaxCount);} errno_t __cdecl _strnset_s(char *_String, size_t _SizeInBytes, int _Value, size_t _MaxCount);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strnset_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strnset(char *_Destination, int _Value, size_t _Count);char *__cdecl strpbrk(char const *_Str, char const *_Control);char *__cdecl _strrev(char *_Str);errno_t __cdecl _strset_s(char *_Destination, size_t _DestinationSize, int _Value);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strset_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strset(char *_Destination, int _Value);size_t __cdecl strspn(char const *_Str, char const *_Control);__declspec(deprecated("This function or variable may be unsafe. Consider using " "strtok_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl strtok(char *_String, char const *_Delimiter);errno_t __cdecl _strupr_s(char *_String, size_t _Size);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strupr_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strupr(char *_String);errno_t __cdecl _strupr_s_l(char *_String, size_t _Size, _locale_t _Locale);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strupr_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strupr_l(char *_String, _locale_t _Locale);size_t __cdecl strxfrm(char *_Destination, char const *_Source, size_t _MaxCount);size_t __cdecl _strxfrm_l(char *_Destination, char const *_Source, size_t _MaxCount, _locale_t _Locale);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strdup" ". See online help for details.")) char *__cdecl strdup(char const *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strcmpi" ". See online help for details.")) int __cdecl strcmpi(char const *_String1, char const *_String2);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_stricmp" ". See online help for details.")) int __cdecl stricmp(char const *_String1, char const *_String2);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strlwr" ". See online help for details.")) char *__cdecl strlwr(char *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strnicmp" ". See online help for details.")) int __cdecl strnicmp(char const *_String1, char const *_String2, size_t _MaxCount);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strnset" ". See online help for details.")) char *__cdecl strnset(char *_String, int _Value, size_t _MaxCount);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strrev" ". See online help for details.")) char *__cdecl strrev(char *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strset" ". See online help for details.")) char *__cdecl strset(char *_String, int _Value);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strupr" ". See online help for details.")) char *__cdecl strupr(char *_String);__pragma(pack(pop))#pragma warning(pop) #pragma once#pragma warning(push)#pragma warning(disable:4514 4820) __pragma(pack(push, 8)) __pragma(pack(pop))#pragma warning(pop) #pragma once#pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) typedef unsigned short _ino_t;typedef _ino_t ino_t;#line 24 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\sys/types.h" typedef unsigned int _dev_t;typedef _dev_t dev_t;#line 36 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\sys/types.h" typedef long _off_t;typedef _off_t off_t;#line 48 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\sys/types.h"#pragma warning(pop) typedef char *sds;#pragma pack(push, 1) struct sdshdr5 { unsigned char flags;char buf[];};struct sdshdr8 { uint8_t len;uint8_t alloc;unsigned char flags;char buf[];};struct sdshdr16 { uint16_t len;uint16_t alloc;unsigned char flags;char buf[];};struct sdshdr32 { uint32_t len;uint32_t alloc;unsigned char flags;char buf[];};struct sdshdr64 { uint64_t len;uint64_t alloc;unsigned char flags;char buf[];};#pragma pack(pop) static inline size_t sdslen(const sds s) { unsigned char flags=s[-1];switch(flags &7) { case 0 :return((flags) >> 3) ;case 1 :return((struct sdshdr8 *)((s) -(sizeof(struct sdshdr8)))) ->len;case 2 :return((struct sdshdr16 *)((s) -(sizeof(struct sdshdr16)))) ->len;case 3 :return((struct sdshdr32 *)((s) -(sizeof(struct sdshdr32)))) ->len;case 4 :return((struct sdshdr64 *)((s) -(sizeof(struct sdshdr64)))) ->len;} return 0;}static inline size_t sdsavail(const sds s) { unsigned char flags=s[-1];switch(flags &7) { case 0 :{ return 0;} case 1 :{ struct sdshdr8 *sh=(void *)((s) -(sizeof(struct sdshdr8)));;return sh->alloc - sh->len;} case 2 :{ struct sdshdr16 *sh=(void *)((s) -(sizeof(struct sdshdr16)));;return sh->alloc - sh->len;} case 3 :{ struct sdshdr32 *sh=(void *)((s) -(sizeof(struct sdshdr32)));;return sh->alloc - sh->len;} case 4 :{ struct sdshdr64 *sh=(void *)((s) -(sizeof(struct sdshdr64)));;return sh->alloc - sh->len;} } return 0;}static inline void sdssetlen(sds s, size_t newlen) { unsigned char flags=s[-1];switch(flags &7) { case 0 :{ unsigned char *fp=((unsigned char *) s) - 1;*fp=0|(newlen<< 3);} break;case 1 :((struct sdshdr8 *)((s) -(sizeof(struct sdshdr8)))) ->len=(uint8_t) newlen;break;case 2 :((struct sdshdr16 *)((s) -(sizeof(struct sdshdr16)))) ->len=(uint16_t) newlen;break;case 3 :((struct sdshdr32 *)((s) -(sizeof(struct sdshdr32)))) -> len
Definition: CPAL.d:15583
static int pf(int(*writeFunc)(void *stream, const char *data, int size), void *stream, const char *fmt,...)
Definition: HTMLGen.cc:254
static const char * xbasename(const char *name)
Definition: afm2pl.c:410
q
Definition: afm2pl.c:2287
int nl
Definition: afm2tfm.c:885
int nh
Definition: afm2tfm.c:885
#define name
#define mode
Definition: aptex-macros.h:510
char * asctime(register const struct tm *timeptr)
Definition: asctime.c:129
#define banner
Definition: bg5conv.c:1
int encodetype3
Definition: bitmapenc.c:38
char * p2
Definition: bmpfont.h:62
char * p1
Definition: bmpfont.h:62
#define n
Definition: t4ht.c:1290
#define b
Definition: jpegint.h:372
#define free(a)
Definition: decNumber.cpp:310
#define strrchr
Definition: detex.c:67
void bop(void)
Definition: disdvi.c:356
void makepsname(register char *s, register int n)
Definition: download.c:183
#define fopen
Definition: xxstdio.h:21
#define fflush
Definition: xxstdio.h:24
#define fseek
Definition: xxstdio.h:30
#define SET_BINARY(fd)
Definition: dvips.h:109
short shalfword
Definition: dvips.h:67
unsigned short halfword
Definition: dvips.h:68
__BOOLEAN__ landscape
Definition: global.h:129
long hh
Definition: dvi2xx.h:579
long vv
Definition: dvi2xx.h:581
const char * oname
Definition: dvidvi.c:139
int prettycolumn
Definition: dvidvi.c:176
char * nextstring
Definition: dvidvi.c:138
#define READBIN
Definition: dvidvi.c:103
int vactualdpi
Definition: dvips.c:144
Boolean cropmarks
Definition: dvips.c:102
int numcopies
Definition: dvips.c:126
char ** gargv
Definition: dvips.c:206
int gargc
Definition: dvips.c:205
Boolean compressed
Definition: dvips.c:97
struct papsiz * papsizes
Definition: dvips.c:234
shalfword linepos
Definition: dvips.c:110
Boolean sendcontrolD
Definition: dvips.c:115
int collatedcopies
Definition: dvips.c:107
Boolean disablecomments
Definition: dvips.c:216
integer hpapersize
Definition: dvips.c:121
const char * infont
Definition: dvips.c:167
char * paperfmt
Definition: dvips.c:147
Boolean multiplesects
Definition: dvips.c:215
int found_problems
Definition: dvips.c:90
char * titlename
Definition: dvips.c:127
integer vpapersize
Definition: dvips.c:121
fontdesctype * curfnt
Definition: dvips.c:93
Boolean safetyenclose
Definition: dvips.c:99
FILE * bitfile
Definition: dvips.c:133
integer pagecopies
Definition: dvips.c:109
char banner2[]
Definition: dvips.c:231
Boolean removecomments
Definition: dvips.c:100
Boolean shiftlowchars
Definition: dvips.c:116
int secure
Definition: dvips.c:105
Boolean tryepsf
Definition: dvips.c:104
int actualdpi
Definition: dvips.c:143
Boolean sepfiles
Definition: dvips.c:125
Boolean headers_off
Definition: dvips.c:211
int totalpages
Definition: dvips.c:207
#define EXISTS
Definition: dvips.h:154
#define STDOUTSIZE
Definition: dvips.h:69
#define fprintf_str
Definition: dvips.h:321
struct header_list * ps_fonts_used
Definition: resident.c:36
char realnameoffile[]
Definition: search.c:50
mpz_t * f
Definition: gen-fib.c:34
#define s
Definition: afcover.h:80
#define c(n)
Definition: gpos-common.c:150
#define a(n)
Definition: gpos-common.c:148
void send_headers(void)
Definition: header.c:164
char * get_name(struct header_list **what)
Definition: header.c:149
int add_header(const char *s)
Definition: header.c:118
#define iname
Definition: inputstack.h:53
#define putc
Definition: jbib.h:20
#define NULL
Definition: ftobjs.h:61
small capitals from c petite p
Definition: afcover.h:72
small capitals from c petite p scientific i
Definition: afcover.h:80
#define EOF
Definition: afmparse.c:59
signed __int64 int64_t
Definition: stdint.h:89
char * getenv()
static GBool quiet
Definition: pdfimages.cc:38
int errno
#define O_BINARY
Definition: config.h:393
#define buf
void findbb(integer bop)
Definition: bbox.c:475
#define headerpath
Definition: config.h:33
#define figpath
Definition: config.h:25
#define CROPHEADER
Definition: paths.h:33
#define ISSPACE(c)
Definition: c-ctype.h:40
char * strstr()
#define fclose
Definition: debug.h:100
#define getc
Definition: line.c:39
#define popen(cmd, mode)
Definition: mingw32.h:91
char ** environ
#define fileno
Definition: win32lib.h:72
#define pclose(file)
Definition: win32lib.h:271
#define isatty
Definition: win32lib.h:80
static int ret
Definition: convert.c:72
#define fputs
Definition: mendex.h:67
#define fprintf
Definition: mendex.h:64
#define rh
Definition: texmfmem.h:173
#define search
Definition: tie.c:128
long time_t
Definition: types.h:18
int strncmp()
#define sprintf
Definition: snprintf.c:44
#define snprintf
Definition: snprintf.c:41
#define time_t
Definition: includes.h:70
char errbuf[1500]
Definition: loadfont.c:30
int bitmapfontseen
Definition: loadfont.c:32
struct tm * gmtime(const time_t *const timep)
Definition: localtime.c:1379
int low
Definition: combiners.h:904
int high
Definition: combiners.h:904
__int64 strtoll(const char *, char **, int)
Definition: strtoll.c:50
int k
Definition: otp-parser.c:70
int integer
Definition: pbmtopk.c:38
static bool ps
Definition: pdftocairo.cc:91
int Boolean
Definition: pgmcrater.c:64
integer iv
Definition: pmxab.c:86
static boolean reverse
Definition: ppagelist.c:30
static int size
Definition: ppmlabel.c:24
integer pagenum
Definition: pscolor.c:30
time_t time()
#define dir
int _osmode
Definition: sh.h:2461
char * precode
Definition: dvips.h:257
char * postcode
Definition: dvips.h:258
Definition: dvips.h:269
integer xsize
Definition: dvips.h:271
integer ysize
Definition: dvips.h:271
const char * specdat
Definition: dvips.h:273
char * PSname
Definition: dvips.h:137
Definition: dvips.h:235
halfword numpages
Definition: dvips.h:238
integer bos
Definition: dvips.h:236
Definition: dvips.h:148
quarterword flags2
Definition: dvips.h:152
chardesctype * chardesc
Definition: dvips.h:190
struct resfont * resfont
Definition: dvips.h:185
int iswide
Definition: dvips.h:191
halfword psname
Definition: dvips.h:178
quarterword codewidth
Definition: dvips.h:181
integer dir
Definition: dvips.h:175
#define FILE
Definition: t1stdio.h:34
#define ungetc(c, f)
Definition: t1stdio.h:106
#define ferror(f)
Definition: t1stdio.h:110
*job_name strlen((char *) job_name) - 4)
found
Definition: tex4ht.c:5000
__BOOLEAN__ manualfeed
Definition: ps.c:63
static int mlower(int c)
Definition: output.c:1107
void psnameout(const char *s)
Definition: output.c:880
void cmdout(const char *s)
Definition: output.c:857
void copyfile_general(const char *s, struct header_list *cur_header)
Definition: output.c:134
static Boolean lastspecial
Definition: output.c:70
#define LINELENGTH
Definition: output.c:8
static Boolean popened
Definition: output.c:72
void floatout(float n)
Definition: output.c:909
static char * epsftest(integer bop)
Definition: output.c:1333
static integer rhh
Definition: output.c:68
void scout(unsigned char c)
Definition: output.c:767
#define UCStoUTF8C2(x)
Definition: output.c:38
static void tell_needed_fonts(void)
Definition: output.c:1793
static int ncstrcmp(const char *a, const char *b)
Definition: output.c:1115
void cmddir(void)
Definition: output.c:1864
void hvpos(void)
Definition: output.c:980
static void jscout(int c, char *fs)
Definition: output.c:816
static char strbuffer[(72)+20]
Definition: output.c:74
integer fdir
Definition: output.c:56
void mhexout(register unsigned char *p, register long len)
Definition: output.c:940
#define UCStoUTF8C3(x)
Definition: output.c:39
static char possibleDSCLine[81]
Definition: output.c:131
static time_t jobtime
Definition: output.c:88
static void findpapersize(void)
Definition: output.c:1129
void drawchar(chardesctype *c, int cc)
Definition: output.c:1740
static void paperspec(const char *s, int hed)
Definition: output.c:1308
static const char * hxdata
Definition: output.c:129
static char * isepsf
Definition: output.c:1341
static int thispage
Definition: output.c:1640
#define UCStoUTF8D3(x)
Definition: output.c:43
static int indelta(integer i)
Definition: output.c:1097
static int topoints(integer i)
Definition: output.c:1298
#define UCStoUTF8D1(x)
Definition: output.c:41
void cleanprinter(void)
Definition: output.c:1605
void doubleout(double n)
Definition: output.c:918
#define UTF32toUTF16HS(x)
Definition: output.c:47
static integer rvv
Definition: output.c:68
void psflush(void)
Definition: output.c:1643
static char * dscLineEnd
Definition: output.c:132
#define UCStoUTF8D4(x)
Definition: output.c:44
#define UCStoUTF8D2(x)
Definition: output.c:42
void setup(void)
Definition: output.c:1546
void initprinter(sectiontype *sect)
Definition: output.c:1412
void nlcmdout(const char *s)
Definition: output.c:1086
#define UCStoUTF8B2(x)
Definition: output.c:35
void copyfile(const char *s)
Definition: output.c:688
static Boolean any_dir
Definition: output.c:66
void open_output(void)
Definition: output.c:1344
integer rdir
Definition: output.c:56
static shalfword d
Definition: output.c:71
char preamblecomment[256]
Definition: output.c:55
void drawrule(integer rw, integer rh)
Definition: output.c:1716
void pslineout(const char *s)
Definition: output.c:886
static void print_composefont(void)
Definition: output.c:1816
static int JIStoSJIS(int c)
Definition: output.c:1875
static void scout2(int c)
Definition: output.c:807
#define UCStoUTF8B1(x)
Definition: output.c:34
static time_t get_unique_time_if_given(void)
Definition: output.c:97
void specialout(char c)
Definition: output.c:710
static struct papsiz * finpapsiz
Definition: output.c:75
void pageend(void)
Definition: output.c:1690
#define INVALID_EPOCH_VALUE
Definition: output.c:94
void numout(integer n)
Definition: output.c:927
static int infigure
Definition: output.c:130
static char * strbp
Definition: output.c:74
void stringend(void)
Definition: output.c:722
static char * dscLinePointer
Definition: output.c:132
void figcopyfile(char *s, int systemtype)
Definition: output.c:698
void newline(void)
Definition: output.c:1076
static void chrcmd(char c)
Definition: output.c:893
static void fontout(halfword n)
Definition: output.c:965
void pageinit(void)
Definition: output.c:1651
static Boolean jflag
Definition: output.c:67
static integer rulex
Definition: output.c:1641
#define UCStoUTF8C1(x)
Definition: output.c:37
static struct papsiz defpapsiz
Definition: output.c:76
#define UTF32toUTF16LS(x)
Definition: output.c:48
static integer ruley
Definition: output.c:1641
static void setdir(int d)
Definition: output.c:1840
static int lastfont
Definition: output.c:73
static int endprologsent
Definition: output.c:1342
static int instring
Definition: output.c:69
void error(floc *flocp, size_t len, char *fmt,...)
Definition: output.c:590