home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / pdflb302.zip / pdf / lpng.1-0-8 / pngtrans.i < prev    next >
Text File  |  2000-09-08  |  93KB  |  2,661 lines

  1. #line 219 "..\\zlib.1-1-3\\zconf.h"
  2. typedef unsigned char  Byte;   
  3.  
  4. typedef unsigned int   uInt;   
  5. typedef unsigned long  uLong;  
  6. #line 228
  7.    typedef Byte   Bytef;
  8.  
  9. typedef char   charf;
  10. typedef int    intf;
  11. typedef uInt   uIntf;
  12. typedef uLong  uLongf;
  13. #line 236
  14.    typedef void  *voidpf;
  15.    typedef void     *voidp;
  16. #line 63 "..\\zlib.1-1-3\\zlib.h"
  17. typedef voidpf (*alloc_func) (voidpf opaque, uInt items, uInt size);
  18. typedef void   (*free_func)  (voidpf opaque, voidpf address);
  19.  
  20. struct internal_state;
  21.  
  22. typedef struct z_stream_s {
  23.     Bytef    *next_in;   
  24.     uInt     avail_in;   
  25.     uLong    total_in;   
  26.  
  27.     Bytef    *next_out;  
  28.     uInt     avail_out;  
  29.     uLong    total_out;  
  30.  
  31.     char     *msg;       
  32.     struct internal_state  *state;  
  33.  
  34.     alloc_func zalloc;   
  35.     free_func  zfree;    
  36.     voidpf     opaque;   
  37.  
  38.     int     data_type;   
  39.     uLong   adler;       
  40.     uLong   reserved;    
  41. } z_stream;
  42.  
  43. typedef z_stream  *z_streamp;
  44. #line 171
  45. extern const char *  zlibVersion (void);
  46. #line 201
  47. extern int  deflate (z_streamp strm, int flush);
  48. #line 279
  49. extern int  deflateEnd (z_streamp strm);
  50. #line 314
  51. extern int  inflate (z_streamp strm, int flush);
  52. #line 383
  53. extern int  inflateEnd (z_streamp strm);
  54. #line 444
  55. extern int  deflateSetDictionary 
  56.  
  57. (z_streamp strm, const Bytef *dictionary, uInt dictLength);
  58. #line 480
  59. extern int  deflateCopy 
  60. (z_streamp dest, z_streamp source);
  61. #line 498
  62. extern int  deflateReset (z_streamp strm);
  63. #line 509
  64. extern int  deflateParams 
  65.  
  66. (z_streamp strm, int level, int strategy);
  67. #line 553
  68. extern int  inflateSetDictionary 
  69.  
  70. (z_streamp strm, const Bytef *dictionary, uInt dictLength);
  71. #line 572
  72. extern int  inflateSync (z_streamp strm);
  73. #line 587
  74. extern int  inflateReset (z_streamp strm);
  75. #line 608
  76. extern int  compress 
  77. (Bytef *dest, uLongf *destLen, const Bytef *source, uLong sourceLen);
  78. #line 623
  79. extern int  compress2 
  80.  
  81. (Bytef *dest, uLongf *destLen, const Bytef *source, uLong sourceLen, int level);
  82. #line 638
  83. extern int  uncompress 
  84. (Bytef *dest, uLongf *destLen, const Bytef *source, uLong sourceLen);
  85. #line 657
  86. typedef voidp gzFile;
  87.  
  88. extern gzFile  gzopen  (const char *path, const char *mode);
  89. #line 675
  90. extern gzFile  gzdopen  (int fd, const char *mode);
  91. #line 688
  92. extern int  gzsetparams (gzFile file, int level, int strategy);
  93. #line 696
  94. extern int     gzread  (gzFile file, voidp buf, unsigned len);
  95. #line 704
  96. extern int     gzwrite 
  97. (gzFile file, const voidp buf, unsigned len);
  98. #line 712
  99. extern int    gzprintf (gzFile file, const char *format, ...);
  100. #line 719
  101. extern int  gzputs (gzFile file, const char *s);
  102. #line 726
  103. extern char *  gzgets (gzFile file, char *buf, int len);
  104. #line 735
  105. extern int     gzputc (gzFile file, int c);
  106. #line 741
  107. extern int     gzgetc (gzFile file);
  108. #line 747
  109. extern int     gzflush (gzFile file, int flush);
  110. #line 757
  111. extern long     gzseek 
  112. (gzFile file, long offset, int whence);
  113. #line 775
  114. extern int     gzrewind (gzFile file);
  115. #line 782
  116. extern long     gztell (gzFile file);
  117. #line 791
  118. extern int  gzeof (gzFile file);
  119. #line 797
  120. extern int     gzclose (gzFile file);
  121. #line 804
  122. extern const char *  gzerror (gzFile file, int *errnum);
  123. #line 821
  124. extern uLong  adler32 (uLong adler, const Bytef *buf, uInt len);
  125. #line 838
  126. extern uLong  crc32   (uLong crc, const Bytef *buf, uInt len);
  127. #line 860
  128. extern int  deflateInit_ 
  129. (z_streamp strm, int level, const char *version, int stream_size);
  130. extern int  inflateInit_ 
  131. (z_streamp strm, const char *version, int stream_size);
  132. extern int  deflateInit2_ 
  133. #line 867
  134. (z_streamp strm, int level, int method, int windowBits, int memLevel, int strategy, const char *version, int stream_size);
  135. extern int  inflateInit2_ 
  136. (z_streamp strm, int windowBits, const char *version, int stream_size);
  137. #line 882
  138.     struct internal_state {int dummy;};  
  139. #line 885
  140. extern const char   *  zError           (int err);
  141. extern int             inflateSyncPoint (z_streamp z);
  142. extern const uLongf *  get_crc_table    (void);
  143. #line 3 "F:\\Ibmcxxo\\INCLUDE\\stdio.h"
  144.       #pragma info(none)
  145.  
  146.          #pragma info(none)
  147.  
  148.       #pragma info(restore)
  149. #line 43
  150.       typedef unsigned int size_t;
  151. #line 46
  152.    enum _OPERATIONS { _IOINIT, _IOREAD, _IOWRITE, _IOREPOSITION,
  153.                       _IOFLUSH, _IOUNDEFOP };
  154. #line 51
  155.    #pragma pack(1)
  156.    typedef struct __file {   
  157.       unsigned char     *_bufPtr;
  158.       unsigned long int  _filler1;  
  159.       unsigned long int  _userFlags;
  160.       unsigned long int  _bufLen;
  161.       unsigned long int  _ungetCount;
  162.       unsigned long int  _filler2;  
  163.       unsigned char      _ungetBuf[2];
  164.       char               _filler3;  
  165.       enum _OPERATIONS   _lastOp;
  166.       signed char        _orientation;
  167.       unsigned char     *_buf;
  168.       unsigned long int  _bufCount;
  169.       unsigned long int  _count;
  170.       } FILE;
  171.    #pragma pack()
  172.  
  173.    typedef struct __fpos_t {   
  174.       long int __fpos_elem[2];
  175.       } fpos_t;
  176. #line 108
  177.          typedef char *__va_list;
  178. #line 114
  179.    extern FILE *const  stdin;
  180.    extern FILE *const  stdout;
  181.    extern FILE *const  stderr;
  182. #line 123
  183.    extern int       _Optlink fprintf(FILE *, const char *, ...);
  184.    extern int       _Optlink fscanf(FILE *, const char *, ...);
  185.    extern int       _Optlink printf(const char *, ...);
  186.    extern int       _Optlink scanf(const char *, ...);
  187.    extern int       _Optlink sprintf(char *, const char *, ...);
  188.    extern int       _Optlink sscanf(const char *, const char *, ...);
  189.    extern void      _Optlink clearerr(FILE *);
  190.    extern int       _Optlink fclose(FILE *);
  191.    extern int       _Optlink feof(FILE *);
  192.    extern int       _Optlink ferror(FILE *);
  193.    extern int       _Optlink fflush(FILE *);
  194.    extern int       _Optlink fgetc(FILE *);
  195.    extern int       _Optlink fgetpos(FILE *, fpos_t *);
  196.    extern char    * _Optlink fgets(char *, int, FILE *);
  197.    extern FILE    * _Optlink fopen(const char *, const char *);
  198.    extern int       _Optlink fputc(int, FILE *);
  199.    extern int       _Optlink fputs(const char *, FILE *);
  200.    extern size_t    _Optlink fread(void *, size_t, size_t, FILE *);
  201.    extern FILE    * _Optlink freopen(const char *, const char *, FILE *);
  202.    extern int       _Optlink fseek(FILE *, long int, int);
  203.    extern int       _Optlink fsetpos(FILE *, const fpos_t *);
  204.    extern long int  _Optlink ftell(FILE *);
  205.    extern size_t    _Optlink fwrite(const void *, size_t, size_t, FILE *);
  206.    extern int              _Optlink getc(FILE *);
  207.    extern int              _Optlink getchar(void);
  208.    extern char    * _Optlink gets(char *);
  209.    extern void      _Optlink perror(const char *);
  210.    extern int              _Optlink putc(int, FILE *);
  211.    extern int              _Optlink putchar(int);
  212.    extern int       _Optlink puts(const char *);
  213.    extern int       _Optlink remove(const char *);
  214.    extern int       _Optlink rename(const char *, const char *);
  215.    extern void      _Optlink rewind(FILE *);
  216.    extern void      _Optlink setbuf(FILE *, char *);
  217.    extern int       _Optlink setvbuf(FILE *, char *, int, size_t);
  218.    extern FILE    * _Optlink tmpfile(void);
  219.    extern char    * _Optlink tmpnam(char *);
  220.    extern int       _Optlink ungetc(int, FILE *);
  221.    extern int       _Optlink vfprintf(FILE *, const char *, __va_list);
  222.    extern int       _Optlink vprintf(const char *, __va_list);
  223.    extern int       _Optlink vsprintf(char *, const char *, __va_list);
  224. #line 247
  225.             #pragma map(fprintf, "_fprintfieee")
  226.             #pragma map(printf, "_printfieee")
  227.             #pragma map(sprintf, "_sprintfieee")
  228.             #pragma map(fscanf, "_fscanfieee")
  229.             #pragma map(scanf, "_scanfieee")
  230.             #pragma map(sscanf, "_sscanfieee")
  231.             #pragma map(vfprintf, "_vfprintfieee")
  232.             #pragma map(vprintf, "_vprintfieee")
  233.             #pragma map(vsprintf, "_vsprintfieee")
  234. #line 279
  235.       int _Optlink _fcloseall(void);
  236.       int _Optlink _rmtmp(void);
  237. #line 284
  238.       extern FILE * _Optlink fdopen(int, const char *);
  239.       extern int    _Optlink fgetchar(void);
  240.       extern int    _Optlink fileno(FILE *);
  241.       extern int    _Optlink flushall(void);
  242.       extern int    _Optlink fputchar(int);
  243.       extern char * _Optlink tempnam(char *, char *);
  244.       extern int    _Optlink unlink(const char *);
  245.  
  246.       extern FILE * _Optlink _fdopen(int, const char *);
  247.       extern int    _Optlink _fgetchar(void);
  248.       extern int    _Optlink _fileno(FILE *);
  249.       extern int    _Optlink _flushall(void);
  250.       extern int    _Optlink _fputchar(int);
  251.       extern char * _Optlink _tempnam(char *, char *);
  252.       extern int    _Optlink _unlink(const char *);
  253.  
  254.       extern int    _Optlink _set_crt_msg_handle(int);
  255. #line 320
  256.             #pragma map(fdopen, "_fdopen")
  257.             #pragma map(fgetchar, "_fgetchar")
  258.             #pragma map(fileno, "_fileno")
  259.             #pragma map(flushall, "_flushall")
  260.             #pragma map(fputchar, "_fputchar")
  261.             #pragma map(tempnam, "_tempnam")
  262. #line 328
  263.                #pragma map(unlink, "_unlink")
  264. #line 355
  265.       #pragma info(none)
  266.  
  267.          #pragma info(restore)
  268.  
  269.       #pragma info(restore)
  270. #line 5 "F:\\Ibmcxxo\\INCLUDE\\sys/types.h"
  271.       #pragma info(none)
  272.  
  273.          #pragma info(none)
  274.  
  275.       #pragma info(restore)
  276. #line 30
  277.                typedef signed int ssize_t;
  278. #line 35
  279.                typedef unsigned short ino_t;
  280. #line 41
  281.                typedef double time_t;
  282. #line 45
  283.                typedef short dev_t;
  284. #line 50
  285.                typedef long off_t;
  286. #line 62
  287.       #pragma info(none)
  288.  
  289.          #pragma info(restore)
  290.  
  291.       #pragma info(restore)
  292. #line 3 "F:\\Ibmcxxo\\INCLUDE\\setjmp.h"
  293.       #pragma info(none)
  294.  
  295.          #pragma info(none)
  296.  
  297.       #pragma info(restore)
  298. #line 42
  299.       typedef int jmp_buf[8];
  300. #line 47
  301.    extern int  _Optlink setjmp(jmp_buf);
  302.    extern void  _Optlink longjmp(jmp_buf, int);
  303. #line 61
  304.       #pragma info(none)
  305.  
  306.          #pragma info(restore)
  307.  
  308.       #pragma info(restore)
  309. #line 3 "F:\\Ibmcxxo\\INCLUDE\\string.h"
  310.       #pragma info(none)
  311.  
  312.          #pragma info(none)
  313.  
  314.       #pragma info(restore)
  315. #line 88
  316.          char  *_Builtin __strcpy(char*, const char*);
  317.          int    _Builtin __strcmp(const char*, const char*);
  318.          size_t _Builtin __strlen(const char*);
  319.          char  *_Builtin __strchr(const char*, int);
  320.          char  *_Builtin __strrchr(const char*, int);
  321.          char  *_Builtin __strcat(char*, const char*);
  322.          extern char *  _Optlink strcat(char *, const char *);
  323.          extern char *  _Optlink strchr(const char *, int);
  324.          extern int     _Optlink strcmp(const char *, const char *);
  325.          extern char *  _Optlink strcpy(char *, const char *);
  326.          extern size_t  _Optlink strlen(const char *);
  327.          extern char *  _Optlink strrchr(const char *, int);
  328. #line 108
  329.       #pragma isolated_call(__strcpy)
  330.       #pragma isolated_call(__strcmp)
  331.       #pragma isolated_call(__strlen)
  332.       #pragma isolated_call(__strchr)
  333.       #pragma isolated_call(__strrchr)
  334.       #pragma isolated_call(__strcat)
  335. #line 127
  336.             char *_Builtin __strncat(char *, const char *, size_t);
  337.             int   _Builtin __strncmp(const char *, const char *, size_t);
  338.             char *_Builtin __strncpy(char *, const char *, size_t);
  339.             extern char * _Optlink strncat(char *, const char *, size_t);
  340.             extern int    _Optlink strncmp(const char *, const char *, size_t);
  341.             extern char * _Optlink strncpy(char *, const char *, size_t);
  342. #line 137
  343.          #pragma isolated_call(__strncat)
  344.          #pragma isolated_call(__strncmp)
  345.          #pragma isolated_call(__strncpy)
  346. #line 176
  347.    extern int     _Optlink strcoll(const char *, const char *);
  348.    extern size_t  _Optlink strcspn(const char *, const char *);
  349.    extern char *  _Optlink strerror(int);
  350.    extern size_t  _Optlink strspn(const char *, const char *);
  351.    extern char  * _Optlink strtok(char*, const char *);
  352.    extern size_t  _Optlink strxfrm(char *, const char *, size_t);
  353. #line 186
  354.       extern char  * _Optlink strpbrk(const char *, const char *);
  355.       extern char  * _Optlink strstr(const char *, const char *);
  356. #line 214
  357.             void *_Builtin __memchr(const void *, int, size_t);
  358.             void *_Builtin __memcpy(void *, const void *, size_t);
  359.             int   _Builtin __memcmp(const void *, const void *, size_t);
  360.             void *_Builtin __memmove(void *, const void *, size_t);
  361.             void *_Builtin __memset(void *, int, size_t);
  362.             extern void * _Optlink memchr(const void *, int, size_t);
  363.             extern int    _Optlink memcmp(const void *, const void *, size_t);
  364.             extern void * _Optlink memcpy(void *, const void *, size_t);
  365.             extern void * _Optlink memmove(void *, const void *, size_t);
  366.             extern void * _Optlink memset(void *, int, size_t);
  367. #line 231
  368.          #pragma isolated_call(__memchr)
  369.          #pragma isolated_call(__memcpy)
  370.          #pragma isolated_call(__memcmp)
  371.          #pragma isolated_call(__memmove)
  372.          #pragma isolated_call(__memset)
  373. #line 247
  374.       extern void * _Optlink memccpy(void *, const void *, int, unsigned int);
  375.       extern int    _Optlink memicmp(const void *, const void *, unsigned int);
  376.  
  377.       extern void * _Optlink _fmemcpy(void *, const void *, size_t);
  378.       extern void * _Optlink _fmemchr(const void *, int, size_t);
  379.       extern int    _Optlink _fmemcmp(const void *, const void *, size_t);
  380.       extern void * _Optlink _fmemset(void *, int, size_t);
  381.       extern void * _Optlink _fmemccpy(void *, const void *, int, unsigned int);
  382.       extern int    _Optlink _fmemicmp(const void *, const void *, unsigned int);
  383. #line 281
  384.             #pragma map(_fmemcpy, "memcpy")
  385.             #pragma map(_fmemchr, "memchr")
  386.             #pragma map(_fmemcmp, "memcmp")
  387.             #pragma map(_fmemset, "memset")
  388.             #pragma map(_fmemccpy, "memccpy")
  389.             #pragma map(_fmemicmp, "memicmp")
  390. #line 299
  391.       char * _Optlink strdup(const char *);
  392.       int    _Optlink stricmp(const char *, const char *);
  393.       char * _Optlink strlwr(char *);
  394.       int    _Optlink strnicmp(const char *, const char *, size_t);
  395.       char * _Optlink strupr(char *);
  396.       int    _Optlink strcmpi(const char *, const char *);
  397.       char * _Optlink strrev(char *);
  398.       char * _Optlink strset(char *, int);
  399.       char * _Optlink strnset(char *, int, size_t);
  400.       char * _Optlink _strerror(const char *);
  401. #line 340
  402.       size_t  _Optlink _fstrcspn(const char *, const char *);
  403.       char  * _Optlink _fstrdup(const char *);
  404.       char  * _Optlink _nstrdup(const char *);
  405.       int     _Optlink _fstricmp(const char *, const char *);
  406.       char  * _Optlink _fstrlwr(char *);
  407.       int     _Optlink _fstrnicmp(const char *, const char *, size_t);
  408.       char  * _Optlink _fstrnset(char *, int, size_t);
  409.       char  * _Optlink _fstrpbrk(const char *, const char *);
  410.       char  * _Optlink _fstrrev(char *);
  411.       char  * _Optlink _fstrset(char *, int);
  412.       size_t  _Optlink _fstrspn(const char *, const char *);
  413.       char  * _Optlink _fstrstr(const char *, const char *);
  414.       char  * _Optlink _fstrtok(char*, const char *);
  415.       char  * _Optlink _fstrupr(char *);
  416.       void  * _Optlink _fmemmove(void *, const void *, size_t);
  417.       char  * _Optlink _fstrcat(char *, const char *);
  418.       char  * _Optlink _fstrchr(const char *, int);
  419.       int     _Optlink _fstrcmp(const char *, const char *);
  420.       char  * _Optlink _fstrcpy(char *, const char *);
  421.       size_t  _Optlink _fstrlen(const char *);
  422.       char  * _Optlink _fstrncat(char *, const char *, size_t);
  423.       int     _Optlink _fstrncmp(const char *, const char *, size_t);
  424.       char  * _Optlink _fstrncpy(char *, const char *, size_t);
  425.       char  * _Optlink _fstrrchr(const char *, int);
  426. #line 392
  427.             #pragma map(_fstrcspn, "strcspn")
  428.             #pragma map(_fstrdup, "strdup")
  429.             #pragma map(_nstrdup, "strdup")
  430.             #pragma map(_fstricmp, "stricmp")
  431.             #pragma map(_fstrlwr, "strlwr")
  432.             #pragma map(_fstrnicmp, "strnicmp")
  433.             #pragma map(_fstrnset, "strnset")
  434.             #pragma map(_fstrpbrk, "strpbrk")
  435.             #pragma map(_fstrrev, "strrev")
  436.             #pragma map(_fstrset, "strset")
  437.             #pragma map(_fstrspn, "strspn")
  438.             #pragma map(_fstrstr, "strstr")
  439.             #pragma map(_fstrtok, "strtok")
  440.             #pragma map(_fstrupr, "strupr")
  441.             #pragma map(_fmemmove, "memmove")
  442.             #pragma map(_fstrcat, "strcat")
  443.             #pragma map(_fstrchr, "strchr")
  444.             #pragma map(_fstrcmp, "strcmp")
  445.             #pragma map(_fstrcpy, "strcpy")
  446.             #pragma map(_fstrlen, "strlen")
  447.             #pragma map(_fstrncat, "strncat")
  448.             #pragma map(_fstrncmp, "strncmp")
  449.             #pragma map(_fstrncpy, "strncpy")
  450.             #pragma map(_fstrrchr, "strrchr")
  451. #line 497
  452.       #pragma info(none)
  453.  
  454.          #pragma info(restore)
  455.  
  456.       #pragma info(restore)
  457. #line 3 "F:\\Ibmcxxo\\INCLUDE\\stdlib.h"
  458.       #pragma info(none)
  459.  
  460.          #pragma info(none)
  461.  
  462.       #pragma info(restore)
  463. #line 61
  464.       typedef unsigned short wchar_t;
  465. #line 64
  466.    typedef struct _div_t {
  467.        int quot;         
  468.        int rem;          
  469.        } div_t;
  470.  
  471.    typedef struct _ldiv_t {
  472.        long int quot;    
  473.        long int rem;     
  474.        } ldiv_t;
  475. #line 75
  476.       typedef struct _lldiv_t {
  477.          long long int quot;    
  478.          long long int rem;     
  479.          } lldiv_t;
  480. #line 102
  481.          typedef unsigned long _System _EH_RTN(void *,void *,void *,void *);
  482. #line 108
  483.    extern int  _Optlink _eh_del(_EH_RTN *);
  484.    extern int  _Optlink _eh_add(_EH_RTN *);
  485. #line 126
  486.          extern int  _mb_cur_max;
  487. #line 133
  488.    extern int       _Optlink atoi(const char *);
  489.    extern long int  _Optlink atol(const char *);
  490.    extern long int  _Optlink strtol(const char *, char **, int);
  491.    extern unsigned long int  _Optlink strtoul(const char *, char **, int);
  492.    extern int       _Optlink rand(void);
  493.    extern void      _Optlink srand(unsigned int);
  494.    extern void *   ( _Optlink calloc)(size_t, size_t);
  495.    extern void     ( _Optlink free)(void *);
  496.    extern void *   ( _Optlink malloc)(size_t);
  497.    extern void *   ( _Optlink realloc)(void *, size_t);
  498.    extern void      _Optlink abort(void);
  499.    extern int              _Optlink atexit(void (*)(void));
  500.    extern void             _Optlink exit(int);
  501.    extern char *    _Optlink getenv(const char *);
  502.    extern int       _Optlink system(const char *);
  503.    extern void *    _Optlink bsearch(const void *, const void *, size_t, size_t,
  504.                               int (*_Optlink)(const void *, const void *));
  505.    extern void      _Optlink qsort(void *, size_t, size_t,
  506.                             int (*_Optlink)(const void *, const void *));
  507.    extern div_t     _Optlink div(int, int);
  508.    extern ldiv_t    _Optlink ldiv(long int, long int);
  509.    extern int       _Optlink mblen(const char *, size_t);
  510.    extern int       _Optlink mbtowc(wchar_t *, const char *, size_t);
  511.    extern int       _Optlink wctomb(char *, wchar_t);
  512.    extern size_t    _Optlink mbstowcs(wchar_t *, const char *, size_t);
  513.    extern size_t    _Optlink wcstombs(char *, const wchar_t *, size_t);
  514.  
  515.    extern long long int  _Optlink atoll(const char *);
  516.    extern lldiv_t  _Optlink lldiv(long long int, long long int);
  517.    extern long long int  _Optlink strtoll(const char *, char **, int);
  518.    extern unsigned long long int  _Optlink strtoull(const char *, char **, int);
  519. #line 173
  520.       extern int       _Optlink abs (int);
  521.       extern long int  _Optlink labs(long int);
  522.       int           _Builtin __abs(int);
  523.       long int      _Builtin __labs(long int);
  524. #line 180
  525.          long long int _Builtin __llabs(long long int);
  526.          extern long long int  _Optlink llabs(long long int);
  527. #line 224
  528.             void *_Builtin __alloca(size_t);
  529. #line 231
  530.                unsigned char _Builtin __parmdwords(void);
  531. #line 235
  532.          extern long double  _Optlink _atold(const char *);
  533.          extern char *  _Optlink  ecvt(double, int, int *, int *);
  534.          extern char *  _Optlink _ecvt(double, int, int *, int *);
  535.          extern char *  _Optlink  fcvt(double, int, int *, int *);
  536.          extern char *  _Optlink _fcvt(double, int, int *, int *);
  537.          extern int     _Optlink _freemod(unsigned long);
  538.          extern char *  _Optlink _fullpath(char *, const char *, size_t);
  539.          extern char *  _Optlink  gcvt(double, int, char *);
  540.          extern char *  _Optlink _gcvt(double, int, char *);
  541.          extern int    ( _Optlink _heapmin)(void);
  542.          extern char *  _Optlink  itoa(int, char *, int);
  543.          extern char *  _Optlink _itoa(int, char *, int);
  544.          extern int     _Optlink _loadmod(char *, unsigned long *);
  545.          extern char *  _Optlink  ltoa( long, char *, int);
  546.          extern char *  _Optlink _ltoa( long, char *, int);
  547.          extern size_t  _Optlink _msize(void *);
  548.          extern int     _Optlink  putenv(const char *);
  549.          extern int     _Optlink _putenv(const char *);
  550.          extern long double  _Optlink  strtold(const char *, char **);
  551.          extern long double  _Optlink _strtold(const char *, char **);
  552.          extern char *  _Optlink  ultoa(unsigned long, char *, int);
  553.          extern char *  _Optlink _ultoa(unsigned long, char *, int);
  554.  
  555.          extern char *  _Optlink  lltoa(long long, char *, int);
  556.          extern char *  _Optlink _lltoa(long long, char *, int);
  557.          extern char *  _Optlink  ulltoa(unsigned long long, char *, int);
  558.          extern char *  _Optlink _ulltoa(unsigned long long, char *, int);
  559. #line 301
  560.                #pragma map(ecvt, "_ecvt")
  561.                #pragma map(fcvt, "_fcvt")
  562.                #pragma map(gcvt, "_gcvt")
  563.                #pragma map(itoa, "_itoa")
  564.                #pragma map(ltoa, "_ltoa")
  565.                #pragma map(ultoa, "_ultoa")
  566.                #pragma map(lltoa, "_lltoa")
  567.                #pragma map(ulltoa, "_ulltoa")
  568.                #pragma map(putenv, "_putenv")
  569.                #pragma map(_strtold, "strtold")
  570. #line 411
  571.             extern void * _Optlink _ncalloc(size_t, size_t);
  572.             extern void * _Optlink _fcalloc(size_t, size_t);
  573.             extern void   _Optlink _nfree(void*);
  574.             extern void   _Optlink _ffree(void*);
  575.             extern void * _Optlink _nmalloc(size_t);
  576.             extern void * _Optlink _fmalloc(size_t);
  577.             extern void * _Optlink _nrealloc(void*, size_t);
  578.             extern void * _Optlink _frealloc(void*, size_t);
  579.             extern int    _Optlink _nheapmin(void);
  580.             extern int    _Optlink _fheapmin(void);
  581. #line 435
  582.                   #pragma map(_ncalloc, "calloc")
  583.                   #pragma map(_fcalloc, "calloc")
  584.                   #pragma map(_nfree, "free" )
  585.                   #pragma map(_ffree, "free" )
  586.                   #pragma map(_nmalloc, "malloc")
  587.                   #pragma map(_fmalloc, "malloc")
  588.                   #pragma map(_nrealloc, "realloc")
  589.                   #pragma map(_frealloc, "realloc")
  590.                   #pragma map(_nheapmin, "_heapmin")
  591.                   #pragma map(_fheapmin, "_heapmin")
  592. #line 471
  593.                #pragma map(atof, "_atofieee")
  594.                #pragma map(strtod, "_strtodieee")
  595. #line 481
  596.                void  _Builtin __enable(void);
  597.                void  _Builtin __disable(void);
  598. #line 493
  599.                   extern int  errno;
  600. #line 503
  601.                   extern int  _doserrno;
  602. #line 508
  603.             extern const    char ** _environ;
  604.             extern unsigned char    _osmajor;
  605.             extern unsigned char    _osminor;
  606.             extern unsigned char    _osmode;
  607. #line 515
  608.             enum {
  609.                DOS_MODE,                
  610.                OS2_MODE,                
  611.                NT_MODE,                 
  612.                WINDOWS_MODE             
  613.                };
  614.  
  615.             typedef int (__onexit_t)(void);
  616.             typedef __onexit_t *onexit_t;
  617. #line 534
  618.             extern void  _Optlink _exit(int);
  619.             extern onexit_t     _Optlink  onexit(onexit_t);
  620.             extern onexit_t     _Optlink _onexit(onexit_t);
  621.  
  622.             extern void  _Optlink _makepath(char *, const char *, const char *, const char *, const char *);
  623.             extern void  _Optlink _splitpath(const char *, char *, char *, char *, char *);
  624.             extern void  _Optlink _searchenv(char *, char *, char *);
  625.             extern void  _Optlink  swab(char *, char *, int);
  626.             extern void  _Optlink _swab(char *, char *, int);
  627.  
  628.             extern int  _Optlink rpmatch(const char *);
  629.             extern int  _Optlink csid(const char *);
  630.             extern int  _Optlink wcsid(const wchar_t);
  631. #line 550
  632.                   unsigned long long _Builtin __llrotl(unsigned long long, int);
  633.                   unsigned long long _Builtin __llrotr(unsigned long long, int);
  634. #line 555
  635.                unsigned long  _Builtin __lrotl(unsigned long, int);
  636.                unsigned long  _Builtin __lrotr(unsigned long, int);
  637.                unsigned short _Builtin __srotl(unsigned short, int);
  638.                unsigned short _Builtin __srotr(unsigned short, int);
  639.                unsigned char  _Builtin __crotl(unsigned char, int);
  640.                unsigned char  _Builtin __crotr(unsigned char, int);
  641. #line 591
  642.                   #pragma map(rpmatch, "_rpmatch")
  643.                   #pragma map(csid, "_csid")
  644.                   #pragma map(wcsid, "_wcsid")
  645.                   #pragma map(onexit, "_onexit")
  646.                   #pragma map(swab, "_swab")
  647. #line 635
  648.    extern double  _Optlink atof(const char *);
  649.    extern double  _Optlink strtod(const char *, char **);
  650. #line 690
  651.       #pragma info(none)
  652.  
  653.          #pragma info(restore)
  654.  
  655.       #pragma info(restore)
  656. #line 3 "F:\\Ibmcxxo\\INCLUDE\\math.h"
  657.       #pragma info(none)
  658.  
  659.          #pragma info(none)
  660.  
  661.       #pragma info(restore)
  662. #line 45
  663.    extern const double  _infinity;
  664. #line 55
  665.          double _Builtin __fabs(double);
  666.          extern double  _Optlink fabs(double);
  667. #line 59
  668.       #pragma isolated_call(__fabs)
  669. #line 64
  670.    extern float  _Optlink acosf(float);
  671.    extern float  _Optlink asinf(float);
  672.    extern float  _Optlink atanf(float);
  673.    extern float  _Optlink atan2f(float, float);
  674.    extern float  _Optlink ceilf(float);
  675.    extern float  _Optlink cosf(float);
  676.    extern float  _Optlink coshf(float);
  677.    extern float  _Optlink expf(float);
  678.    extern float  _Optlink fabsf(float);
  679.    extern float  _Optlink floorf(float);
  680.    extern float  _Optlink fmodf(float, float);
  681.    extern float  _Optlink frexpf(float, int *);
  682.    extern float  _Optlink ldexpf(float, int);
  683.    extern float  _Optlink logf(float);
  684.    extern float  _Optlink log10f(float);
  685.    extern float  _Optlink modff(float, float *);
  686.    extern float  _Optlink powf(float, float);
  687.    extern float  _Optlink sinf(float);
  688.    extern float  _Optlink sinhf(float);
  689.    extern float  _Optlink sqrtf(float);
  690.    extern float  _Optlink tanf(float);
  691.    extern float  _Optlink tanhf(float);
  692.  
  693.    extern double  _Optlink ceil(double);
  694.    extern double  _Optlink cosh(double);
  695.    extern double  _Optlink floor(double);
  696.    extern double  _Optlink fmod(double, double);
  697.    extern double  _Optlink frexp(double, int *);
  698.    extern double  _Optlink ldexp(double, int);
  699.    extern double  _Optlink modf(double, double *);
  700.    extern double  _Optlink pow(double, double);
  701.    extern double  _Optlink sinh(double);
  702.    extern double  _Optlink tanh(double);
  703.  
  704.    extern long double  _Optlink acosl(long double);
  705.    extern long double  _Optlink asinl(long double);
  706.    extern long double  _Optlink atanl(long double);
  707.    extern long double  _Optlink atan2l(long double, long double);
  708.    extern long double  _Optlink ceill(long double);
  709.    extern long double  _Optlink cosl(long double);
  710.    extern long double  _Optlink coshl(long double);
  711.    extern long double  _Optlink expl(long double);
  712.    extern long double  _Optlink fabsl(long double);
  713.    extern long double  _Optlink floorl(long double);
  714.    extern long double  _Optlink fmodl(long double, long double);
  715.    extern long double  _Optlink frexpl(long double, int *);
  716.    extern long double  _Optlink ldexpl(long double, int);
  717.    extern long double  _Optlink logl(long double);
  718.    extern long double  _Optlink log10l(long double);
  719.    extern long double  _Optlink modfl(long double, long double *);
  720.    extern long double  _Optlink powl(long double, long double);
  721.    extern long double  _Optlink sinl(long double);
  722.    extern long double  _Optlink sinhl(long double);
  723.    extern long double  _Optlink sqrtl(long double);
  724.    extern long double  _Optlink tanl(long double);
  725.    extern long double  _Optlink tanhl(long double);
  726.  
  727.    extern float  _Optlink __powif(float, int);
  728.    extern double  _Optlink __powi(double, int);
  729.    extern long double  _Optlink __powil(long double, int);
  730. #line 159
  731.          extern double  _Optlink sin(double);
  732.          extern double  _Optlink cos(double);
  733.          extern double  _Optlink tan(double);
  734.          extern double  _Optlink acos(double);
  735.          extern double  _Optlink asin(double);
  736.          extern double  _Optlink atan(double);
  737.          extern double  _Optlink sqrt(double);
  738.  
  739.       extern double  _Optlink atan2(double, double);
  740.       extern double  _Optlink exp(double);
  741.       extern double  _Optlink log(double);
  742.       extern double  _Optlink log10(double);
  743. #line 329
  744.       extern double  _Optlink _erf(double);
  745.       extern double  _Optlink _erfc(double);
  746.       extern double  _Optlink _gamma(double);
  747.       extern double  _Optlink _hypot(double, double);
  748.       extern double  _Optlink _j0(double);
  749.       extern double  _Optlink _j1(double);
  750.       extern double  _Optlink _jn(int, double);
  751.       extern double  _Optlink _y0(double);
  752.       extern double  _Optlink _y1(double);
  753.       extern double  _Optlink _yn(int, double);
  754.       extern double  _Optlink erf(double);
  755.       extern double  _Optlink erfc(double);
  756.       extern double  _Optlink gamma(double);
  757.       extern double  _Optlink hypot(double, double);
  758.       extern double  _Optlink j0(double);
  759.       extern double  _Optlink j1(double);
  760.       extern double  _Optlink jn(int, double);
  761.       extern double  _Optlink y0(double);
  762.       extern double  _Optlink y1(double);
  763.       extern double  _Optlink yn(int, double);
  764. #line 391
  765.             #pragma map(erf, "_erf")
  766.             #pragma map(erfc, "_erfc")
  767.             #pragma map(gamma, "_gamma")
  768.             #pragma map(hypot, "_hypot")
  769.             #pragma map(j0, "_j0")
  770.             #pragma map(j1, "_j1")
  771.             #pragma map(jn, "_jn")
  772.             #pragma map(y0, "_y0")
  773.             #pragma map(y1, "_y1")
  774.             #pragma map(yn, "_yn")
  775. #line 416
  776.          extern const long double  _LHUGE_VAL;
  777. #line 434
  778.             struct complex {
  779.                double x, y;              
  780.                };
  781.  
  782.             double  _Optlink _cabs(struct complex);
  783. #line 444
  784.          struct _exception {
  785.             int type;                
  786.             char *name;              
  787.             double arg1;             
  788.             double arg2;             
  789.             double retval;           
  790.             };
  791. #line 454
  792.          int _matherr(struct _exception*);
  793.          int  matherr(struct _exception*);
  794. #line 461
  795.                #pragma map(matherr, "_matherr")
  796. #line 528
  797.       #pragma info(none)
  798.  
  799.          #pragma info(restore)
  800.  
  801.       #pragma info(restore)
  802. #line 3 "F:\\Ibmcxxo\\INCLUDE\\time.h"
  803.       #pragma info(none)
  804.  
  805.          #pragma info(none)
  806.  
  807.       #pragma info(restore)
  808. #line 56
  809.    typedef unsigned long clock_t;
  810. #line 65
  811.       struct tm {
  812.          int tm_sec;       
  813.          int tm_min;       
  814.          int tm_hour;      
  815.          int tm_mday;      
  816.          int tm_mon;       
  817.          int tm_year;      
  818.          int tm_wday;      
  819.          int tm_yday;      
  820.          int tm_isdst;     
  821.       };
  822. #line 78
  823.    extern clock_t     _Optlink clock(void);
  824.    extern double      _Optlink difftime(time_t, time_t);
  825.    extern time_t      _Optlink mktime(struct tm *);
  826.    extern time_t      _Optlink time(time_t *);
  827.    extern char *      _Optlink asctime(const struct tm *);
  828.    extern char *      _Optlink ctime(const time_t *);
  829.    extern struct tm * _Optlink gmtime(const time_t *);
  830.    extern struct tm * _Optlink localtime(const time_t *);
  831.    extern size_t      _Optlink strftime(char *, size_t, const char *, const struct tm *);
  832. #line 115
  833.          #pragma map(difftime, "__difftime")
  834.          #pragma map(mktime, "__mktime")
  835.          #pragma map(time, "__time")
  836.          #pragma map(ctime, "__ctime")
  837.          #pragma map(gmtime, "__gmtime")
  838.          #pragma map(localtime, "__localtime")
  839. #line 125
  840.       extern char * _Optlink strptime(const char *, const char *, struct tm *);
  841. #line 133
  842.       extern int    _daylight;  
  843.       extern int    daylight;
  844.       extern long   _timezone;  
  845.       extern long   timezone;
  846.       extern char * _tzname[2];  
  847.       extern char * tzname[2];
  848.       extern void   _Optlink tzset(void);
  849.       extern void   _Optlink _tzset(void);
  850.       extern char * _Optlink _strdate(char *);
  851.       extern char * _Optlink _strtime(char *);
  852. #line 149
  853.             #pragma map(daylight, "_daylight")
  854.             #pragma map(tzname, "_tzname")
  855.             #pragma map(tzset, "_tzset")
  856. #line 161
  857.       #pragma info(none)
  858.  
  859.          #pragma info(restore)
  860.  
  861.       #pragma info(restore)
  862. #line 886 "pngconf.h"
  863. typedef unsigned long png_uint_32;
  864. typedef long png_int_32;
  865. typedef unsigned short png_uint_16;
  866. typedef short png_int_16;
  867. typedef unsigned char png_byte;
  868. #line 894
  869. typedef size_t png_size_t;
  870. #line 959
  871. typedef png_int_32 png_fixed_point;
  872. #line 962
  873. typedef void             * png_voidp;
  874. typedef png_byte         * png_bytep;
  875. typedef png_uint_32      * png_uint_32p;
  876. typedef png_int_32       * png_int_32p;
  877. typedef png_uint_16      * png_uint_16p;
  878. typedef png_int_16       * png_int_16p;
  879. typedef const char   * png_const_charp;
  880. typedef char             * png_charp;
  881. typedef png_fixed_point  * png_fixed_point_p;
  882. #line 974
  883. typedef FILE                * png_FILE_p;
  884. #line 977
  885. typedef double           * png_doublep;
  886. #line 981
  887. typedef png_byte         *  * png_bytepp;
  888. typedef png_uint_32      *  * png_uint_32pp;
  889. typedef png_int_32       *  * png_int_32pp;
  890. typedef png_uint_16      *  * png_uint_16pp;
  891. typedef png_int_16       *  * png_int_16pp;
  892. typedef const char   *  * png_const_charpp;
  893. typedef char             *  * png_charpp;
  894. typedef png_fixed_point  *  * png_fixed_point_pp;
  895.  
  896. typedef double           *  * png_doublepp;
  897. #line 994
  898. typedef char             *  *  * png_charppp;
  899. #line 1000
  900. typedef charf *         png_zcharp;
  901. typedef charf *  *   png_zcharpp;
  902. typedef z_stream  *  png_zstreamp;
  903. #line 305 "png.h"
  904. extern   char png_libpng_ver[12];  
  905. #line 314
  906. extern   int png_pass_start[7];
  907. extern   int png_pass_inc[7];
  908. extern   int png_pass_ystart[7];
  909. extern   int png_pass_yinc[7];
  910. extern   int png_pass_mask[7];
  911. extern   int png_pass_dsp_mask[7];
  912. #line 334
  913. typedef struct png_color_struct
  914. {
  915.    png_byte red;
  916.    png_byte green;
  917.    png_byte blue;
  918. } png_color;
  919. typedef png_color  * png_colorp;
  920. typedef png_color  *  * png_colorpp;
  921.  
  922. typedef struct png_color_16_struct
  923. {
  924.    png_byte index;     
  925.    png_uint_16 red;    
  926.    png_uint_16 green;
  927.    png_uint_16 blue;
  928.    png_uint_16 gray;   
  929. } png_color_16;
  930. typedef png_color_16  * png_color_16p;
  931. typedef png_color_16  *  * png_color_16pp;
  932.  
  933. typedef struct png_color_8_struct
  934. {
  935.    png_byte red;    
  936.    png_byte green;
  937.    png_byte blue;
  938.    png_byte gray;   
  939.    png_byte alpha;  
  940. } png_color_8;
  941. typedef png_color_8  * png_color_8p;
  942. typedef png_color_8  *  * png_color_8pp;
  943. #line 369
  944. typedef struct png_sPLT_entry_struct
  945. {
  946.    png_uint_16 red;
  947.    png_uint_16 green;
  948.    png_uint_16 blue;
  949.    png_uint_16 alpha;
  950.    png_uint_16 frequency;
  951. } png_sPLT_entry;
  952. typedef png_sPLT_entry  * png_sPLT_entryp;
  953. typedef png_sPLT_entry  *  * png_sPLT_entrypp;
  954. #line 385
  955. typedef struct png_sPLT_struct
  956. {
  957.    png_charp name;            
  958.    png_byte depth;            
  959.    png_sPLT_entryp entries;   
  960.    png_int_32 nentries;       
  961. } png_sPLT_t;
  962. typedef png_sPLT_t  * png_sPLT_tp;
  963. typedef png_sPLT_t  *  * png_sPLT_tpp;
  964. #line 404
  965. typedef struct png_text_struct
  966. {
  967.    int  compression;       
  968. #line 411
  969.    png_charp key;           
  970.    png_charp text;         
  971.  
  972.    png_size_t text_length;  
  973. #line 422
  974. } png_text;
  975. typedef png_text  * png_textp;
  976. typedef png_text  *  * png_textpp;
  977. #line 443
  978. typedef struct png_time_struct
  979. {
  980.    png_uint_16 year;  
  981.    png_byte month;    
  982.    png_byte day;      
  983.    png_byte hour;     
  984.    png_byte minute;   
  985.    png_byte second;   
  986. } png_time;
  987. typedef png_time  * png_timep;
  988. typedef png_time  *  * png_timepp;
  989. #line 461
  990. typedef struct png_unknown_chunk_t
  991. {
  992.     png_byte name[5];
  993.     png_byte *data;
  994.     png_size_t size;
  995. #line 468
  996.     png_byte location;  
  997. }
  998. png_unknown_chunk;
  999. typedef png_unknown_chunk  * png_unknown_chunkp;
  1000. typedef png_unknown_chunk  *  * png_unknown_chunkpp;
  1001. #line 514
  1002. typedef struct png_info_struct
  1003. {
  1004.  
  1005.    png_uint_32 width;        
  1006.    png_uint_32 height;       
  1007.    png_uint_32 valid;        
  1008.    png_uint_32 rowbytes;     
  1009.    png_colorp palette;       
  1010.    png_uint_16 num_palette;  
  1011.    png_uint_16 num_trans;    
  1012.    png_byte bit_depth;       
  1013.    png_byte color_type;      
  1014.    png_byte compression_type;  
  1015.    png_byte filter_type;     
  1016.    png_byte interlace_type;  
  1017. #line 531
  1018.    png_byte channels;        
  1019.    png_byte pixel_depth;     
  1020.    png_byte spare_byte;      
  1021.    png_byte signature[8];    
  1022. #line 547
  1023.    float gamma;  
  1024. #line 553
  1025.    png_byte srgb_intent;  
  1026. #line 565
  1027.    int num_text;  
  1028.    int max_text;  
  1029.    png_textp text;  
  1030. #line 574
  1031.    png_time mod_time;
  1032. #line 584
  1033.    png_color_8 sig_bit;  
  1034. #line 598
  1035.    png_bytep trans;  
  1036.    png_color_16 trans_values;  
  1037. #line 609
  1038.    png_color_16 background;
  1039. #line 618
  1040.    png_int_32 x_offset;  
  1041.    png_int_32 y_offset;  
  1042.    png_byte offset_unit_type;  
  1043. #line 628
  1044.    png_uint_32 x_pixels_per_unit;  
  1045.    png_uint_32 y_pixels_per_unit;  
  1046.    png_byte phys_unit_type;  
  1047. #line 640
  1048.    png_uint_16p hist;
  1049. #line 651
  1050.    float x_white;
  1051.    float y_white;
  1052.    float x_red;
  1053.    float y_red;
  1054.    float x_green;
  1055.    float y_green;
  1056.    float x_blue;
  1057.    float y_blue;
  1058. #line 674
  1059.    png_charp pcal_purpose;   
  1060.    png_int_32 pcal_X0;       
  1061.    png_int_32 pcal_X1;       
  1062.    png_charp pcal_units;     
  1063.    png_charpp pcal_params;   
  1064.    png_byte pcal_type;       
  1065.    png_byte pcal_nparams;    
  1066. #line 684
  1067.    png_uint_32 free_me;      
  1068. #line 689
  1069.    png_unknown_chunkp unknown_chunks;
  1070.    png_size_t unknown_chunks_num;
  1071. #line 695
  1072.    png_charp iccp_name;      
  1073.    png_charp iccp_profile;   
  1074.    png_uint_32 iccp_proflen;   
  1075.    png_byte iccp_compression;  
  1076. #line 703
  1077.    png_sPLT_tp splt_palettes;
  1078.    png_uint_32 splt_palettes_num;
  1079. #line 715
  1080.    png_byte scal_unit;          
  1081.  
  1082.    double scal_pixel_width;     
  1083.    double scal_pixel_height;    
  1084. #line 721
  1085.    png_charp scal_s_width;      
  1086.    png_charp scal_s_height;     
  1087. #line 729
  1088.    png_bytepp row_pointers;         
  1089. #line 733
  1090.    png_fixed_point int_gamma;  
  1091. #line 737
  1092.    png_fixed_point int_x_white;
  1093.    png_fixed_point int_y_white;
  1094.    png_fixed_point int_x_red;
  1095.    png_fixed_point int_y_red;
  1096.    png_fixed_point int_x_green;
  1097.    png_fixed_point int_y_green;
  1098.    png_fixed_point int_x_blue;
  1099.    png_fixed_point int_y_blue;
  1100. #line 747
  1101. } png_info;
  1102.  
  1103. typedef png_info  * png_infop;
  1104. typedef png_info  *  * png_infopp;
  1105. #line 841
  1106. typedef struct png_row_info_struct
  1107. {
  1108.    png_uint_32 width;  
  1109.    png_uint_32 rowbytes;  
  1110.    png_byte color_type;  
  1111.    png_byte bit_depth;  
  1112.    png_byte channels;  
  1113.    png_byte pixel_depth;  
  1114. } png_row_info;
  1115.  
  1116. typedef png_row_info  * png_row_infop;
  1117. typedef png_row_info  *  * png_row_infopp;
  1118. #line 860
  1119. typedef struct png_struct_def png_struct;
  1120. typedef png_struct  * png_structp;
  1121.  
  1122. typedef void (_cdecl *png_error_ptr) (png_structp, png_const_charp);
  1123. typedef void (_cdecl *png_rw_ptr) (png_structp, png_bytep, png_size_t);
  1124. typedef void (_cdecl *png_flush_ptr) (png_structp);
  1125. typedef void (_cdecl *png_read_status_ptr) 
  1126. (png_structp, png_uint_32, int);
  1127. typedef void (_cdecl *png_write_status_ptr) 
  1128. (png_structp, png_uint_32, int);
  1129. #line 872
  1130. typedef void (_cdecl *png_progressive_info_ptr) (png_structp, png_infop);
  1131. typedef void (_cdecl *png_progressive_end_ptr) (png_structp, png_infop);
  1132. typedef void (_cdecl *png_progressive_row_ptr) 
  1133. (png_structp, png_bytep, png_uint_32, int);
  1134. #line 881
  1135. typedef void (_cdecl *png_user_transform_ptr) 
  1136. (png_structp, png_row_infop, png_bytep);
  1137. #line 886
  1138. typedef int (_cdecl *png_user_chunk_ptr) (png_structp, png_unknown_chunkp);
  1139. #line 889
  1140. typedef void (_cdecl *png_unknown_chunk_ptr) (png_structp);
  1141. #line 907
  1142. typedef png_voidp (*png_malloc_ptr) (png_structp, png_size_t);
  1143. typedef void (*png_free_ptr) (png_structp, png_voidp);
  1144. #line 917
  1145. struct png_struct_def
  1146. {
  1147.  
  1148.    jmp_buf jmpbuf;             
  1149.  
  1150.    png_error_ptr error_fn;     
  1151.    png_error_ptr warning_fn;   
  1152.    png_voidp error_ptr;        
  1153.    png_rw_ptr write_data_fn;   
  1154.    png_rw_ptr read_data_fn;    
  1155.    png_voidp io_ptr;           
  1156. #line 930
  1157.    png_user_transform_ptr read_user_transform_fn;  
  1158. #line 934
  1159.    png_user_transform_ptr write_user_transform_fn;  
  1160. #line 941
  1161.    png_voidp user_transform_ptr;  
  1162.    png_byte user_transform_depth;     
  1163.    png_byte user_transform_channels;  
  1164. #line 947
  1165.    png_uint_32 mode;           
  1166.    png_uint_32 flags;          
  1167.    png_uint_32 transformations;  
  1168.  
  1169.    z_stream zstream;           
  1170.    png_bytep zbuf;             
  1171.    png_size_t zbuf_size;       
  1172.    int zlib_level;             
  1173.    int zlib_method;            
  1174.    int zlib_window_bits;       
  1175.    int zlib_mem_level;         
  1176.    int zlib_strategy;          
  1177.  
  1178.    png_uint_32 width;          
  1179.    png_uint_32 height;         
  1180.    png_uint_32 num_rows;       
  1181.    png_uint_32 usr_width;      
  1182.    png_uint_32 rowbytes;       
  1183.    png_uint_32 irowbytes;      
  1184.    png_uint_32 iwidth;         
  1185.    png_uint_32 row_number;     
  1186.    png_bytep prev_row;         
  1187.    png_bytep row_buf;          
  1188.    png_bytep sub_row;          
  1189.    png_bytep up_row;           
  1190.    png_bytep avg_row;          
  1191.    png_bytep paeth_row;        
  1192.    png_row_info row_info;      
  1193.  
  1194.    png_uint_32 idat_size;      
  1195.    png_uint_32 crc;            
  1196.    png_colorp palette;         
  1197.    png_uint_16 num_palette;    
  1198.    png_uint_16 num_trans;      
  1199.    png_byte chunk_name[5];     
  1200.    png_byte compression;       
  1201.    png_byte filter;            
  1202.    png_byte interlaced;        
  1203.    png_byte pass;              
  1204.    png_byte do_filter;         
  1205.    png_byte color_type;        
  1206.    png_byte bit_depth;         
  1207.    png_byte usr_bit_depth;     
  1208.    png_byte pixel_depth;       
  1209.    png_byte channels;          
  1210.    png_byte usr_channels;      
  1211.    png_byte sig_bytes;         
  1212. #line 999
  1213.    png_uint_16 filler;            
  1214. #line 1004
  1215.    png_byte background_gamma_type;
  1216.  
  1217.    float background_gamma;
  1218.  
  1219.    png_color_16 background;    
  1220.  
  1221.      png_color_16 background_1;  
  1222. #line 1015
  1223.    png_flush_ptr output_flush_fn; 
  1224.    png_uint_32 flush_dist;     
  1225.    png_uint_32 flush_rows;     
  1226. #line 1021
  1227.    int gamma_shift;       
  1228.  
  1229.    float gamma;           
  1230.    float screen_gamma;    
  1231. #line 1029
  1232.    png_bytep gamma_table;      
  1233.    png_bytep gamma_from_1;     
  1234.    png_bytep gamma_to_1;       
  1235.    png_uint_16pp gamma_16_table;  
  1236.    png_uint_16pp gamma_16_from_1;  
  1237.    png_uint_16pp gamma_16_to_1;  
  1238. #line 1038
  1239.    png_color_8 sig_bit;        
  1240. #line 1042
  1241.    png_color_8 shift;          
  1242. #line 1047
  1243.    png_bytep trans;            
  1244.    png_color_16 trans_values;  
  1245. #line 1051
  1246.    png_read_status_ptr read_row_fn;    
  1247.    png_write_status_ptr write_row_fn;  
  1248.  
  1249.    png_progressive_info_ptr info_fn;  
  1250.    png_progressive_row_ptr row_fn;    
  1251.    png_progressive_end_ptr end_fn;    
  1252.    png_bytep save_buffer_ptr;         
  1253.    png_bytep save_buffer;             
  1254.    png_bytep current_buffer_ptr;      
  1255.    png_bytep current_buffer;          
  1256.    png_uint_32 push_length;           
  1257.    png_uint_32 skip_length;           
  1258.    png_size_t save_buffer_size;       
  1259.    png_size_t save_buffer_max;        
  1260.    png_size_t buffer_size;            
  1261.    png_size_t current_buffer_size;    
  1262.    int process_mode;                  
  1263.    int cur_palette;                   
  1264. #line 1071
  1265.      png_size_t current_text_size;    
  1266.      png_size_t current_text_left;    
  1267.      png_charp current_text;          
  1268.      png_charp current_text_ptr;      
  1269. #line 1089
  1270.    png_bytep palette_lookup;          
  1271.    png_bytep dither_index;            
  1272. #line 1094
  1273.    png_uint_16p hist;                 
  1274. #line 1098
  1275.    png_byte heuristic_method;         
  1276.    png_byte num_prev_filters;         
  1277.    png_bytep prev_filters;            
  1278.    png_uint_16p filter_weights;       
  1279.    png_uint_16p inv_filter_weights;   
  1280.    png_uint_16p filter_costs;         
  1281.    png_uint_16p inv_filter_costs;     
  1282. #line 1108
  1283.    png_charp time_buffer;             
  1284. #line 1120
  1285.    png_uint_32 free_me;        
  1286. #line 1124
  1287.    png_voidp user_chunk_ptr;
  1288.    png_user_chunk_ptr read_user_chunk_fn;  
  1289. #line 1129
  1290.    int num_chunk_list;
  1291.    png_bytep chunk_list;
  1292. #line 1134
  1293.    png_byte rgb_to_gray_status;
  1294.    png_uint_16 rgb_to_gray_red_coeff;
  1295.    png_uint_16 rgb_to_gray_green_coeff;
  1296.    png_uint_16 rgb_to_gray_blue_coeff;
  1297. #line 1142
  1298.    png_byte empty_plte_permitted;
  1299. #line 1146
  1300.    png_fixed_point int_gamma;
  1301. #line 1149
  1302. };
  1303. #line 1154
  1304. typedef png_structp version_1_0_8;
  1305.  
  1306. typedef png_struct  *  * png_structpp;
  1307. #line 1165
  1308. extern  png_uint_32 _cdecl png_access_version_number (void);
  1309. #line 1170
  1310. extern  void _cdecl png_set_sig_bytes 
  1311. (png_structp png_ptr, int num_bytes);
  1312. #line 1178
  1313. extern  int _cdecl png_sig_cmp 
  1314. (png_bytep sig, png_size_t start, png_size_t num_to_check);
  1315. #line 1184
  1316. extern  int _cdecl png_check_sig (png_bytep sig, int num);
  1317. #line 1187
  1318. extern  png_structp _cdecl png_create_read_struct
  1319.  
  1320. (png_const_charp user_png_ver, png_voidp error_ptr, png_error_ptr error_fn, png_error_ptr warn_fn);
  1321. #line 1192
  1322. extern  png_structp _cdecl png_create_write_struct
  1323.  
  1324. (png_const_charp user_png_ver, png_voidp error_ptr, png_error_ptr error_fn, png_error_ptr warn_fn);
  1325.  
  1326. extern  png_uint_32 _cdecl png_get_compression_buffer_size
  1327.    (png_structp png_ptr);
  1328.  
  1329. extern  void _cdecl png_set_compression_buffer_size
  1330.    (png_structp png_ptr, png_uint_32 size);
  1331. #line 1203
  1332. extern  int _cdecl png_reset_zstream (png_structp png_ptr);
  1333. #line 1217
  1334. extern  void _cdecl png_write_chunk 
  1335. (png_structp png_ptr, png_bytep chunk_name, png_bytep data, png_size_t length);
  1336. #line 1221
  1337. extern  void _cdecl png_write_chunk_start 
  1338. (png_structp png_ptr, png_bytep chunk_name, png_uint_32 length);
  1339. #line 1225
  1340. extern  void _cdecl png_write_chunk_data 
  1341. (png_structp png_ptr, png_bytep data, png_size_t length);
  1342. #line 1229
  1343. extern  void _cdecl png_write_chunk_end (png_structp png_ptr);
  1344. #line 1232
  1345. extern  png_infop _cdecl png_create_info_struct
  1346.    (png_structp png_ptr);
  1347. #line 1236
  1348. extern void png_info_init (png_infop info_ptr);
  1349. #line 1239
  1350. extern  void _cdecl png_write_info_before_PLTE 
  1351. (png_structp png_ptr, png_infop info_ptr);
  1352. extern  void _cdecl png_write_info 
  1353. (png_structp png_ptr, png_infop info_ptr);
  1354. #line 1245
  1355. extern  void _cdecl png_read_info 
  1356. (png_structp png_ptr, png_infop info_ptr);
  1357. #line 1249
  1358. extern  png_charp _cdecl png_convert_to_rfc1123
  1359.    (png_structp png_ptr, png_timep ptime);
  1360. #line 1257
  1361. extern  void _cdecl png_convert_from_struct_tm 
  1362. (png_timep ptime, struct tm * ttime);
  1363. #line 1261
  1364. extern  void _cdecl png_convert_from_time_t 
  1365. (png_timep ptime, time_t ttime);
  1366. #line 1268
  1367. extern  void _cdecl png_set_expand (png_structp png_ptr);
  1368. extern  void _cdecl png_set_gray_1_2_4_to_8 (png_structp png_ptr);
  1369. extern  void _cdecl png_set_palette_to_rgb (png_structp png_ptr);
  1370. extern  void _cdecl png_set_tRNS_to_alpha (png_structp png_ptr);
  1371. #line 1276
  1372. extern  void _cdecl png_set_bgr (png_structp png_ptr);
  1373. #line 1281
  1374. extern  void _cdecl png_set_gray_to_rgb (png_structp png_ptr);
  1375. #line 1287
  1376. extern  void _cdecl png_set_rgb_to_gray 
  1377. (png_structp png_ptr, int error_action, double red, double green );
  1378.  
  1379. extern  void _cdecl png_set_rgb_to_gray_fixed 
  1380. (png_structp png_ptr, int error_action, png_fixed_point red, png_fixed_point green );
  1381. extern  png_byte _cdecl png_get_rgb_to_gray_status 
  1382. (png_structp png_ptr);
  1383. #line 1296
  1384. extern  void _cdecl png_build_grayscale_palette 
  1385. (int bit_depth, png_colorp palette);
  1386. #line 1300
  1387. extern  void _cdecl png_set_strip_alpha (png_structp png_ptr);
  1388. #line 1305
  1389. extern  void _cdecl png_set_swap_alpha (png_structp png_ptr);
  1390. #line 1310
  1391. extern  void _cdecl png_set_invert_alpha (png_structp png_ptr);
  1392. #line 1315
  1393. extern  void _cdecl png_set_filler 
  1394. (png_structp png_ptr, png_uint_32 filler, int flags);
  1395. #line 1324
  1396. extern  void _cdecl png_set_swap (png_structp png_ptr);
  1397. #line 1329
  1398. extern  void _cdecl png_set_packing (png_structp png_ptr);
  1399. #line 1334
  1400. extern  void _cdecl png_set_packswap (png_structp png_ptr);
  1401. #line 1339
  1402. extern  void _cdecl png_set_shift 
  1403. (png_structp png_ptr, png_color_8p true_bits);
  1404. #line 1346
  1405. extern  int _cdecl png_set_interlace_handling (png_structp png_ptr);
  1406. #line 1351
  1407. extern  void _cdecl png_set_invert_mono (png_structp png_ptr);
  1408. #line 1357
  1409. extern  void _cdecl png_set_background 
  1410.  
  1411. (png_structp png_ptr, png_color_16p background_color, int background_gamma_code, int need_expand, double background_gamma);
  1412. #line 1369
  1413. extern  void _cdecl png_set_strip_16 (png_structp png_ptr);
  1414. #line 1374
  1415. extern  void _cdecl png_set_dither 
  1416.  
  1417. (png_structp png_ptr, png_colorp palette, int num_palette, int maximum_colors, png_uint_16p histogram, int full_dither);
  1418. #line 1382
  1419. extern  void _cdecl png_set_gamma 
  1420. (png_structp png_ptr, double screen_gamma, double default_file_gamma);
  1421. #line 1390
  1422. extern  void _cdecl png_permit_empty_plte 
  1423. (png_structp png_ptr, int empty_plte_permitted);
  1424. #line 1396
  1425. extern  void _cdecl png_set_flush (png_structp png_ptr, int nrows);
  1426.  
  1427. extern  void _cdecl png_write_flush (png_structp png_ptr);
  1428. #line 1402
  1429. extern  void _cdecl png_start_read_image (png_structp png_ptr);
  1430. #line 1405
  1431. extern  void _cdecl png_read_update_info 
  1432. (png_structp png_ptr, png_infop info_ptr);
  1433. #line 1409
  1434. extern  void _cdecl png_read_rows 
  1435. (png_structp png_ptr, png_bytepp row, png_bytepp display_row, png_uint_32 num_rows);
  1436. #line 1413
  1437. extern  void _cdecl png_read_row 
  1438.  
  1439. (png_structp png_ptr, png_bytep row, png_bytep display_row);
  1440. #line 1418
  1441. extern  void _cdecl png_read_image 
  1442. (png_structp png_ptr, png_bytepp image);
  1443. #line 1422
  1444. extern  void _cdecl png_write_row 
  1445. (png_structp png_ptr, png_bytep row);
  1446. #line 1426
  1447. extern  void _cdecl png_write_rows 
  1448. (png_structp png_ptr, png_bytepp row, png_uint_32 num_rows);
  1449. #line 1430
  1450. extern  void _cdecl png_write_image 
  1451. (png_structp png_ptr, png_bytepp image);
  1452. #line 1434
  1453. extern  void _cdecl png_write_end 
  1454. (png_structp png_ptr, png_infop info_ptr);
  1455. #line 1438
  1456. extern  void _cdecl png_read_end 
  1457. (png_structp png_ptr, png_infop info_ptr);
  1458. #line 1442
  1459. extern  void _cdecl png_destroy_info_struct 
  1460. (png_structp png_ptr, png_infopp info_ptr_ptr);
  1461. #line 1446
  1462. extern  void _cdecl png_destroy_read_struct 
  1463. (png_structpp png_ptr_ptr, png_infopp info_ptr_ptr, png_infopp end_info_ptr_ptr);
  1464. #line 1450
  1465. extern void png_read_destroy 
  1466. (png_structp png_ptr, png_infop info_ptr, png_infop end_info_ptr);
  1467. #line 1454
  1468. extern  void _cdecl png_destroy_write_struct
  1469.    (png_structpp png_ptr_ptr, png_infopp info_ptr_ptr);
  1470. #line 1458
  1471. extern void png_write_destroy_info (png_infop info_ptr);
  1472. #line 1461
  1473. extern void png_write_destroy (png_structp png_ptr);
  1474. #line 1464
  1475. extern  void _cdecl png_set_crc_action 
  1476. (png_structp png_ptr, int crit_action, int ancil_action);
  1477. #line 1494
  1478. extern  void _cdecl png_set_filter 
  1479. (png_structp png_ptr, int method, int filters);
  1480. #line 1551
  1481. extern  void _cdecl png_set_filter_heuristics 
  1482.  
  1483. (png_structp png_ptr, int heuristic_method, int num_weights, png_doublep filter_weights, png_doublep filter_costs);
  1484. #line 1572
  1485. extern  void _cdecl png_set_compression_level 
  1486. (png_structp png_ptr, int level);
  1487.  
  1488. extern  void _cdecl png_set_compression_mem_level
  1489.    (png_structp png_ptr, int mem_level);
  1490.  
  1491. extern  void _cdecl png_set_compression_strategy
  1492.    (png_structp png_ptr, int strategy);
  1493.  
  1494. extern  void _cdecl png_set_compression_window_bits
  1495.    (png_structp png_ptr, int window_bits);
  1496.  
  1497. extern  void _cdecl png_set_compression_method 
  1498. (png_structp png_ptr, int method);
  1499. #line 1598
  1500. extern  void _cdecl png_init_io (png_structp png_ptr, png_FILE_p fp);
  1501. #line 1609
  1502. extern  void _cdecl png_set_error_fn 
  1503. (png_structp png_ptr, png_voidp error_ptr, png_error_ptr error_fn, png_error_ptr warning_fn);
  1504. #line 1613
  1505. extern  png_voidp _cdecl png_get_error_ptr (png_structp png_ptr);
  1506. #line 1620
  1507. extern  void _cdecl png_set_write_fn 
  1508. (png_structp png_ptr, png_voidp io_ptr, png_rw_ptr write_data_fn, png_flush_ptr output_flush_fn);
  1509. #line 1624
  1510. extern  void _cdecl png_set_read_fn 
  1511. (png_structp png_ptr, png_voidp io_ptr, png_rw_ptr read_data_fn);
  1512. #line 1628
  1513. extern  png_voidp _cdecl png_get_io_ptr (png_structp png_ptr);
  1514.  
  1515. extern  void _cdecl png_set_read_status_fn 
  1516. (png_structp png_ptr, png_read_status_ptr read_row_fn);
  1517.  
  1518. extern  void _cdecl png_set_write_status_fn 
  1519. (png_structp png_ptr, png_write_status_ptr write_row_fn);
  1520. #line 1646
  1521. extern  void _cdecl png_set_read_user_transform_fn 
  1522. (png_structp png_ptr, png_user_transform_ptr read_user_transform_fn);
  1523. #line 1652
  1524. extern  void _cdecl png_set_write_user_transform_fn 
  1525. (png_structp png_ptr, png_user_transform_ptr write_user_transform_fn);
  1526. #line 1659
  1527. extern  void _cdecl png_set_user_transform_info 
  1528.  
  1529. (png_structp png_ptr, png_voidp user_transform_ptr, int user_transform_depth, int user_transform_channels);
  1530.  
  1531. extern  png_voidp _cdecl png_get_user_transform_ptr
  1532.    (png_structp png_ptr);
  1533. #line 1668
  1534. extern  void _cdecl png_set_read_user_chunk_fn 
  1535. (png_structp png_ptr, png_voidp user_chunk_ptr, png_user_chunk_ptr read_user_chunk_fn);
  1536. extern  png_voidp _cdecl png_get_user_chunk_ptr 
  1537. (png_structp png_ptr);
  1538. #line 1678
  1539. extern  void _cdecl png_set_progressive_read_fn 
  1540. #line 1681
  1541. (png_structp png_ptr, png_voidp progressive_ptr, png_progressive_info_ptr info_fn, png_progressive_row_ptr row_fn, png_progressive_end_ptr end_fn);
  1542. #line 1684
  1543. extern  png_voidp _cdecl png_get_progressive_ptr
  1544.    (png_structp png_ptr);
  1545. #line 1688
  1546. extern  void _cdecl png_process_data 
  1547. (png_structp png_ptr, png_infop info_ptr, png_bytep buffer, png_size_t buffer_size);
  1548. #line 1694
  1549. extern  void _cdecl png_progressive_combine_row 
  1550. (png_structp png_ptr, png_bytep old_row, png_bytep new_row);
  1551. #line 1698
  1552. extern  png_voidp _cdecl png_malloc 
  1553. (png_structp png_ptr, png_uint_32 size);
  1554. #line 1702
  1555. extern  void _cdecl png_free (png_structp png_ptr, png_voidp ptr);
  1556. #line 1705
  1557. extern  void _cdecl png_free_data 
  1558. (png_structp png_ptr, png_infop info_ptr, png_uint_32 free_me, int num);
  1559. #line 1710
  1560. extern  void _cdecl png_data_freer 
  1561. (png_structp png_ptr, png_infop info_ptr, int freer, png_uint_32 mask);
  1562. #line 1739
  1563. extern  png_voidp _cdecl png_memcpy_check 
  1564. (png_structp png_ptr, png_voidp s1, png_voidp s2, png_uint_32 size);
  1565.  
  1566. extern  png_voidp _cdecl png_memset_check 
  1567. (png_structp png_ptr, png_voidp s1, int value, png_uint_32 size);
  1568. #line 1751
  1569. extern  void _cdecl png_error 
  1570. (png_structp png_ptr, png_const_charp error);
  1571. #line 1755
  1572. extern  void _cdecl png_chunk_error 
  1573. (png_structp png_ptr, png_const_charp error);
  1574. #line 1759
  1575. extern  void _cdecl png_warning 
  1576. (png_structp png_ptr, png_const_charp message);
  1577. #line 1763
  1578. extern  void _cdecl png_chunk_warning 
  1579. (png_structp png_ptr, png_const_charp message);
  1580. #line 1779
  1581. extern  png_uint_32 _cdecl png_get_valid 
  1582. (png_structp png_ptr, png_infop info_ptr, png_uint_32 flag);
  1583. #line 1783
  1584. extern  png_uint_32 _cdecl png_get_rowbytes 
  1585. (png_structp png_ptr, png_infop info_ptr);
  1586. #line 1789
  1587. extern  png_bytepp _cdecl png_get_rows 
  1588. (png_structp png_ptr, png_infop info_ptr);
  1589. #line 1793
  1590. extern  void _cdecl png_set_rows 
  1591. (png_structp png_ptr, png_infop info_ptr, png_bytepp row_pointers);
  1592. #line 1798
  1593. extern  png_byte _cdecl png_get_channels 
  1594. (png_structp png_ptr, png_infop info_ptr);
  1595. #line 1803
  1596. extern  png_uint_32 _cdecl png_get_image_width 
  1597. (png_structp png_ptr, png_infop info_ptr);
  1598. #line 1807
  1599. extern  png_uint_32 _cdecl png_get_image_height 
  1600. (png_structp png_ptr, png_infop info_ptr);
  1601. #line 1811
  1602. extern  png_byte _cdecl png_get_bit_depth 
  1603. (png_structp png_ptr, png_infop info_ptr);
  1604. #line 1815
  1605. extern  png_byte _cdecl png_get_color_type 
  1606. (png_structp png_ptr, png_infop info_ptr);
  1607. #line 1819
  1608. extern  png_byte _cdecl png_get_filter_type 
  1609. (png_structp png_ptr, png_infop info_ptr);
  1610. #line 1823
  1611. extern  png_byte _cdecl png_get_interlace_type 
  1612. (png_structp png_ptr, png_infop info_ptr);
  1613. #line 1827
  1614. extern  png_byte _cdecl png_get_compression_type 
  1615. (png_structp png_ptr, png_infop info_ptr);
  1616. #line 1831
  1617. extern  png_uint_32 _cdecl png_get_pixels_per_meter 
  1618. (png_structp png_ptr, png_infop info_ptr);
  1619. extern  png_uint_32 _cdecl png_get_x_pixels_per_meter 
  1620. (png_structp png_ptr, png_infop info_ptr);
  1621. extern  png_uint_32 _cdecl png_get_y_pixels_per_meter 
  1622. (png_structp png_ptr, png_infop info_ptr);
  1623. #line 1840
  1624. extern  float _cdecl png_get_pixel_aspect_ratio 
  1625. (png_structp png_ptr, png_infop info_ptr);
  1626. #line 1845
  1627. extern  png_int_32 _cdecl png_get_x_offset_pixels 
  1628. (png_structp png_ptr, png_infop info_ptr);
  1629. extern  png_int_32 _cdecl png_get_y_offset_pixels 
  1630. (png_structp png_ptr, png_infop info_ptr);
  1631. extern  png_int_32 _cdecl png_get_x_offset_microns 
  1632. (png_structp png_ptr, png_infop info_ptr);
  1633. extern  png_int_32 _cdecl png_get_y_offset_microns 
  1634. (png_structp png_ptr, png_infop info_ptr);
  1635. #line 1857
  1636. extern  png_bytep _cdecl png_get_signature 
  1637. (png_structp png_ptr, png_infop info_ptr);
  1638. #line 1861
  1639. extern  png_uint_32 _cdecl png_get_bKGD 
  1640. (png_structp png_ptr, png_infop info_ptr, png_color_16p *background);
  1641. #line 1866
  1642. extern  void _cdecl png_set_bKGD 
  1643. (png_structp png_ptr, png_infop info_ptr, png_color_16p background);
  1644. #line 1872
  1645. extern  png_uint_32 _cdecl png_get_cHRM 
  1646. #line 1875
  1647. (png_structp png_ptr, png_infop info_ptr, double *white_x, double *white_y, double *red_x, double *red_y, double *green_x, double *green_y, double *blue_x, double *blue_y);
  1648. #line 1878
  1649. extern  png_uint_32 _cdecl png_get_cHRM_fixed 
  1650. #line 1882
  1651. (png_structp png_ptr, png_infop info_ptr, png_fixed_point *int_white_x, png_fixed_point *int_white_y, png_fixed_point *int_red_x, png_fixed_point *int_red_y, png_fixed_point *int_green_x, png_fixed_point *int_green_y, png_fixed_point *int_blue_x, png_fixed_point *int_blue_y);
  1652. #line 1888
  1653. extern  void _cdecl png_set_cHRM 
  1654.  
  1655. (png_structp png_ptr, png_infop info_ptr, double white_x, double white_y, double red_x, double red_y, double green_x, double green_y, double blue_x, double blue_y);
  1656. #line 1893
  1657. extern  void _cdecl png_set_cHRM_fixed 
  1658. #line 1897
  1659. (png_structp png_ptr, png_infop info_ptr, png_fixed_point int_white_x, png_fixed_point int_white_y, png_fixed_point int_red_x, png_fixed_point int_red_y, png_fixed_point int_green_x, png_fixed_point int_green_y, png_fixed_point int_blue_x, png_fixed_point int_blue_y);
  1660. #line 1903
  1661. extern  png_uint_32 _cdecl png_get_gAMA 
  1662. (png_structp png_ptr, png_infop info_ptr, double *file_gamma);
  1663.  
  1664. extern  png_uint_32 _cdecl png_get_gAMA_fixed 
  1665. (png_structp png_ptr, png_infop info_ptr, png_fixed_point *int_file_gamma);
  1666. #line 1912
  1667. extern  void _cdecl png_set_gAMA 
  1668. (png_structp png_ptr, png_infop info_ptr, double file_gamma);
  1669.  
  1670. extern  void _cdecl png_set_gAMA_fixed 
  1671. (png_structp png_ptr, png_infop info_ptr, png_fixed_point int_file_gamma);
  1672. #line 1920
  1673. extern  png_uint_32 _cdecl png_get_hIST 
  1674. (png_structp png_ptr, png_infop info_ptr, png_uint_16p *hist);
  1675. #line 1925
  1676. extern  void _cdecl png_set_hIST 
  1677. (png_structp png_ptr, png_infop info_ptr, png_uint_16p hist);
  1678. #line 1929
  1679. extern  png_uint_32 _cdecl png_get_IHDR 
  1680. #line 1932
  1681. (png_structp png_ptr, png_infop info_ptr, png_uint_32 *width, png_uint_32 *height, int *bit_depth, int *color_type, int *interlace_type, int *compression_type, int *filter_type);
  1682.  
  1683. extern  void _cdecl png_set_IHDR 
  1684.  
  1685. (png_structp png_ptr, png_infop info_ptr, png_uint_32 width, png_uint_32 height, int bit_depth, int color_type, int interlace_type, int compression_type, int filter_type);
  1686. #line 1939
  1687. extern  png_uint_32 _cdecl png_get_oFFs 
  1688.  
  1689. (png_structp png_ptr, png_infop info_ptr, png_int_32 *offset_x, png_int_32 *offset_y, int *unit_type);
  1690. #line 1945
  1691. extern  void _cdecl png_set_oFFs 
  1692.  
  1693. (png_structp png_ptr, png_infop info_ptr, png_int_32 offset_x, png_int_32 offset_y, int unit_type);
  1694. #line 1951
  1695. extern  png_uint_32 _cdecl png_get_pCAL 
  1696.  
  1697. (png_structp png_ptr, png_infop info_ptr, png_charp *purpose, png_int_32 *X0, png_int_32 *X1, int *type, int *nparams, png_charp *units, png_charpp *params);
  1698. #line 1957
  1699. extern  void _cdecl png_set_pCAL 
  1700.  
  1701. (png_structp png_ptr, png_infop info_ptr, png_charp purpose, png_int_32 X0, png_int_32 X1, int type, int nparams, png_charp units, png_charpp params);
  1702. #line 1963
  1703. extern  png_uint_32 _cdecl png_get_pHYs 
  1704. (png_structp png_ptr, png_infop info_ptr, png_uint_32 *res_x, png_uint_32 *res_y, int *unit_type);
  1705. #line 1968
  1706. extern  void _cdecl png_set_pHYs 
  1707. (png_structp png_ptr, png_infop info_ptr, png_uint_32 res_x, png_uint_32 res_y, int unit_type);
  1708. #line 1972
  1709. extern  png_uint_32 _cdecl png_get_PLTE 
  1710. (png_structp png_ptr, png_infop info_ptr, png_colorp *palette, int *num_palette);
  1711.  
  1712. extern  void _cdecl png_set_PLTE 
  1713. (png_structp png_ptr, png_infop info_ptr, png_colorp palette, int num_palette);
  1714. #line 1979
  1715. extern  png_uint_32 _cdecl png_get_sBIT 
  1716. (png_structp png_ptr, png_infop info_ptr, png_color_8p *sig_bit);
  1717. #line 1984
  1718. extern  void _cdecl png_set_sBIT 
  1719. (png_structp png_ptr, png_infop info_ptr, png_color_8p sig_bit);
  1720. #line 1989
  1721. extern  png_uint_32 _cdecl png_get_sRGB 
  1722. (png_structp png_ptr, png_infop info_ptr, int *intent);
  1723. #line 1994
  1724. extern  void _cdecl png_set_sRGB 
  1725. (png_structp png_ptr, png_infop info_ptr, int intent);
  1726. extern  void _cdecl png_set_sRGB_gAMA_and_cHRM 
  1727. (png_structp png_ptr, png_infop info_ptr, int intent);
  1728. #line 2001
  1729. extern  png_uint_32 _cdecl png_get_iCCP 
  1730.  
  1731. (png_structp png_ptr, png_infop info_ptr, png_charpp name, int *compression_type, png_charpp profile, png_uint_32 *proflen);
  1732. #line 2007
  1733. extern  void _cdecl png_set_iCCP 
  1734.  
  1735. (png_structp png_ptr, png_infop info_ptr, png_charp name, int compression_type, png_charp profile, png_uint_32 proflen);
  1736. #line 2013
  1737. extern  png_uint_32 _cdecl png_get_sPLT 
  1738. (png_structp png_ptr, png_infop info_ptr, png_sPLT_tpp entries);
  1739. #line 2018
  1740. extern  void _cdecl png_set_sPLT 
  1741. (png_structp png_ptr, png_infop info_ptr, png_sPLT_tp entries, int nentries);
  1742. #line 2024
  1743. extern  png_uint_32 _cdecl png_get_text 
  1744. (png_structp png_ptr, png_infop info_ptr, png_textp *text_ptr, int *num_text);
  1745. #line 2037
  1746. extern  void _cdecl png_set_text 
  1747. (png_structp png_ptr, png_infop info_ptr, png_textp text_ptr, int num_text);
  1748. #line 2042
  1749. extern  png_uint_32 _cdecl png_get_tIME 
  1750. (png_structp png_ptr, png_infop info_ptr, png_timep *mod_time);
  1751. #line 2047
  1752. extern  void _cdecl png_set_tIME 
  1753. (png_structp png_ptr, png_infop info_ptr, png_timep mod_time);
  1754. #line 2052
  1755. extern  png_uint_32 _cdecl png_get_tRNS 
  1756.  
  1757. (png_structp png_ptr, png_infop info_ptr, png_bytep *trans, int *num_trans, png_color_16p *trans_values);
  1758. #line 2058
  1759. extern  void _cdecl png_set_tRNS 
  1760.  
  1761. (png_structp png_ptr, png_infop info_ptr, png_bytep trans, int num_trans, png_color_16p trans_values);
  1762. #line 2068
  1763. extern  png_uint_32 _cdecl png_get_sCAL 
  1764. (png_structp png_ptr, png_infop info_ptr, int *unit, double *width, double *height);
  1765. #line 2080
  1766. extern  void _cdecl png_set_sCAL 
  1767. (png_structp png_ptr, png_infop info_ptr, int unit, double width, double height);
  1768. #line 2084
  1769. extern  void _cdecl png_set_sCAL_s 
  1770. (png_structp png_ptr, png_infop info_ptr, int unit, png_charp swidth, png_charp sheight);
  1771. #line 2099
  1772. extern  void _cdecl png_set_keep_unknown_chunks 
  1773. (png_structp png_ptr, int keep, png_bytep chunk_list, int num_chunks);
  1774. extern  void _cdecl png_set_unknown_chunks 
  1775. (png_structp png_ptr, png_infop info_ptr, png_unknown_chunkp unknowns, int num_unknowns);
  1776. extern  void _cdecl png_set_unknown_chunk_location
  1777.    (png_structp png_ptr, png_infop info_ptr, int chunk, int location);
  1778. extern  png_uint_32 _cdecl png_get_unknown_chunks 
  1779. (png_structp png_ptr, png_infop info_ptr, png_unknown_chunkpp entries);
  1780. #line 2112
  1781. extern  void _cdecl png_set_invalid 
  1782. (png_structp png_ptr, png_infop info_ptr, int mask);
  1783. #line 2117
  1784. extern  void _cdecl png_read_png 
  1785. #line 2120
  1786. (png_structp png_ptr, png_infop info_ptr, int transforms, voidp params);
  1787. extern  void _cdecl png_write_png 
  1788. #line 2124
  1789. (png_structp png_ptr, png_infop info_ptr, int transforms, voidp params);
  1790. #line 2178
  1791. extern  png_bytep _cdecl png_sig_bytes (void);
  1792.  
  1793. extern  png_charp _cdecl png_get_copyright (png_structp png_ptr);
  1794. extern  png_charp _cdecl png_get_header_ver (png_structp png_ptr);
  1795. extern  png_charp _cdecl png_get_header_version (png_structp png_ptr);
  1796. extern  png_charp _cdecl png_get_libpng_ver (png_structp png_ptr);
  1797. #line 2333
  1798.    extern   png_byte png_sig[8];
  1799. #line 2366
  1800. extern   const png_byte png_IHDR[5];
  1801. extern   const png_byte png_IDAT[5];
  1802. extern   const png_byte png_IEND[5];
  1803. extern   const png_byte png_PLTE[5];
  1804. extern   const png_byte png_bKGD[5];
  1805. extern   const png_byte png_cHRM[5];
  1806. extern   const png_byte png_gAMA[5];
  1807. extern   const png_byte png_hIST[5];
  1808. extern   const png_byte png_iCCP[5];
  1809. extern   const png_byte png_iTXt[5];
  1810. extern   const png_byte png_oFFs[5];
  1811. extern   const png_byte png_pCAL[5];
  1812. extern   const png_byte png_sCAL[5];
  1813. extern   const png_byte png_pHYs[5];
  1814. extern   const png_byte png_sBIT[5];
  1815. extern   const png_byte png_sPLT[5];
  1816. extern   const png_byte png_sRGB[5];
  1817. extern   const png_byte png_tEXt[5];
  1818. extern   const png_byte png_tIME[5];
  1819. extern   const png_byte png_tRNS[5];
  1820. extern   const png_byte png_zTXt[5];
  1821. #line 2406
  1822.  png_int_32 png_get_int_32 (png_bytep buf);
  1823.  
  1824.  png_uint_32 png_get_uint_32 (png_bytep buf);
  1825.  png_uint_16 png_get_uint_16 (png_bytep buf);
  1826. #line 2415
  1827. extern  void _cdecl png_read_init (png_structp png_ptr);
  1828. #line 2418
  1829. extern  void _cdecl png_read_init_2 
  1830.  
  1831. (png_structp png_ptr, png_const_charp user_png_ver, png_size_t png_struct_size, png_size_t png_info_size);
  1832. #line 2425
  1833. extern  void _cdecl png_write_init (png_structp png_ptr);
  1834. #line 2428
  1835. extern  void _cdecl png_write_init_2 
  1836.  
  1837. (png_structp png_ptr, png_const_charp user_png_ver, png_size_t png_struct_size, png_size_t png_info_size);
  1838. #line 2433
  1839.  png_voidp png_create_struct (int type);
  1840. #line 2436
  1841.  void png_destroy_struct (png_voidp struct_ptr);
  1842.  
  1843.  png_voidp png_create_struct_2 
  1844. (int type, png_malloc_ptr malloc_fn);
  1845.  void png_destroy_struct_2 
  1846. (png_voidp struct_ptr, png_free_ptr free_fn);
  1847. #line 2444
  1848.  void png_info_destroy 
  1849. (png_structp png_ptr, png_infop info_ptr);
  1850. #line 2448
  1851.  voidpf png_zalloc (voidpf png_ptr, uInt items, uInt size);
  1852. #line 2451
  1853.  void png_zfree (voidpf png_ptr, voidpf ptr);
  1854. #line 2454
  1855.  void png_reset_crc (png_structp png_ptr);
  1856. #line 2457
  1857.  void png_write_data 
  1858. (png_structp png_ptr, png_bytep data, png_size_t length);
  1859. #line 2461
  1860.  void png_read_data 
  1861. (png_structp png_ptr, png_bytep data, png_size_t length);
  1862. #line 2465
  1863.  void png_crc_read 
  1864. (png_structp png_ptr, png_bytep buf, png_size_t length);
  1865. #line 2471
  1866.  png_charp png_decompress_chunk 
  1867.  
  1868. (png_structp png_ptr, int comp_type, png_charp chunkdata, png_size_t chunklength, png_size_t prefix_length, png_size_t *data_length);
  1869. #line 2477
  1870.  int png_crc_finish (png_structp png_ptr, png_uint_32 skip);
  1871. #line 2480
  1872.  int png_crc_error (png_structp png_ptr);
  1873. #line 2486
  1874.  void png_calculate_crc 
  1875. (png_structp png_ptr, png_bytep ptr, png_size_t length);
  1876. #line 2490
  1877.  void png_flush (png_structp png_ptr);
  1878. #line 2497
  1879.  void png_save_uint_32 (png_bytep buf, png_uint_32 i);
  1880. #line 2500
  1881.  void png_save_int_32 (png_bytep buf, png_int_32 i);
  1882. #line 2507
  1883.  void png_save_uint_16 (png_bytep buf, unsigned int i);
  1884. #line 2510
  1885.  void png_write_sig (png_structp png_ptr);
  1886. #line 2517
  1887.  void png_write_IHDR 
  1888. #line 2520
  1889. (png_structp png_ptr, png_uint_32 width, png_uint_32 height, int bit_depth, int color_type, int compression_type, int filter_type, int interlace_type);
  1890.  
  1891.  void png_write_PLTE 
  1892. (png_structp png_ptr, png_colorp palette, png_uint_32 num_pal);
  1893.  
  1894.  void png_write_IDAT 
  1895. (png_structp png_ptr, png_bytep data, png_size_t length);
  1896.  
  1897.  void png_write_IEND (png_structp png_ptr);
  1898. #line 2532
  1899.  void png_write_gAMA (png_structp png_ptr, double file_gamma);
  1900. #line 2535
  1901.  void png_write_gAMA_fixed 
  1902. (png_structp png_ptr, png_fixed_point file_gamma);
  1903. #line 2541
  1904.  void png_write_sBIT 
  1905. (png_structp png_ptr, png_color_8p sbit, int color_type);
  1906. #line 2547
  1907.  void png_write_cHRM 
  1908. #line 2550
  1909. (png_structp png_ptr, double white_x, double white_y, double red_x, double red_y, double green_x, double green_y, double blue_x, double blue_y);
  1910. #line 2553
  1911.  void png_write_cHRM_fixed 
  1912. #line 2557
  1913. (png_structp png_ptr, png_fixed_point int_white_x, png_fixed_point int_white_y, png_fixed_point int_red_x, png_fixed_point int_red_y, png_fixed_point int_green_x, png_fixed_point int_green_y, png_fixed_point int_blue_x, png_fixed_point int_blue_y);
  1914. #line 2562
  1915.  void png_write_sRGB 
  1916. (png_structp png_ptr, int intent);
  1917. #line 2567
  1918.  void png_write_iCCP 
  1919.  
  1920. (png_structp png_ptr, png_charp name, int compression_type, png_charp profile, int proflen);
  1921. #line 2573
  1922.  void png_write_sPLT 
  1923. (png_structp png_ptr, png_sPLT_tp palette);
  1924. #line 2578
  1925.  void png_write_tRNS 
  1926. (png_structp png_ptr, png_bytep trans, png_color_16p values, int number, int color_type);
  1927. #line 2583
  1928.  void png_write_bKGD 
  1929. (png_structp png_ptr, png_color_16p values, int color_type);
  1930. #line 2588
  1931.  void png_write_hIST 
  1932. (png_structp png_ptr, png_uint_16p hist, int num_hist);
  1933. #line 2594
  1934.  png_size_t png_check_keyword 
  1935. (png_structp png_ptr, png_charp key, png_charpp new_key);
  1936. #line 2599
  1937.  void png_write_tEXt 
  1938. (png_structp png_ptr, png_charp key, png_charp text, png_size_t text_len);
  1939. #line 2604
  1940.  void png_write_zTXt 
  1941. (png_structp png_ptr, png_charp key, png_charp text, png_size_t text_len, int compression);
  1942. #line 2615
  1943.  void png_write_oFFs 
  1944. (png_structp png_ptr, png_uint_32 x_offset, png_uint_32 y_offset, int unit_type);
  1945. #line 2620
  1946.  void png_write_pCAL 
  1947.  
  1948. (png_structp png_ptr, png_charp purpose, png_int_32 X0, png_int_32 X1, int type, int nparams, png_charp units, png_charpp params);
  1949. #line 2626
  1950.  void png_write_pHYs 
  1951.  
  1952. (png_structp png_ptr, png_uint_32 x_pixels_per_unit, png_uint_32 y_pixels_per_unit, int unit_type);
  1953. #line 2632
  1954.  void png_write_tIME 
  1955. (png_structp png_ptr, png_timep mod_time);
  1956. #line 2638
  1957.  void png_write_sCAL 
  1958. (png_structp png_ptr, int unit, double width, double height);
  1959. #line 2649
  1960.  void png_write_finish_row (png_structp png_ptr);
  1961. #line 2652
  1962.  void png_write_start_row (png_structp png_ptr);
  1963. #line 2655
  1964.  void png_build_gamma_table (png_structp png_ptr);
  1965. #line 2659
  1966.  void png_combine_row 
  1967. (png_structp png_ptr, png_bytep row, int mask);
  1968. #line 2664
  1969.  void png_do_read_interlace 
  1970. (png_row_infop row_info, png_bytep row, int pass, png_uint_32 transformations);
  1971. #line 2670
  1972.  void png_do_write_interlace 
  1973. (png_row_infop row_info, png_bytep row, int pass);
  1974. #line 2675
  1975.  void png_read_filter_row 
  1976. (png_structp png_ptr, png_row_infop row_info, png_bytep row, png_bytep prev_row, int filter);
  1977. #line 2679
  1978.  void png_write_find_filter 
  1979. (png_structp png_ptr, png_row_infop row_info);
  1980. #line 2683
  1981.  void png_write_filtered_row 
  1982. (png_structp png_ptr, png_bytep filtered_row);
  1983.  
  1984.  void png_read_finish_row (png_structp png_ptr);
  1985. #line 2689
  1986.  void png_read_start_row (png_structp png_ptr);
  1987.  
  1988.  void png_read_transform_info 
  1989. (png_structp png_ptr, png_infop info_ptr);
  1990. #line 2696
  1991.  void png_do_read_filler 
  1992. (png_row_infop row_info, png_bytep row, png_uint_32 filler, png_uint_32 flags);
  1993. #line 2701
  1994.  void png_do_read_swap_alpha 
  1995. (png_row_infop row_info, png_bytep row);
  1996. #line 2706
  1997.  void png_do_write_swap_alpha 
  1998. (png_row_infop row_info, png_bytep row);
  1999. #line 2711
  2000.  void png_do_read_invert_alpha 
  2001. (png_row_infop row_info, png_bytep row);
  2002. #line 2716
  2003.  void png_do_write_invert_alpha 
  2004. (png_row_infop row_info, png_bytep row);
  2005. #line 2722
  2006.  void png_do_strip_filler 
  2007. (png_row_infop row_info, png_bytep row, png_uint_32 flags);
  2008. #line 2727
  2009.  void png_do_swap (png_row_infop row_info, png_bytep row);
  2010. #line 2731
  2011.  void png_do_packswap (png_row_infop row_info, png_bytep row);
  2012. #line 2735
  2013.  int png_do_rgb_to_gray 
  2014. (png_structp png_ptr, png_row_infop row_info, png_bytep row);
  2015. #line 2740
  2016.  void png_do_gray_to_rgb 
  2017. (png_row_infop row_info, png_bytep row);
  2018. #line 2745
  2019.  void png_do_unpack (png_row_infop row_info, png_bytep row);
  2020. #line 2749
  2021.  void png_do_unshift 
  2022. (png_row_infop row_info, png_bytep row, png_color_8p sig_bits);
  2023. #line 2754
  2024.  void png_do_invert (png_row_infop row_info, png_bytep row);
  2025. #line 2758
  2026.  void png_do_chop (png_row_infop row_info, png_bytep row);
  2027. #line 2762
  2028.  void png_do_dither 
  2029. (png_row_infop row_info, png_bytep row, png_bytep palette_lookup, png_bytep dither_lookup);
  2030. #line 2772
  2031.  void png_do_bgr (png_row_infop row_info, png_bytep row);
  2032. #line 2776
  2033.  void png_do_pack 
  2034. (png_row_infop row_info, png_bytep row, png_uint_32 bit_depth);
  2035. #line 2781
  2036.  void png_do_shift 
  2037. (png_row_infop row_info, png_bytep row, png_color_8p bit_depth);
  2038. #line 2786
  2039.  void png_do_background 
  2040. #line 2791
  2041. (png_row_infop row_info, png_bytep row, png_color_16p trans_values, png_color_16p background, png_color_16p background_1, png_bytep gamma_table, png_bytep gamma_from_1, png_bytep gamma_to_1, png_uint_16pp gamma_16, png_uint_16pp gamma_16_from_1, png_uint_16pp gamma_16_to_1, int gamma_shift);
  2042. #line 2795
  2043.  void png_do_gamma 
  2044.  
  2045. (png_row_infop row_info, png_bytep row, png_bytep gamma_table, png_uint_16pp gamma_16_table, int gamma_shift);
  2046. #line 2801
  2047.  void png_do_expand_palette 
  2048. (png_row_infop row_info, png_bytep row, png_colorp palette, png_bytep trans, int num_trans);
  2049.  void png_do_expand 
  2050. (png_row_infop row_info, png_bytep row, png_color_16p trans_value);
  2051. #line 2812
  2052.  void png_handle_IHDR 
  2053. (png_structp png_ptr, png_infop info_ptr, png_uint_32 length);
  2054.  void png_handle_PLTE 
  2055. (png_structp png_ptr, png_infop info_ptr, png_uint_32 length);
  2056.  void png_handle_IEND 
  2057. (png_structp png_ptr, png_infop info_ptr, png_uint_32 length);
  2058. #line 2820
  2059.  void png_handle_bKGD 
  2060. (png_structp png_ptr, png_infop info_ptr, png_uint_32 length);
  2061. #line 2825
  2062.  void png_handle_cHRM 
  2063. (png_structp png_ptr, png_infop info_ptr, png_uint_32 length);
  2064. #line 2830
  2065.  void png_handle_gAMA 
  2066. (png_structp png_ptr, png_infop info_ptr, png_uint_32 length);
  2067. #line 2835
  2068.  void png_handle_hIST 
  2069. (png_structp png_ptr, png_infop info_ptr, png_uint_32 length);
  2070. #line 2840
  2071. extern void png_handle_iCCP 
  2072. (png_structp png_ptr, png_infop info_ptr, png_uint_32 length);
  2073. #line 2850
  2074.  void png_handle_oFFs 
  2075. (png_structp png_ptr, png_infop info_ptr, png_uint_32 length);
  2076. #line 2855
  2077.  void png_handle_pCAL 
  2078. (png_structp png_ptr, png_infop info_ptr, png_uint_32 length);
  2079. #line 2860
  2080.  void png_handle_pHYs 
  2081. (png_structp png_ptr, png_infop info_ptr, png_uint_32 length);
  2082. #line 2865
  2083.  void png_handle_sBIT 
  2084. (png_structp png_ptr, png_infop info_ptr, png_uint_32 length);
  2085. #line 2870
  2086.  void png_handle_sCAL 
  2087. (png_structp png_ptr, png_infop info_ptr, png_uint_32 length);
  2088. #line 2875
  2089. extern void png_handle_sPLT 
  2090. (png_structp png_ptr, png_infop info_ptr, png_uint_32 length);
  2091. #line 2880
  2092.  void png_handle_sRGB 
  2093. (png_structp png_ptr, png_infop info_ptr, png_uint_32 length);
  2094. #line 2885
  2095.  void png_handle_tEXt 
  2096. (png_structp png_ptr, png_infop info_ptr, png_uint_32 length);
  2097. #line 2890
  2098.  void png_handle_tIME 
  2099. (png_structp png_ptr, png_infop info_ptr, png_uint_32 length);
  2100. #line 2895
  2101.  void png_handle_tRNS 
  2102. (png_structp png_ptr, png_infop info_ptr, png_uint_32 length);
  2103. #line 2900
  2104.  void png_handle_zTXt 
  2105. (png_structp png_ptr, png_infop info_ptr, png_uint_32 length);
  2106. #line 2905
  2107.  int png_handle_as_unknown 
  2108. (png_structp png_ptr, png_bytep chunk_name);
  2109. #line 2909
  2110.  void png_handle_unknown 
  2111. (png_structp png_ptr, png_infop info_ptr, png_uint_32 length);
  2112.  
  2113.  void png_check_chunk_name 
  2114. (png_structp png_ptr, png_bytep chunk_name);
  2115. #line 2916
  2116.  void png_do_read_transformations (png_structp png_ptr);
  2117.  void png_do_write_transformations (png_structp png_ptr);
  2118.  
  2119.  void png_init_read_transformations (png_structp png_ptr);
  2120. #line 2922
  2121.  void png_push_read_chunk 
  2122. (png_structp png_ptr, png_infop info_ptr);
  2123.  void png_push_read_sig 
  2124. (png_structp png_ptr, png_infop info_ptr);
  2125.  void png_push_check_crc (png_structp png_ptr);
  2126.  void png_push_crc_skip 
  2127. (png_structp png_ptr, png_uint_32 length);
  2128.  void png_push_crc_finish (png_structp png_ptr);
  2129.  void png_push_fill_buffer 
  2130. (png_structp png_ptr, png_bytep buffer, png_size_t length);
  2131.  void png_push_save_buffer (png_structp png_ptr);
  2132.  void png_push_restore_buffer 
  2133. (png_structp png_ptr, png_bytep buffer, png_size_t buffer_length);
  2134.  void png_push_read_IDAT (png_structp png_ptr);
  2135.  void png_process_IDAT_data 
  2136. (png_structp png_ptr, png_bytep buffer, png_size_t buffer_length);
  2137.  void png_push_process_row (png_structp png_ptr);
  2138.  void png_push_handle_unknown 
  2139. (png_structp png_ptr, png_infop info_ptr, png_uint_32 length);
  2140.  void png_push_have_info 
  2141. (png_structp png_ptr, png_infop info_ptr);
  2142.  void png_push_have_end 
  2143. (png_structp png_ptr, png_infop info_ptr);
  2144.  void png_push_have_row (png_structp png_ptr, png_bytep row);
  2145.  void png_push_read_end 
  2146. (png_structp png_ptr, png_infop info_ptr);
  2147.  void png_process_some_data 
  2148. (png_structp png_ptr, png_infop info_ptr);
  2149.  void png_read_push_finish_row (png_structp png_ptr);
  2150.  
  2151.  void png_push_handle_tEXt 
  2152. (png_structp png_ptr, png_infop info_ptr, png_uint_32 length);
  2153.  void png_push_read_tEXt 
  2154. (png_structp png_ptr, png_infop info_ptr);
  2155. #line 2958
  2156.  void png_push_handle_zTXt 
  2157. (png_structp png_ptr, png_infop info_ptr, png_uint_32 length);
  2158.  void png_push_read_zTXt 
  2159. (png_structp png_ptr, png_infop info_ptr);
  2160. #line 16 "pngtrans.c"
  2161. void _cdecl
  2162. png_set_bgr(png_structp png_ptr)
  2163. {
  2164.    ;
  2165.    png_ptr->transformations |= 0x0001;
  2166. }
  2167. #line 26
  2168. void _cdecl
  2169. png_set_swap(png_structp png_ptr)
  2170. {
  2171.    ;
  2172.    if (png_ptr->bit_depth == 16)
  2173.       png_ptr->transformations |= 0x0010;
  2174. }
  2175. #line 37
  2176. void _cdecl
  2177. png_set_packing(png_structp png_ptr)
  2178. {
  2179.    ;
  2180.    if (png_ptr->bit_depth < 8)
  2181.    {
  2182.       png_ptr->transformations |= 0x0004;
  2183.       png_ptr->usr_bit_depth = 8;
  2184.    }
  2185. }
  2186. #line 51
  2187. void _cdecl
  2188. png_set_packswap(png_structp png_ptr)
  2189. {
  2190.    ;
  2191.    if (png_ptr->bit_depth < 8)
  2192.       png_ptr->transformations |= 0x10000L;
  2193. }
  2194. #line 61
  2195. void _cdecl
  2196. png_set_shift(png_structp png_ptr, png_color_8p true_bits)
  2197. {
  2198.    ;
  2199.    png_ptr->transformations |= 0x0008;
  2200.    png_ptr->shift = *true_bits;
  2201. }
  2202. #line 72
  2203. int _cdecl
  2204. png_set_interlace_handling(png_structp png_ptr)
  2205. {
  2206.    ;
  2207.    if (png_ptr->interlaced)
  2208.    {
  2209.       png_ptr->transformations |= 0x0002;
  2210.       return (7);
  2211.    }
  2212.  
  2213.    return (1);
  2214. }
  2215. #line 92
  2216. void _cdecl
  2217. png_set_filler(png_structp png_ptr, png_uint_32 filler, int filler_loc)
  2218. {
  2219.    ;
  2220.    png_ptr->transformations |= 0x8000L;
  2221.    png_ptr->filler = (png_byte)filler;
  2222.    if (filler_loc == 1)
  2223.       png_ptr->flags |= 0x0080;
  2224.    else
  2225.       png_ptr->flags &= ~0x0080;
  2226. #line 108
  2227.    if (png_ptr->color_type == (2))
  2228.    {
  2229.       png_ptr->usr_channels = 4;
  2230.    }
  2231. #line 116
  2232.    if (png_ptr->color_type == 0 && png_ptr->bit_depth >= 8)
  2233.    {
  2234.       png_ptr->usr_channels = 2;
  2235.    }
  2236. }
  2237. #line 125
  2238. void _cdecl
  2239. png_set_swap_alpha(png_structp png_ptr)
  2240. {
  2241.    ;
  2242.    png_ptr->transformations |= 0x20000L;
  2243. }
  2244. #line 135
  2245. void _cdecl
  2246. png_set_invert_alpha(png_structp png_ptr)
  2247. {
  2248.    ;
  2249.    png_ptr->transformations |= 0x80000L;
  2250. }
  2251. #line 144
  2252. void _cdecl
  2253. png_set_invert_mono(png_structp png_ptr)
  2254. {
  2255.    ;
  2256.    png_ptr->transformations |= 0x0020;
  2257. }
  2258. #line 152
  2259. void  
  2260. png_do_invert(png_row_infop row_info, png_bytep row)
  2261. {
  2262.    ;
  2263.    if (row_info->bit_depth == 1 &&
  2264. #line 160
  2265.        row_info->color_type == 0)
  2266.    {
  2267.       png_bytep rp = row;
  2268.       png_uint_32 i;
  2269.       png_uint_32 istop = row_info->rowbytes;
  2270.  
  2271.       for (i = 0; i < istop; i++)
  2272.       {
  2273.          *rp = (png_byte)(~(*rp));
  2274.          rp++;
  2275.       }
  2276.    }
  2277. }
  2278. #line 177
  2279. void  
  2280. png_do_swap(png_row_infop row_info, png_bytep row)
  2281. {
  2282.    ;
  2283.    if (
  2284. #line 185
  2285.        row_info->bit_depth == 16)
  2286.    {
  2287.       png_bytep rp = row;
  2288.       png_uint_32 i;
  2289.       png_uint_32 istop= row_info->width * row_info->channels;
  2290.  
  2291.       for (i = 0; i < istop; i++, rp += 2)
  2292.       {
  2293.          png_byte t = *rp;
  2294.          *rp = *(rp + 1);
  2295.          *(rp + 1) = t;
  2296.       }
  2297.    }
  2298. }
  2299. #line 202
  2300. static png_byte onebppswaptable[256] = {
  2301.    0x00, 0x80, 0x40, 0xC0, 0x20, 0xA0, 0x60, 0xE0,
  2302.    0x10, 0x90, 0x50, 0xD0, 0x30, 0xB0, 0x70, 0xF0,
  2303.    0x08, 0x88, 0x48, 0xC8, 0x28, 0xA8, 0x68, 0xE8,
  2304.    0x18, 0x98, 0x58, 0xD8, 0x38, 0xB8, 0x78, 0xF8,
  2305.    0x04, 0x84, 0x44, 0xC4, 0x24, 0xA4, 0x64, 0xE4,
  2306.    0x14, 0x94, 0x54, 0xD4, 0x34, 0xB4, 0x74, 0xF4,
  2307.    0x0C, 0x8C, 0x4C, 0xCC, 0x2C, 0xAC, 0x6C, 0xEC,
  2308.    0x1C, 0x9C, 0x5C, 0xDC, 0x3C, 0xBC, 0x7C, 0xFC,
  2309.    0x02, 0x82, 0x42, 0xC2, 0x22, 0xA2, 0x62, 0xE2,
  2310.    0x12, 0x92, 0x52, 0xD2, 0x32, 0xB2, 0x72, 0xF2,
  2311.    0x0A, 0x8A, 0x4A, 0xCA, 0x2A, 0xAA, 0x6A, 0xEA,
  2312.    0x1A, 0x9A, 0x5A, 0xDA, 0x3A, 0xBA, 0x7A, 0xFA,
  2313.    0x06, 0x86, 0x46, 0xC6, 0x26, 0xA6, 0x66, 0xE6,
  2314.    0x16, 0x96, 0x56, 0xD6, 0x36, 0xB6, 0x76, 0xF6,
  2315.    0x0E, 0x8E, 0x4E, 0xCE, 0x2E, 0xAE, 0x6E, 0xEE,
  2316.    0x1E, 0x9E, 0x5E, 0xDE, 0x3E, 0xBE, 0x7E, 0xFE,
  2317.    0x01, 0x81, 0x41, 0xC1, 0x21, 0xA1, 0x61, 0xE1,
  2318.    0x11, 0x91, 0x51, 0xD1, 0x31, 0xB1, 0x71, 0xF1,
  2319.    0x09, 0x89, 0x49, 0xC9, 0x29, 0xA9, 0x69, 0xE9,
  2320.    0x19, 0x99, 0x59, 0xD9, 0x39, 0xB9, 0x79, 0xF9,
  2321.    0x05, 0x85, 0x45, 0xC5, 0x25, 0xA5, 0x65, 0xE5,
  2322.    0x15, 0x95, 0x55, 0xD5, 0x35, 0xB5, 0x75, 0xF5,
  2323.    0x0D, 0x8D, 0x4D, 0xCD, 0x2D, 0xAD, 0x6D, 0xED,
  2324.    0x1D, 0x9D, 0x5D, 0xDD, 0x3D, 0xBD, 0x7D, 0xFD,
  2325.    0x03, 0x83, 0x43, 0xC3, 0x23, 0xA3, 0x63, 0xE3,
  2326.    0x13, 0x93, 0x53, 0xD3, 0x33, 0xB3, 0x73, 0xF3,
  2327.    0x0B, 0x8B, 0x4B, 0xCB, 0x2B, 0xAB, 0x6B, 0xEB,
  2328.    0x1B, 0x9B, 0x5B, 0xDB, 0x3B, 0xBB, 0x7B, 0xFB,
  2329.    0x07, 0x87, 0x47, 0xC7, 0x27, 0xA7, 0x67, 0xE7,
  2330.    0x17, 0x97, 0x57, 0xD7, 0x37, 0xB7, 0x77, 0xF7,
  2331.    0x0F, 0x8F, 0x4F, 0xCF, 0x2F, 0xAF, 0x6F, 0xEF,
  2332.    0x1F, 0x9F, 0x5F, 0xDF, 0x3F, 0xBF, 0x7F, 0xFF
  2333. };
  2334.  
  2335. static png_byte twobppswaptable[256] = {
  2336.    0x00, 0x40, 0x80, 0xC0, 0x10, 0x50, 0x90, 0xD0,
  2337.    0x20, 0x60, 0xA0, 0xE0, 0x30, 0x70, 0xB0, 0xF0,
  2338.    0x04, 0x44, 0x84, 0xC4, 0x14, 0x54, 0x94, 0xD4,
  2339.    0x24, 0x64, 0xA4, 0xE4, 0x34, 0x74, 0xB4, 0xF4,
  2340.    0x08, 0x48, 0x88, 0xC8, 0x18, 0x58, 0x98, 0xD8,
  2341.    0x28, 0x68, 0xA8, 0xE8, 0x38, 0x78, 0xB8, 0xF8,
  2342.    0x0C, 0x4C, 0x8C, 0xCC, 0x1C, 0x5C, 0x9C, 0xDC,
  2343.    0x2C, 0x6C, 0xAC, 0xEC, 0x3C, 0x7C, 0xBC, 0xFC,
  2344.    0x01, 0x41, 0x81, 0xC1, 0x11, 0x51, 0x91, 0xD1,
  2345.    0x21, 0x61, 0xA1, 0xE1, 0x31, 0x71, 0xB1, 0xF1,
  2346.    0x05, 0x45, 0x85, 0xC5, 0x15, 0x55, 0x95, 0xD5,
  2347.    0x25, 0x65, 0xA5, 0xE5, 0x35, 0x75, 0xB5, 0xF5,
  2348.    0x09, 0x49, 0x89, 0xC9, 0x19, 0x59, 0x99, 0xD9,
  2349.    0x29, 0x69, 0xA9, 0xE9, 0x39, 0x79, 0xB9, 0xF9,
  2350.    0x0D, 0x4D, 0x8D, 0xCD, 0x1D, 0x5D, 0x9D, 0xDD,
  2351.    0x2D, 0x6D, 0xAD, 0xED, 0x3D, 0x7D, 0xBD, 0xFD,
  2352.    0x02, 0x42, 0x82, 0xC2, 0x12, 0x52, 0x92, 0xD2,
  2353.    0x22, 0x62, 0xA2, 0xE2, 0x32, 0x72, 0xB2, 0xF2,
  2354.    0x06, 0x46, 0x86, 0xC6, 0x16, 0x56, 0x96, 0xD6,
  2355.    0x26, 0x66, 0xA6, 0xE6, 0x36, 0x76, 0xB6, 0xF6,
  2356.    0x0A, 0x4A, 0x8A, 0xCA, 0x1A, 0x5A, 0x9A, 0xDA,
  2357.    0x2A, 0x6A, 0xAA, 0xEA, 0x3A, 0x7A, 0xBA, 0xFA,
  2358.    0x0E, 0x4E, 0x8E, 0xCE, 0x1E, 0x5E, 0x9E, 0xDE,
  2359.    0x2E, 0x6E, 0xAE, 0xEE, 0x3E, 0x7E, 0xBE, 0xFE,
  2360.    0x03, 0x43, 0x83, 0xC3, 0x13, 0x53, 0x93, 0xD3,
  2361.    0x23, 0x63, 0xA3, 0xE3, 0x33, 0x73, 0xB3, 0xF3,
  2362.    0x07, 0x47, 0x87, 0xC7, 0x17, 0x57, 0x97, 0xD7,
  2363.    0x27, 0x67, 0xA7, 0xE7, 0x37, 0x77, 0xB7, 0xF7,
  2364.    0x0B, 0x4B, 0x8B, 0xCB, 0x1B, 0x5B, 0x9B, 0xDB,
  2365.    0x2B, 0x6B, 0xAB, 0xEB, 0x3B, 0x7B, 0xBB, 0xFB,
  2366.    0x0F, 0x4F, 0x8F, 0xCF, 0x1F, 0x5F, 0x9F, 0xDF,
  2367.    0x2F, 0x6F, 0xAF, 0xEF, 0x3F, 0x7F, 0xBF, 0xFF
  2368. };
  2369.  
  2370. static png_byte fourbppswaptable[256] = {
  2371.    0x00, 0x10, 0x20, 0x30, 0x40, 0x50, 0x60, 0x70,
  2372.    0x80, 0x90, 0xA0, 0xB0, 0xC0, 0xD0, 0xE0, 0xF0,
  2373.    0x01, 0x11, 0x21, 0x31, 0x41, 0x51, 0x61, 0x71,
  2374.    0x81, 0x91, 0xA1, 0xB1, 0xC1, 0xD1, 0xE1, 0xF1,
  2375.    0x02, 0x12, 0x22, 0x32, 0x42, 0x52, 0x62, 0x72,
  2376.    0x82, 0x92, 0xA2, 0xB2, 0xC2, 0xD2, 0xE2, 0xF2,
  2377.    0x03, 0x13, 0x23, 0x33, 0x43, 0x53, 0x63, 0x73,
  2378.    0x83, 0x93, 0xA3, 0xB3, 0xC3, 0xD3, 0xE3, 0xF3,
  2379.    0x04, 0x14, 0x24, 0x34, 0x44, 0x54, 0x64, 0x74,
  2380.    0x84, 0x94, 0xA4, 0xB4, 0xC4, 0xD4, 0xE4, 0xF4,
  2381.    0x05, 0x15, 0x25, 0x35, 0x45, 0x55, 0x65, 0x75,
  2382.    0x85, 0x95, 0xA5, 0xB5, 0xC5, 0xD5, 0xE5, 0xF5,
  2383.    0x06, 0x16, 0x26, 0x36, 0x46, 0x56, 0x66, 0x76,
  2384.    0x86, 0x96, 0xA6, 0xB6, 0xC6, 0xD6, 0xE6, 0xF6,
  2385.    0x07, 0x17, 0x27, 0x37, 0x47, 0x57, 0x67, 0x77,
  2386.    0x87, 0x97, 0xA7, 0xB7, 0xC7, 0xD7, 0xE7, 0xF7,
  2387.    0x08, 0x18, 0x28, 0x38, 0x48, 0x58, 0x68, 0x78,
  2388.    0x88, 0x98, 0xA8, 0xB8, 0xC8, 0xD8, 0xE8, 0xF8,
  2389.    0x09, 0x19, 0x29, 0x39, 0x49, 0x59, 0x69, 0x79,
  2390.    0x89, 0x99, 0xA9, 0xB9, 0xC9, 0xD9, 0xE9, 0xF9,
  2391.    0x0A, 0x1A, 0x2A, 0x3A, 0x4A, 0x5A, 0x6A, 0x7A,
  2392.    0x8A, 0x9A, 0xAA, 0xBA, 0xCA, 0xDA, 0xEA, 0xFA,
  2393.    0x0B, 0x1B, 0x2B, 0x3B, 0x4B, 0x5B, 0x6B, 0x7B,
  2394.    0x8B, 0x9B, 0xAB, 0xBB, 0xCB, 0xDB, 0xEB, 0xFB,
  2395.    0x0C, 0x1C, 0x2C, 0x3C, 0x4C, 0x5C, 0x6C, 0x7C,
  2396.    0x8C, 0x9C, 0xAC, 0xBC, 0xCC, 0xDC, 0xEC, 0xFC,
  2397.    0x0D, 0x1D, 0x2D, 0x3D, 0x4D, 0x5D, 0x6D, 0x7D,
  2398.    0x8D, 0x9D, 0xAD, 0xBD, 0xCD, 0xDD, 0xED, 0xFD,
  2399.    0x0E, 0x1E, 0x2E, 0x3E, 0x4E, 0x5E, 0x6E, 0x7E,
  2400.    0x8E, 0x9E, 0xAE, 0xBE, 0xCE, 0xDE, 0xEE, 0xFE,
  2401.    0x0F, 0x1F, 0x2F, 0x3F, 0x4F, 0x5F, 0x6F, 0x7F,
  2402.    0x8F, 0x9F, 0xAF, 0xBF, 0xCF, 0xDF, 0xEF, 0xFF
  2403. };
  2404. #line 308
  2405. void  
  2406. png_do_packswap(png_row_infop row_info, png_bytep row)
  2407. {
  2408.    ;
  2409.    if (
  2410. #line 316
  2411.        row_info->bit_depth < 8)
  2412.    {
  2413.       png_bytep rp, end, table;
  2414.  
  2415.       end = row + row_info->rowbytes;
  2416.  
  2417.       if (row_info->bit_depth == 1)
  2418.          table = onebppswaptable;
  2419.       else if (row_info->bit_depth == 2)
  2420.          table = twobppswaptable;
  2421.       else if (row_info->bit_depth == 4)
  2422.          table = fourbppswaptable;
  2423.       else
  2424.          return;
  2425.  
  2426.       for (rp = row; rp < end; rp++)
  2427.          *rp = table[*rp];
  2428.    }
  2429. }
  2430. #line 340
  2431. void  
  2432. png_do_strip_filler(png_row_infop row_info, png_bytep row, png_uint_32 flags)
  2433. {
  2434.    ;
  2435. #line 347
  2436.    {
  2437. #line 352
  2438.       png_bytep sp=row;
  2439.       png_bytep dp=row;
  2440.       png_uint_32 row_width=row_info->width;
  2441.       png_uint_32 i;
  2442.  
  2443.       if (row_info->channels == 4)
  2444.       {
  2445.          if (row_info->bit_depth == 8)
  2446.          {
  2447.  
  2448.             if (flags & 0x0080)
  2449.             {
  2450.                dp+=3; sp+=4;
  2451.                for (i = 1; i < row_width; i++)
  2452.                {
  2453.                   *dp++ = *sp++;
  2454.                   *dp++ = *sp++;
  2455.                   *dp++ = *sp++;
  2456.                   sp++;
  2457.                }
  2458.             }
  2459.  
  2460.             else
  2461.             {
  2462.                for (i = 0; i < row_width; i++)
  2463.                {
  2464.                   sp++;
  2465.                   *dp++ = *sp++;
  2466.                   *dp++ = *sp++;
  2467.                   *dp++ = *sp++;
  2468.                }
  2469.             }
  2470.             row_info->pixel_depth = 24;
  2471.             row_info->rowbytes = row_width * 3;
  2472.          }
  2473.          else  
  2474.          {
  2475.             if (flags & 0x0080)
  2476.             {
  2477.  
  2478.                sp += 8; dp += 6;
  2479.                for (i = 1; i < row_width; i++)
  2480.                {
  2481. #line 400
  2482.                   *dp++ = *sp++;
  2483.                   *dp++ = *sp++;
  2484.                   *dp++ = *sp++;
  2485.                   *dp++ = *sp++;
  2486.                   *dp++ = *sp++;
  2487.                   *dp++ = *sp++;
  2488.                   sp += 2;
  2489.                }
  2490.             }
  2491.             else
  2492.             {
  2493.  
  2494.                for (i = 0; i < row_width; i++)
  2495.                {
  2496. #line 419
  2497.                   sp+=2;
  2498.                   *dp++ = *sp++;
  2499.                   *dp++ = *sp++;
  2500.                   *dp++ = *sp++;
  2501.                   *dp++ = *sp++;
  2502.                   *dp++ = *sp++;
  2503.                   *dp++ = *sp++;
  2504.                }
  2505.             }
  2506.             row_info->pixel_depth = 48;
  2507.             row_info->rowbytes = row_width * 6;
  2508.          }
  2509.          row_info->channels = 3;
  2510.          row_info->color_type &= ~4;
  2511.       }
  2512. #line 438
  2513.       else if (row_info->channels == 2)
  2514.       {
  2515.          if (row_info->bit_depth == 8)
  2516.          {
  2517.  
  2518.             if (flags & 0x0080)
  2519.             {
  2520.                for (i = 0; i < row_width; i++)
  2521.                {
  2522.                   *dp++ = *sp++;
  2523.                   sp++;
  2524.                }
  2525.             }
  2526.  
  2527.             else
  2528.             {
  2529.                for (i = 0; i < row_width; i++)
  2530.                {
  2531.                   sp++;
  2532.                   *dp++ = *sp++;
  2533.                }
  2534.             }
  2535.             row_info->pixel_depth = 8;
  2536.             row_info->rowbytes = row_width;
  2537.          }
  2538.          else  
  2539.          {
  2540.             if (flags & 0x0080)
  2541.             {
  2542.  
  2543.                sp += 4; dp += 2;
  2544.                for (i = 1; i < row_width; i++)
  2545.                {
  2546.                   *dp++ = *sp++;
  2547.                   *dp++ = *sp++;
  2548.                   sp += 2;
  2549.                }
  2550.             }
  2551.             else
  2552.             {
  2553.  
  2554.                for (i = 0; i < row_width; i++)
  2555.                {
  2556.                   sp += 2;
  2557.                   *dp++ = *sp++;
  2558.                   *dp++ = *sp++;
  2559.                }
  2560.             }
  2561.             row_info->pixel_depth = 16;
  2562.             row_info->rowbytes = row_width * 2;
  2563.          }
  2564.          row_info->channels = 1;
  2565.          row_info->color_type &= ~4;
  2566.       }
  2567.    }
  2568. }
  2569. #line 498
  2570. void  
  2571. png_do_bgr(png_row_infop row_info, png_bytep row)
  2572. {
  2573.    ;
  2574.    if (
  2575. #line 506
  2576.        (row_info->color_type & 2))
  2577.    {
  2578.       png_uint_32 row_width = row_info->width;
  2579.       if (row_info->bit_depth == 8)
  2580.       {
  2581.          if (row_info->color_type == (2))
  2582.          {
  2583.             png_bytep rp;
  2584.             png_uint_32 i;
  2585.  
  2586.             for (i = 0, rp = row; i < row_width; i++, rp += 3)
  2587.             {
  2588.                png_byte save = *rp;
  2589.                *rp = *(rp + 2);
  2590.                *(rp + 2) = save;
  2591.             }
  2592.          }
  2593.          else if (row_info->color_type == (2 | 4))
  2594.          {
  2595.             png_bytep rp;
  2596.             png_uint_32 i;
  2597.  
  2598.             for (i = 0, rp = row; i < row_width; i++, rp += 4)
  2599.             {
  2600.                png_byte save = *rp;
  2601.                *rp = *(rp + 2);
  2602.                *(rp + 2) = save;
  2603.             }
  2604.          }
  2605.       }
  2606.       else if (row_info->bit_depth == 16)
  2607.       {
  2608.          if (row_info->color_type == (2))
  2609.          {
  2610.             png_bytep rp;
  2611.             png_uint_32 i;
  2612.  
  2613.             for (i = 0, rp = row; i < row_width; i++, rp += 6)
  2614.             {
  2615.                png_byte save = *rp;
  2616.                *rp = *(rp + 4);
  2617.                *(rp + 4) = save;
  2618.                save = *(rp + 1);
  2619.                *(rp + 1) = *(rp + 5);
  2620.                *(rp + 5) = save;
  2621.             }
  2622.          }
  2623.          else if (row_info->color_type == (2 | 4))
  2624.          {
  2625.             png_bytep rp;
  2626.             png_uint_32 i;
  2627.  
  2628.             for (i = 0, rp = row; i < row_width; i++, rp += 8)
  2629.             {
  2630.                png_byte save = *rp;
  2631.                *rp = *(rp + 4);
  2632.                *(rp + 4) = save;
  2633.                save = *(rp + 1);
  2634.                *(rp + 1) = *(rp + 5);
  2635.                *(rp + 5) = save;
  2636.             }
  2637.          }
  2638.       }
  2639.    }
  2640. }
  2641. #line 576
  2642. void _cdecl
  2643. png_set_user_transform_info(png_structp png_ptr, png_voidp
  2644.    user_transform_ptr, int user_transform_depth, int user_transform_channels)
  2645. {
  2646.    ;
  2647.  
  2648.    png_ptr->user_transform_ptr = user_transform_ptr;
  2649.    png_ptr->user_transform_depth = (png_byte)user_transform_depth;
  2650.    png_ptr->user_transform_channels = (png_byte)user_transform_channels;
  2651. #line 590
  2652. }
  2653. #line 598
  2654. png_voidp _cdecl
  2655. png_get_user_transform_ptr(png_structp png_ptr)
  2656. {
  2657.  
  2658.    return ((png_voidp)png_ptr->user_transform_ptr);
  2659. #line 608
  2660. }
  2661.