1 module libxlsxd.xlsxwrap;
2 
3 
4         import core.stdc.config;
5         import core.stdc.stdarg: va_list;
6         static import core.simd;
7         static import std.conv;
8 
9         struct Int128 { long lower; long upper; }
10         struct UInt128 { ulong lower; ulong upper; }
11 
12         struct __locale_data { int dummy; }
13 
14 
15 
16 alias _Bool = bool;
17 struct dpp {
18     static struct Opaque(int N) {
19         void[N] bytes;
20     }
21 
22     static bool isEmpty(T)() {
23         return T.tupleof.length == 0;
24     }
25     static struct Move(T) {
26         T* ptr;
27     }
28 
29 
30     static auto move(T)(ref T value) {
31         return Move!T(&value);
32     }
33     mixin template EnumD(string name, T, string prefix) if(is(T == enum)) {
34         private static string _memberMixinStr(string member) {
35             import std.conv: text;
36             import std.array: replace;
37             return text(` `, member.replace(prefix, ""), ` = `, T.stringof, `.`, member, `,`);
38         }
39         private static string _enumMixinStr() {
40             import std.array: join;
41             string[] ret;
42             ret ~= "enum " ~ name ~ "{";
43             static foreach(member; __traits(allMembers, T)) {
44                 ret ~= _memberMixinStr(member);
45             }
46             ret ~= "}";
47             return ret.join("\n");
48         }
49         mixin(_enumMixinStr());
50     }
51 }
52 
53 extern(C)
54 {
55     alias wchar_t = int;
56 	version(Posix) {
57 		version(X86) {
58 			alias c_ulong = uint;
59 		}
60 		version(X86_64) {
61 			alias c_ulong = size_t;
62 		}
63 	}
64 	version(Win32) {
65 		alias c_ulong = uint;
66 	}
67 	version(Win64) {
68 		alias c_ulong = size_t;
69 	}
70     alias ptrdiff_t = c_long;
71     struct max_align_t
72     {
73         long __clang_max_align_nonce1;
74         real __clang_max_align_nonce2;
75     }
76     int gzvprintf(gzFile_s*, const(char)*, va_list*) @nogc nothrow;
77     int deflateResetKeep(z_stream_s*) @nogc nothrow;
78     int inflateResetKeep(z_stream_s*) @nogc nothrow;
79     c_ulong inflateCodesUsed(z_stream_s*) @nogc nothrow;
80     int inflateValidate(z_stream_s*, int) @nogc nothrow;
81     int inflateUndermine(z_stream_s*, int) @nogc nothrow;
82     const(uint)* get_crc_table() @nogc nothrow;
83     int inflateSyncPoint(z_stream_s*) @nogc nothrow;
84     const(char)* zError(int) @nogc nothrow;
85     c_ulong crc32_combine(c_ulong, c_ulong, c_long) @nogc nothrow;
86     c_ulong adler32_combine(c_ulong, c_ulong, c_long) @nogc nothrow;
87     c_long gzoffset(gzFile_s*) @nogc nothrow;
88     c_long gztell(gzFile_s*) @nogc nothrow;
89     c_long gzseek(gzFile_s*, c_long, int) @nogc nothrow;
90     gzFile_s* gzopen(const(char)*, const(char)*) @nogc nothrow;
91     int gzgetc_(gzFile_s*) @nogc nothrow;
92     int inflateBackInit_(z_stream_s*, int, ubyte*, const(char)*, int) @nogc nothrow;
93     int inflateInit2_(z_stream_s*, int, const(char)*, int) @nogc nothrow;
94     int deflateInit2_(z_stream_s*, int, int, int, int, int, const(char)*, int) @nogc nothrow;
95     int inflateInit_(z_stream_s*, const(char)*, int) @nogc nothrow;
96     int deflateInit_(z_stream_s*, int, const(char)*, int) @nogc nothrow;
97     c_ulong crc32_z(c_ulong, const(ubyte)*, c_ulong) @nogc nothrow;
98     c_ulong crc32(c_ulong, const(ubyte)*, uint) @nogc nothrow;
99     c_ulong adler32_z(c_ulong, const(ubyte)*, c_ulong) @nogc nothrow;
100     c_ulong adler32(c_ulong, const(ubyte)*, uint) @nogc nothrow;
101     void gzclearerr(gzFile_s*) @nogc nothrow;
102     const(char)* gzerror(gzFile_s*, int*) @nogc nothrow;
103     int gzclose_w(gzFile_s*) @nogc nothrow;
104     int gzclose_r(gzFile_s*) @nogc nothrow;
105     int gzclose(gzFile_s*) @nogc nothrow;
106     int gzdirect(gzFile_s*) @nogc nothrow;
107     int gzeof(gzFile_s*) @nogc nothrow;
108     int gzrewind(gzFile_s*) @nogc nothrow;
109     int gzflush(gzFile_s*, int) @nogc nothrow;
110     int gzungetc(int, gzFile_s*) @nogc nothrow;
111     pragma(mangle, "gzgetc") int gzgetc_(gzFile_s*) @nogc nothrow;
112     int gzputc(gzFile_s*, int) @nogc nothrow;
113     char* gzgets(gzFile_s*, char*, int) @nogc nothrow;
114     int gzputs(gzFile_s*, const(char)*) @nogc nothrow;
115     int gzprintf(gzFile_s*, const(char)*, ...) @nogc nothrow;
116     c_ulong gzfwrite(const(void)*, c_ulong, c_ulong, gzFile_s*) @nogc nothrow;
117     int gzwrite(gzFile_s*, const(void)*, uint) @nogc nothrow;
118     c_ulong gzfread(void*, c_ulong, c_ulong, gzFile_s*) @nogc nothrow;
119     int gzread(gzFile_s*, void*, uint) @nogc nothrow;
120     int gzsetparams(gzFile_s*, int, int) @nogc nothrow;
121     int gzbuffer(gzFile_s*, uint) @nogc nothrow;
122     gzFile_s* gzdopen(int, const(char)*) @nogc nothrow;
123     struct gzFile_s
124     {
125         uint have;
126         ubyte* next;
127         c_long pos;
128     }
129     alias gzFile = gzFile_s*;
130     int uncompress2(ubyte*, c_ulong*, const(ubyte)*, c_ulong*) @nogc nothrow;
131     int uncompress(ubyte*, c_ulong*, const(ubyte)*, c_ulong) @nogc nothrow;
132     c_ulong compressBound(c_ulong) @nogc nothrow;
133     int compress2(ubyte*, c_ulong*, const(ubyte)*, c_ulong, int) @nogc nothrow;
134     int compress(ubyte*, c_ulong*, const(ubyte)*, c_ulong) @nogc nothrow;
135     c_ulong zlibCompileFlags() @nogc nothrow;
136     int inflateBackEnd(z_stream_s*) @nogc nothrow;
137     int inflateBack(z_stream_s*, uint function(void*, ubyte**), void*, int function(void*, ubyte*, uint), void*) @nogc nothrow;
138     alias out_func = int function(void*, ubyte*, uint);
139     alias in_func = uint function(void*, ubyte**);
140     int inflateGetHeader(z_stream_s*, gz_header_s*) @nogc nothrow;
141     c_long inflateMark(z_stream_s*) @nogc nothrow;
142     struct lxw_heading_pair
143     {
144         char* key;
145         char* value;
146         static struct _Anonymous_0
147         {
148             lxw_heading_pair* stqe_next;
149         }
150         _Anonymous_0 list_pointers;
151     }
152     struct lxw_heading_pairs
153     {
154         lxw_heading_pair* stqh_first;
155         lxw_heading_pair** stqh_last;
156     }
157     struct lxw_part_name
158     {
159         char* name;
160         static struct _Anonymous_1
161         {
162             lxw_part_name* stqe_next;
163         }
164         _Anonymous_1 list_pointers;
165     }
166     struct lxw_part_names
167     {
168         lxw_part_name* stqh_first;
169         lxw_part_name** stqh_last;
170     }
171     struct lxw_app
172     {
173         _IO_FILE* file;
174         lxw_heading_pairs* heading_pairs;
175         lxw_part_names* part_names;
176         lxw_doc_properties* properties;
177         uint num_heading_pairs;
178         uint num_part_names;
179     }
180     lxw_app* lxw_app_new() @nogc nothrow;
181     void lxw_app_free(lxw_app*) @nogc nothrow;
182     void lxw_app_assemble_xml_file(lxw_app*) @nogc nothrow;
183     void lxw_app_add_part_name(lxw_app*, const(char)*) @nogc nothrow;
184     void lxw_app_add_heading_pair(lxw_app*, const(char)*, const(char)*) @nogc nothrow;
185     struct lxw_chart_series_list
186     {
187         lxw_chart_series* stqh_first;
188         lxw_chart_series** stqh_last;
189     }
190     struct lxw_chart_series
191     {
192         lxw_series_range* categories;
193         lxw_series_range* values;
194         lxw_chart_title title;
195         lxw_chart_line* line;
196         lxw_chart_fill* fill;
197         lxw_chart_pattern* pattern;
198         lxw_chart_marker* marker;
199         lxw_chart_point* points;
200         ushort point_count;
201         ubyte smooth;
202         ubyte invert_if_negative;
203         ubyte has_labels;
204         ubyte show_labels_value;
205         ubyte show_labels_category;
206         ubyte show_labels_name;
207         ubyte show_labels_leader;
208         ubyte show_labels_legend;
209         ubyte show_labels_percent;
210         ubyte label_position;
211         ubyte label_separator;
212         ubyte default_label_position;
213         char* label_num_format;
214         lxw_chart_font* label_font;
215         lxw_series_error_bars* x_error_bars;
216         lxw_series_error_bars* y_error_bars;
217         ubyte has_trendline;
218         ubyte has_trendline_forecast;
219         ubyte has_trendline_equation;
220         ubyte has_trendline_r_squared;
221         ubyte has_trendline_intercept;
222         ubyte trendline_type;
223         ubyte trendline_value;
224         double trendline_forward;
225         double trendline_backward;
226         ubyte trendline_value_type;
227         char* trendline_name;
228         lxw_chart_line* trendline_line;
229         double trendline_intercept;
230         static struct _Anonymous_2
231         {
232             lxw_chart_series* stqe_next;
233         }
234         _Anonymous_2 list_pointers;
235     }
236     struct lxw_series_data_points
237     {
238         lxw_series_data_point* stqh_first;
239         lxw_series_data_point** stqh_last;
240     }
241     struct lxw_series_data_point
242     {
243         ubyte is_string;
244         double number;
245         char* string;
246         ubyte no_data;
247         static struct _Anonymous_3
248         {
249             lxw_series_data_point* stqe_next;
250         }
251         _Anonymous_3 list_pointers;
252     }
253     int inflatePrime(z_stream_s*, int, int) @nogc nothrow;
254     enum lxw_chart_type
255     {
256         LXW_CHART_NONE = 0,
257         LXW_CHART_AREA = 1,
258         LXW_CHART_AREA_STACKED = 2,
259         LXW_CHART_AREA_STACKED_PERCENT = 3,
260         LXW_CHART_BAR = 4,
261         LXW_CHART_BAR_STACKED = 5,
262         LXW_CHART_BAR_STACKED_PERCENT = 6,
263         LXW_CHART_COLUMN = 7,
264         LXW_CHART_COLUMN_STACKED = 8,
265         LXW_CHART_COLUMN_STACKED_PERCENT = 9,
266         LXW_CHART_DOUGHNUT = 10,
267         LXW_CHART_LINE = 11,
268         LXW_CHART_PIE = 12,
269         LXW_CHART_SCATTER = 13,
270         LXW_CHART_SCATTER_STRAIGHT = 14,
271         LXW_CHART_SCATTER_STRAIGHT_WITH_MARKERS = 15,
272         LXW_CHART_SCATTER_SMOOTH = 16,
273         LXW_CHART_SCATTER_SMOOTH_WITH_MARKERS = 17,
274         LXW_CHART_RADAR = 18,
275         LXW_CHART_RADAR_WITH_MARKERS = 19,
276         LXW_CHART_RADAR_FILLED = 20,
277     }
278     enum LXW_CHART_NONE = lxw_chart_type.LXW_CHART_NONE;
279     enum LXW_CHART_AREA = lxw_chart_type.LXW_CHART_AREA;
280     enum LXW_CHART_AREA_STACKED = lxw_chart_type.LXW_CHART_AREA_STACKED;
281     enum LXW_CHART_AREA_STACKED_PERCENT = lxw_chart_type.LXW_CHART_AREA_STACKED_PERCENT;
282     enum LXW_CHART_BAR = lxw_chart_type.LXW_CHART_BAR;
283     enum LXW_CHART_BAR_STACKED = lxw_chart_type.LXW_CHART_BAR_STACKED;
284     enum LXW_CHART_BAR_STACKED_PERCENT = lxw_chart_type.LXW_CHART_BAR_STACKED_PERCENT;
285     enum LXW_CHART_COLUMN = lxw_chart_type.LXW_CHART_COLUMN;
286     enum LXW_CHART_COLUMN_STACKED = lxw_chart_type.LXW_CHART_COLUMN_STACKED;
287     enum LXW_CHART_COLUMN_STACKED_PERCENT = lxw_chart_type.LXW_CHART_COLUMN_STACKED_PERCENT;
288     enum LXW_CHART_DOUGHNUT = lxw_chart_type.LXW_CHART_DOUGHNUT;
289     enum LXW_CHART_LINE = lxw_chart_type.LXW_CHART_LINE;
290     enum LXW_CHART_PIE = lxw_chart_type.LXW_CHART_PIE;
291     enum LXW_CHART_SCATTER = lxw_chart_type.LXW_CHART_SCATTER;
292     enum LXW_CHART_SCATTER_STRAIGHT = lxw_chart_type.LXW_CHART_SCATTER_STRAIGHT;
293     enum LXW_CHART_SCATTER_STRAIGHT_WITH_MARKERS = lxw_chart_type.LXW_CHART_SCATTER_STRAIGHT_WITH_MARKERS;
294     enum LXW_CHART_SCATTER_SMOOTH = lxw_chart_type.LXW_CHART_SCATTER_SMOOTH;
295     enum LXW_CHART_SCATTER_SMOOTH_WITH_MARKERS = lxw_chart_type.LXW_CHART_SCATTER_SMOOTH_WITH_MARKERS;
296     enum LXW_CHART_RADAR = lxw_chart_type.LXW_CHART_RADAR;
297     enum LXW_CHART_RADAR_WITH_MARKERS = lxw_chart_type.LXW_CHART_RADAR_WITH_MARKERS;
298     enum LXW_CHART_RADAR_FILLED = lxw_chart_type.LXW_CHART_RADAR_FILLED;
299     enum lxw_chart_legend_position
300     {
301         LXW_CHART_LEGEND_NONE = 0,
302         LXW_CHART_LEGEND_RIGHT = 1,
303         LXW_CHART_LEGEND_LEFT = 2,
304         LXW_CHART_LEGEND_TOP = 3,
305         LXW_CHART_LEGEND_BOTTOM = 4,
306         LXW_CHART_LEGEND_TOP_RIGHT = 5,
307         LXW_CHART_LEGEND_OVERLAY_RIGHT = 6,
308         LXW_CHART_LEGEND_OVERLAY_LEFT = 7,
309         LXW_CHART_LEGEND_OVERLAY_TOP_RIGHT = 8,
310     }
311     enum LXW_CHART_LEGEND_NONE = lxw_chart_legend_position.LXW_CHART_LEGEND_NONE;
312     enum LXW_CHART_LEGEND_RIGHT = lxw_chart_legend_position.LXW_CHART_LEGEND_RIGHT;
313     enum LXW_CHART_LEGEND_LEFT = lxw_chart_legend_position.LXW_CHART_LEGEND_LEFT;
314     enum LXW_CHART_LEGEND_TOP = lxw_chart_legend_position.LXW_CHART_LEGEND_TOP;
315     enum LXW_CHART_LEGEND_BOTTOM = lxw_chart_legend_position.LXW_CHART_LEGEND_BOTTOM;
316     enum LXW_CHART_LEGEND_TOP_RIGHT = lxw_chart_legend_position.LXW_CHART_LEGEND_TOP_RIGHT;
317     enum LXW_CHART_LEGEND_OVERLAY_RIGHT = lxw_chart_legend_position.LXW_CHART_LEGEND_OVERLAY_RIGHT;
318     enum LXW_CHART_LEGEND_OVERLAY_LEFT = lxw_chart_legend_position.LXW_CHART_LEGEND_OVERLAY_LEFT;
319     enum LXW_CHART_LEGEND_OVERLAY_TOP_RIGHT = lxw_chart_legend_position.LXW_CHART_LEGEND_OVERLAY_TOP_RIGHT;
320     enum lxw_chart_line_dash_type
321     {
322         LXW_CHART_LINE_DASH_SOLID = 0,
323         LXW_CHART_LINE_DASH_ROUND_DOT = 1,
324         LXW_CHART_LINE_DASH_SQUARE_DOT = 2,
325         LXW_CHART_LINE_DASH_DASH = 3,
326         LXW_CHART_LINE_DASH_DASH_DOT = 4,
327         LXW_CHART_LINE_DASH_LONG_DASH = 5,
328         LXW_CHART_LINE_DASH_LONG_DASH_DOT = 6,
329         LXW_CHART_LINE_DASH_LONG_DASH_DOT_DOT = 7,
330         LXW_CHART_LINE_DASH_DOT = 8,
331         LXW_CHART_LINE_DASH_SYSTEM_DASH_DOT = 9,
332         LXW_CHART_LINE_DASH_SYSTEM_DASH_DOT_DOT = 10,
333     }
334     enum LXW_CHART_LINE_DASH_SOLID = lxw_chart_line_dash_type.LXW_CHART_LINE_DASH_SOLID;
335     enum LXW_CHART_LINE_DASH_ROUND_DOT = lxw_chart_line_dash_type.LXW_CHART_LINE_DASH_ROUND_DOT;
336     enum LXW_CHART_LINE_DASH_SQUARE_DOT = lxw_chart_line_dash_type.LXW_CHART_LINE_DASH_SQUARE_DOT;
337     enum LXW_CHART_LINE_DASH_DASH = lxw_chart_line_dash_type.LXW_CHART_LINE_DASH_DASH;
338     enum LXW_CHART_LINE_DASH_DASH_DOT = lxw_chart_line_dash_type.LXW_CHART_LINE_DASH_DASH_DOT;
339     enum LXW_CHART_LINE_DASH_LONG_DASH = lxw_chart_line_dash_type.LXW_CHART_LINE_DASH_LONG_DASH;
340     enum LXW_CHART_LINE_DASH_LONG_DASH_DOT = lxw_chart_line_dash_type.LXW_CHART_LINE_DASH_LONG_DASH_DOT;
341     enum LXW_CHART_LINE_DASH_LONG_DASH_DOT_DOT = lxw_chart_line_dash_type.LXW_CHART_LINE_DASH_LONG_DASH_DOT_DOT;
342     enum LXW_CHART_LINE_DASH_DOT = lxw_chart_line_dash_type.LXW_CHART_LINE_DASH_DOT;
343     enum LXW_CHART_LINE_DASH_SYSTEM_DASH_DOT = lxw_chart_line_dash_type.LXW_CHART_LINE_DASH_SYSTEM_DASH_DOT;
344     enum LXW_CHART_LINE_DASH_SYSTEM_DASH_DOT_DOT = lxw_chart_line_dash_type.LXW_CHART_LINE_DASH_SYSTEM_DASH_DOT_DOT;
345     enum lxw_chart_marker_type
346     {
347         LXW_CHART_MARKER_AUTOMATIC = 0,
348         LXW_CHART_MARKER_NONE = 1,
349         LXW_CHART_MARKER_SQUARE = 2,
350         LXW_CHART_MARKER_DIAMOND = 3,
351         LXW_CHART_MARKER_TRIANGLE = 4,
352         LXW_CHART_MARKER_X = 5,
353         LXW_CHART_MARKER_STAR = 6,
354         LXW_CHART_MARKER_SHORT_DASH = 7,
355         LXW_CHART_MARKER_LONG_DASH = 8,
356         LXW_CHART_MARKER_CIRCLE = 9,
357         LXW_CHART_MARKER_PLUS = 10,
358     }
359     enum LXW_CHART_MARKER_AUTOMATIC = lxw_chart_marker_type.LXW_CHART_MARKER_AUTOMATIC;
360     enum LXW_CHART_MARKER_NONE = lxw_chart_marker_type.LXW_CHART_MARKER_NONE;
361     enum LXW_CHART_MARKER_SQUARE = lxw_chart_marker_type.LXW_CHART_MARKER_SQUARE;
362     enum LXW_CHART_MARKER_DIAMOND = lxw_chart_marker_type.LXW_CHART_MARKER_DIAMOND;
363     enum LXW_CHART_MARKER_TRIANGLE = lxw_chart_marker_type.LXW_CHART_MARKER_TRIANGLE;
364     enum LXW_CHART_MARKER_X = lxw_chart_marker_type.LXW_CHART_MARKER_X;
365     enum LXW_CHART_MARKER_STAR = lxw_chart_marker_type.LXW_CHART_MARKER_STAR;
366     enum LXW_CHART_MARKER_SHORT_DASH = lxw_chart_marker_type.LXW_CHART_MARKER_SHORT_DASH;
367     enum LXW_CHART_MARKER_LONG_DASH = lxw_chart_marker_type.LXW_CHART_MARKER_LONG_DASH;
368     enum LXW_CHART_MARKER_CIRCLE = lxw_chart_marker_type.LXW_CHART_MARKER_CIRCLE;
369     enum LXW_CHART_MARKER_PLUS = lxw_chart_marker_type.LXW_CHART_MARKER_PLUS;
370     enum lxw_chart_pattern_type
371     {
372         LXW_CHART_PATTERN_NONE = 0,
373         LXW_CHART_PATTERN_PERCENT_5 = 1,
374         LXW_CHART_PATTERN_PERCENT_10 = 2,
375         LXW_CHART_PATTERN_PERCENT_20 = 3,
376         LXW_CHART_PATTERN_PERCENT_25 = 4,
377         LXW_CHART_PATTERN_PERCENT_30 = 5,
378         LXW_CHART_PATTERN_PERCENT_40 = 6,
379         LXW_CHART_PATTERN_PERCENT_50 = 7,
380         LXW_CHART_PATTERN_PERCENT_60 = 8,
381         LXW_CHART_PATTERN_PERCENT_70 = 9,
382         LXW_CHART_PATTERN_PERCENT_75 = 10,
383         LXW_CHART_PATTERN_PERCENT_80 = 11,
384         LXW_CHART_PATTERN_PERCENT_90 = 12,
385         LXW_CHART_PATTERN_LIGHT_DOWNWARD_DIAGONAL = 13,
386         LXW_CHART_PATTERN_LIGHT_UPWARD_DIAGONAL = 14,
387         LXW_CHART_PATTERN_DARK_DOWNWARD_DIAGONAL = 15,
388         LXW_CHART_PATTERN_DARK_UPWARD_DIAGONAL = 16,
389         LXW_CHART_PATTERN_WIDE_DOWNWARD_DIAGONAL = 17,
390         LXW_CHART_PATTERN_WIDE_UPWARD_DIAGONAL = 18,
391         LXW_CHART_PATTERN_LIGHT_VERTICAL = 19,
392         LXW_CHART_PATTERN_LIGHT_HORIZONTAL = 20,
393         LXW_CHART_PATTERN_NARROW_VERTICAL = 21,
394         LXW_CHART_PATTERN_NARROW_HORIZONTAL = 22,
395         LXW_CHART_PATTERN_DARK_VERTICAL = 23,
396         LXW_CHART_PATTERN_DARK_HORIZONTAL = 24,
397         LXW_CHART_PATTERN_DASHED_DOWNWARD_DIAGONAL = 25,
398         LXW_CHART_PATTERN_DASHED_UPWARD_DIAGONAL = 26,
399         LXW_CHART_PATTERN_DASHED_HORIZONTAL = 27,
400         LXW_CHART_PATTERN_DASHED_VERTICAL = 28,
401         LXW_CHART_PATTERN_SMALL_CONFETTI = 29,
402         LXW_CHART_PATTERN_LARGE_CONFETTI = 30,
403         LXW_CHART_PATTERN_ZIGZAG = 31,
404         LXW_CHART_PATTERN_WAVE = 32,
405         LXW_CHART_PATTERN_DIAGONAL_BRICK = 33,
406         LXW_CHART_PATTERN_HORIZONTAL_BRICK = 34,
407         LXW_CHART_PATTERN_WEAVE = 35,
408         LXW_CHART_PATTERN_PLAID = 36,
409         LXW_CHART_PATTERN_DIVOT = 37,
410         LXW_CHART_PATTERN_DOTTED_GRID = 38,
411         LXW_CHART_PATTERN_DOTTED_DIAMOND = 39,
412         LXW_CHART_PATTERN_SHINGLE = 40,
413         LXW_CHART_PATTERN_TRELLIS = 41,
414         LXW_CHART_PATTERN_SPHERE = 42,
415         LXW_CHART_PATTERN_SMALL_GRID = 43,
416         LXW_CHART_PATTERN_LARGE_GRID = 44,
417         LXW_CHART_PATTERN_SMALL_CHECK = 45,
418         LXW_CHART_PATTERN_LARGE_CHECK = 46,
419         LXW_CHART_PATTERN_OUTLINED_DIAMOND = 47,
420         LXW_CHART_PATTERN_SOLID_DIAMOND = 48,
421     }
422     enum LXW_CHART_PATTERN_NONE = lxw_chart_pattern_type.LXW_CHART_PATTERN_NONE;
423     enum LXW_CHART_PATTERN_PERCENT_5 = lxw_chart_pattern_type.LXW_CHART_PATTERN_PERCENT_5;
424     enum LXW_CHART_PATTERN_PERCENT_10 = lxw_chart_pattern_type.LXW_CHART_PATTERN_PERCENT_10;
425     enum LXW_CHART_PATTERN_PERCENT_20 = lxw_chart_pattern_type.LXW_CHART_PATTERN_PERCENT_20;
426     enum LXW_CHART_PATTERN_PERCENT_25 = lxw_chart_pattern_type.LXW_CHART_PATTERN_PERCENT_25;
427     enum LXW_CHART_PATTERN_PERCENT_30 = lxw_chart_pattern_type.LXW_CHART_PATTERN_PERCENT_30;
428     enum LXW_CHART_PATTERN_PERCENT_40 = lxw_chart_pattern_type.LXW_CHART_PATTERN_PERCENT_40;
429     enum LXW_CHART_PATTERN_PERCENT_50 = lxw_chart_pattern_type.LXW_CHART_PATTERN_PERCENT_50;
430     enum LXW_CHART_PATTERN_PERCENT_60 = lxw_chart_pattern_type.LXW_CHART_PATTERN_PERCENT_60;
431     enum LXW_CHART_PATTERN_PERCENT_70 = lxw_chart_pattern_type.LXW_CHART_PATTERN_PERCENT_70;
432     enum LXW_CHART_PATTERN_PERCENT_75 = lxw_chart_pattern_type.LXW_CHART_PATTERN_PERCENT_75;
433     enum LXW_CHART_PATTERN_PERCENT_80 = lxw_chart_pattern_type.LXW_CHART_PATTERN_PERCENT_80;
434     enum LXW_CHART_PATTERN_PERCENT_90 = lxw_chart_pattern_type.LXW_CHART_PATTERN_PERCENT_90;
435     enum LXW_CHART_PATTERN_LIGHT_DOWNWARD_DIAGONAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_LIGHT_DOWNWARD_DIAGONAL;
436     enum LXW_CHART_PATTERN_LIGHT_UPWARD_DIAGONAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_LIGHT_UPWARD_DIAGONAL;
437     enum LXW_CHART_PATTERN_DARK_DOWNWARD_DIAGONAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_DARK_DOWNWARD_DIAGONAL;
438     enum LXW_CHART_PATTERN_DARK_UPWARD_DIAGONAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_DARK_UPWARD_DIAGONAL;
439     enum LXW_CHART_PATTERN_WIDE_DOWNWARD_DIAGONAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_WIDE_DOWNWARD_DIAGONAL;
440     enum LXW_CHART_PATTERN_WIDE_UPWARD_DIAGONAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_WIDE_UPWARD_DIAGONAL;
441     enum LXW_CHART_PATTERN_LIGHT_VERTICAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_LIGHT_VERTICAL;
442     enum LXW_CHART_PATTERN_LIGHT_HORIZONTAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_LIGHT_HORIZONTAL;
443     enum LXW_CHART_PATTERN_NARROW_VERTICAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_NARROW_VERTICAL;
444     enum LXW_CHART_PATTERN_NARROW_HORIZONTAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_NARROW_HORIZONTAL;
445     enum LXW_CHART_PATTERN_DARK_VERTICAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_DARK_VERTICAL;
446     enum LXW_CHART_PATTERN_DARK_HORIZONTAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_DARK_HORIZONTAL;
447     enum LXW_CHART_PATTERN_DASHED_DOWNWARD_DIAGONAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_DASHED_DOWNWARD_DIAGONAL;
448     enum LXW_CHART_PATTERN_DASHED_UPWARD_DIAGONAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_DASHED_UPWARD_DIAGONAL;
449     enum LXW_CHART_PATTERN_DASHED_HORIZONTAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_DASHED_HORIZONTAL;
450     enum LXW_CHART_PATTERN_DASHED_VERTICAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_DASHED_VERTICAL;
451     enum LXW_CHART_PATTERN_SMALL_CONFETTI = lxw_chart_pattern_type.LXW_CHART_PATTERN_SMALL_CONFETTI;
452     enum LXW_CHART_PATTERN_LARGE_CONFETTI = lxw_chart_pattern_type.LXW_CHART_PATTERN_LARGE_CONFETTI;
453     enum LXW_CHART_PATTERN_ZIGZAG = lxw_chart_pattern_type.LXW_CHART_PATTERN_ZIGZAG;
454     enum LXW_CHART_PATTERN_WAVE = lxw_chart_pattern_type.LXW_CHART_PATTERN_WAVE;
455     enum LXW_CHART_PATTERN_DIAGONAL_BRICK = lxw_chart_pattern_type.LXW_CHART_PATTERN_DIAGONAL_BRICK;
456     enum LXW_CHART_PATTERN_HORIZONTAL_BRICK = lxw_chart_pattern_type.LXW_CHART_PATTERN_HORIZONTAL_BRICK;
457     enum LXW_CHART_PATTERN_WEAVE = lxw_chart_pattern_type.LXW_CHART_PATTERN_WEAVE;
458     enum LXW_CHART_PATTERN_PLAID = lxw_chart_pattern_type.LXW_CHART_PATTERN_PLAID;
459     enum LXW_CHART_PATTERN_DIVOT = lxw_chart_pattern_type.LXW_CHART_PATTERN_DIVOT;
460     enum LXW_CHART_PATTERN_DOTTED_GRID = lxw_chart_pattern_type.LXW_CHART_PATTERN_DOTTED_GRID;
461     enum LXW_CHART_PATTERN_DOTTED_DIAMOND = lxw_chart_pattern_type.LXW_CHART_PATTERN_DOTTED_DIAMOND;
462     enum LXW_CHART_PATTERN_SHINGLE = lxw_chart_pattern_type.LXW_CHART_PATTERN_SHINGLE;
463     enum LXW_CHART_PATTERN_TRELLIS = lxw_chart_pattern_type.LXW_CHART_PATTERN_TRELLIS;
464     enum LXW_CHART_PATTERN_SPHERE = lxw_chart_pattern_type.LXW_CHART_PATTERN_SPHERE;
465     enum LXW_CHART_PATTERN_SMALL_GRID = lxw_chart_pattern_type.LXW_CHART_PATTERN_SMALL_GRID;
466     enum LXW_CHART_PATTERN_LARGE_GRID = lxw_chart_pattern_type.LXW_CHART_PATTERN_LARGE_GRID;
467     enum LXW_CHART_PATTERN_SMALL_CHECK = lxw_chart_pattern_type.LXW_CHART_PATTERN_SMALL_CHECK;
468     enum LXW_CHART_PATTERN_LARGE_CHECK = lxw_chart_pattern_type.LXW_CHART_PATTERN_LARGE_CHECK;
469     enum LXW_CHART_PATTERN_OUTLINED_DIAMOND = lxw_chart_pattern_type.LXW_CHART_PATTERN_OUTLINED_DIAMOND;
470     enum LXW_CHART_PATTERN_SOLID_DIAMOND = lxw_chart_pattern_type.LXW_CHART_PATTERN_SOLID_DIAMOND;
471     enum lxw_chart_label_position
472     {
473         LXW_CHART_LABEL_POSITION_DEFAULT = 0,
474         LXW_CHART_LABEL_POSITION_CENTER = 1,
475         LXW_CHART_LABEL_POSITION_RIGHT = 2,
476         LXW_CHART_LABEL_POSITION_LEFT = 3,
477         LXW_CHART_LABEL_POSITION_ABOVE = 4,
478         LXW_CHART_LABEL_POSITION_BELOW = 5,
479         LXW_CHART_LABEL_POSITION_INSIDE_BASE = 6,
480         LXW_CHART_LABEL_POSITION_INSIDE_END = 7,
481         LXW_CHART_LABEL_POSITION_OUTSIDE_END = 8,
482         LXW_CHART_LABEL_POSITION_BEST_FIT = 9,
483     }
484     enum LXW_CHART_LABEL_POSITION_DEFAULT = lxw_chart_label_position.LXW_CHART_LABEL_POSITION_DEFAULT;
485     enum LXW_CHART_LABEL_POSITION_CENTER = lxw_chart_label_position.LXW_CHART_LABEL_POSITION_CENTER;
486     enum LXW_CHART_LABEL_POSITION_RIGHT = lxw_chart_label_position.LXW_CHART_LABEL_POSITION_RIGHT;
487     enum LXW_CHART_LABEL_POSITION_LEFT = lxw_chart_label_position.LXW_CHART_LABEL_POSITION_LEFT;
488     enum LXW_CHART_LABEL_POSITION_ABOVE = lxw_chart_label_position.LXW_CHART_LABEL_POSITION_ABOVE;
489     enum LXW_CHART_LABEL_POSITION_BELOW = lxw_chart_label_position.LXW_CHART_LABEL_POSITION_BELOW;
490     enum LXW_CHART_LABEL_POSITION_INSIDE_BASE = lxw_chart_label_position.LXW_CHART_LABEL_POSITION_INSIDE_BASE;
491     enum LXW_CHART_LABEL_POSITION_INSIDE_END = lxw_chart_label_position.LXW_CHART_LABEL_POSITION_INSIDE_END;
492     enum LXW_CHART_LABEL_POSITION_OUTSIDE_END = lxw_chart_label_position.LXW_CHART_LABEL_POSITION_OUTSIDE_END;
493     enum LXW_CHART_LABEL_POSITION_BEST_FIT = lxw_chart_label_position.LXW_CHART_LABEL_POSITION_BEST_FIT;
494     enum lxw_chart_label_separator
495     {
496         LXW_CHART_LABEL_SEPARATOR_COMMA = 0,
497         LXW_CHART_LABEL_SEPARATOR_SEMICOLON = 1,
498         LXW_CHART_LABEL_SEPARATOR_PERIOD = 2,
499         LXW_CHART_LABEL_SEPARATOR_NEWLINE = 3,
500         LXW_CHART_LABEL_SEPARATOR_SPACE = 4,
501     }
502     enum LXW_CHART_LABEL_SEPARATOR_COMMA = lxw_chart_label_separator.LXW_CHART_LABEL_SEPARATOR_COMMA;
503     enum LXW_CHART_LABEL_SEPARATOR_SEMICOLON = lxw_chart_label_separator.LXW_CHART_LABEL_SEPARATOR_SEMICOLON;
504     enum LXW_CHART_LABEL_SEPARATOR_PERIOD = lxw_chart_label_separator.LXW_CHART_LABEL_SEPARATOR_PERIOD;
505     enum LXW_CHART_LABEL_SEPARATOR_NEWLINE = lxw_chart_label_separator.LXW_CHART_LABEL_SEPARATOR_NEWLINE;
506     enum LXW_CHART_LABEL_SEPARATOR_SPACE = lxw_chart_label_separator.LXW_CHART_LABEL_SEPARATOR_SPACE;
507     enum lxw_chart_axis_type
508     {
509         LXW_CHART_AXIS_TYPE_X = 0,
510         LXW_CHART_AXIS_TYPE_Y = 1,
511     }
512     enum LXW_CHART_AXIS_TYPE_X = lxw_chart_axis_type.LXW_CHART_AXIS_TYPE_X;
513     enum LXW_CHART_AXIS_TYPE_Y = lxw_chart_axis_type.LXW_CHART_AXIS_TYPE_Y;
514     enum lxw_chart_subtype
515     {
516         LXW_CHART_SUBTYPE_NONE = 0,
517         LXW_CHART_SUBTYPE_STACKED = 1,
518         LXW_CHART_SUBTYPE_STACKED_PERCENT = 2,
519     }
520     enum LXW_CHART_SUBTYPE_NONE = lxw_chart_subtype.LXW_CHART_SUBTYPE_NONE;
521     enum LXW_CHART_SUBTYPE_STACKED = lxw_chart_subtype.LXW_CHART_SUBTYPE_STACKED;
522     enum LXW_CHART_SUBTYPE_STACKED_PERCENT = lxw_chart_subtype.LXW_CHART_SUBTYPE_STACKED_PERCENT;
523     enum lxw_chart_grouping
524     {
525         LXW_GROUPING_CLUSTERED = 0,
526         LXW_GROUPING_STANDARD = 1,
527         LXW_GROUPING_PERCENTSTACKED = 2,
528         LXW_GROUPING_STACKED = 3,
529     }
530     enum LXW_GROUPING_CLUSTERED = lxw_chart_grouping.LXW_GROUPING_CLUSTERED;
531     enum LXW_GROUPING_STANDARD = lxw_chart_grouping.LXW_GROUPING_STANDARD;
532     enum LXW_GROUPING_PERCENTSTACKED = lxw_chart_grouping.LXW_GROUPING_PERCENTSTACKED;
533     enum LXW_GROUPING_STACKED = lxw_chart_grouping.LXW_GROUPING_STACKED;
534     enum lxw_chart_axis_tick_position
535     {
536         LXW_CHART_AXIS_POSITION_DEFAULT = 0,
537         LXW_CHART_AXIS_POSITION_ON_TICK = 1,
538         LXW_CHART_AXIS_POSITION_BETWEEN = 2,
539     }
540     enum LXW_CHART_AXIS_POSITION_DEFAULT = lxw_chart_axis_tick_position.LXW_CHART_AXIS_POSITION_DEFAULT;
541     enum LXW_CHART_AXIS_POSITION_ON_TICK = lxw_chart_axis_tick_position.LXW_CHART_AXIS_POSITION_ON_TICK;
542     enum LXW_CHART_AXIS_POSITION_BETWEEN = lxw_chart_axis_tick_position.LXW_CHART_AXIS_POSITION_BETWEEN;
543     enum lxw_chart_axis_label_position
544     {
545         LXW_CHART_AXIS_LABEL_POSITION_NEXT_TO = 0,
546         LXW_CHART_AXIS_LABEL_POSITION_HIGH = 1,
547         LXW_CHART_AXIS_LABEL_POSITION_LOW = 2,
548         LXW_CHART_AXIS_LABEL_POSITION_NONE = 3,
549     }
550     enum LXW_CHART_AXIS_LABEL_POSITION_NEXT_TO = lxw_chart_axis_label_position.LXW_CHART_AXIS_LABEL_POSITION_NEXT_TO;
551     enum LXW_CHART_AXIS_LABEL_POSITION_HIGH = lxw_chart_axis_label_position.LXW_CHART_AXIS_LABEL_POSITION_HIGH;
552     enum LXW_CHART_AXIS_LABEL_POSITION_LOW = lxw_chart_axis_label_position.LXW_CHART_AXIS_LABEL_POSITION_LOW;
553     enum LXW_CHART_AXIS_LABEL_POSITION_NONE = lxw_chart_axis_label_position.LXW_CHART_AXIS_LABEL_POSITION_NONE;
554     enum lxw_chart_axis_label_alignment
555     {
556         LXW_CHART_AXIS_LABEL_ALIGN_CENTER = 0,
557         LXW_CHART_AXIS_LABEL_ALIGN_LEFT = 1,
558         LXW_CHART_AXIS_LABEL_ALIGN_RIGHT = 2,
559     }
560     enum LXW_CHART_AXIS_LABEL_ALIGN_CENTER = lxw_chart_axis_label_alignment.LXW_CHART_AXIS_LABEL_ALIGN_CENTER;
561     enum LXW_CHART_AXIS_LABEL_ALIGN_LEFT = lxw_chart_axis_label_alignment.LXW_CHART_AXIS_LABEL_ALIGN_LEFT;
562     enum LXW_CHART_AXIS_LABEL_ALIGN_RIGHT = lxw_chart_axis_label_alignment.LXW_CHART_AXIS_LABEL_ALIGN_RIGHT;
563     enum lxw_chart_axis_display_unit
564     {
565         LXW_CHART_AXIS_UNITS_NONE = 0,
566         LXW_CHART_AXIS_UNITS_HUNDREDS = 1,
567         LXW_CHART_AXIS_UNITS_THOUSANDS = 2,
568         LXW_CHART_AXIS_UNITS_TEN_THOUSANDS = 3,
569         LXW_CHART_AXIS_UNITS_HUNDRED_THOUSANDS = 4,
570         LXW_CHART_AXIS_UNITS_MILLIONS = 5,
571         LXW_CHART_AXIS_UNITS_TEN_MILLIONS = 6,
572         LXW_CHART_AXIS_UNITS_HUNDRED_MILLIONS = 7,
573         LXW_CHART_AXIS_UNITS_BILLIONS = 8,
574         LXW_CHART_AXIS_UNITS_TRILLIONS = 9,
575     }
576     enum LXW_CHART_AXIS_UNITS_NONE = lxw_chart_axis_display_unit.LXW_CHART_AXIS_UNITS_NONE;
577     enum LXW_CHART_AXIS_UNITS_HUNDREDS = lxw_chart_axis_display_unit.LXW_CHART_AXIS_UNITS_HUNDREDS;
578     enum LXW_CHART_AXIS_UNITS_THOUSANDS = lxw_chart_axis_display_unit.LXW_CHART_AXIS_UNITS_THOUSANDS;
579     enum LXW_CHART_AXIS_UNITS_TEN_THOUSANDS = lxw_chart_axis_display_unit.LXW_CHART_AXIS_UNITS_TEN_THOUSANDS;
580     enum LXW_CHART_AXIS_UNITS_HUNDRED_THOUSANDS = lxw_chart_axis_display_unit.LXW_CHART_AXIS_UNITS_HUNDRED_THOUSANDS;
581     enum LXW_CHART_AXIS_UNITS_MILLIONS = lxw_chart_axis_display_unit.LXW_CHART_AXIS_UNITS_MILLIONS;
582     enum LXW_CHART_AXIS_UNITS_TEN_MILLIONS = lxw_chart_axis_display_unit.LXW_CHART_AXIS_UNITS_TEN_MILLIONS;
583     enum LXW_CHART_AXIS_UNITS_HUNDRED_MILLIONS = lxw_chart_axis_display_unit.LXW_CHART_AXIS_UNITS_HUNDRED_MILLIONS;
584     enum LXW_CHART_AXIS_UNITS_BILLIONS = lxw_chart_axis_display_unit.LXW_CHART_AXIS_UNITS_BILLIONS;
585     enum LXW_CHART_AXIS_UNITS_TRILLIONS = lxw_chart_axis_display_unit.LXW_CHART_AXIS_UNITS_TRILLIONS;
586     alias lxw_chart_tick_mark = lxw_chart_axis_tick_mark;
587     enum lxw_chart_axis_tick_mark
588     {
589         LXW_CHART_AXIS_TICK_MARK_DEFAULT = 0,
590         LXW_CHART_AXIS_TICK_MARK_NONE = 1,
591         LXW_CHART_AXIS_TICK_MARK_INSIDE = 2,
592         LXW_CHART_AXIS_TICK_MARK_OUTSIDE = 3,
593         LXW_CHART_AXIS_TICK_MARK_CROSSING = 4,
594     }
595     enum LXW_CHART_AXIS_TICK_MARK_DEFAULT = lxw_chart_axis_tick_mark.LXW_CHART_AXIS_TICK_MARK_DEFAULT;
596     enum LXW_CHART_AXIS_TICK_MARK_NONE = lxw_chart_axis_tick_mark.LXW_CHART_AXIS_TICK_MARK_NONE;
597     enum LXW_CHART_AXIS_TICK_MARK_INSIDE = lxw_chart_axis_tick_mark.LXW_CHART_AXIS_TICK_MARK_INSIDE;
598     enum LXW_CHART_AXIS_TICK_MARK_OUTSIDE = lxw_chart_axis_tick_mark.LXW_CHART_AXIS_TICK_MARK_OUTSIDE;
599     enum LXW_CHART_AXIS_TICK_MARK_CROSSING = lxw_chart_axis_tick_mark.LXW_CHART_AXIS_TICK_MARK_CROSSING;
600     struct lxw_series_range
601     {
602         char* formula;
603         char* sheetname;
604         uint first_row;
605         uint last_row;
606         ushort first_col;
607         ushort last_col;
608         ubyte ignore_cache;
609         ubyte has_string_cache;
610         ushort num_data_points;
611         lxw_series_data_points* data_cache;
612     }
613     struct lxw_chart_line
614     {
615         int color;
616         ubyte none;
617         float width;
618         ubyte dash_type;
619         ubyte transparency;
620         ubyte has_color;
621     }
622     struct lxw_chart_fill
623     {
624         int color;
625         ubyte none;
626         ubyte transparency;
627         ubyte has_color;
628     }
629     struct lxw_chart_pattern
630     {
631         int fg_color;
632         int bg_color;
633         ubyte type;
634         ubyte has_fg_color;
635         ubyte has_bg_color;
636     }
637     struct lxw_chart_font
638     {
639         char* name;
640         double size;
641         ubyte bold;
642         ubyte italic;
643         ubyte underline;
644         int rotation;
645         int color;
646         ubyte pitch_family;
647         ubyte charset;
648         byte baseline;
649         ubyte has_color;
650     }
651     struct lxw_chart_marker
652     {
653         ubyte type;
654         ubyte size;
655         lxw_chart_line* line;
656         lxw_chart_fill* fill;
657         lxw_chart_pattern* pattern;
658     }
659     struct lxw_chart_legend
660     {
661         lxw_chart_font* font;
662         ubyte position;
663     }
664     struct lxw_chart_title
665     {
666         char* name;
667         uint row;
668         ushort col;
669         lxw_chart_font* font;
670         ubyte off;
671         ubyte is_horizontal;
672         ubyte ignore_cache;
673         lxw_series_range* range;
674         lxw_series_data_point data_point;
675     }
676     struct lxw_chart_point
677     {
678         lxw_chart_line* line;
679         lxw_chart_fill* fill;
680         lxw_chart_pattern* pattern;
681     }
682     enum lxw_chart_blank
683     {
684         LXW_CHART_BLANKS_AS_GAP = 0,
685         LXW_CHART_BLANKS_AS_ZERO = 1,
686         LXW_CHART_BLANKS_AS_CONNECTED = 2,
687     }
688     enum LXW_CHART_BLANKS_AS_GAP = lxw_chart_blank.LXW_CHART_BLANKS_AS_GAP;
689     enum LXW_CHART_BLANKS_AS_ZERO = lxw_chart_blank.LXW_CHART_BLANKS_AS_ZERO;
690     enum LXW_CHART_BLANKS_AS_CONNECTED = lxw_chart_blank.LXW_CHART_BLANKS_AS_CONNECTED;
691     enum lxw_chart_position
692     {
693         LXW_CHART_AXIS_RIGHT = 0,
694         LXW_CHART_AXIS_LEFT = 1,
695         LXW_CHART_AXIS_TOP = 2,
696         LXW_CHART_AXIS_BOTTOM = 3,
697     }
698     enum LXW_CHART_AXIS_RIGHT = lxw_chart_position.LXW_CHART_AXIS_RIGHT;
699     enum LXW_CHART_AXIS_LEFT = lxw_chart_position.LXW_CHART_AXIS_LEFT;
700     enum LXW_CHART_AXIS_TOP = lxw_chart_position.LXW_CHART_AXIS_TOP;
701     enum LXW_CHART_AXIS_BOTTOM = lxw_chart_position.LXW_CHART_AXIS_BOTTOM;
702     enum lxw_chart_error_bar_type
703     {
704         LXW_CHART_ERROR_BAR_TYPE_STD_ERROR = 0,
705         LXW_CHART_ERROR_BAR_TYPE_FIXED = 1,
706         LXW_CHART_ERROR_BAR_TYPE_PERCENTAGE = 2,
707         LXW_CHART_ERROR_BAR_TYPE_STD_DEV = 3,
708     }
709     enum LXW_CHART_ERROR_BAR_TYPE_STD_ERROR = lxw_chart_error_bar_type.LXW_CHART_ERROR_BAR_TYPE_STD_ERROR;
710     enum LXW_CHART_ERROR_BAR_TYPE_FIXED = lxw_chart_error_bar_type.LXW_CHART_ERROR_BAR_TYPE_FIXED;
711     enum LXW_CHART_ERROR_BAR_TYPE_PERCENTAGE = lxw_chart_error_bar_type.LXW_CHART_ERROR_BAR_TYPE_PERCENTAGE;
712     enum LXW_CHART_ERROR_BAR_TYPE_STD_DEV = lxw_chart_error_bar_type.LXW_CHART_ERROR_BAR_TYPE_STD_DEV;
713     enum lxw_chart_error_bar_direction
714     {
715         LXW_CHART_ERROR_BAR_DIR_BOTH = 0,
716         LXW_CHART_ERROR_BAR_DIR_PLUS = 1,
717         LXW_CHART_ERROR_BAR_DIR_MINUS = 2,
718     }
719     enum LXW_CHART_ERROR_BAR_DIR_BOTH = lxw_chart_error_bar_direction.LXW_CHART_ERROR_BAR_DIR_BOTH;
720     enum LXW_CHART_ERROR_BAR_DIR_PLUS = lxw_chart_error_bar_direction.LXW_CHART_ERROR_BAR_DIR_PLUS;
721     enum LXW_CHART_ERROR_BAR_DIR_MINUS = lxw_chart_error_bar_direction.LXW_CHART_ERROR_BAR_DIR_MINUS;
722     enum lxw_chart_error_bar_axis
723     {
724         LXW_CHART_ERROR_BAR_AXIS_X = 0,
725         LXW_CHART_ERROR_BAR_AXIS_Y = 1,
726     }
727     enum LXW_CHART_ERROR_BAR_AXIS_X = lxw_chart_error_bar_axis.LXW_CHART_ERROR_BAR_AXIS_X;
728     enum LXW_CHART_ERROR_BAR_AXIS_Y = lxw_chart_error_bar_axis.LXW_CHART_ERROR_BAR_AXIS_Y;
729     enum lxw_chart_error_bar_cap
730     {
731         LXW_CHART_ERROR_BAR_END_CAP = 0,
732         LXW_CHART_ERROR_BAR_NO_CAP = 1,
733     }
734     enum LXW_CHART_ERROR_BAR_END_CAP = lxw_chart_error_bar_cap.LXW_CHART_ERROR_BAR_END_CAP;
735     enum LXW_CHART_ERROR_BAR_NO_CAP = lxw_chart_error_bar_cap.LXW_CHART_ERROR_BAR_NO_CAP;
736     struct lxw_series_error_bars
737     {
738         ubyte type;
739         ubyte direction;
740         ubyte endcap;
741         ubyte has_value;
742         ubyte is_set;
743         ubyte is_x;
744         ubyte chart_group;
745         double value;
746         lxw_chart_line* line;
747     }
748     enum lxw_chart_trendline_type
749     {
750         LXW_CHART_TRENDLINE_TYPE_LINEAR = 0,
751         LXW_CHART_TRENDLINE_TYPE_LOG = 1,
752         LXW_CHART_TRENDLINE_TYPE_POLY = 2,
753         LXW_CHART_TRENDLINE_TYPE_POWER = 3,
754         LXW_CHART_TRENDLINE_TYPE_EXP = 4,
755         LXW_CHART_TRENDLINE_TYPE_AVERAGE = 5,
756     }
757     enum LXW_CHART_TRENDLINE_TYPE_LINEAR = lxw_chart_trendline_type.LXW_CHART_TRENDLINE_TYPE_LINEAR;
758     enum LXW_CHART_TRENDLINE_TYPE_LOG = lxw_chart_trendline_type.LXW_CHART_TRENDLINE_TYPE_LOG;
759     enum LXW_CHART_TRENDLINE_TYPE_POLY = lxw_chart_trendline_type.LXW_CHART_TRENDLINE_TYPE_POLY;
760     enum LXW_CHART_TRENDLINE_TYPE_POWER = lxw_chart_trendline_type.LXW_CHART_TRENDLINE_TYPE_POWER;
761     enum LXW_CHART_TRENDLINE_TYPE_EXP = lxw_chart_trendline_type.LXW_CHART_TRENDLINE_TYPE_EXP;
762     enum LXW_CHART_TRENDLINE_TYPE_AVERAGE = lxw_chart_trendline_type.LXW_CHART_TRENDLINE_TYPE_AVERAGE;
763     struct lxw_chart_gridline
764     {
765         ubyte visible;
766         lxw_chart_line* line;
767     }
768     struct lxw_chart_axis
769     {
770         lxw_chart_title title;
771         char* num_format;
772         char* default_num_format;
773         ubyte source_linked;
774         ubyte major_tick_mark;
775         ubyte minor_tick_mark;
776         ubyte is_horizontal;
777         lxw_chart_gridline major_gridlines;
778         lxw_chart_gridline minor_gridlines;
779         lxw_chart_font* num_font;
780         lxw_chart_line* line;
781         lxw_chart_fill* fill;
782         lxw_chart_pattern* pattern;
783         ubyte is_category;
784         ubyte is_date;
785         ubyte is_value;
786         ubyte axis_position;
787         ubyte position_axis;
788         ubyte label_position;
789         ubyte label_align;
790         ubyte hidden;
791         ubyte reverse;
792         ubyte has_min;
793         double min;
794         ubyte has_max;
795         double max;
796         ubyte has_major_unit;
797         double major_unit;
798         ubyte has_minor_unit;
799         double minor_unit;
800         ushort interval_unit;
801         ushort interval_tick;
802         ushort log_base;
803         ubyte display_units;
804         ubyte display_units_visible;
805         ubyte has_crossing;
806         ubyte crossing_max;
807         double crossing;
808     }
809     struct lxw_chart
810     {
811         _IO_FILE* file;
812         ubyte type;
813         ubyte subtype;
814         ushort series_index;
815         void function(lxw_chart*) write_chart_type;
816         void function(lxw_chart*) write_plot_area;
817         lxw_chart_axis* x_axis;
818         lxw_chart_axis* y_axis;
819         lxw_chart_title title;
820         uint id;
821         uint axis_id_1;
822         uint axis_id_2;
823         uint axis_id_3;
824         uint axis_id_4;
825         ubyte in_use;
826         ubyte chart_group;
827         ubyte cat_has_num_fmt;
828         ubyte is_chartsheet;
829         ubyte has_horiz_cat_axis;
830         ubyte has_horiz_val_axis;
831         ubyte style_id;
832         ushort rotation;
833         ushort hole_size;
834         ubyte no_title;
835         ubyte has_overlap;
836         byte overlap_y1;
837         byte overlap_y2;
838         ushort gap_y1;
839         ushort gap_y2;
840         ubyte grouping;
841         ubyte default_cross_between;
842         lxw_chart_legend legend;
843         short* delete_series;
844         ushort delete_series_count;
845         lxw_chart_marker* default_marker;
846         lxw_chart_line* chartarea_line;
847         lxw_chart_fill* chartarea_fill;
848         lxw_chart_pattern* chartarea_pattern;
849         lxw_chart_line* plotarea_line;
850         lxw_chart_fill* plotarea_fill;
851         lxw_chart_pattern* plotarea_pattern;
852         ubyte has_drop_lines;
853         lxw_chart_line* drop_lines_line;
854         ubyte has_high_low_lines;
855         lxw_chart_line* high_low_lines_line;
856         lxw_chart_series_list* series_list;
857         ubyte has_table;
858         ubyte has_table_vertical;
859         ubyte has_table_horizontal;
860         ubyte has_table_outline;
861         ubyte has_table_legend_keys;
862         lxw_chart_font* table_font;
863         ubyte show_blanks_as;
864         ubyte show_hidden_data;
865         ubyte has_up_down_bars;
866         lxw_chart_line* up_bar_line;
867         lxw_chart_line* down_bar_line;
868         lxw_chart_fill* up_bar_fill;
869         lxw_chart_fill* down_bar_fill;
870         ubyte default_label_position;
871         ubyte is_protected;
872         static struct _Anonymous_4
873         {
874             lxw_chart* stqe_next;
875         }
876         _Anonymous_4 ordered_list_pointers;
877         static struct _Anonymous_5
878         {
879             lxw_chart* stqe_next;
880         }
881         _Anonymous_5 list_pointers;
882     }
883     lxw_chart* lxw_chart_new(ubyte) @nogc nothrow;
884     void lxw_chart_free(lxw_chart*) @nogc nothrow;
885     void lxw_chart_assemble_xml_file(lxw_chart*) @nogc nothrow;
886     lxw_chart_series* chart_add_series(lxw_chart*, const(char)*, const(char)*) @nogc nothrow;
887     void chart_series_set_categories(lxw_chart_series*, const(char)*, uint, ushort, uint, ushort) @nogc nothrow;
888     void chart_series_set_values(lxw_chart_series*, const(char)*, uint, ushort, uint, ushort) @nogc nothrow;
889     void chart_series_set_name(lxw_chart_series*, const(char)*) @nogc nothrow;
890     void chart_series_set_name_range(lxw_chart_series*, const(char)*, uint, ushort) @nogc nothrow;
891     void chart_series_set_line(lxw_chart_series*, lxw_chart_line*) @nogc nothrow;
892     void chart_series_set_fill(lxw_chart_series*, lxw_chart_fill*) @nogc nothrow;
893     void chart_series_set_invert_if_negative(lxw_chart_series*) @nogc nothrow;
894     void chart_series_set_pattern(lxw_chart_series*, lxw_chart_pattern*) @nogc nothrow;
895     void chart_series_set_marker_type(lxw_chart_series*, ubyte) @nogc nothrow;
896     void chart_series_set_marker_size(lxw_chart_series*, ubyte) @nogc nothrow;
897     void chart_series_set_marker_line(lxw_chart_series*, lxw_chart_line*) @nogc nothrow;
898     void chart_series_set_marker_fill(lxw_chart_series*, lxw_chart_fill*) @nogc nothrow;
899     void chart_series_set_marker_pattern(lxw_chart_series*, lxw_chart_pattern*) @nogc nothrow;
900     lxw_error chart_series_set_points(lxw_chart_series*, lxw_chart_point**) @nogc nothrow;
901     void chart_series_set_smooth(lxw_chart_series*, ubyte) @nogc nothrow;
902     void chart_series_set_labels(lxw_chart_series*) @nogc nothrow;
903     void chart_series_set_labels_options(lxw_chart_series*, ubyte, ubyte, ubyte) @nogc nothrow;
904     void chart_series_set_labels_separator(lxw_chart_series*, ubyte) @nogc nothrow;
905     void chart_series_set_labels_position(lxw_chart_series*, ubyte) @nogc nothrow;
906     void chart_series_set_labels_leader_line(lxw_chart_series*) @nogc nothrow;
907     void chart_series_set_labels_legend(lxw_chart_series*) @nogc nothrow;
908     void chart_series_set_labels_percentage(lxw_chart_series*) @nogc nothrow;
909     void chart_series_set_labels_num_format(lxw_chart_series*, const(char)*) @nogc nothrow;
910     void chart_series_set_labels_font(lxw_chart_series*, lxw_chart_font*) @nogc nothrow;
911     void chart_series_set_trendline(lxw_chart_series*, ubyte, ubyte) @nogc nothrow;
912     void chart_series_set_trendline_forecast(lxw_chart_series*, double, double) @nogc nothrow;
913     void chart_series_set_trendline_equation(lxw_chart_series*) @nogc nothrow;
914     void chart_series_set_trendline_r_squared(lxw_chart_series*) @nogc nothrow;
915     void chart_series_set_trendline_intercept(lxw_chart_series*, double) @nogc nothrow;
916     void chart_series_set_trendline_name(lxw_chart_series*, const(char)*) @nogc nothrow;
917     void chart_series_set_trendline_line(lxw_chart_series*, lxw_chart_line*) @nogc nothrow;
918     lxw_series_error_bars* chart_series_get_error_bars(lxw_chart_series*, lxw_chart_error_bar_axis) @nogc nothrow;
919     void chart_series_set_error_bars(lxw_series_error_bars*, ubyte, double) @nogc nothrow;
920     void chart_series_set_error_bars_direction(lxw_series_error_bars*, ubyte) @nogc nothrow;
921     void chart_series_set_error_bars_endcap(lxw_series_error_bars*, ubyte) @nogc nothrow;
922     void chart_series_set_error_bars_line(lxw_series_error_bars*, lxw_chart_line*) @nogc nothrow;
923     lxw_chart_axis* chart_axis_get(lxw_chart*, lxw_chart_axis_type) @nogc nothrow;
924     void chart_axis_set_name(lxw_chart_axis*, const(char)*) @nogc nothrow;
925     void chart_axis_set_name_range(lxw_chart_axis*, const(char)*, uint, ushort) @nogc nothrow;
926     void chart_axis_set_name_font(lxw_chart_axis*, lxw_chart_font*) @nogc nothrow;
927     void chart_axis_set_num_font(lxw_chart_axis*, lxw_chart_font*) @nogc nothrow;
928     void chart_axis_set_num_format(lxw_chart_axis*, const(char)*) @nogc nothrow;
929     void chart_axis_set_line(lxw_chart_axis*, lxw_chart_line*) @nogc nothrow;
930     void chart_axis_set_fill(lxw_chart_axis*, lxw_chart_fill*) @nogc nothrow;
931     void chart_axis_set_pattern(lxw_chart_axis*, lxw_chart_pattern*) @nogc nothrow;
932     void chart_axis_set_reverse(lxw_chart_axis*) @nogc nothrow;
933     void chart_axis_set_crossing(lxw_chart_axis*, double) @nogc nothrow;
934     void chart_axis_set_crossing_max(lxw_chart_axis*) @nogc nothrow;
935     void chart_axis_off(lxw_chart_axis*) @nogc nothrow;
936     void chart_axis_set_position(lxw_chart_axis*, ubyte) @nogc nothrow;
937     void chart_axis_set_label_position(lxw_chart_axis*, ubyte) @nogc nothrow;
938     void chart_axis_set_label_align(lxw_chart_axis*, ubyte) @nogc nothrow;
939     void chart_axis_set_min(lxw_chart_axis*, double) @nogc nothrow;
940     void chart_axis_set_max(lxw_chart_axis*, double) @nogc nothrow;
941     void chart_axis_set_log_base(lxw_chart_axis*, ushort) @nogc nothrow;
942     void chart_axis_set_major_tick_mark(lxw_chart_axis*, ubyte) @nogc nothrow;
943     void chart_axis_set_minor_tick_mark(lxw_chart_axis*, ubyte) @nogc nothrow;
944     void chart_axis_set_interval_unit(lxw_chart_axis*, ushort) @nogc nothrow;
945     void chart_axis_set_interval_tick(lxw_chart_axis*, ushort) @nogc nothrow;
946     void chart_axis_set_major_unit(lxw_chart_axis*, double) @nogc nothrow;
947     void chart_axis_set_minor_unit(lxw_chart_axis*, double) @nogc nothrow;
948     void chart_axis_set_display_units(lxw_chart_axis*, ubyte) @nogc nothrow;
949     void chart_axis_set_display_units_visible(lxw_chart_axis*, ubyte) @nogc nothrow;
950     void chart_axis_major_gridlines_set_visible(lxw_chart_axis*, ubyte) @nogc nothrow;
951     void chart_axis_minor_gridlines_set_visible(lxw_chart_axis*, ubyte) @nogc nothrow;
952     void chart_axis_major_gridlines_set_line(lxw_chart_axis*, lxw_chart_line*) @nogc nothrow;
953     void chart_axis_minor_gridlines_set_line(lxw_chart_axis*, lxw_chart_line*) @nogc nothrow;
954     void chart_title_set_name(lxw_chart*, const(char)*) @nogc nothrow;
955     void chart_title_set_name_range(lxw_chart*, const(char)*, uint, ushort) @nogc nothrow;
956     void chart_title_set_name_font(lxw_chart*, lxw_chart_font*) @nogc nothrow;
957     void chart_title_off(lxw_chart*) @nogc nothrow;
958     void chart_legend_set_position(lxw_chart*, ubyte) @nogc nothrow;
959     void chart_legend_set_font(lxw_chart*, lxw_chart_font*) @nogc nothrow;
960     lxw_error chart_legend_delete_series(lxw_chart*, short*) @nogc nothrow;
961     void chart_chartarea_set_line(lxw_chart*, lxw_chart_line*) @nogc nothrow;
962     void chart_chartarea_set_fill(lxw_chart*, lxw_chart_fill*) @nogc nothrow;
963     void chart_chartarea_set_pattern(lxw_chart*, lxw_chart_pattern*) @nogc nothrow;
964     void chart_plotarea_set_line(lxw_chart*, lxw_chart_line*) @nogc nothrow;
965     void chart_plotarea_set_fill(lxw_chart*, lxw_chart_fill*) @nogc nothrow;
966     void chart_plotarea_set_pattern(lxw_chart*, lxw_chart_pattern*) @nogc nothrow;
967     void chart_set_style(lxw_chart*, ubyte) @nogc nothrow;
968     void chart_set_table(lxw_chart*) @nogc nothrow;
969     void chart_set_table_grid(lxw_chart*, ubyte, ubyte, ubyte, ubyte) @nogc nothrow;
970     void chart_set_table_font(lxw_chart*, lxw_chart_font*) @nogc nothrow;
971     void chart_set_up_down_bars(lxw_chart*) @nogc nothrow;
972     void chart_set_up_down_bars_format(lxw_chart*, lxw_chart_line*, lxw_chart_fill*, lxw_chart_line*, lxw_chart_fill*) @nogc nothrow;
973     void chart_set_drop_lines(lxw_chart*, lxw_chart_line*) @nogc nothrow;
974     void chart_set_high_low_lines(lxw_chart*, lxw_chart_line*) @nogc nothrow;
975     void chart_set_series_overlap(lxw_chart*, byte) @nogc nothrow;
976     void chart_set_series_gap(lxw_chart*, ushort) @nogc nothrow;
977     void chart_show_blanks_as(lxw_chart*, ubyte) @nogc nothrow;
978     void chart_show_hidden_data(lxw_chart*) @nogc nothrow;
979     void chart_set_rotation(lxw_chart*, ushort) @nogc nothrow;
980     void chart_set_hole_size(lxw_chart*, ubyte) @nogc nothrow;
981     lxw_error lxw_chart_add_data_cache(lxw_series_range*, ubyte*, ushort, ubyte, ubyte) @nogc nothrow;
982     struct lxw_chartsheet
983     {
984         _IO_FILE* file;
985         lxw_worksheet* worksheet;
986         lxw_chart* chart;
987         lxw_protection protection;
988         ubyte is_protected;
989         char* name;
990         char* quoted_name;
991         char* tmpdir;
992         uint index;
993         ubyte active;
994         ubyte selected;
995         ubyte hidden;
996         ushort* active_sheet;
997         ushort* first_sheet;
998         ushort rel_count;
999         static struct _Anonymous_6
1000         {
1001             lxw_chartsheet* stqe_next;
1002         }
1003         _Anonymous_6 list_pointers;
1004     }
1005     lxw_error chartsheet_set_chart(lxw_chartsheet*, lxw_chart*) @nogc nothrow;
1006     lxw_error chartsheet_set_chart_opt(lxw_chartsheet*, lxw_chart*, lxw_image_options*) @nogc nothrow;
1007     void chartsheet_activate(lxw_chartsheet*) @nogc nothrow;
1008     void chartsheet_select(lxw_chartsheet*) @nogc nothrow;
1009     void chartsheet_hide(lxw_chartsheet*) @nogc nothrow;
1010     void chartsheet_set_first_sheet(lxw_chartsheet*) @nogc nothrow;
1011     void chartsheet_set_tab_color(lxw_chartsheet*, int) @nogc nothrow;
1012     void chartsheet_protect(lxw_chartsheet*, const(char)*, lxw_protection*) @nogc nothrow;
1013     void chartsheet_set_zoom(lxw_chartsheet*, ushort) @nogc nothrow;
1014     void chartsheet_set_landscape(lxw_chartsheet*) @nogc nothrow;
1015     void chartsheet_set_portrait(lxw_chartsheet*) @nogc nothrow;
1016     void chartsheet_set_paper(lxw_chartsheet*, ubyte) @nogc nothrow;
1017     void chartsheet_set_margins(lxw_chartsheet*, double, double, double, double) @nogc nothrow;
1018     lxw_error chartsheet_set_header(lxw_chartsheet*, const(char)*) @nogc nothrow;
1019     lxw_error chartsheet_set_footer(lxw_chartsheet*, const(char)*) @nogc nothrow;
1020     lxw_error chartsheet_set_header_opt(lxw_chartsheet*, const(char)*, lxw_header_footer_options*) @nogc nothrow;
1021     lxw_error chartsheet_set_footer_opt(lxw_chartsheet*, const(char)*, lxw_header_footer_options*) @nogc nothrow;
1022     lxw_chartsheet* lxw_chartsheet_new(lxw_worksheet_init_data*) @nogc nothrow;
1023     void lxw_chartsheet_free(lxw_chartsheet*) @nogc nothrow;
1024     void lxw_chartsheet_assemble_xml_file(lxw_chartsheet*) @nogc nothrow;
1025     alias lxw_row_t = uint;
1026     alias lxw_col_t = ushort;
1027     enum lxw_boolean
1028     {
1029         LXW_FALSE = 0,
1030         LXW_TRUE = 1,
1031     }
1032     enum LXW_FALSE = lxw_boolean.LXW_FALSE;
1033     enum LXW_TRUE = lxw_boolean.LXW_TRUE;
1034     enum lxw_error
1035     {
1036         LXW_NO_ERROR = 0,
1037         LXW_ERROR_MEMORY_MALLOC_FAILED = 1,
1038         LXW_ERROR_CREATING_XLSX_FILE = 2,
1039         LXW_ERROR_CREATING_TMPFILE = 3,
1040         LXW_ERROR_READING_TMPFILE = 4,
1041         LXW_ERROR_ZIP_FILE_OPERATION = 5,
1042         LXW_ERROR_ZIP_PARAMETER_ERROR = 6,
1043         LXW_ERROR_ZIP_BAD_ZIP_FILE = 7,
1044         LXW_ERROR_ZIP_INTERNAL_ERROR = 8,
1045         LXW_ERROR_ZIP_FILE_ADD = 9,
1046         LXW_ERROR_ZIP_CLOSE = 10,
1047         LXW_ERROR_NULL_PARAMETER_IGNORED = 11,
1048         LXW_ERROR_PARAMETER_VALIDATION = 12,
1049         LXW_ERROR_SHEETNAME_LENGTH_EXCEEDED = 13,
1050         LXW_ERROR_INVALID_SHEETNAME_CHARACTER = 14,
1051         LXW_ERROR_SHEETNAME_START_END_APOSTROPHE = 15,
1052         LXW_ERROR_SHEETNAME_ALREADY_USED = 16,
1053         LXW_ERROR_SHEETNAME_RESERVED = 17,
1054         LXW_ERROR_32_STRING_LENGTH_EXCEEDED = 18,
1055         LXW_ERROR_128_STRING_LENGTH_EXCEEDED = 19,
1056         LXW_ERROR_255_STRING_LENGTH_EXCEEDED = 20,
1057         LXW_ERROR_MAX_STRING_LENGTH_EXCEEDED = 21,
1058         LXW_ERROR_SHARED_STRING_INDEX_NOT_FOUND = 22,
1059         LXW_ERROR_WORKSHEET_INDEX_OUT_OF_RANGE = 23,
1060         LXW_ERROR_WORKSHEET_MAX_NUMBER_URLS_EXCEEDED = 24,
1061         LXW_ERROR_IMAGE_DIMENSIONS = 25,
1062         LXW_MAX_ERRNO = 26,
1063     }
1064     enum LXW_NO_ERROR = lxw_error.LXW_NO_ERROR;
1065     enum LXW_ERROR_MEMORY_MALLOC_FAILED = lxw_error.LXW_ERROR_MEMORY_MALLOC_FAILED;
1066     enum LXW_ERROR_CREATING_XLSX_FILE = lxw_error.LXW_ERROR_CREATING_XLSX_FILE;
1067     enum LXW_ERROR_CREATING_TMPFILE = lxw_error.LXW_ERROR_CREATING_TMPFILE;
1068     enum LXW_ERROR_READING_TMPFILE = lxw_error.LXW_ERROR_READING_TMPFILE;
1069     enum LXW_ERROR_ZIP_FILE_OPERATION = lxw_error.LXW_ERROR_ZIP_FILE_OPERATION;
1070     enum LXW_ERROR_ZIP_PARAMETER_ERROR = lxw_error.LXW_ERROR_ZIP_PARAMETER_ERROR;
1071     enum LXW_ERROR_ZIP_BAD_ZIP_FILE = lxw_error.LXW_ERROR_ZIP_BAD_ZIP_FILE;
1072     enum LXW_ERROR_ZIP_INTERNAL_ERROR = lxw_error.LXW_ERROR_ZIP_INTERNAL_ERROR;
1073     enum LXW_ERROR_ZIP_FILE_ADD = lxw_error.LXW_ERROR_ZIP_FILE_ADD;
1074     enum LXW_ERROR_ZIP_CLOSE = lxw_error.LXW_ERROR_ZIP_CLOSE;
1075     enum LXW_ERROR_NULL_PARAMETER_IGNORED = lxw_error.LXW_ERROR_NULL_PARAMETER_IGNORED;
1076     enum LXW_ERROR_PARAMETER_VALIDATION = lxw_error.LXW_ERROR_PARAMETER_VALIDATION;
1077     enum LXW_ERROR_SHEETNAME_LENGTH_EXCEEDED = lxw_error.LXW_ERROR_SHEETNAME_LENGTH_EXCEEDED;
1078     enum LXW_ERROR_INVALID_SHEETNAME_CHARACTER = lxw_error.LXW_ERROR_INVALID_SHEETNAME_CHARACTER;
1079     enum LXW_ERROR_SHEETNAME_START_END_APOSTROPHE = lxw_error.LXW_ERROR_SHEETNAME_START_END_APOSTROPHE;
1080     enum LXW_ERROR_SHEETNAME_ALREADY_USED = lxw_error.LXW_ERROR_SHEETNAME_ALREADY_USED;
1081     enum LXW_ERROR_SHEETNAME_RESERVED = lxw_error.LXW_ERROR_SHEETNAME_RESERVED;
1082     enum LXW_ERROR_32_STRING_LENGTH_EXCEEDED = lxw_error.LXW_ERROR_32_STRING_LENGTH_EXCEEDED;
1083     enum LXW_ERROR_128_STRING_LENGTH_EXCEEDED = lxw_error.LXW_ERROR_128_STRING_LENGTH_EXCEEDED;
1084     enum LXW_ERROR_255_STRING_LENGTH_EXCEEDED = lxw_error.LXW_ERROR_255_STRING_LENGTH_EXCEEDED;
1085     enum LXW_ERROR_MAX_STRING_LENGTH_EXCEEDED = lxw_error.LXW_ERROR_MAX_STRING_LENGTH_EXCEEDED;
1086     enum LXW_ERROR_SHARED_STRING_INDEX_NOT_FOUND = lxw_error.LXW_ERROR_SHARED_STRING_INDEX_NOT_FOUND;
1087     enum LXW_ERROR_WORKSHEET_INDEX_OUT_OF_RANGE = lxw_error.LXW_ERROR_WORKSHEET_INDEX_OUT_OF_RANGE;
1088     enum LXW_ERROR_WORKSHEET_MAX_NUMBER_URLS_EXCEEDED = lxw_error.LXW_ERROR_WORKSHEET_MAX_NUMBER_URLS_EXCEEDED;
1089     enum LXW_ERROR_IMAGE_DIMENSIONS = lxw_error.LXW_ERROR_IMAGE_DIMENSIONS;
1090     enum LXW_MAX_ERRNO = lxw_error.LXW_MAX_ERRNO;
1091     struct lxw_datetime
1092     {
1093         int year;
1094         int month;
1095         int day;
1096         int hour;
1097         int min;
1098         double sec;
1099     }
1100     enum lxw_custom_property_types
1101     {
1102         LXW_CUSTOM_NONE = 0,
1103         LXW_CUSTOM_STRING = 1,
1104         LXW_CUSTOM_DOUBLE = 2,
1105         LXW_CUSTOM_INTEGER = 3,
1106         LXW_CUSTOM_BOOLEAN = 4,
1107         LXW_CUSTOM_DATETIME = 5,
1108     }
1109     enum LXW_CUSTOM_NONE = lxw_custom_property_types.LXW_CUSTOM_NONE;
1110     enum LXW_CUSTOM_STRING = lxw_custom_property_types.LXW_CUSTOM_STRING;
1111     enum LXW_CUSTOM_DOUBLE = lxw_custom_property_types.LXW_CUSTOM_DOUBLE;
1112     enum LXW_CUSTOM_INTEGER = lxw_custom_property_types.LXW_CUSTOM_INTEGER;
1113     enum LXW_CUSTOM_BOOLEAN = lxw_custom_property_types.LXW_CUSTOM_BOOLEAN;
1114     enum LXW_CUSTOM_DATETIME = lxw_custom_property_types.LXW_CUSTOM_DATETIME;
1115     int inflateReset2(z_stream_s*, int) @nogc nothrow;
1116     int inflateReset(z_stream_s*) @nogc nothrow;
1117     int inflateCopy(z_stream_s*, z_stream_s*) @nogc nothrow;
1118     int inflateSync(z_stream_s*) @nogc nothrow;
1119     int inflateGetDictionary(z_stream_s*, ubyte*, uint*) @nogc nothrow;
1120     int inflateSetDictionary(z_stream_s*, const(ubyte)*, uint) @nogc nothrow;
1121     int deflateSetHeader(z_stream_s*, gz_header_s*) @nogc nothrow;
1122     int deflatePrime(z_stream_s*, int, int) @nogc nothrow;
1123     int deflatePending(z_stream_s*, uint*, int*) @nogc nothrow;
1124     c_ulong deflateBound(z_stream_s*, c_ulong) @nogc nothrow;
1125     int deflateTune(z_stream_s*, int, int, int, int) @nogc nothrow;
1126     struct lxw_format
1127     {
1128         _IO_FILE* file;
1129         lxw_hash_table* xf_format_indices;
1130         ushort* num_xf_formats;
1131         int xf_index;
1132         int dxf_index;
1133         char[128] num_format;
1134         char[128] font_name;
1135         char[128] font_scheme;
1136         ushort num_format_index;
1137         ushort font_index;
1138         ubyte has_font;
1139         ubyte has_dxf_font;
1140         double font_size;
1141         ubyte bold;
1142         ubyte italic;
1143         int font_color;
1144         ubyte underline;
1145         ubyte font_strikeout;
1146         ubyte font_outline;
1147         ubyte font_shadow;
1148         ubyte font_script;
1149         ubyte font_family;
1150         ubyte font_charset;
1151         ubyte font_condense;
1152         ubyte font_extend;
1153         ubyte theme;
1154         ubyte hyperlink;
1155         ubyte hidden;
1156         ubyte locked;
1157         ubyte text_h_align;
1158         ubyte text_wrap;
1159         ubyte text_v_align;
1160         ubyte text_justlast;
1161         short rotation;
1162         int fg_color;
1163         int bg_color;
1164         ubyte pattern;
1165         ubyte has_fill;
1166         ubyte has_dxf_fill;
1167         int fill_index;
1168         int fill_count;
1169         int border_index;
1170         ubyte has_border;
1171         ubyte has_dxf_border;
1172         int border_count;
1173         ubyte bottom;
1174         ubyte diag_border;
1175         ubyte diag_type;
1176         ubyte left;
1177         ubyte right;
1178         ubyte top;
1179         int bottom_color;
1180         int diag_color;
1181         int left_color;
1182         int right_color;
1183         int top_color;
1184         ubyte indent;
1185         ubyte shrink;
1186         ubyte merge_range;
1187         ubyte reading_order;
1188         ubyte just_distrib;
1189         ubyte color_indexed;
1190         ubyte font_only;
1191         static struct _Anonymous_7
1192         {
1193             lxw_format* stqe_next;
1194         }
1195         _Anonymous_7 list_pointers;
1196     }
1197     struct lxw_formats
1198     {
1199         lxw_format* stqh_first;
1200         lxw_format** stqh_last;
1201     }
1202     struct lxw_tuples
1203     {
1204         lxw_tuple* stqh_first;
1205         lxw_tuple** stqh_last;
1206     }
1207     struct lxw_tuple
1208     {
1209         char* key;
1210         char* value;
1211         static struct _Anonymous_8
1212         {
1213             lxw_tuple* stqe_next;
1214         }
1215         _Anonymous_8 list_pointers;
1216     }
1217     struct lxw_custom_properties
1218     {
1219         lxw_custom_property* stqh_first;
1220         lxw_custom_property** stqh_last;
1221     }
1222     struct lxw_custom_property
1223     {
1224         lxw_custom_property_types type;
1225         char* name;
1226         static union _Anonymous_9
1227         {
1228             char* string;
1229             double number;
1230             int integer;
1231             ubyte boolean;
1232             lxw_datetime datetime;
1233         }
1234         _Anonymous_9 u;
1235         static struct _Anonymous_10
1236         {
1237             lxw_custom_property* stqe_next;
1238         }
1239         _Anonymous_10 list_pointers;
1240     }
1241     int deflateParams(z_stream_s*, int, int) @nogc nothrow;
1242     struct lxw_content_types
1243     {
1244         _IO_FILE* file;
1245         lxw_tuples* default_types;
1246         lxw_tuples* overrides;
1247     }
1248     lxw_content_types* lxw_content_types_new() @nogc nothrow;
1249     void lxw_content_types_free(lxw_content_types*) @nogc nothrow;
1250     void lxw_content_types_assemble_xml_file(lxw_content_types*) @nogc nothrow;
1251     void lxw_ct_add_default(lxw_content_types*, const(char)*, const(char)*) @nogc nothrow;
1252     void lxw_ct_add_override(lxw_content_types*, const(char)*, const(char)*) @nogc nothrow;
1253     void lxw_ct_add_worksheet_name(lxw_content_types*, const(char)*) @nogc nothrow;
1254     void lxw_ct_add_chartsheet_name(lxw_content_types*, const(char)*) @nogc nothrow;
1255     void lxw_ct_add_chart_name(lxw_content_types*, const(char)*) @nogc nothrow;
1256     void lxw_ct_add_drawing_name(lxw_content_types*, const(char)*) @nogc nothrow;
1257     void lxw_ct_add_shared_strings(lxw_content_types*) @nogc nothrow;
1258     void lxw_ct_add_calc_chain(lxw_content_types*) @nogc nothrow;
1259     void lxw_ct_add_custom_properties(lxw_content_types*) @nogc nothrow;
1260     struct lxw_core
1261     {
1262         _IO_FILE* file;
1263         lxw_doc_properties* properties;
1264     }
1265     lxw_core* lxw_core_new() @nogc nothrow;
1266     void lxw_core_free(lxw_core*) @nogc nothrow;
1267     void lxw_core_assemble_xml_file(lxw_core*) @nogc nothrow;
1268     int deflateReset(z_stream_s*) @nogc nothrow;
1269     struct lxw_custom
1270     {
1271         _IO_FILE* file;
1272         lxw_custom_properties* custom_properties;
1273         uint pid;
1274     }
1275     lxw_custom* lxw_custom_new() @nogc nothrow;
1276     void lxw_custom_free(lxw_custom*) @nogc nothrow;
1277     void lxw_custom_assemble_xml_file(lxw_custom*) @nogc nothrow;
1278     struct lxw_drawing_objects
1279     {
1280         lxw_drawing_object* stqh_first;
1281         lxw_drawing_object** stqh_last;
1282     }
1283     struct lxw_drawing_object
1284     {
1285         ubyte anchor_type;
1286         ubyte edit_as;
1287         lxw_drawing_coords from;
1288         lxw_drawing_coords to;
1289         uint col_absolute;
1290         uint row_absolute;
1291         uint width;
1292         uint height;
1293         ubyte shape;
1294         char* description;
1295         char* url;
1296         char* tip;
1297         static struct _Anonymous_11
1298         {
1299             lxw_drawing_object* stqe_next;
1300         }
1301         _Anonymous_11 list_pointers;
1302     }
1303     enum lxw_drawing_types
1304     {
1305         LXW_DRAWING_NONE = 0,
1306         LXW_DRAWING_IMAGE = 1,
1307         LXW_DRAWING_CHART = 2,
1308         LXW_DRAWING_SHAPE = 3,
1309     }
1310     enum LXW_DRAWING_NONE = lxw_drawing_types.LXW_DRAWING_NONE;
1311     enum LXW_DRAWING_IMAGE = lxw_drawing_types.LXW_DRAWING_IMAGE;
1312     enum LXW_DRAWING_CHART = lxw_drawing_types.LXW_DRAWING_CHART;
1313     enum LXW_DRAWING_SHAPE = lxw_drawing_types.LXW_DRAWING_SHAPE;
1314     enum lxw_anchor_types
1315     {
1316         LXW_ANCHOR_TYPE_NONE = 0,
1317         LXW_ANCHOR_TYPE_IMAGE = 1,
1318         LXW_ANCHOR_TYPE_CHART = 2,
1319     }
1320     enum LXW_ANCHOR_TYPE_NONE = lxw_anchor_types.LXW_ANCHOR_TYPE_NONE;
1321     enum LXW_ANCHOR_TYPE_IMAGE = lxw_anchor_types.LXW_ANCHOR_TYPE_IMAGE;
1322     enum LXW_ANCHOR_TYPE_CHART = lxw_anchor_types.LXW_ANCHOR_TYPE_CHART;
1323     enum lxw_anchor_edit_types
1324     {
1325         LXW_ANCHOR_EDIT_AS_NONE = 0,
1326         LXW_ANCHOR_EDIT_AS_RELATIVE = 1,
1327         LXW_ANCHOR_EDIT_AS_ONE_CELL = 2,
1328         LXW_ANCHOR_EDIT_AS_ABSOLUTE = 3,
1329     }
1330     enum LXW_ANCHOR_EDIT_AS_NONE = lxw_anchor_edit_types.LXW_ANCHOR_EDIT_AS_NONE;
1331     enum LXW_ANCHOR_EDIT_AS_RELATIVE = lxw_anchor_edit_types.LXW_ANCHOR_EDIT_AS_RELATIVE;
1332     enum LXW_ANCHOR_EDIT_AS_ONE_CELL = lxw_anchor_edit_types.LXW_ANCHOR_EDIT_AS_ONE_CELL;
1333     enum LXW_ANCHOR_EDIT_AS_ABSOLUTE = lxw_anchor_edit_types.LXW_ANCHOR_EDIT_AS_ABSOLUTE;
1334     enum image_types
1335     {
1336         LXW_IMAGE_UNKNOWN = 0,
1337         LXW_IMAGE_PNG = 1,
1338         LXW_IMAGE_JPEG = 2,
1339         LXW_IMAGE_BMP = 3,
1340     }
1341     enum LXW_IMAGE_UNKNOWN = image_types.LXW_IMAGE_UNKNOWN;
1342     enum LXW_IMAGE_PNG = image_types.LXW_IMAGE_PNG;
1343     enum LXW_IMAGE_JPEG = image_types.LXW_IMAGE_JPEG;
1344     enum LXW_IMAGE_BMP = image_types.LXW_IMAGE_BMP;
1345     struct lxw_drawing_coords
1346     {
1347         uint col;
1348         uint row;
1349         double col_offset;
1350         double row_offset;
1351     }
1352     struct lxw_drawing
1353     {
1354         _IO_FILE* file;
1355         ubyte embedded;
1356         ubyte orientation;
1357         lxw_drawing_objects* drawing_objects;
1358     }
1359     lxw_drawing* lxw_drawing_new() @nogc nothrow;
1360     void lxw_drawing_free(lxw_drawing*) @nogc nothrow;
1361     void lxw_drawing_assemble_xml_file(lxw_drawing*) @nogc nothrow;
1362     void lxw_free_drawing_object(lxw_drawing_object*) @nogc nothrow;
1363     void lxw_add_drawing_object(lxw_drawing*, lxw_drawing_object*) @nogc nothrow;
1364     alias lxw_color_t = int;
1365     int deflateCopy(z_stream_s*, z_stream_s*) @nogc nothrow;
1366     int deflateGetDictionary(z_stream_s*, ubyte*, uint*) @nogc nothrow;
1367     enum lxw_format_underlines
1368     {
1369         LXW_UNDERLINE_SINGLE = 1,
1370         LXW_UNDERLINE_DOUBLE = 2,
1371         LXW_UNDERLINE_SINGLE_ACCOUNTING = 3,
1372         LXW_UNDERLINE_DOUBLE_ACCOUNTING = 4,
1373     }
1374     enum LXW_UNDERLINE_SINGLE = lxw_format_underlines.LXW_UNDERLINE_SINGLE;
1375     enum LXW_UNDERLINE_DOUBLE = lxw_format_underlines.LXW_UNDERLINE_DOUBLE;
1376     enum LXW_UNDERLINE_SINGLE_ACCOUNTING = lxw_format_underlines.LXW_UNDERLINE_SINGLE_ACCOUNTING;
1377     enum LXW_UNDERLINE_DOUBLE_ACCOUNTING = lxw_format_underlines.LXW_UNDERLINE_DOUBLE_ACCOUNTING;
1378     enum lxw_format_scripts
1379     {
1380         LXW_FONT_SUPERSCRIPT = 1,
1381         LXW_FONT_SUBSCRIPT = 2,
1382     }
1383     enum LXW_FONT_SUPERSCRIPT = lxw_format_scripts.LXW_FONT_SUPERSCRIPT;
1384     enum LXW_FONT_SUBSCRIPT = lxw_format_scripts.LXW_FONT_SUBSCRIPT;
1385     enum lxw_format_alignments
1386     {
1387         LXW_ALIGN_NONE = 0,
1388         LXW_ALIGN_LEFT = 1,
1389         LXW_ALIGN_CENTER = 2,
1390         LXW_ALIGN_RIGHT = 3,
1391         LXW_ALIGN_FILL = 4,
1392         LXW_ALIGN_JUSTIFY = 5,
1393         LXW_ALIGN_CENTER_ACROSS = 6,
1394         LXW_ALIGN_DISTRIBUTED = 7,
1395         LXW_ALIGN_VERTICAL_TOP = 8,
1396         LXW_ALIGN_VERTICAL_BOTTOM = 9,
1397         LXW_ALIGN_VERTICAL_CENTER = 10,
1398         LXW_ALIGN_VERTICAL_JUSTIFY = 11,
1399         LXW_ALIGN_VERTICAL_DISTRIBUTED = 12,
1400     }
1401     enum LXW_ALIGN_NONE = lxw_format_alignments.LXW_ALIGN_NONE;
1402     enum LXW_ALIGN_LEFT = lxw_format_alignments.LXW_ALIGN_LEFT;
1403     enum LXW_ALIGN_CENTER = lxw_format_alignments.LXW_ALIGN_CENTER;
1404     enum LXW_ALIGN_RIGHT = lxw_format_alignments.LXW_ALIGN_RIGHT;
1405     enum LXW_ALIGN_FILL = lxw_format_alignments.LXW_ALIGN_FILL;
1406     enum LXW_ALIGN_JUSTIFY = lxw_format_alignments.LXW_ALIGN_JUSTIFY;
1407     enum LXW_ALIGN_CENTER_ACROSS = lxw_format_alignments.LXW_ALIGN_CENTER_ACROSS;
1408     enum LXW_ALIGN_DISTRIBUTED = lxw_format_alignments.LXW_ALIGN_DISTRIBUTED;
1409     enum LXW_ALIGN_VERTICAL_TOP = lxw_format_alignments.LXW_ALIGN_VERTICAL_TOP;
1410     enum LXW_ALIGN_VERTICAL_BOTTOM = lxw_format_alignments.LXW_ALIGN_VERTICAL_BOTTOM;
1411     enum LXW_ALIGN_VERTICAL_CENTER = lxw_format_alignments.LXW_ALIGN_VERTICAL_CENTER;
1412     enum LXW_ALIGN_VERTICAL_JUSTIFY = lxw_format_alignments.LXW_ALIGN_VERTICAL_JUSTIFY;
1413     enum LXW_ALIGN_VERTICAL_DISTRIBUTED = lxw_format_alignments.LXW_ALIGN_VERTICAL_DISTRIBUTED;
1414     enum lxw_format_diagonal_types
1415     {
1416         LXW_DIAGONAL_BORDER_UP = 1,
1417         LXW_DIAGONAL_BORDER_DOWN = 2,
1418         LXW_DIAGONAL_BORDER_UP_DOWN = 3,
1419     }
1420     enum LXW_DIAGONAL_BORDER_UP = lxw_format_diagonal_types.LXW_DIAGONAL_BORDER_UP;
1421     enum LXW_DIAGONAL_BORDER_DOWN = lxw_format_diagonal_types.LXW_DIAGONAL_BORDER_DOWN;
1422     enum LXW_DIAGONAL_BORDER_UP_DOWN = lxw_format_diagonal_types.LXW_DIAGONAL_BORDER_UP_DOWN;
1423     enum lxw_defined_colors
1424     {
1425         LXW_COLOR_BLACK = 16777216,
1426         LXW_COLOR_BLUE = 255,
1427         LXW_COLOR_BROWN = 8388608,
1428         LXW_COLOR_CYAN = 65535,
1429         LXW_COLOR_GRAY = 8421504,
1430         LXW_COLOR_GREEN = 32768,
1431         LXW_COLOR_LIME = 65280,
1432         LXW_COLOR_MAGENTA = 16711935,
1433         LXW_COLOR_NAVY = 128,
1434         LXW_COLOR_ORANGE = 16737792,
1435         LXW_COLOR_PINK = 16711935,
1436         LXW_COLOR_PURPLE = 8388736,
1437         LXW_COLOR_RED = 16711680,
1438         LXW_COLOR_SILVER = 12632256,
1439         LXW_COLOR_WHITE = 16777215,
1440         LXW_COLOR_YELLOW = 16776960,
1441     }
1442     enum LXW_COLOR_BLACK = lxw_defined_colors.LXW_COLOR_BLACK;
1443     enum LXW_COLOR_BLUE = lxw_defined_colors.LXW_COLOR_BLUE;
1444     enum LXW_COLOR_BROWN = lxw_defined_colors.LXW_COLOR_BROWN;
1445     enum LXW_COLOR_CYAN = lxw_defined_colors.LXW_COLOR_CYAN;
1446     enum LXW_COLOR_GRAY = lxw_defined_colors.LXW_COLOR_GRAY;
1447     enum LXW_COLOR_GREEN = lxw_defined_colors.LXW_COLOR_GREEN;
1448     enum LXW_COLOR_LIME = lxw_defined_colors.LXW_COLOR_LIME;
1449     enum LXW_COLOR_MAGENTA = lxw_defined_colors.LXW_COLOR_MAGENTA;
1450     enum LXW_COLOR_NAVY = lxw_defined_colors.LXW_COLOR_NAVY;
1451     enum LXW_COLOR_ORANGE = lxw_defined_colors.LXW_COLOR_ORANGE;
1452     enum LXW_COLOR_PINK = lxw_defined_colors.LXW_COLOR_PINK;
1453     enum LXW_COLOR_PURPLE = lxw_defined_colors.LXW_COLOR_PURPLE;
1454     enum LXW_COLOR_RED = lxw_defined_colors.LXW_COLOR_RED;
1455     enum LXW_COLOR_SILVER = lxw_defined_colors.LXW_COLOR_SILVER;
1456     enum LXW_COLOR_WHITE = lxw_defined_colors.LXW_COLOR_WHITE;
1457     enum LXW_COLOR_YELLOW = lxw_defined_colors.LXW_COLOR_YELLOW;
1458     enum lxw_format_patterns
1459     {
1460         LXW_PATTERN_NONE = 0,
1461         LXW_PATTERN_SOLID = 1,
1462         LXW_PATTERN_MEDIUM_GRAY = 2,
1463         LXW_PATTERN_DARK_GRAY = 3,
1464         LXW_PATTERN_LIGHT_GRAY = 4,
1465         LXW_PATTERN_DARK_HORIZONTAL = 5,
1466         LXW_PATTERN_DARK_VERTICAL = 6,
1467         LXW_PATTERN_DARK_DOWN = 7,
1468         LXW_PATTERN_DARK_UP = 8,
1469         LXW_PATTERN_DARK_GRID = 9,
1470         LXW_PATTERN_DARK_TRELLIS = 10,
1471         LXW_PATTERN_LIGHT_HORIZONTAL = 11,
1472         LXW_PATTERN_LIGHT_VERTICAL = 12,
1473         LXW_PATTERN_LIGHT_DOWN = 13,
1474         LXW_PATTERN_LIGHT_UP = 14,
1475         LXW_PATTERN_LIGHT_GRID = 15,
1476         LXW_PATTERN_LIGHT_TRELLIS = 16,
1477         LXW_PATTERN_GRAY_125 = 17,
1478         LXW_PATTERN_GRAY_0625 = 18,
1479     }
1480     enum LXW_PATTERN_NONE = lxw_format_patterns.LXW_PATTERN_NONE;
1481     enum LXW_PATTERN_SOLID = lxw_format_patterns.LXW_PATTERN_SOLID;
1482     enum LXW_PATTERN_MEDIUM_GRAY = lxw_format_patterns.LXW_PATTERN_MEDIUM_GRAY;
1483     enum LXW_PATTERN_DARK_GRAY = lxw_format_patterns.LXW_PATTERN_DARK_GRAY;
1484     enum LXW_PATTERN_LIGHT_GRAY = lxw_format_patterns.LXW_PATTERN_LIGHT_GRAY;
1485     enum LXW_PATTERN_DARK_HORIZONTAL = lxw_format_patterns.LXW_PATTERN_DARK_HORIZONTAL;
1486     enum LXW_PATTERN_DARK_VERTICAL = lxw_format_patterns.LXW_PATTERN_DARK_VERTICAL;
1487     enum LXW_PATTERN_DARK_DOWN = lxw_format_patterns.LXW_PATTERN_DARK_DOWN;
1488     enum LXW_PATTERN_DARK_UP = lxw_format_patterns.LXW_PATTERN_DARK_UP;
1489     enum LXW_PATTERN_DARK_GRID = lxw_format_patterns.LXW_PATTERN_DARK_GRID;
1490     enum LXW_PATTERN_DARK_TRELLIS = lxw_format_patterns.LXW_PATTERN_DARK_TRELLIS;
1491     enum LXW_PATTERN_LIGHT_HORIZONTAL = lxw_format_patterns.LXW_PATTERN_LIGHT_HORIZONTAL;
1492     enum LXW_PATTERN_LIGHT_VERTICAL = lxw_format_patterns.LXW_PATTERN_LIGHT_VERTICAL;
1493     enum LXW_PATTERN_LIGHT_DOWN = lxw_format_patterns.LXW_PATTERN_LIGHT_DOWN;
1494     enum LXW_PATTERN_LIGHT_UP = lxw_format_patterns.LXW_PATTERN_LIGHT_UP;
1495     enum LXW_PATTERN_LIGHT_GRID = lxw_format_patterns.LXW_PATTERN_LIGHT_GRID;
1496     enum LXW_PATTERN_LIGHT_TRELLIS = lxw_format_patterns.LXW_PATTERN_LIGHT_TRELLIS;
1497     enum LXW_PATTERN_GRAY_125 = lxw_format_patterns.LXW_PATTERN_GRAY_125;
1498     enum LXW_PATTERN_GRAY_0625 = lxw_format_patterns.LXW_PATTERN_GRAY_0625;
1499     enum lxw_format_borders
1500     {
1501         LXW_BORDER_NONE = 0,
1502         LXW_BORDER_THIN = 1,
1503         LXW_BORDER_MEDIUM = 2,
1504         LXW_BORDER_DASHED = 3,
1505         LXW_BORDER_DOTTED = 4,
1506         LXW_BORDER_THICK = 5,
1507         LXW_BORDER_DOUBLE = 6,
1508         LXW_BORDER_HAIR = 7,
1509         LXW_BORDER_MEDIUM_DASHED = 8,
1510         LXW_BORDER_DASH_DOT = 9,
1511         LXW_BORDER_MEDIUM_DASH_DOT = 10,
1512         LXW_BORDER_DASH_DOT_DOT = 11,
1513         LXW_BORDER_MEDIUM_DASH_DOT_DOT = 12,
1514         LXW_BORDER_SLANT_DASH_DOT = 13,
1515     }
1516     enum LXW_BORDER_NONE = lxw_format_borders.LXW_BORDER_NONE;
1517     enum LXW_BORDER_THIN = lxw_format_borders.LXW_BORDER_THIN;
1518     enum LXW_BORDER_MEDIUM = lxw_format_borders.LXW_BORDER_MEDIUM;
1519     enum LXW_BORDER_DASHED = lxw_format_borders.LXW_BORDER_DASHED;
1520     enum LXW_BORDER_DOTTED = lxw_format_borders.LXW_BORDER_DOTTED;
1521     enum LXW_BORDER_THICK = lxw_format_borders.LXW_BORDER_THICK;
1522     enum LXW_BORDER_DOUBLE = lxw_format_borders.LXW_BORDER_DOUBLE;
1523     enum LXW_BORDER_HAIR = lxw_format_borders.LXW_BORDER_HAIR;
1524     enum LXW_BORDER_MEDIUM_DASHED = lxw_format_borders.LXW_BORDER_MEDIUM_DASHED;
1525     enum LXW_BORDER_DASH_DOT = lxw_format_borders.LXW_BORDER_DASH_DOT;
1526     enum LXW_BORDER_MEDIUM_DASH_DOT = lxw_format_borders.LXW_BORDER_MEDIUM_DASH_DOT;
1527     enum LXW_BORDER_DASH_DOT_DOT = lxw_format_borders.LXW_BORDER_DASH_DOT_DOT;
1528     enum LXW_BORDER_MEDIUM_DASH_DOT_DOT = lxw_format_borders.LXW_BORDER_MEDIUM_DASH_DOT_DOT;
1529     enum LXW_BORDER_SLANT_DASH_DOT = lxw_format_borders.LXW_BORDER_SLANT_DASH_DOT;
1530     struct lxw_font
1531     {
1532         char[128] font_name;
1533         double font_size;
1534         ubyte bold;
1535         ubyte italic;
1536         ubyte underline;
1537         ubyte font_strikeout;
1538         ubyte font_outline;
1539         ubyte font_shadow;
1540         ubyte font_script;
1541         ubyte font_family;
1542         ubyte font_charset;
1543         ubyte font_condense;
1544         ubyte font_extend;
1545         int font_color;
1546     }
1547     struct lxw_border
1548     {
1549         ubyte bottom;
1550         ubyte diag_border;
1551         ubyte diag_type;
1552         ubyte left;
1553         ubyte right;
1554         ubyte top;
1555         int bottom_color;
1556         int diag_color;
1557         int left_color;
1558         int right_color;
1559         int top_color;
1560     }
1561     struct lxw_fill
1562     {
1563         int fg_color;
1564         int bg_color;
1565         ubyte pattern;
1566     }
1567     lxw_format* lxw_format_new() @nogc nothrow;
1568     void lxw_format_free(lxw_format*) @nogc nothrow;
1569     int lxw_format_get_xf_index(lxw_format*) @nogc nothrow;
1570     lxw_font* lxw_format_get_font_key(lxw_format*) @nogc nothrow;
1571     lxw_border* lxw_format_get_border_key(lxw_format*) @nogc nothrow;
1572     lxw_fill* lxw_format_get_fill_key(lxw_format*) @nogc nothrow;
1573     int lxw_format_check_color(int) @nogc nothrow;
1574     void format_set_font_name(lxw_format*, const(char)*) @nogc nothrow;
1575     void format_set_font_size(lxw_format*, double) @nogc nothrow;
1576     void format_set_font_color(lxw_format*, int) @nogc nothrow;
1577     void format_set_bold(lxw_format*) @nogc nothrow;
1578     void format_set_italic(lxw_format*) @nogc nothrow;
1579     void format_set_underline(lxw_format*, ubyte) @nogc nothrow;
1580     void format_set_font_strikeout(lxw_format*) @nogc nothrow;
1581     void format_set_font_script(lxw_format*, ubyte) @nogc nothrow;
1582     void format_set_num_format(lxw_format*, const(char)*) @nogc nothrow;
1583     void format_set_num_format_index(lxw_format*, ubyte) @nogc nothrow;
1584     void format_set_unlocked(lxw_format*) @nogc nothrow;
1585     void format_set_hidden(lxw_format*) @nogc nothrow;
1586     void format_set_align(lxw_format*, ubyte) @nogc nothrow;
1587     void format_set_text_wrap(lxw_format*) @nogc nothrow;
1588     void format_set_rotation(lxw_format*, short) @nogc nothrow;
1589     void format_set_indent(lxw_format*, ubyte) @nogc nothrow;
1590     void format_set_shrink(lxw_format*) @nogc nothrow;
1591     void format_set_pattern(lxw_format*, ubyte) @nogc nothrow;
1592     void format_set_bg_color(lxw_format*, int) @nogc nothrow;
1593     void format_set_fg_color(lxw_format*, int) @nogc nothrow;
1594     void format_set_border(lxw_format*, ubyte) @nogc nothrow;
1595     void format_set_bottom(lxw_format*, ubyte) @nogc nothrow;
1596     void format_set_top(lxw_format*, ubyte) @nogc nothrow;
1597     void format_set_left(lxw_format*, ubyte) @nogc nothrow;
1598     void format_set_right(lxw_format*, ubyte) @nogc nothrow;
1599     void format_set_border_color(lxw_format*, int) @nogc nothrow;
1600     void format_set_bottom_color(lxw_format*, int) @nogc nothrow;
1601     void format_set_top_color(lxw_format*, int) @nogc nothrow;
1602     void format_set_left_color(lxw_format*, int) @nogc nothrow;
1603     void format_set_right_color(lxw_format*, int) @nogc nothrow;
1604     void format_set_diag_type(lxw_format*, ubyte) @nogc nothrow;
1605     void format_set_diag_color(lxw_format*, int) @nogc nothrow;
1606     void format_set_diag_border(lxw_format*, ubyte) @nogc nothrow;
1607     void format_set_font_outline(lxw_format*) @nogc nothrow;
1608     void format_set_font_shadow(lxw_format*) @nogc nothrow;
1609     void format_set_font_family(lxw_format*, ubyte) @nogc nothrow;
1610     void format_set_font_charset(lxw_format*, ubyte) @nogc nothrow;
1611     void format_set_font_scheme(lxw_format*, const(char)*) @nogc nothrow;
1612     void format_set_font_condense(lxw_format*) @nogc nothrow;
1613     void format_set_font_extend(lxw_format*) @nogc nothrow;
1614     void format_set_reading_order(lxw_format*, ubyte) @nogc nothrow;
1615     void format_set_theme(lxw_format*, ubyte) @nogc nothrow;
1616     int deflateSetDictionary(z_stream_s*, const(ubyte)*, uint) @nogc nothrow;
1617     struct lxw_hash_element
1618     {
1619         void* key;
1620         void* value;
1621         static struct _Anonymous_12
1622         {
1623             lxw_hash_element* stqe_next;
1624         }
1625         _Anonymous_12 lxw_hash_order_pointers;
1626         static struct _Anonymous_13
1627         {
1628             lxw_hash_element* sle_next;
1629         }
1630         _Anonymous_13 lxw_hash_list_pointers;
1631     }
1632     struct lxw_hash_order_list
1633     {
1634         lxw_hash_element* stqh_first;
1635         lxw_hash_element** stqh_last;
1636     }
1637     struct lxw_hash_bucket_list
1638     {
1639         lxw_hash_element* slh_first;
1640     }
1641     struct lxw_hash_table
1642     {
1643         uint num_buckets;
1644         uint used_buckets;
1645         uint unique_count;
1646         ubyte free_key;
1647         ubyte free_value;
1648         lxw_hash_order_list* order_list;
1649         lxw_hash_bucket_list** buckets;
1650     }
1651     lxw_hash_element* lxw_hash_key_exists(lxw_hash_table*, void*, c_ulong) @nogc nothrow;
1652     lxw_hash_element* lxw_insert_hash_element(lxw_hash_table*, void*, void*, c_ulong) @nogc nothrow;
1653     lxw_hash_table* lxw_hash_new(uint, ubyte, ubyte) @nogc nothrow;
1654     void lxw_hash_free(lxw_hash_table*) @nogc nothrow;
1655     int inflateEnd(z_stream_s*) @nogc nothrow;
1656     struct lxw_packager
1657     {
1658         _IO_FILE* file;
1659         lxw_workbook* workbook;
1660         c_ulong buffer_size;
1661         void* zipfile;
1662         zip_fileinfo zipfile_info;
1663         char* filename;
1664         char* buffer;
1665         char* tmpdir;
1666         ubyte use_zip64;
1667     }
1668     lxw_packager* lxw_packager_new(const(char)*, char*, ubyte) @nogc nothrow;
1669     void lxw_packager_free(lxw_packager*) @nogc nothrow;
1670     lxw_error lxw_create_package(lxw_packager*) @nogc nothrow;
1671     struct lxw_rel_tuple
1672     {
1673         char* type;
1674         char* target;
1675         char* target_mode;
1676         static struct _Anonymous_14
1677         {
1678             lxw_rel_tuple* stqe_next;
1679         }
1680         _Anonymous_14 list_pointers;
1681     }
1682     struct lxw_relationships
1683     {
1684         _IO_FILE* file;
1685         uint rel_id;
1686         lxw_rel_tuples* relationships;
1687     }
1688     lxw_relationships* lxw_relationships_new() @nogc nothrow;
1689     void lxw_free_relationships(lxw_relationships*) @nogc nothrow;
1690     void lxw_relationships_assemble_xml_file(lxw_relationships*) @nogc nothrow;
1691     void lxw_add_document_relationship(lxw_relationships*, const(char)*, const(char)*) @nogc nothrow;
1692     void lxw_add_package_relationship(lxw_relationships*, const(char)*, const(char)*) @nogc nothrow;
1693     void lxw_add_ms_package_relationship(lxw_relationships*, const(char)*, const(char)*) @nogc nothrow;
1694     void lxw_add_worksheet_relationship(lxw_relationships*, const(char)*, const(char)*, const(char)*) @nogc nothrow;
1695     struct sst_element
1696     {
1697         uint index;
1698         char* string;
1699         ubyte is_rich_string;
1700         static struct _Anonymous_15
1701         {
1702             sst_element* stqe_next;
1703         }
1704         _Anonymous_15 sst_order_pointers;
1705         static struct _Anonymous_16
1706         {
1707             sst_element* rbe_left;
1708             sst_element* rbe_right;
1709             sst_element* rbe_parent;
1710             int rbe_color;
1711         }
1712         _Anonymous_16 sst_tree_pointers;
1713     }
1714     struct sst_rb_tree
1715     {
1716         sst_element* rbh_root;
1717     }
1718     struct sst_order_list
1719     {
1720         sst_element* stqh_first;
1721         sst_element** stqh_last;
1722     }
1723     int inflate(z_stream_s*, int) @nogc nothrow;
1724     struct lxw_sst
1725     {
1726         _IO_FILE* file;
1727         uint string_count;
1728         uint unique_count;
1729         sst_order_list* order_list;
1730         sst_rb_tree* rb_tree;
1731     }
1732     lxw_sst* lxw_sst_new() @nogc nothrow;
1733     void lxw_sst_free(lxw_sst*) @nogc nothrow;
1734     sst_element* lxw_get_sst_index(lxw_sst*, const(char)*, ubyte) @nogc nothrow;
1735     void lxw_sst_assemble_xml_file(lxw_sst*) @nogc nothrow;
1736     struct lxw_styles
1737     {
1738         _IO_FILE* file;
1739         uint font_count;
1740         uint xf_count;
1741         uint dxf_count;
1742         uint num_format_count;
1743         uint border_count;
1744         uint fill_count;
1745         lxw_formats* xf_formats;
1746         lxw_formats* dxf_formats;
1747     }
1748     lxw_styles* lxw_styles_new() @nogc nothrow;
1749     void lxw_styles_free(lxw_styles*) @nogc nothrow;
1750     void lxw_styles_assemble_xml_file(lxw_styles*) @nogc nothrow;
1751     void lxw_styles_write_string_fragment(lxw_styles*, char*) @nogc nothrow;
1752     void lxw_styles_write_rich_font(lxw_styles*, lxw_format*) @nogc nothrow;
1753     struct lxw_theme
1754     {
1755         _IO_FILE* file;
1756     }
1757     lxw_theme* lxw_theme_new() @nogc nothrow;
1758     void lxw_theme_free(lxw_theme*) @nogc nothrow;
1759     void lxw_theme_xml_declaration(lxw_theme*) @nogc nothrow;
1760     void lxw_theme_assemble_xml_file(lxw_theme*) @nogc nothrow;
1761     int deflateEnd(z_stream_s*) @nogc nothrow;
1762     alias ZPOS64_T = ulong;
1763     int deflate(z_stream_s*, int) @nogc nothrow;
1764     const(char)* zlibVersion() @nogc nothrow;
1765     alias gz_headerp = gz_header_s*;
1766     struct gz_header_s
1767     {
1768         int text;
1769         c_ulong time;
1770         int xflags;
1771         int os;
1772         ubyte* extra;
1773         uint extra_len;
1774         uint extra_max;
1775         ubyte* name;
1776         uint name_max;
1777         ubyte* comment;
1778         uint comm_max;
1779         int hcrc;
1780         int done;
1781     }
1782     alias gz_header = gz_header_s;
1783     alias open_file_func = void* function(void*, const(char)*, int);
1784     alias read_file_func = c_ulong function(void*, void*, void*, c_ulong);
1785     alias write_file_func = c_ulong function(void*, void*, const(void)*, c_ulong);
1786     alias close_file_func = int function(void*, void*);
1787     alias testerror_file_func = int function(void*, void*);
1788     alias tell_file_func = c_long function(void*, void*);
1789     alias seek_file_func = c_long function(void*, void*, c_ulong, int);
1790     alias zlib_filefunc_def = zlib_filefunc_def_s;
1791     struct zlib_filefunc_def_s
1792     {
1793         void* function(void*, const(char)*, int) zopen_file;
1794         c_ulong function(void*, void*, void*, c_ulong) zread_file;
1795         c_ulong function(void*, void*, const(void)*, c_ulong) zwrite_file;
1796         c_long function(void*, void*) ztell_file;
1797         c_long function(void*, void*, c_ulong, int) zseek_file;
1798         int function(void*, void*) zclose_file;
1799         int function(void*, void*) zerror_file;
1800         void* opaque;
1801     }
1802     alias tell64_file_func = ulong function(void*, void*);
1803     alias seek64_file_func = c_long function(void*, void*, ulong, int);
1804     alias open64_file_func = void* function(void*, const(void)*, int);
1805     alias zlib_filefunc64_def = zlib_filefunc64_def_s;
1806     struct zlib_filefunc64_def_s
1807     {
1808         void* function(void*, const(void)*, int) zopen64_file;
1809         c_ulong function(void*, void*, void*, c_ulong) zread_file;
1810         c_ulong function(void*, void*, const(void)*, c_ulong) zwrite_file;
1811         ulong function(void*, void*) ztell64_file;
1812         c_long function(void*, void*, ulong, int) zseek64_file;
1813         int function(void*, void*) zclose_file;
1814         int function(void*, void*) zerror_file;
1815         void* opaque;
1816     }
1817     void fill_fopen64_filefunc(zlib_filefunc64_def_s*) @nogc nothrow;
1818     void fill_fopen_filefunc(zlib_filefunc_def_s*) @nogc nothrow;
1819     alias zlib_filefunc64_32_def = zlib_filefunc64_32_def_s;
1820     struct zlib_filefunc64_32_def_s
1821     {
1822         zlib_filefunc64_def_s zfile_func64;
1823         void* function(void*, const(char)*, int) zopen32_file;
1824         c_long function(void*, void*) ztell32_file;
1825         c_long function(void*, void*, c_ulong, int) zseek32_file;
1826     }
1827     alias z_streamp = z_stream_s*;
1828     void* call_zopen64(const(zlib_filefunc64_32_def_s)*, const(void)*, int) @nogc nothrow;
1829     c_long call_zseek64(const(zlib_filefunc64_32_def_s)*, void*, ulong, int) @nogc nothrow;
1830     ulong call_ztell64(const(zlib_filefunc64_32_def_s)*, void*) @nogc nothrow;
1831     void fill_zlib_filefunc64_32_def_from_filefunc32(zlib_filefunc64_32_def_s*, const(zlib_filefunc_def_s)*) @nogc nothrow;
1832     struct z_stream_s
1833     {
1834         ubyte* next_in;
1835         uint avail_in;
1836         c_ulong total_in;
1837         ubyte* next_out;
1838         uint avail_out;
1839         c_ulong total_out;
1840         char* msg;
1841         internal_state* state;
1842         void* function(void*, uint, uint) zalloc;
1843         void function(void*, void*) zfree;
1844         void* opaque;
1845         int data_type;
1846         c_ulong adler;
1847         c_ulong reserved;
1848     }
1849     alias z_stream = z_stream_s;
1850     struct internal_state;
1851     alias free_func = void function(void*, void*);
1852     alias alloc_func = void* function(void*, uint, uint);
1853     alias z_crc_t = uint;
1854     alias voidp = void*;
1855     alias voidpf = void*;
1856     alias voidpc = const(void)*;
1857     alias uLongf = c_ulong;
1858     alias uIntf = uint;
1859     alias intf = int;
1860     alias charf = char;
1861     alias Bytef = ubyte;
1862     alias uLong = c_ulong;
1863     alias uInt = uint;
1864     alias Byte = ubyte;
1865     alias z_size_t = c_ulong;
1866     int getentropy(void*, c_ulong) @nogc nothrow;
1867     char* crypt(const(char)*, const(char)*) @nogc nothrow;
1868     int fdatasync(int) @nogc nothrow;
1869     int lockf(int, int, c_long) @nogc nothrow;
1870     c_long syscall(c_long, ...) @nogc nothrow;
1871     void* sbrk(c_long) @nogc nothrow;
1872     int brk(void*) @nogc nothrow;
1873     int ftruncate(int, c_long) @nogc nothrow;
1874     int truncate(const(char)*, c_long) @nogc nothrow;
1875     int getdtablesize() @nogc nothrow;
1876     int getpagesize() @nogc nothrow;
1877     void sync() @nogc nothrow;
1878     c_long gethostid() @nogc nothrow;
1879     int fsync(int) @nogc nothrow;
1880     char* getpass(const(char)*) @nogc nothrow;
1881     int chroot(const(char)*) @nogc nothrow;
1882     int daemon(int, int) @nogc nothrow;
1883     void setusershell() @nogc nothrow;
1884     void endusershell() @nogc nothrow;
1885     char* getusershell() @nogc nothrow;
1886     int acct(const(char)*) @nogc nothrow;
1887     int profil(ushort*, c_ulong, c_ulong, uint) @nogc nothrow;
1888     int revoke(const(char)*) @nogc nothrow;
1889     int vhangup() @nogc nothrow;
1890     int setdomainname(const(char)*, c_ulong) @nogc nothrow;
1891     int getdomainname(char*, c_ulong) @nogc nothrow;
1892     int sethostid(c_long) @nogc nothrow;
1893     int sethostname(const(char)*, c_ulong) @nogc nothrow;
1894     int gethostname(char*, c_ulong) @nogc nothrow;
1895     int setlogin(const(char)*) @nogc nothrow;
1896     int getlogin_r(char*, c_ulong) @nogc nothrow;
1897     char* getlogin() @nogc nothrow;
1898     int tcsetpgrp(int, int) @nogc nothrow;
1899     int tcgetpgrp(int) @nogc nothrow;
1900     int rmdir(const(char)*) @nogc nothrow;
1901     int unlinkat(int, const(char)*, int) @nogc nothrow;
1902     alias zipFile = void*;
1903     int unlink(const(char)*) @nogc nothrow;
1904     c_long readlinkat(int, const(char)*, char*, c_ulong) @nogc nothrow;
1905     alias tm_zip = tm_zip_s;
1906     struct tm_zip_s
1907     {
1908         uint tm_sec;
1909         uint tm_min;
1910         uint tm_hour;
1911         uint tm_mday;
1912         uint tm_mon;
1913         uint tm_year;
1914     }
1915     struct zip_fileinfo
1916     {
1917         tm_zip_s tmz_date;
1918         c_ulong dosDate;
1919         c_ulong internal_fa;
1920         c_ulong external_fa;
1921     }
1922     alias zipcharpc = const(char)*;
1923     int symlinkat(const(char)*, int, const(char)*) @nogc nothrow;
1924     void* zipOpen(const(char)*, int) @nogc nothrow;
1925     void* zipOpen64(const(void)*, int) @nogc nothrow;
1926     void* zipOpen2(const(char)*, int, const(char)**, zlib_filefunc_def_s*) @nogc nothrow;
1927     void* zipOpen2_64(const(void)*, int, const(char)**, zlib_filefunc64_def_s*) @nogc nothrow;
1928     int zipOpenNewFileInZip(void*, const(char)*, const(zip_fileinfo)*, const(void)*, uint, const(void)*, uint, const(char)*, int, int) @nogc nothrow;
1929     int zipOpenNewFileInZip64(void*, const(char)*, const(zip_fileinfo)*, const(void)*, uint, const(void)*, uint, const(char)*, int, int, int) @nogc nothrow;
1930     int zipOpenNewFileInZip2(void*, const(char)*, const(zip_fileinfo)*, const(void)*, uint, const(void)*, uint, const(char)*, int, int, int) @nogc nothrow;
1931     int zipOpenNewFileInZip2_64(void*, const(char)*, const(zip_fileinfo)*, const(void)*, uint, const(void)*, uint, const(char)*, int, int, int, int) @nogc nothrow;
1932     int zipOpenNewFileInZip3(void*, const(char)*, const(zip_fileinfo)*, const(void)*, uint, const(void)*, uint, const(char)*, int, int, int, int, int, int, const(char)*, c_ulong) @nogc nothrow;
1933     int zipOpenNewFileInZip3_64(void*, const(char)*, const(zip_fileinfo)*, const(void)*, uint, const(void)*, uint, const(char)*, int, int, int, int, int, int, const(char)*, c_ulong, int) @nogc nothrow;
1934     int zipOpenNewFileInZip4(void*, const(char)*, const(zip_fileinfo)*, const(void)*, uint, const(void)*, uint, const(char)*, int, int, int, int, int, int, const(char)*, c_ulong, c_ulong, c_ulong) @nogc nothrow;
1935     int zipOpenNewFileInZip4_64(void*, const(char)*, const(zip_fileinfo)*, const(void)*, uint, const(void)*, uint, const(char)*, int, int, int, int, int, int, const(char)*, c_ulong, c_ulong, c_ulong, int) @nogc nothrow;
1936     int zipWriteInFileInZip(void*, const(void)*, uint) @nogc nothrow;
1937     int zipCloseFileInZip(void*) @nogc nothrow;
1938     int zipCloseFileInZipRaw(void*, c_ulong, c_ulong) @nogc nothrow;
1939     int zipCloseFileInZipRaw64(void*, ulong, c_ulong) @nogc nothrow;
1940     int zipClose(void*, const(char)*) @nogc nothrow;
1941     int zipRemoveExtraInfoBlock(char*, int*, short) @nogc nothrow;
1942     c_long readlink(const(char)*, char*, c_ulong) @nogc nothrow;
1943     const(char)* lxw_version() @nogc nothrow;
1944     char* lxw_strerror(lxw_error) @nogc nothrow;
1945     char* lxw_quote_sheetname(const(char)*) @nogc nothrow;
1946     void lxw_col_to_name(char*, ushort, ubyte) @nogc nothrow;
1947     void lxw_rowcol_to_cell(char*, uint, ushort) @nogc nothrow;
1948     void lxw_rowcol_to_cell_abs(char*, uint, ushort, ubyte, ubyte) @nogc nothrow;
1949     void lxw_rowcol_to_range(char*, uint, ushort, uint, ushort) @nogc nothrow;
1950     void lxw_rowcol_to_range_abs(char*, uint, ushort, uint, ushort) @nogc nothrow;
1951     void lxw_rowcol_to_formula_abs(char*, const(char)*, uint, ushort, uint, ushort) @nogc nothrow;
1952     uint lxw_name_to_row(const(char)*) @nogc nothrow;
1953     ushort lxw_name_to_col(const(char)*) @nogc nothrow;
1954     uint lxw_name_to_row_2(const(char)*) @nogc nothrow;
1955     ushort lxw_name_to_col_2(const(char)*) @nogc nothrow;
1956     double lxw_datetime_to_excel_date(lxw_datetime*, ubyte) @nogc nothrow;
1957     char* lxw_strdup(const(char)*) @nogc nothrow;
1958     char* lxw_strdup_formula(const(char)*) @nogc nothrow;
1959     c_ulong lxw_utf8_strlen(const(char)*) @nogc nothrow;
1960     void lxw_str_tolower(char*) @nogc nothrow;
1961     _IO_FILE* lxw_tmpfile(char*) @nogc nothrow;
1962     ushort lxw_hash_password(const(char)*) @nogc nothrow;
1963     int symlink(const(char)*, const(char)*) @nogc nothrow;
1964     struct lxw_worksheet_name
1965     {
1966         const(char)* name;
1967         lxw_worksheet* worksheet;
1968         static struct _Anonymous_17
1969         {
1970             lxw_worksheet_name* rbe_left;
1971             lxw_worksheet_name* rbe_right;
1972             lxw_worksheet_name* rbe_parent;
1973             int rbe_color;
1974         }
1975         _Anonymous_17 tree_pointers;
1976     }
1977     struct lxw_worksheet_names
1978     {
1979         lxw_worksheet_name* rbh_root;
1980     }
1981     struct lxw_chartsheet_name
1982     {
1983         const(char)* name;
1984         lxw_chartsheet* chartsheet;
1985         static struct _Anonymous_18
1986         {
1987             lxw_chartsheet_name* rbe_left;
1988             lxw_chartsheet_name* rbe_right;
1989             lxw_chartsheet_name* rbe_parent;
1990             int rbe_color;
1991         }
1992         _Anonymous_18 tree_pointers;
1993     }
1994     struct lxw_chartsheet_names
1995     {
1996         lxw_chartsheet_name* rbh_root;
1997     }
1998     struct lxw_sheet
1999     {
2000         ubyte is_chartsheet;
2001         static union _Anonymous_19
2002         {
2003             lxw_worksheet* worksheet;
2004             lxw_chartsheet* chartsheet;
2005         }
2006         _Anonymous_19 u;
2007         static struct _Anonymous_20
2008         {
2009             lxw_sheet* stqe_next;
2010         }
2011         _Anonymous_20 list_pointers;
2012     }
2013     struct lxw_sheets
2014     {
2015         lxw_sheet* stqh_first;
2016         lxw_sheet** stqh_last;
2017     }
2018     struct lxw_worksheets
2019     {
2020         lxw_worksheet* stqh_first;
2021         lxw_worksheet** stqh_last;
2022     }
2023     struct lxw_chartsheets
2024     {
2025         lxw_chartsheet* stqh_first;
2026         lxw_chartsheet** stqh_last;
2027     }
2028     struct lxw_charts
2029     {
2030         lxw_chart* stqh_first;
2031         lxw_chart** stqh_last;
2032     }
2033     struct lxw_defined_names
2034     {
2035         lxw_defined_name* tqh_first;
2036         lxw_defined_name** tqh_last;
2037     }
2038     struct lxw_defined_name
2039     {
2040         short index;
2041         ubyte hidden;
2042         char[128] name;
2043         char[128] app_name;
2044         char[128] formula;
2045         char[128] normalised_name;
2046         char[128] normalised_sheetname;
2047         static struct _Anonymous_21
2048         {
2049             lxw_defined_name* tqe_next;
2050             lxw_defined_name** tqe_prev;
2051         }
2052         _Anonymous_21 list_pointers;
2053     }
2054     struct lxw_doc_properties
2055     {
2056         char* title;
2057         char* subject;
2058         char* author;
2059         char* manager;
2060         char* company;
2061         char* category;
2062         char* keywords;
2063         char* comments;
2064         char* status;
2065         char* hyperlink_base;
2066         c_long created;
2067     }
2068     struct lxw_workbook_options
2069     {
2070         ubyte constant_memory;
2071         char* tmpdir;
2072         ubyte use_zip64;
2073     }
2074     struct lxw_workbook
2075     {
2076         _IO_FILE* file;
2077         lxw_sheets* sheets;
2078         lxw_worksheets* worksheets;
2079         lxw_chartsheets* chartsheets;
2080         lxw_worksheet_names* worksheet_names;
2081         lxw_chartsheet_names* chartsheet_names;
2082         lxw_charts* charts;
2083         lxw_charts* ordered_charts;
2084         lxw_formats* formats;
2085         lxw_defined_names* defined_names;
2086         lxw_sst* sst;
2087         lxw_doc_properties* properties;
2088         lxw_custom_properties* custom_properties;
2089         char* filename;
2090         lxw_workbook_options options;
2091         ushort num_sheets;
2092         ushort num_worksheets;
2093         ushort num_chartsheets;
2094         ushort first_sheet;
2095         ushort active_sheet;
2096         ushort num_xf_formats;
2097         ushort num_format_count;
2098         ushort drawing_count;
2099         ushort font_count;
2100         ushort border_count;
2101         ushort fill_count;
2102         ubyte optimize;
2103         ubyte has_png;
2104         ubyte has_jpeg;
2105         ubyte has_bmp;
2106         lxw_hash_table* used_xf_formats;
2107         char* vba_project;
2108         char* vba_codename;
2109     }
2110     lxw_workbook* workbook_new(const(char)*) @nogc nothrow;
2111     lxw_workbook* workbook_new_opt(const(char)*, lxw_workbook_options*) @nogc nothrow;
2112     lxw_workbook* new_workbook(const(char)*) @nogc nothrow;
2113     lxw_workbook* new_workbook_opt(const(char)*, lxw_workbook_options*) @nogc nothrow;
2114     lxw_worksheet* workbook_add_worksheet(lxw_workbook*, const(char)*) @nogc nothrow;
2115     lxw_chartsheet* workbook_add_chartsheet(lxw_workbook*, const(char)*) @nogc nothrow;
2116     lxw_format* workbook_add_format(lxw_workbook*) @nogc nothrow;
2117     lxw_chart* workbook_add_chart(lxw_workbook*, ubyte) @nogc nothrow;
2118     lxw_error workbook_close(lxw_workbook*) @nogc nothrow;
2119     lxw_error workbook_set_properties(lxw_workbook*, lxw_doc_properties*) @nogc nothrow;
2120     lxw_error workbook_set_custom_property_string(lxw_workbook*, const(char)*, const(char)*) @nogc nothrow;
2121     lxw_error workbook_set_custom_property_number(lxw_workbook*, const(char)*, double) @nogc nothrow;
2122     lxw_error workbook_set_custom_property_integer(lxw_workbook*, const(char)*, int) @nogc nothrow;
2123     lxw_error workbook_set_custom_property_boolean(lxw_workbook*, const(char)*, ubyte) @nogc nothrow;
2124     lxw_error workbook_set_custom_property_datetime(lxw_workbook*, const(char)*, lxw_datetime*) @nogc nothrow;
2125     lxw_error workbook_define_name(lxw_workbook*, const(char)*, const(char)*) @nogc nothrow;
2126     lxw_worksheet* workbook_get_worksheet_by_name(lxw_workbook*, const(char)*) @nogc nothrow;
2127     lxw_chartsheet* workbook_get_chartsheet_by_name(lxw_workbook*, const(char)*) @nogc nothrow;
2128     lxw_error workbook_validate_sheet_name(lxw_workbook*, const(char)*) @nogc nothrow;
2129     lxw_error workbook_add_vba_project(lxw_workbook*, const(char)*) @nogc nothrow;
2130     lxw_error workbook_set_vba_name(lxw_workbook*, const(char)*) @nogc nothrow;
2131     void lxw_workbook_free(lxw_workbook*) @nogc nothrow;
2132     void lxw_workbook_assemble_xml_file(lxw_workbook*) @nogc nothrow;
2133     void lxw_workbook_set_default_xf_indices(lxw_workbook*) @nogc nothrow;
2134     int linkat(int, const(char)*, int, const(char)*, int) @nogc nothrow;
2135     int link(const(char)*, const(char)*) @nogc nothrow;
2136     int ttyslot() @nogc nothrow;
2137     enum lxw_gridlines
2138     {
2139         LXW_HIDE_ALL_GRIDLINES = 0,
2140         LXW_SHOW_SCREEN_GRIDLINES = 1,
2141         LXW_SHOW_PRINT_GRIDLINES = 2,
2142         LXW_SHOW_ALL_GRIDLINES = 3,
2143     }
2144     enum LXW_HIDE_ALL_GRIDLINES = lxw_gridlines.LXW_HIDE_ALL_GRIDLINES;
2145     enum LXW_SHOW_SCREEN_GRIDLINES = lxw_gridlines.LXW_SHOW_SCREEN_GRIDLINES;
2146     enum LXW_SHOW_PRINT_GRIDLINES = lxw_gridlines.LXW_SHOW_PRINT_GRIDLINES;
2147     enum LXW_SHOW_ALL_GRIDLINES = lxw_gridlines.LXW_SHOW_ALL_GRIDLINES;
2148     enum lxw_validation_boolean
2149     {
2150         LXW_VALIDATION_DEFAULT = 0,
2151         LXW_VALIDATION_OFF = 1,
2152         LXW_VALIDATION_ON = 2,
2153     }
2154     enum LXW_VALIDATION_DEFAULT = lxw_validation_boolean.LXW_VALIDATION_DEFAULT;
2155     enum LXW_VALIDATION_OFF = lxw_validation_boolean.LXW_VALIDATION_OFF;
2156     enum LXW_VALIDATION_ON = lxw_validation_boolean.LXW_VALIDATION_ON;
2157     enum lxw_validation_types
2158     {
2159         LXW_VALIDATION_TYPE_NONE = 0,
2160         LXW_VALIDATION_TYPE_INTEGER = 1,
2161         LXW_VALIDATION_TYPE_INTEGER_FORMULA = 2,
2162         LXW_VALIDATION_TYPE_DECIMAL = 3,
2163         LXW_VALIDATION_TYPE_DECIMAL_FORMULA = 4,
2164         LXW_VALIDATION_TYPE_LIST = 5,
2165         LXW_VALIDATION_TYPE_LIST_FORMULA = 6,
2166         LXW_VALIDATION_TYPE_DATE = 7,
2167         LXW_VALIDATION_TYPE_DATE_FORMULA = 8,
2168         LXW_VALIDATION_TYPE_DATE_NUMBER = 9,
2169         LXW_VALIDATION_TYPE_TIME = 10,
2170         LXW_VALIDATION_TYPE_TIME_FORMULA = 11,
2171         LXW_VALIDATION_TYPE_TIME_NUMBER = 12,
2172         LXW_VALIDATION_TYPE_LENGTH = 13,
2173         LXW_VALIDATION_TYPE_LENGTH_FORMULA = 14,
2174         LXW_VALIDATION_TYPE_CUSTOM_FORMULA = 15,
2175         LXW_VALIDATION_TYPE_ANY = 16,
2176     }
2177     enum LXW_VALIDATION_TYPE_NONE = lxw_validation_types.LXW_VALIDATION_TYPE_NONE;
2178     enum LXW_VALIDATION_TYPE_INTEGER = lxw_validation_types.LXW_VALIDATION_TYPE_INTEGER;
2179     enum LXW_VALIDATION_TYPE_INTEGER_FORMULA = lxw_validation_types.LXW_VALIDATION_TYPE_INTEGER_FORMULA;
2180     enum LXW_VALIDATION_TYPE_DECIMAL = lxw_validation_types.LXW_VALIDATION_TYPE_DECIMAL;
2181     enum LXW_VALIDATION_TYPE_DECIMAL_FORMULA = lxw_validation_types.LXW_VALIDATION_TYPE_DECIMAL_FORMULA;
2182     enum LXW_VALIDATION_TYPE_LIST = lxw_validation_types.LXW_VALIDATION_TYPE_LIST;
2183     enum LXW_VALIDATION_TYPE_LIST_FORMULA = lxw_validation_types.LXW_VALIDATION_TYPE_LIST_FORMULA;
2184     enum LXW_VALIDATION_TYPE_DATE = lxw_validation_types.LXW_VALIDATION_TYPE_DATE;
2185     enum LXW_VALIDATION_TYPE_DATE_FORMULA = lxw_validation_types.LXW_VALIDATION_TYPE_DATE_FORMULA;
2186     enum LXW_VALIDATION_TYPE_DATE_NUMBER = lxw_validation_types.LXW_VALIDATION_TYPE_DATE_NUMBER;
2187     enum LXW_VALIDATION_TYPE_TIME = lxw_validation_types.LXW_VALIDATION_TYPE_TIME;
2188     enum LXW_VALIDATION_TYPE_TIME_FORMULA = lxw_validation_types.LXW_VALIDATION_TYPE_TIME_FORMULA;
2189     enum LXW_VALIDATION_TYPE_TIME_NUMBER = lxw_validation_types.LXW_VALIDATION_TYPE_TIME_NUMBER;
2190     enum LXW_VALIDATION_TYPE_LENGTH = lxw_validation_types.LXW_VALIDATION_TYPE_LENGTH;
2191     enum LXW_VALIDATION_TYPE_LENGTH_FORMULA = lxw_validation_types.LXW_VALIDATION_TYPE_LENGTH_FORMULA;
2192     enum LXW_VALIDATION_TYPE_CUSTOM_FORMULA = lxw_validation_types.LXW_VALIDATION_TYPE_CUSTOM_FORMULA;
2193     enum LXW_VALIDATION_TYPE_ANY = lxw_validation_types.LXW_VALIDATION_TYPE_ANY;
2194     enum lxw_validation_criteria
2195     {
2196         LXW_VALIDATION_CRITERIA_NONE = 0,
2197         LXW_VALIDATION_CRITERIA_BETWEEN = 1,
2198         LXW_VALIDATION_CRITERIA_NOT_BETWEEN = 2,
2199         LXW_VALIDATION_CRITERIA_EQUAL_TO = 3,
2200         LXW_VALIDATION_CRITERIA_NOT_EQUAL_TO = 4,
2201         LXW_VALIDATION_CRITERIA_GREATER_THAN = 5,
2202         LXW_VALIDATION_CRITERIA_LESS_THAN = 6,
2203         LXW_VALIDATION_CRITERIA_GREATER_THAN_OR_EQUAL_TO = 7,
2204         LXW_VALIDATION_CRITERIA_LESS_THAN_OR_EQUAL_TO = 8,
2205     }
2206     enum LXW_VALIDATION_CRITERIA_NONE = lxw_validation_criteria.LXW_VALIDATION_CRITERIA_NONE;
2207     enum LXW_VALIDATION_CRITERIA_BETWEEN = lxw_validation_criteria.LXW_VALIDATION_CRITERIA_BETWEEN;
2208     enum LXW_VALIDATION_CRITERIA_NOT_BETWEEN = lxw_validation_criteria.LXW_VALIDATION_CRITERIA_NOT_BETWEEN;
2209     enum LXW_VALIDATION_CRITERIA_EQUAL_TO = lxw_validation_criteria.LXW_VALIDATION_CRITERIA_EQUAL_TO;
2210     enum LXW_VALIDATION_CRITERIA_NOT_EQUAL_TO = lxw_validation_criteria.LXW_VALIDATION_CRITERIA_NOT_EQUAL_TO;
2211     enum LXW_VALIDATION_CRITERIA_GREATER_THAN = lxw_validation_criteria.LXW_VALIDATION_CRITERIA_GREATER_THAN;
2212     enum LXW_VALIDATION_CRITERIA_LESS_THAN = lxw_validation_criteria.LXW_VALIDATION_CRITERIA_LESS_THAN;
2213     enum LXW_VALIDATION_CRITERIA_GREATER_THAN_OR_EQUAL_TO = lxw_validation_criteria.LXW_VALIDATION_CRITERIA_GREATER_THAN_OR_EQUAL_TO;
2214     enum LXW_VALIDATION_CRITERIA_LESS_THAN_OR_EQUAL_TO = lxw_validation_criteria.LXW_VALIDATION_CRITERIA_LESS_THAN_OR_EQUAL_TO;
2215     enum lxw_validation_error_types
2216     {
2217         LXW_VALIDATION_ERROR_TYPE_STOP = 0,
2218         LXW_VALIDATION_ERROR_TYPE_WARNING = 1,
2219         LXW_VALIDATION_ERROR_TYPE_INFORMATION = 2,
2220     }
2221     enum LXW_VALIDATION_ERROR_TYPE_STOP = lxw_validation_error_types.LXW_VALIDATION_ERROR_TYPE_STOP;
2222     enum LXW_VALIDATION_ERROR_TYPE_WARNING = lxw_validation_error_types.LXW_VALIDATION_ERROR_TYPE_WARNING;
2223     enum LXW_VALIDATION_ERROR_TYPE_INFORMATION = lxw_validation_error_types.LXW_VALIDATION_ERROR_TYPE_INFORMATION;
2224     enum cell_types
2225     {
2226         NUMBER_CELL = 1,
2227         STRING_CELL = 2,
2228         INLINE_STRING_CELL = 3,
2229         INLINE_RICH_STRING_CELL = 4,
2230         FORMULA_CELL = 5,
2231         ARRAY_FORMULA_CELL = 6,
2232         BLANK_CELL = 7,
2233         BOOLEAN_CELL = 8,
2234         HYPERLINK_URL = 9,
2235         HYPERLINK_INTERNAL = 10,
2236         HYPERLINK_EXTERNAL = 11,
2237     }
2238     enum NUMBER_CELL = cell_types.NUMBER_CELL;
2239     enum STRING_CELL = cell_types.STRING_CELL;
2240     enum INLINE_STRING_CELL = cell_types.INLINE_STRING_CELL;
2241     enum INLINE_RICH_STRING_CELL = cell_types.INLINE_RICH_STRING_CELL;
2242     enum FORMULA_CELL = cell_types.FORMULA_CELL;
2243     enum ARRAY_FORMULA_CELL = cell_types.ARRAY_FORMULA_CELL;
2244     enum BLANK_CELL = cell_types.BLANK_CELL;
2245     enum BOOLEAN_CELL = cell_types.BOOLEAN_CELL;
2246     enum HYPERLINK_URL = cell_types.HYPERLINK_URL;
2247     enum HYPERLINK_INTERNAL = cell_types.HYPERLINK_INTERNAL;
2248     enum HYPERLINK_EXTERNAL = cell_types.HYPERLINK_EXTERNAL;
2249     enum pane_types
2250     {
2251         NO_PANES = 0,
2252         FREEZE_PANES = 1,
2253         SPLIT_PANES = 2,
2254         FREEZE_SPLIT_PANES = 3,
2255     }
2256     enum NO_PANES = pane_types.NO_PANES;
2257     enum FREEZE_PANES = pane_types.FREEZE_PANES;
2258     enum SPLIT_PANES = pane_types.SPLIT_PANES;
2259     enum FREEZE_SPLIT_PANES = pane_types.FREEZE_SPLIT_PANES;
2260     struct lxw_cell
2261     {
2262         uint row_num;
2263         ushort col_num;
2264         cell_types type;
2265         lxw_format* format;
2266         static union _Anonymous_22
2267         {
2268             double number;
2269             int string_id;
2270             char* string;
2271         }
2272         _Anonymous_22 u;
2273         double formula_result;
2274         char* user_data1;
2275         char* user_data2;
2276         char* sst_string;
2277         static struct _Anonymous_23
2278         {
2279             lxw_cell* rbe_left;
2280             lxw_cell* rbe_right;
2281             lxw_cell* rbe_parent;
2282             int rbe_color;
2283         }
2284         _Anonymous_23 tree_pointers;
2285     }
2286     struct lxw_table_cells
2287     {
2288         lxw_cell* rbh_root;
2289     }
2290     struct lxw_table_rows
2291     {
2292         lxw_row* rbh_root;
2293         lxw_row* cached_row;
2294         uint cached_row_num;
2295     }
2296     struct lxw_row
2297     {
2298         uint row_num;
2299         double height;
2300         lxw_format* format;
2301         ubyte hidden;
2302         ubyte level;
2303         ubyte collapsed;
2304         ubyte row_changed;
2305         ubyte data_changed;
2306         ubyte height_changed;
2307         lxw_table_cells* cells;
2308         static struct _Anonymous_24
2309         {
2310             lxw_row* rbe_left;
2311             lxw_row* rbe_right;
2312             lxw_row* rbe_parent;
2313             int rbe_color;
2314         }
2315         _Anonymous_24 tree_pointers;
2316     }
2317     int isatty(int) @nogc nothrow;
2318     struct lxw_merged_range
2319     {
2320         uint first_row;
2321         uint last_row;
2322         ushort first_col;
2323         ushort last_col;
2324         static struct _Anonymous_25
2325         {
2326             lxw_merged_range* stqe_next;
2327         }
2328         _Anonymous_25 list_pointers;
2329     }
2330     struct lxw_merged_ranges
2331     {
2332         lxw_merged_range* stqh_first;
2333         lxw_merged_range** stqh_last;
2334     }
2335     struct lxw_selection
2336     {
2337         char[12] pane;
2338         char[28] active_cell;
2339         char[28] sqref;
2340         static struct _Anonymous_26
2341         {
2342             lxw_selection* stqe_next;
2343         }
2344         _Anonymous_26 list_pointers;
2345     }
2346     struct lxw_selections
2347     {
2348         lxw_selection* stqh_first;
2349         lxw_selection** stqh_last;
2350     }
2351     struct lxw_data_validations
2352     {
2353         lxw_data_validation* stqh_first;
2354         lxw_data_validation** stqh_last;
2355     }
2356     struct lxw_data_validation
2357     {
2358         ubyte validate;
2359         ubyte criteria;
2360         ubyte ignore_blank;
2361         ubyte show_input;
2362         ubyte show_error;
2363         ubyte error_type;
2364         ubyte dropdown;
2365         ubyte is_between;
2366         double value_number;
2367         char* value_formula;
2368         char** value_list;
2369         lxw_datetime value_datetime;
2370         double minimum_number;
2371         char* minimum_formula;
2372         lxw_datetime minimum_datetime;
2373         double maximum_number;
2374         char* maximum_formula;
2375         lxw_datetime maximum_datetime;
2376         char* input_title;
2377         char* input_message;
2378         char* error_title;
2379         char* error_message;
2380         char[28] sqref;
2381         static struct _Anonymous_27
2382         {
2383             lxw_data_validation* stqe_next;
2384         }
2385         _Anonymous_27 list_pointers;
2386     }
2387     struct lxw_image_data
2388     {
2389         lxw_image_options* stqh_first;
2390         lxw_image_options** stqh_last;
2391     }
2392     struct lxw_image_options
2393     {
2394         int x_offset;
2395         int y_offset;
2396         double x_scale;
2397         double y_scale;
2398         uint row;
2399         ushort col;
2400         char* filename;
2401         char* description;
2402         char* url;
2403         char* tip;
2404         ubyte anchor;
2405         _IO_FILE* stream;
2406         ubyte image_type;
2407         ubyte is_image_buffer;
2408         ubyte* image_buffer;
2409         c_ulong image_buffer_size;
2410         double width;
2411         double height;
2412         char* extension;
2413         double x_dpi;
2414         double y_dpi;
2415         lxw_chart* chart;
2416         static struct _Anonymous_28
2417         {
2418             lxw_image_options* stqe_next;
2419         }
2420         _Anonymous_28 list_pointers;
2421     }
2422     struct lxw_chart_data
2423     {
2424         lxw_image_options* stqh_first;
2425         lxw_image_options** stqh_last;
2426     }
2427     struct lxw_row_col_options
2428     {
2429         ubyte hidden;
2430         ubyte level;
2431         ubyte collapsed;
2432     }
2433     struct lxw_col_options
2434     {
2435         ushort firstcol;
2436         ushort lastcol;
2437         double width;
2438         lxw_format* format;
2439         ubyte hidden;
2440         ubyte level;
2441         ubyte collapsed;
2442     }
2443     struct lxw_repeat_rows
2444     {
2445         ubyte in_use;
2446         uint first_row;
2447         uint last_row;
2448     }
2449     struct lxw_repeat_cols
2450     {
2451         ubyte in_use;
2452         ushort first_col;
2453         ushort last_col;
2454     }
2455     struct lxw_print_area
2456     {
2457         ubyte in_use;
2458         uint first_row;
2459         uint last_row;
2460         ushort first_col;
2461         ushort last_col;
2462     }
2463     struct lxw_autofilter
2464     {
2465         ubyte in_use;
2466         uint first_row;
2467         uint last_row;
2468         ushort first_col;
2469         ushort last_col;
2470     }
2471     struct lxw_panes
2472     {
2473         ubyte type;
2474         uint first_row;
2475         ushort first_col;
2476         uint top_row;
2477         ushort left_col;
2478         double x_split;
2479         double y_split;
2480     }
2481     struct lxw_header_footer_options
2482     {
2483         double margin;
2484     }
2485     struct lxw_protection
2486     {
2487         ubyte no_select_locked_cells;
2488         ubyte no_select_unlocked_cells;
2489         ubyte format_cells;
2490         ubyte format_columns;
2491         ubyte format_rows;
2492         ubyte insert_columns;
2493         ubyte insert_rows;
2494         ubyte insert_hyperlinks;
2495         ubyte delete_columns;
2496         ubyte delete_rows;
2497         ubyte sort;
2498         ubyte autofilter;
2499         ubyte pivot_tables;
2500         ubyte scenarios;
2501         ubyte objects;
2502         ubyte no_content;
2503         ubyte no_objects;
2504         ubyte no_sheet;
2505         ubyte is_configured;
2506         char[5] hash;
2507     }
2508     struct lxw_rich_string_tuple
2509     {
2510         lxw_format* format;
2511         char* string;
2512     }
2513     struct lxw_worksheet
2514     {
2515         _IO_FILE* file;
2516         _IO_FILE* optimize_tmpfile;
2517         lxw_table_rows* table;
2518         lxw_table_rows* hyperlinks;
2519         lxw_cell** array;
2520         lxw_merged_ranges* merged_ranges;
2521         lxw_selections* selections;
2522         lxw_data_validations* data_validations;
2523         lxw_image_data* image_data;
2524         lxw_chart_data* chart_data;
2525         uint dim_rowmin;
2526         uint dim_rowmax;
2527         ushort dim_colmin;
2528         ushort dim_colmax;
2529         lxw_sst* sst;
2530         char* name;
2531         char* quoted_name;
2532         char* tmpdir;
2533         uint index;
2534         ubyte active;
2535         ubyte selected;
2536         ubyte hidden;
2537         ushort* active_sheet;
2538         ushort* first_sheet;
2539         ubyte is_chartsheet;
2540         lxw_col_options** col_options;
2541         ushort col_options_max;
2542         double* col_sizes;
2543         ushort col_sizes_max;
2544         lxw_format** col_formats;
2545         ushort col_formats_max;
2546         ubyte col_size_changed;
2547         ubyte row_size_changed;
2548         ubyte optimize;
2549         lxw_row* optimize_row;
2550         ushort fit_height;
2551         ushort fit_width;
2552         ushort horizontal_dpi;
2553         ushort hlink_count;
2554         ushort page_start;
2555         ushort print_scale;
2556         ushort rel_count;
2557         ushort vertical_dpi;
2558         ushort zoom;
2559         ubyte filter_on;
2560         ubyte fit_page;
2561         ubyte hcenter;
2562         ubyte orientation;
2563         ubyte outline_changed;
2564         ubyte outline_on;
2565         ubyte outline_style;
2566         ubyte outline_below;
2567         ubyte outline_right;
2568         ubyte page_order;
2569         ubyte page_setup_changed;
2570         ubyte page_view;
2571         ubyte paper_size;
2572         ubyte print_gridlines;
2573         ubyte print_headers;
2574         ubyte print_options_changed;
2575         ubyte right_to_left;
2576         ubyte screen_gridlines;
2577         ubyte show_zeros;
2578         ubyte vcenter;
2579         ubyte zoom_scale_normal;
2580         ubyte num_validations;
2581         char* vba_codename;
2582         int tab_color;
2583         double margin_left;
2584         double margin_right;
2585         double margin_top;
2586         double margin_bottom;
2587         double margin_header;
2588         double margin_footer;
2589         double default_row_height;
2590         uint default_row_pixels;
2591         uint default_col_pixels;
2592         ubyte default_row_zeroed;
2593         ubyte default_row_set;
2594         ubyte outline_row_level;
2595         ubyte outline_col_level;
2596         ubyte header_footer_changed;
2597         char[255] header;
2598         char[255] footer;
2599         lxw_repeat_rows repeat_rows;
2600         lxw_repeat_cols repeat_cols;
2601         lxw_print_area print_area;
2602         lxw_autofilter autofilter;
2603         ushort merged_range_count;
2604         uint* hbreaks;
2605         ushort* vbreaks;
2606         ushort hbreaks_count;
2607         ushort vbreaks_count;
2608         lxw_rel_tuples* external_hyperlinks;
2609         lxw_rel_tuples* external_drawing_links;
2610         lxw_rel_tuples* drawing_links;
2611         lxw_panes panes;
2612         lxw_protection protection;
2613         lxw_drawing* drawing;
2614         static struct _Anonymous_29
2615         {
2616             lxw_worksheet* stqe_next;
2617         }
2618         _Anonymous_29 list_pointers;
2619     }
2620     struct lxw_rel_tuples
2621     {
2622         lxw_rel_tuple* stqh_first;
2623         lxw_rel_tuple** stqh_last;
2624     }
2625     struct lxw_worksheet_init_data
2626     {
2627         uint index;
2628         ubyte hidden;
2629         ubyte optimize;
2630         ushort* active_sheet;
2631         ushort* first_sheet;
2632         lxw_sst* sst;
2633         char* name;
2634         char* quoted_name;
2635         char* tmpdir;
2636     }
2637     lxw_error worksheet_write_number(lxw_worksheet*, uint, ushort, double, lxw_format*) @nogc nothrow;
2638     lxw_error worksheet_write_string(lxw_worksheet*, uint, ushort, const(char)*, lxw_format*) @nogc nothrow;
2639     lxw_error worksheet_write_formula(lxw_worksheet*, uint, ushort, const(char)*, lxw_format*) @nogc nothrow;
2640     lxw_error worksheet_write_array_formula(lxw_worksheet*, uint, ushort, uint, ushort, const(char)*, lxw_format*) @nogc nothrow;
2641     lxw_error worksheet_write_array_formula_num(lxw_worksheet*, uint, ushort, uint, ushort, const(char)*, lxw_format*, double) @nogc nothrow;
2642     lxw_error worksheet_write_datetime(lxw_worksheet*, uint, ushort, lxw_datetime*, lxw_format*) @nogc nothrow;
2643     lxw_error worksheet_write_url_opt(lxw_worksheet*, uint, ushort, const(char)*, lxw_format*, const(char)*, const(char)*) @nogc nothrow;
2644     lxw_error worksheet_write_url(lxw_worksheet*, uint, ushort, const(char)*, lxw_format*) @nogc nothrow;
2645     lxw_error worksheet_write_boolean(lxw_worksheet*, uint, ushort, int, lxw_format*) @nogc nothrow;
2646     lxw_error worksheet_write_blank(lxw_worksheet*, uint, ushort, lxw_format*) @nogc nothrow;
2647     lxw_error worksheet_write_formula_num(lxw_worksheet*, uint, ushort, const(char)*, lxw_format*, double) @nogc nothrow;
2648     lxw_error worksheet_write_rich_string(lxw_worksheet*, uint, ushort, lxw_rich_string_tuple**, lxw_format*) @nogc nothrow;
2649     lxw_error worksheet_set_row(lxw_worksheet*, uint, double, lxw_format*) @nogc nothrow;
2650     lxw_error worksheet_set_row_opt(lxw_worksheet*, uint, double, lxw_format*, lxw_row_col_options*) @nogc nothrow;
2651     lxw_error worksheet_set_column(lxw_worksheet*, ushort, ushort, double, lxw_format*) @nogc nothrow;
2652     lxw_error worksheet_set_column_opt(lxw_worksheet*, ushort, ushort, double, lxw_format*, lxw_row_col_options*) @nogc nothrow;
2653     lxw_error worksheet_insert_image(lxw_worksheet*, uint, ushort, const(char)*) @nogc nothrow;
2654     lxw_error worksheet_insert_image_opt(lxw_worksheet*, uint, ushort, const(char)*, lxw_image_options*) @nogc nothrow;
2655     lxw_error worksheet_insert_image_buffer(lxw_worksheet*, uint, ushort, const(ubyte)*, c_ulong) @nogc nothrow;
2656     lxw_error worksheet_insert_image_buffer_opt(lxw_worksheet*, uint, ushort, const(ubyte)*, c_ulong, lxw_image_options*) @nogc nothrow;
2657     lxw_error worksheet_insert_chart(lxw_worksheet*, uint, ushort, lxw_chart*) @nogc nothrow;
2658     lxw_error worksheet_insert_chart_opt(lxw_worksheet*, uint, ushort, lxw_chart*, lxw_image_options*) @nogc nothrow;
2659     lxw_error worksheet_merge_range(lxw_worksheet*, uint, ushort, uint, ushort, const(char)*, lxw_format*) @nogc nothrow;
2660     lxw_error worksheet_autofilter(lxw_worksheet*, uint, ushort, uint, ushort) @nogc nothrow;
2661     lxw_error worksheet_data_validation_cell(lxw_worksheet*, uint, ushort, lxw_data_validation*) @nogc nothrow;
2662     lxw_error worksheet_data_validation_range(lxw_worksheet*, uint, ushort, uint, ushort, lxw_data_validation*) @nogc nothrow;
2663     void worksheet_activate(lxw_worksheet*) @nogc nothrow;
2664     void worksheet_select(lxw_worksheet*) @nogc nothrow;
2665     void worksheet_hide(lxw_worksheet*) @nogc nothrow;
2666     void worksheet_set_first_sheet(lxw_worksheet*) @nogc nothrow;
2667     void worksheet_freeze_panes(lxw_worksheet*, uint, ushort) @nogc nothrow;
2668     void worksheet_split_panes(lxw_worksheet*, double, double) @nogc nothrow;
2669     void worksheet_freeze_panes_opt(lxw_worksheet*, uint, ushort, uint, ushort, ubyte) @nogc nothrow;
2670     void worksheet_split_panes_opt(lxw_worksheet*, double, double, uint, ushort) @nogc nothrow;
2671     void worksheet_set_selection(lxw_worksheet*, uint, ushort, uint, ushort) @nogc nothrow;
2672     void worksheet_set_landscape(lxw_worksheet*) @nogc nothrow;
2673     void worksheet_set_portrait(lxw_worksheet*) @nogc nothrow;
2674     void worksheet_set_page_view(lxw_worksheet*) @nogc nothrow;
2675     void worksheet_set_paper(lxw_worksheet*, ubyte) @nogc nothrow;
2676     void worksheet_set_margins(lxw_worksheet*, double, double, double, double) @nogc nothrow;
2677     lxw_error worksheet_set_header(lxw_worksheet*, const(char)*) @nogc nothrow;
2678     lxw_error worksheet_set_footer(lxw_worksheet*, const(char)*) @nogc nothrow;
2679     lxw_error worksheet_set_header_opt(lxw_worksheet*, const(char)*, lxw_header_footer_options*) @nogc nothrow;
2680     lxw_error worksheet_set_footer_opt(lxw_worksheet*, const(char)*, lxw_header_footer_options*) @nogc nothrow;
2681     lxw_error worksheet_set_h_pagebreaks(lxw_worksheet*, uint*) @nogc nothrow;
2682     lxw_error worksheet_set_v_pagebreaks(lxw_worksheet*, ushort*) @nogc nothrow;
2683     void worksheet_print_across(lxw_worksheet*) @nogc nothrow;
2684     void worksheet_set_zoom(lxw_worksheet*, ushort) @nogc nothrow;
2685     void worksheet_gridlines(lxw_worksheet*, ubyte) @nogc nothrow;
2686     void worksheet_center_horizontally(lxw_worksheet*) @nogc nothrow;
2687     void worksheet_center_vertically(lxw_worksheet*) @nogc nothrow;
2688     void worksheet_print_row_col_headers(lxw_worksheet*) @nogc nothrow;
2689     lxw_error worksheet_repeat_rows(lxw_worksheet*, uint, uint) @nogc nothrow;
2690     lxw_error worksheet_repeat_columns(lxw_worksheet*, ushort, ushort) @nogc nothrow;
2691     lxw_error worksheet_print_area(lxw_worksheet*, uint, ushort, uint, ushort) @nogc nothrow;
2692     void worksheet_fit_to_pages(lxw_worksheet*, ushort, ushort) @nogc nothrow;
2693     void worksheet_set_start_page(lxw_worksheet*, ushort) @nogc nothrow;
2694     void worksheet_set_print_scale(lxw_worksheet*, ushort) @nogc nothrow;
2695     void worksheet_right_to_left(lxw_worksheet*) @nogc nothrow;
2696     void worksheet_hide_zero(lxw_worksheet*) @nogc nothrow;
2697     void worksheet_set_tab_color(lxw_worksheet*, int) @nogc nothrow;
2698     void worksheet_protect(lxw_worksheet*, const(char)*, lxw_protection*) @nogc nothrow;
2699     void worksheet_outline_settings(lxw_worksheet*, ubyte, ubyte, ubyte, ubyte) @nogc nothrow;
2700     void worksheet_set_default_row(lxw_worksheet*, double, ubyte) @nogc nothrow;
2701     lxw_error worksheet_set_vba_name(lxw_worksheet*, const(char)*) @nogc nothrow;
2702     lxw_worksheet* lxw_worksheet_new(lxw_worksheet_init_data*) @nogc nothrow;
2703     void lxw_worksheet_free(lxw_worksheet*) @nogc nothrow;
2704     void lxw_worksheet_assemble_xml_file(lxw_worksheet*) @nogc nothrow;
2705     void lxw_worksheet_write_single_row(lxw_worksheet*) @nogc nothrow;
2706     void lxw_worksheet_prepare_image(lxw_worksheet*, uint, uint, lxw_image_options*) @nogc nothrow;
2707     void lxw_worksheet_prepare_chart(lxw_worksheet*, uint, uint, lxw_image_options*, ubyte) @nogc nothrow;
2708     lxw_row* lxw_worksheet_find_row(lxw_worksheet*, uint) @nogc nothrow;
2709     lxw_cell* lxw_worksheet_find_cell(lxw_row*, ushort) @nogc nothrow;
2710     void lxw_worksheet_write_sheet_views(lxw_worksheet*) @nogc nothrow;
2711     void lxw_worksheet_write_page_margins(lxw_worksheet*) @nogc nothrow;
2712     void lxw_worksheet_write_drawings(lxw_worksheet*) @nogc nothrow;
2713     void lxw_worksheet_write_sheet_protection(lxw_worksheet*, lxw_protection*) @nogc nothrow;
2714     void lxw_worksheet_write_sheet_pr(lxw_worksheet*) @nogc nothrow;
2715     void lxw_worksheet_write_page_setup(lxw_worksheet*) @nogc nothrow;
2716     void lxw_worksheet_write_header_footer(lxw_worksheet*) @nogc nothrow;
2717     int ttyname_r(int, char*, c_ulong) @nogc nothrow;
2718     struct xml_attribute
2719     {
2720         char[256] key;
2721         char[256] value;
2722         static struct _Anonymous_30
2723         {
2724             xml_attribute* stqe_next;
2725         }
2726         _Anonymous_30 list_entries;
2727     }
2728     struct xml_attribute_list
2729     {
2730         xml_attribute* stqh_first;
2731         xml_attribute** stqh_last;
2732     }
2733     xml_attribute* lxw_new_attribute_str(const(char)*, const(char)*) @nogc nothrow;
2734     xml_attribute* lxw_new_attribute_int(const(char)*, uint) @nogc nothrow;
2735     xml_attribute* lxw_new_attribute_dbl(const(char)*, double) @nogc nothrow;
2736     char* ttyname(int) @nogc nothrow;
2737     int vfork() @nogc nothrow;
2738     void lxw_xml_declaration(_IO_FILE*) @nogc nothrow;
2739     void lxw_xml_start_tag(_IO_FILE*, const(char)*, xml_attribute_list*) @nogc nothrow;
2740     void lxw_xml_start_tag_unencoded(_IO_FILE*, const(char)*, xml_attribute_list*) @nogc nothrow;
2741     void lxw_xml_end_tag(_IO_FILE*, const(char)*) @nogc nothrow;
2742     void lxw_xml_empty_tag(_IO_FILE*, const(char)*, xml_attribute_list*) @nogc nothrow;
2743     void lxw_xml_empty_tag_unencoded(_IO_FILE*, const(char)*, xml_attribute_list*) @nogc nothrow;
2744     void lxw_xml_data_element(_IO_FILE*, const(char)*, const(char)*, xml_attribute_list*) @nogc nothrow;
2745     void lxw_xml_rich_si_element(_IO_FILE*, const(char)*) @nogc nothrow;
2746     char* lxw_escape_control_characters(const(char)*) @nogc nothrow;
2747     char* lxw_escape_data(const(char)*) @nogc nothrow;
2748     pragma(mangle, "alloca") void* alloca_(c_ulong) @nogc nothrow;
2749     int fork() @nogc nothrow;
2750     int setegid(uint) @nogc nothrow;
2751     int setregid(uint, uint) @nogc nothrow;
2752     int setgid(uint) @nogc nothrow;
2753     int seteuid(uint) @nogc nothrow;
2754     int setreuid(uint, uint) @nogc nothrow;
2755     int setuid(uint) @nogc nothrow;
2756     int getgroups(int, uint*) @nogc nothrow;
2757     uint getegid() @nogc nothrow;
2758     uint getgid() @nogc nothrow;
2759     uint geteuid() @nogc nothrow;
2760     uint getuid() @nogc nothrow;
2761     int getsid(int) @nogc nothrow;
2762     int setsid() @nogc nothrow;
2763     int setpgrp() @nogc nothrow;
2764     int setpgid(int, int) @nogc nothrow;
2765     int getpgid(int) @nogc nothrow;
2766     int __getpgid(int) @nogc nothrow;
2767     int getpgrp() @nogc nothrow;
2768     int getppid() @nogc nothrow;
2769     int getpid() @nogc nothrow;
2770     c_ulong confstr(int, char*, c_ulong) @nogc nothrow;
2771     c_long sysconf(int) @nogc nothrow;
2772     c_long fpathconf(int, int) @nogc nothrow;
2773     c_long pathconf(const(char)*, int) @nogc nothrow;
2774     void _exit(int) @nogc nothrow;
2775     int nice(int) @nogc nothrow;
2776     int execlp(const(char)*, const(char)*, ...) @nogc nothrow;
2777     int execvp(const(char)*, char**) @nogc nothrow;
2778     int execl(const(char)*, const(char)*, ...) @nogc nothrow;
2779     int execle(const(char)*, const(char)*, ...) @nogc nothrow;
2780     int execv(const(char)*, char**) @nogc nothrow;
2781     int fexecve(int, char**, char**) @nogc nothrow;
2782     int execve(const(char)*, char**, char**) @nogc nothrow;
2783     extern __gshared char** __environ;
2784     int dup2(int, int) @nogc nothrow;
2785     int dup(int) @nogc nothrow;
2786     char* getwd(char*) @nogc nothrow;
2787     char* getcwd(char*, c_ulong) @nogc nothrow;
2788     int fchdir(int) @nogc nothrow;
2789     int chdir(const(char)*) @nogc nothrow;
2790     int fchownat(int, const(char)*, uint, uint, int) @nogc nothrow;
2791     int lchown(const(char)*, uint, uint) @nogc nothrow;
2792     int fchown(int, uint, uint) @nogc nothrow;
2793     int chown(const(char)*, uint, uint) @nogc nothrow;
2794     int pause() @nogc nothrow;
2795     int usleep(uint) @nogc nothrow;
2796     uint ualarm(uint, uint) @nogc nothrow;
2797     static ushort __bswap_16(ushort) @nogc nothrow;
2798     static uint __bswap_32(uint) @nogc nothrow;
2799     static c_ulong __bswap_64(c_ulong) @nogc nothrow;
2800     enum _Anonymous_31
2801     {
2802         _PC_LINK_MAX = 0,
2803         _PC_MAX_CANON = 1,
2804         _PC_MAX_INPUT = 2,
2805         _PC_NAME_MAX = 3,
2806         _PC_PATH_MAX = 4,
2807         _PC_PIPE_BUF = 5,
2808         _PC_CHOWN_RESTRICTED = 6,
2809         _PC_NO_TRUNC = 7,
2810         _PC_VDISABLE = 8,
2811         _PC_SYNC_IO = 9,
2812         _PC_ASYNC_IO = 10,
2813         _PC_PRIO_IO = 11,
2814         _PC_SOCK_MAXBUF = 12,
2815         _PC_FILESIZEBITS = 13,
2816         _PC_REC_INCR_XFER_SIZE = 14,
2817         _PC_REC_MAX_XFER_SIZE = 15,
2818         _PC_REC_MIN_XFER_SIZE = 16,
2819         _PC_REC_XFER_ALIGN = 17,
2820         _PC_ALLOC_SIZE_MIN = 18,
2821         _PC_SYMLINK_MAX = 19,
2822         _PC_2_SYMLINKS = 20,
2823     }
2824     enum _PC_LINK_MAX = _Anonymous_31._PC_LINK_MAX;
2825     enum _PC_MAX_CANON = _Anonymous_31._PC_MAX_CANON;
2826     enum _PC_MAX_INPUT = _Anonymous_31._PC_MAX_INPUT;
2827     enum _PC_NAME_MAX = _Anonymous_31._PC_NAME_MAX;
2828     enum _PC_PATH_MAX = _Anonymous_31._PC_PATH_MAX;
2829     enum _PC_PIPE_BUF = _Anonymous_31._PC_PIPE_BUF;
2830     enum _PC_CHOWN_RESTRICTED = _Anonymous_31._PC_CHOWN_RESTRICTED;
2831     enum _PC_NO_TRUNC = _Anonymous_31._PC_NO_TRUNC;
2832     enum _PC_VDISABLE = _Anonymous_31._PC_VDISABLE;
2833     enum _PC_SYNC_IO = _Anonymous_31._PC_SYNC_IO;
2834     enum _PC_ASYNC_IO = _Anonymous_31._PC_ASYNC_IO;
2835     enum _PC_PRIO_IO = _Anonymous_31._PC_PRIO_IO;
2836     enum _PC_SOCK_MAXBUF = _Anonymous_31._PC_SOCK_MAXBUF;
2837     enum _PC_FILESIZEBITS = _Anonymous_31._PC_FILESIZEBITS;
2838     enum _PC_REC_INCR_XFER_SIZE = _Anonymous_31._PC_REC_INCR_XFER_SIZE;
2839     enum _PC_REC_MAX_XFER_SIZE = _Anonymous_31._PC_REC_MAX_XFER_SIZE;
2840     enum _PC_REC_MIN_XFER_SIZE = _Anonymous_31._PC_REC_MIN_XFER_SIZE;
2841     enum _PC_REC_XFER_ALIGN = _Anonymous_31._PC_REC_XFER_ALIGN;
2842     enum _PC_ALLOC_SIZE_MIN = _Anonymous_31._PC_ALLOC_SIZE_MIN;
2843     enum _PC_SYMLINK_MAX = _Anonymous_31._PC_SYMLINK_MAX;
2844     enum _PC_2_SYMLINKS = _Anonymous_31._PC_2_SYMLINKS;
2845     uint sleep(uint) @nogc nothrow;
2846     uint alarm(uint) @nogc nothrow;
2847     int pipe(int*) @nogc nothrow;
2848     c_long pwrite(int, const(void)*, c_ulong, c_long) @nogc nothrow;
2849     c_long pread(int, void*, c_ulong, c_long) @nogc nothrow;
2850     c_long write(int, const(void)*, c_ulong) @nogc nothrow;
2851     c_long read(int, void*, c_ulong) @nogc nothrow;
2852     int close(int) @nogc nothrow;
2853     c_long lseek(int, c_long, int) @nogc nothrow;
2854     enum _Anonymous_32
2855     {
2856         _SC_ARG_MAX = 0,
2857         _SC_CHILD_MAX = 1,
2858         _SC_CLK_TCK = 2,
2859         _SC_NGROUPS_MAX = 3,
2860         _SC_OPEN_MAX = 4,
2861         _SC_STREAM_MAX = 5,
2862         _SC_TZNAME_MAX = 6,
2863         _SC_JOB_CONTROL = 7,
2864         _SC_SAVED_IDS = 8,
2865         _SC_REALTIME_SIGNALS = 9,
2866         _SC_PRIORITY_SCHEDULING = 10,
2867         _SC_TIMERS = 11,
2868         _SC_ASYNCHRONOUS_IO = 12,
2869         _SC_PRIORITIZED_IO = 13,
2870         _SC_SYNCHRONIZED_IO = 14,
2871         _SC_FSYNC = 15,
2872         _SC_MAPPED_FILES = 16,
2873         _SC_MEMLOCK = 17,
2874         _SC_MEMLOCK_RANGE = 18,
2875         _SC_MEMORY_PROTECTION = 19,
2876         _SC_MESSAGE_PASSING = 20,
2877         _SC_SEMAPHORES = 21,
2878         _SC_SHARED_MEMORY_OBJECTS = 22,
2879         _SC_AIO_LISTIO_MAX = 23,
2880         _SC_AIO_MAX = 24,
2881         _SC_AIO_PRIO_DELTA_MAX = 25,
2882         _SC_DELAYTIMER_MAX = 26,
2883         _SC_MQ_OPEN_MAX = 27,
2884         _SC_MQ_PRIO_MAX = 28,
2885         _SC_VERSION = 29,
2886         _SC_PAGESIZE = 30,
2887         _SC_RTSIG_MAX = 31,
2888         _SC_SEM_NSEMS_MAX = 32,
2889         _SC_SEM_VALUE_MAX = 33,
2890         _SC_SIGQUEUE_MAX = 34,
2891         _SC_TIMER_MAX = 35,
2892         _SC_BC_BASE_MAX = 36,
2893         _SC_BC_DIM_MAX = 37,
2894         _SC_BC_SCALE_MAX = 38,
2895         _SC_BC_STRING_MAX = 39,
2896         _SC_COLL_WEIGHTS_MAX = 40,
2897         _SC_EQUIV_CLASS_MAX = 41,
2898         _SC_EXPR_NEST_MAX = 42,
2899         _SC_LINE_MAX = 43,
2900         _SC_RE_DUP_MAX = 44,
2901         _SC_CHARCLASS_NAME_MAX = 45,
2902         _SC_2_VERSION = 46,
2903         _SC_2_C_BIND = 47,
2904         _SC_2_C_DEV = 48,
2905         _SC_2_FORT_DEV = 49,
2906         _SC_2_FORT_RUN = 50,
2907         _SC_2_SW_DEV = 51,
2908         _SC_2_LOCALEDEF = 52,
2909         _SC_PII = 53,
2910         _SC_PII_XTI = 54,
2911         _SC_PII_SOCKET = 55,
2912         _SC_PII_INTERNET = 56,
2913         _SC_PII_OSI = 57,
2914         _SC_POLL = 58,
2915         _SC_SELECT = 59,
2916         _SC_UIO_MAXIOV = 60,
2917         _SC_IOV_MAX = 60,
2918         _SC_PII_INTERNET_STREAM = 61,
2919         _SC_PII_INTERNET_DGRAM = 62,
2920         _SC_PII_OSI_COTS = 63,
2921         _SC_PII_OSI_CLTS = 64,
2922         _SC_PII_OSI_M = 65,
2923         _SC_T_IOV_MAX = 66,
2924         _SC_THREADS = 67,
2925         _SC_THREAD_SAFE_FUNCTIONS = 68,
2926         _SC_GETGR_R_SIZE_MAX = 69,
2927         _SC_GETPW_R_SIZE_MAX = 70,
2928         _SC_LOGIN_NAME_MAX = 71,
2929         _SC_TTY_NAME_MAX = 72,
2930         _SC_THREAD_DESTRUCTOR_ITERATIONS = 73,
2931         _SC_THREAD_KEYS_MAX = 74,
2932         _SC_THREAD_STACK_MIN = 75,
2933         _SC_THREAD_THREADS_MAX = 76,
2934         _SC_THREAD_ATTR_STACKADDR = 77,
2935         _SC_THREAD_ATTR_STACKSIZE = 78,
2936         _SC_THREAD_PRIORITY_SCHEDULING = 79,
2937         _SC_THREAD_PRIO_INHERIT = 80,
2938         _SC_THREAD_PRIO_PROTECT = 81,
2939         _SC_THREAD_PROCESS_SHARED = 82,
2940         _SC_NPROCESSORS_CONF = 83,
2941         _SC_NPROCESSORS_ONLN = 84,
2942         _SC_PHYS_PAGES = 85,
2943         _SC_AVPHYS_PAGES = 86,
2944         _SC_ATEXIT_MAX = 87,
2945         _SC_PASS_MAX = 88,
2946         _SC_XOPEN_VERSION = 89,
2947         _SC_XOPEN_XCU_VERSION = 90,
2948         _SC_XOPEN_UNIX = 91,
2949         _SC_XOPEN_CRYPT = 92,
2950         _SC_XOPEN_ENH_I18N = 93,
2951         _SC_XOPEN_SHM = 94,
2952         _SC_2_CHAR_TERM = 95,
2953         _SC_2_C_VERSION = 96,
2954         _SC_2_UPE = 97,
2955         _SC_XOPEN_XPG2 = 98,
2956         _SC_XOPEN_XPG3 = 99,
2957         _SC_XOPEN_XPG4 = 100,
2958         _SC_CHAR_BIT = 101,
2959         _SC_CHAR_MAX = 102,
2960         _SC_CHAR_MIN = 103,
2961         _SC_INT_MAX = 104,
2962         _SC_INT_MIN = 105,
2963         _SC_LONG_BIT = 106,
2964         _SC_WORD_BIT = 107,
2965         _SC_MB_LEN_MAX = 108,
2966         _SC_NZERO = 109,
2967         _SC_SSIZE_MAX = 110,
2968         _SC_SCHAR_MAX = 111,
2969         _SC_SCHAR_MIN = 112,
2970         _SC_SHRT_MAX = 113,
2971         _SC_SHRT_MIN = 114,
2972         _SC_UCHAR_MAX = 115,
2973         _SC_UINT_MAX = 116,
2974         _SC_ULONG_MAX = 117,
2975         _SC_USHRT_MAX = 118,
2976         _SC_NL_ARGMAX = 119,
2977         _SC_NL_LANGMAX = 120,
2978         _SC_NL_MSGMAX = 121,
2979         _SC_NL_NMAX = 122,
2980         _SC_NL_SETMAX = 123,
2981         _SC_NL_TEXTMAX = 124,
2982         _SC_XBS5_ILP32_OFF32 = 125,
2983         _SC_XBS5_ILP32_OFFBIG = 126,
2984         _SC_XBS5_LP64_OFF64 = 127,
2985         _SC_XBS5_LPBIG_OFFBIG = 128,
2986         _SC_XOPEN_LEGACY = 129,
2987         _SC_XOPEN_REALTIME = 130,
2988         _SC_XOPEN_REALTIME_THREADS = 131,
2989         _SC_ADVISORY_INFO = 132,
2990         _SC_BARRIERS = 133,
2991         _SC_BASE = 134,
2992         _SC_C_LANG_SUPPORT = 135,
2993         _SC_C_LANG_SUPPORT_R = 136,
2994         _SC_CLOCK_SELECTION = 137,
2995         _SC_CPUTIME = 138,
2996         _SC_THREAD_CPUTIME = 139,
2997         _SC_DEVICE_IO = 140,
2998         _SC_DEVICE_SPECIFIC = 141,
2999         _SC_DEVICE_SPECIFIC_R = 142,
3000         _SC_FD_MGMT = 143,
3001         _SC_FIFO = 144,
3002         _SC_PIPE = 145,
3003         _SC_FILE_ATTRIBUTES = 146,
3004         _SC_FILE_LOCKING = 147,
3005         _SC_FILE_SYSTEM = 148,
3006         _SC_MONOTONIC_CLOCK = 149,
3007         _SC_MULTI_PROCESS = 150,
3008         _SC_SINGLE_PROCESS = 151,
3009         _SC_NETWORKING = 152,
3010         _SC_READER_WRITER_LOCKS = 153,
3011         _SC_SPIN_LOCKS = 154,
3012         _SC_REGEXP = 155,
3013         _SC_REGEX_VERSION = 156,
3014         _SC_SHELL = 157,
3015         _SC_SIGNALS = 158,
3016         _SC_SPAWN = 159,
3017         _SC_SPORADIC_SERVER = 160,
3018         _SC_THREAD_SPORADIC_SERVER = 161,
3019         _SC_SYSTEM_DATABASE = 162,
3020         _SC_SYSTEM_DATABASE_R = 163,
3021         _SC_TIMEOUTS = 164,
3022         _SC_TYPED_MEMORY_OBJECTS = 165,
3023         _SC_USER_GROUPS = 166,
3024         _SC_USER_GROUPS_R = 167,
3025         _SC_2_PBS = 168,
3026         _SC_2_PBS_ACCOUNTING = 169,
3027         _SC_2_PBS_LOCATE = 170,
3028         _SC_2_PBS_MESSAGE = 171,
3029         _SC_2_PBS_TRACK = 172,
3030         _SC_SYMLOOP_MAX = 173,
3031         _SC_STREAMS = 174,
3032         _SC_2_PBS_CHECKPOINT = 175,
3033         _SC_V6_ILP32_OFF32 = 176,
3034         _SC_V6_ILP32_OFFBIG = 177,
3035         _SC_V6_LP64_OFF64 = 178,
3036         _SC_V6_LPBIG_OFFBIG = 179,
3037         _SC_HOST_NAME_MAX = 180,
3038         _SC_TRACE = 181,
3039         _SC_TRACE_EVENT_FILTER = 182,
3040         _SC_TRACE_INHERIT = 183,
3041         _SC_TRACE_LOG = 184,
3042         _SC_LEVEL1_ICACHE_SIZE = 185,
3043         _SC_LEVEL1_ICACHE_ASSOC = 186,
3044         _SC_LEVEL1_ICACHE_LINESIZE = 187,
3045         _SC_LEVEL1_DCACHE_SIZE = 188,
3046         _SC_LEVEL1_DCACHE_ASSOC = 189,
3047         _SC_LEVEL1_DCACHE_LINESIZE = 190,
3048         _SC_LEVEL2_CACHE_SIZE = 191,
3049         _SC_LEVEL2_CACHE_ASSOC = 192,
3050         _SC_LEVEL2_CACHE_LINESIZE = 193,
3051         _SC_LEVEL3_CACHE_SIZE = 194,
3052         _SC_LEVEL3_CACHE_ASSOC = 195,
3053         _SC_LEVEL3_CACHE_LINESIZE = 196,
3054         _SC_LEVEL4_CACHE_SIZE = 197,
3055         _SC_LEVEL4_CACHE_ASSOC = 198,
3056         _SC_LEVEL4_CACHE_LINESIZE = 199,
3057         _SC_IPV6 = 235,
3058         _SC_RAW_SOCKETS = 236,
3059         _SC_V7_ILP32_OFF32 = 237,
3060         _SC_V7_ILP32_OFFBIG = 238,
3061         _SC_V7_LP64_OFF64 = 239,
3062         _SC_V7_LPBIG_OFFBIG = 240,
3063         _SC_SS_REPL_MAX = 241,
3064         _SC_TRACE_EVENT_NAME_MAX = 242,
3065         _SC_TRACE_NAME_MAX = 243,
3066         _SC_TRACE_SYS_MAX = 244,
3067         _SC_TRACE_USER_EVENT_MAX = 245,
3068         _SC_XOPEN_STREAMS = 246,
3069         _SC_THREAD_ROBUST_PRIO_INHERIT = 247,
3070         _SC_THREAD_ROBUST_PRIO_PROTECT = 248,
3071     }
3072     enum _SC_ARG_MAX = _Anonymous_32._SC_ARG_MAX;
3073     enum _SC_CHILD_MAX = _Anonymous_32._SC_CHILD_MAX;
3074     enum _SC_CLK_TCK = _Anonymous_32._SC_CLK_TCK;
3075     enum _SC_NGROUPS_MAX = _Anonymous_32._SC_NGROUPS_MAX;
3076     enum _SC_OPEN_MAX = _Anonymous_32._SC_OPEN_MAX;
3077     enum _SC_STREAM_MAX = _Anonymous_32._SC_STREAM_MAX;
3078     enum _SC_TZNAME_MAX = _Anonymous_32._SC_TZNAME_MAX;
3079     enum _SC_JOB_CONTROL = _Anonymous_32._SC_JOB_CONTROL;
3080     enum _SC_SAVED_IDS = _Anonymous_32._SC_SAVED_IDS;
3081     enum _SC_REALTIME_SIGNALS = _Anonymous_32._SC_REALTIME_SIGNALS;
3082     enum _SC_PRIORITY_SCHEDULING = _Anonymous_32._SC_PRIORITY_SCHEDULING;
3083     enum _SC_TIMERS = _Anonymous_32._SC_TIMERS;
3084     enum _SC_ASYNCHRONOUS_IO = _Anonymous_32._SC_ASYNCHRONOUS_IO;
3085     enum _SC_PRIORITIZED_IO = _Anonymous_32._SC_PRIORITIZED_IO;
3086     enum _SC_SYNCHRONIZED_IO = _Anonymous_32._SC_SYNCHRONIZED_IO;
3087     enum _SC_FSYNC = _Anonymous_32._SC_FSYNC;
3088     enum _SC_MAPPED_FILES = _Anonymous_32._SC_MAPPED_FILES;
3089     enum _SC_MEMLOCK = _Anonymous_32._SC_MEMLOCK;
3090     enum _SC_MEMLOCK_RANGE = _Anonymous_32._SC_MEMLOCK_RANGE;
3091     enum _SC_MEMORY_PROTECTION = _Anonymous_32._SC_MEMORY_PROTECTION;
3092     enum _SC_MESSAGE_PASSING = _Anonymous_32._SC_MESSAGE_PASSING;
3093     enum _SC_SEMAPHORES = _Anonymous_32._SC_SEMAPHORES;
3094     enum _SC_SHARED_MEMORY_OBJECTS = _Anonymous_32._SC_SHARED_MEMORY_OBJECTS;
3095     enum _SC_AIO_LISTIO_MAX = _Anonymous_32._SC_AIO_LISTIO_MAX;
3096     enum _SC_AIO_MAX = _Anonymous_32._SC_AIO_MAX;
3097     enum _SC_AIO_PRIO_DELTA_MAX = _Anonymous_32._SC_AIO_PRIO_DELTA_MAX;
3098     enum _SC_DELAYTIMER_MAX = _Anonymous_32._SC_DELAYTIMER_MAX;
3099     enum _SC_MQ_OPEN_MAX = _Anonymous_32._SC_MQ_OPEN_MAX;
3100     enum _SC_MQ_PRIO_MAX = _Anonymous_32._SC_MQ_PRIO_MAX;
3101     enum _SC_VERSION = _Anonymous_32._SC_VERSION;
3102     enum _SC_PAGESIZE = _Anonymous_32._SC_PAGESIZE;
3103     enum _SC_RTSIG_MAX = _Anonymous_32._SC_RTSIG_MAX;
3104     enum _SC_SEM_NSEMS_MAX = _Anonymous_32._SC_SEM_NSEMS_MAX;
3105     enum _SC_SEM_VALUE_MAX = _Anonymous_32._SC_SEM_VALUE_MAX;
3106     enum _SC_SIGQUEUE_MAX = _Anonymous_32._SC_SIGQUEUE_MAX;
3107     enum _SC_TIMER_MAX = _Anonymous_32._SC_TIMER_MAX;
3108     enum _SC_BC_BASE_MAX = _Anonymous_32._SC_BC_BASE_MAX;
3109     enum _SC_BC_DIM_MAX = _Anonymous_32._SC_BC_DIM_MAX;
3110     enum _SC_BC_SCALE_MAX = _Anonymous_32._SC_BC_SCALE_MAX;
3111     enum _SC_BC_STRING_MAX = _Anonymous_32._SC_BC_STRING_MAX;
3112     enum _SC_COLL_WEIGHTS_MAX = _Anonymous_32._SC_COLL_WEIGHTS_MAX;
3113     enum _SC_EQUIV_CLASS_MAX = _Anonymous_32._SC_EQUIV_CLASS_MAX;
3114     enum _SC_EXPR_NEST_MAX = _Anonymous_32._SC_EXPR_NEST_MAX;
3115     enum _SC_LINE_MAX = _Anonymous_32._SC_LINE_MAX;
3116     enum _SC_RE_DUP_MAX = _Anonymous_32._SC_RE_DUP_MAX;
3117     enum _SC_CHARCLASS_NAME_MAX = _Anonymous_32._SC_CHARCLASS_NAME_MAX;
3118     enum _SC_2_VERSION = _Anonymous_32._SC_2_VERSION;
3119     enum _SC_2_C_BIND = _Anonymous_32._SC_2_C_BIND;
3120     enum _SC_2_C_DEV = _Anonymous_32._SC_2_C_DEV;
3121     enum _SC_2_FORT_DEV = _Anonymous_32._SC_2_FORT_DEV;
3122     enum _SC_2_FORT_RUN = _Anonymous_32._SC_2_FORT_RUN;
3123     enum _SC_2_SW_DEV = _Anonymous_32._SC_2_SW_DEV;
3124     enum _SC_2_LOCALEDEF = _Anonymous_32._SC_2_LOCALEDEF;
3125     enum _SC_PII = _Anonymous_32._SC_PII;
3126     enum _SC_PII_XTI = _Anonymous_32._SC_PII_XTI;
3127     enum _SC_PII_SOCKET = _Anonymous_32._SC_PII_SOCKET;
3128     enum _SC_PII_INTERNET = _Anonymous_32._SC_PII_INTERNET;
3129     enum _SC_PII_OSI = _Anonymous_32._SC_PII_OSI;
3130     enum _SC_POLL = _Anonymous_32._SC_POLL;
3131     enum _SC_SELECT = _Anonymous_32._SC_SELECT;
3132     enum _SC_UIO_MAXIOV = _Anonymous_32._SC_UIO_MAXIOV;
3133     enum _SC_IOV_MAX = _Anonymous_32._SC_IOV_MAX;
3134     enum _SC_PII_INTERNET_STREAM = _Anonymous_32._SC_PII_INTERNET_STREAM;
3135     enum _SC_PII_INTERNET_DGRAM = _Anonymous_32._SC_PII_INTERNET_DGRAM;
3136     enum _SC_PII_OSI_COTS = _Anonymous_32._SC_PII_OSI_COTS;
3137     enum _SC_PII_OSI_CLTS = _Anonymous_32._SC_PII_OSI_CLTS;
3138     enum _SC_PII_OSI_M = _Anonymous_32._SC_PII_OSI_M;
3139     enum _SC_T_IOV_MAX = _Anonymous_32._SC_T_IOV_MAX;
3140     enum _SC_THREADS = _Anonymous_32._SC_THREADS;
3141     enum _SC_THREAD_SAFE_FUNCTIONS = _Anonymous_32._SC_THREAD_SAFE_FUNCTIONS;
3142     enum _SC_GETGR_R_SIZE_MAX = _Anonymous_32._SC_GETGR_R_SIZE_MAX;
3143     enum _SC_GETPW_R_SIZE_MAX = _Anonymous_32._SC_GETPW_R_SIZE_MAX;
3144     enum _SC_LOGIN_NAME_MAX = _Anonymous_32._SC_LOGIN_NAME_MAX;
3145     enum _SC_TTY_NAME_MAX = _Anonymous_32._SC_TTY_NAME_MAX;
3146     enum _SC_THREAD_DESTRUCTOR_ITERATIONS = _Anonymous_32._SC_THREAD_DESTRUCTOR_ITERATIONS;
3147     enum _SC_THREAD_KEYS_MAX = _Anonymous_32._SC_THREAD_KEYS_MAX;
3148     enum _SC_THREAD_STACK_MIN = _Anonymous_32._SC_THREAD_STACK_MIN;
3149     enum _SC_THREAD_THREADS_MAX = _Anonymous_32._SC_THREAD_THREADS_MAX;
3150     enum _SC_THREAD_ATTR_STACKADDR = _Anonymous_32._SC_THREAD_ATTR_STACKADDR;
3151     enum _SC_THREAD_ATTR_STACKSIZE = _Anonymous_32._SC_THREAD_ATTR_STACKSIZE;
3152     enum _SC_THREAD_PRIORITY_SCHEDULING = _Anonymous_32._SC_THREAD_PRIORITY_SCHEDULING;
3153     enum _SC_THREAD_PRIO_INHERIT = _Anonymous_32._SC_THREAD_PRIO_INHERIT;
3154     enum _SC_THREAD_PRIO_PROTECT = _Anonymous_32._SC_THREAD_PRIO_PROTECT;
3155     enum _SC_THREAD_PROCESS_SHARED = _Anonymous_32._SC_THREAD_PROCESS_SHARED;
3156     enum _SC_NPROCESSORS_CONF = _Anonymous_32._SC_NPROCESSORS_CONF;
3157     enum _SC_NPROCESSORS_ONLN = _Anonymous_32._SC_NPROCESSORS_ONLN;
3158     enum _SC_PHYS_PAGES = _Anonymous_32._SC_PHYS_PAGES;
3159     enum _SC_AVPHYS_PAGES = _Anonymous_32._SC_AVPHYS_PAGES;
3160     enum _SC_ATEXIT_MAX = _Anonymous_32._SC_ATEXIT_MAX;
3161     enum _SC_PASS_MAX = _Anonymous_32._SC_PASS_MAX;
3162     enum _SC_XOPEN_VERSION = _Anonymous_32._SC_XOPEN_VERSION;
3163     enum _SC_XOPEN_XCU_VERSION = _Anonymous_32._SC_XOPEN_XCU_VERSION;
3164     enum _SC_XOPEN_UNIX = _Anonymous_32._SC_XOPEN_UNIX;
3165     enum _SC_XOPEN_CRYPT = _Anonymous_32._SC_XOPEN_CRYPT;
3166     enum _SC_XOPEN_ENH_I18N = _Anonymous_32._SC_XOPEN_ENH_I18N;
3167     enum _SC_XOPEN_SHM = _Anonymous_32._SC_XOPEN_SHM;
3168     enum _SC_2_CHAR_TERM = _Anonymous_32._SC_2_CHAR_TERM;
3169     enum _SC_2_C_VERSION = _Anonymous_32._SC_2_C_VERSION;
3170     enum _SC_2_UPE = _Anonymous_32._SC_2_UPE;
3171     enum _SC_XOPEN_XPG2 = _Anonymous_32._SC_XOPEN_XPG2;
3172     enum _SC_XOPEN_XPG3 = _Anonymous_32._SC_XOPEN_XPG3;
3173     enum _SC_XOPEN_XPG4 = _Anonymous_32._SC_XOPEN_XPG4;
3174     enum _SC_CHAR_BIT = _Anonymous_32._SC_CHAR_BIT;
3175     enum _SC_CHAR_MAX = _Anonymous_32._SC_CHAR_MAX;
3176     enum _SC_CHAR_MIN = _Anonymous_32._SC_CHAR_MIN;
3177     enum _SC_INT_MAX = _Anonymous_32._SC_INT_MAX;
3178     enum _SC_INT_MIN = _Anonymous_32._SC_INT_MIN;
3179     enum _SC_LONG_BIT = _Anonymous_32._SC_LONG_BIT;
3180     enum _SC_WORD_BIT = _Anonymous_32._SC_WORD_BIT;
3181     enum _SC_MB_LEN_MAX = _Anonymous_32._SC_MB_LEN_MAX;
3182     enum _SC_NZERO = _Anonymous_32._SC_NZERO;
3183     enum _SC_SSIZE_MAX = _Anonymous_32._SC_SSIZE_MAX;
3184     enum _SC_SCHAR_MAX = _Anonymous_32._SC_SCHAR_MAX;
3185     enum _SC_SCHAR_MIN = _Anonymous_32._SC_SCHAR_MIN;
3186     enum _SC_SHRT_MAX = _Anonymous_32._SC_SHRT_MAX;
3187     enum _SC_SHRT_MIN = _Anonymous_32._SC_SHRT_MIN;
3188     enum _SC_UCHAR_MAX = _Anonymous_32._SC_UCHAR_MAX;
3189     enum _SC_UINT_MAX = _Anonymous_32._SC_UINT_MAX;
3190     enum _SC_ULONG_MAX = _Anonymous_32._SC_ULONG_MAX;
3191     enum _SC_USHRT_MAX = _Anonymous_32._SC_USHRT_MAX;
3192     enum _SC_NL_ARGMAX = _Anonymous_32._SC_NL_ARGMAX;
3193     enum _SC_NL_LANGMAX = _Anonymous_32._SC_NL_LANGMAX;
3194     enum _SC_NL_MSGMAX = _Anonymous_32._SC_NL_MSGMAX;
3195     enum _SC_NL_NMAX = _Anonymous_32._SC_NL_NMAX;
3196     enum _SC_NL_SETMAX = _Anonymous_32._SC_NL_SETMAX;
3197     enum _SC_NL_TEXTMAX = _Anonymous_32._SC_NL_TEXTMAX;
3198     enum _SC_XBS5_ILP32_OFF32 = _Anonymous_32._SC_XBS5_ILP32_OFF32;
3199     enum _SC_XBS5_ILP32_OFFBIG = _Anonymous_32._SC_XBS5_ILP32_OFFBIG;
3200     enum _SC_XBS5_LP64_OFF64 = _Anonymous_32._SC_XBS5_LP64_OFF64;
3201     enum _SC_XBS5_LPBIG_OFFBIG = _Anonymous_32._SC_XBS5_LPBIG_OFFBIG;
3202     enum _SC_XOPEN_LEGACY = _Anonymous_32._SC_XOPEN_LEGACY;
3203     enum _SC_XOPEN_REALTIME = _Anonymous_32._SC_XOPEN_REALTIME;
3204     enum _SC_XOPEN_REALTIME_THREADS = _Anonymous_32._SC_XOPEN_REALTIME_THREADS;
3205     enum _SC_ADVISORY_INFO = _Anonymous_32._SC_ADVISORY_INFO;
3206     enum _SC_BARRIERS = _Anonymous_32._SC_BARRIERS;
3207     enum _SC_BASE = _Anonymous_32._SC_BASE;
3208     enum _SC_C_LANG_SUPPORT = _Anonymous_32._SC_C_LANG_SUPPORT;
3209     enum _SC_C_LANG_SUPPORT_R = _Anonymous_32._SC_C_LANG_SUPPORT_R;
3210     enum _SC_CLOCK_SELECTION = _Anonymous_32._SC_CLOCK_SELECTION;
3211     enum _SC_CPUTIME = _Anonymous_32._SC_CPUTIME;
3212     enum _SC_THREAD_CPUTIME = _Anonymous_32._SC_THREAD_CPUTIME;
3213     enum _SC_DEVICE_IO = _Anonymous_32._SC_DEVICE_IO;
3214     enum _SC_DEVICE_SPECIFIC = _Anonymous_32._SC_DEVICE_SPECIFIC;
3215     enum _SC_DEVICE_SPECIFIC_R = _Anonymous_32._SC_DEVICE_SPECIFIC_R;
3216     enum _SC_FD_MGMT = _Anonymous_32._SC_FD_MGMT;
3217     enum _SC_FIFO = _Anonymous_32._SC_FIFO;
3218     enum _SC_PIPE = _Anonymous_32._SC_PIPE;
3219     enum _SC_FILE_ATTRIBUTES = _Anonymous_32._SC_FILE_ATTRIBUTES;
3220     enum _SC_FILE_LOCKING = _Anonymous_32._SC_FILE_LOCKING;
3221     enum _SC_FILE_SYSTEM = _Anonymous_32._SC_FILE_SYSTEM;
3222     enum _SC_MONOTONIC_CLOCK = _Anonymous_32._SC_MONOTONIC_CLOCK;
3223     enum _SC_MULTI_PROCESS = _Anonymous_32._SC_MULTI_PROCESS;
3224     enum _SC_SINGLE_PROCESS = _Anonymous_32._SC_SINGLE_PROCESS;
3225     enum _SC_NETWORKING = _Anonymous_32._SC_NETWORKING;
3226     enum _SC_READER_WRITER_LOCKS = _Anonymous_32._SC_READER_WRITER_LOCKS;
3227     enum _SC_SPIN_LOCKS = _Anonymous_32._SC_SPIN_LOCKS;
3228     enum _SC_REGEXP = _Anonymous_32._SC_REGEXP;
3229     enum _SC_REGEX_VERSION = _Anonymous_32._SC_REGEX_VERSION;
3230     enum _SC_SHELL = _Anonymous_32._SC_SHELL;
3231     enum _SC_SIGNALS = _Anonymous_32._SC_SIGNALS;
3232     enum _SC_SPAWN = _Anonymous_32._SC_SPAWN;
3233     enum _SC_SPORADIC_SERVER = _Anonymous_32._SC_SPORADIC_SERVER;
3234     enum _SC_THREAD_SPORADIC_SERVER = _Anonymous_32._SC_THREAD_SPORADIC_SERVER;
3235     enum _SC_SYSTEM_DATABASE = _Anonymous_32._SC_SYSTEM_DATABASE;
3236     enum _SC_SYSTEM_DATABASE_R = _Anonymous_32._SC_SYSTEM_DATABASE_R;
3237     enum _SC_TIMEOUTS = _Anonymous_32._SC_TIMEOUTS;
3238     enum _SC_TYPED_MEMORY_OBJECTS = _Anonymous_32._SC_TYPED_MEMORY_OBJECTS;
3239     enum _SC_USER_GROUPS = _Anonymous_32._SC_USER_GROUPS;
3240     enum _SC_USER_GROUPS_R = _Anonymous_32._SC_USER_GROUPS_R;
3241     enum _SC_2_PBS = _Anonymous_32._SC_2_PBS;
3242     enum _SC_2_PBS_ACCOUNTING = _Anonymous_32._SC_2_PBS_ACCOUNTING;
3243     enum _SC_2_PBS_LOCATE = _Anonymous_32._SC_2_PBS_LOCATE;
3244     enum _SC_2_PBS_MESSAGE = _Anonymous_32._SC_2_PBS_MESSAGE;
3245     enum _SC_2_PBS_TRACK = _Anonymous_32._SC_2_PBS_TRACK;
3246     enum _SC_SYMLOOP_MAX = _Anonymous_32._SC_SYMLOOP_MAX;
3247     enum _SC_STREAMS = _Anonymous_32._SC_STREAMS;
3248     enum _SC_2_PBS_CHECKPOINT = _Anonymous_32._SC_2_PBS_CHECKPOINT;
3249     enum _SC_V6_ILP32_OFF32 = _Anonymous_32._SC_V6_ILP32_OFF32;
3250     enum _SC_V6_ILP32_OFFBIG = _Anonymous_32._SC_V6_ILP32_OFFBIG;
3251     enum _SC_V6_LP64_OFF64 = _Anonymous_32._SC_V6_LP64_OFF64;
3252     enum _SC_V6_LPBIG_OFFBIG = _Anonymous_32._SC_V6_LPBIG_OFFBIG;
3253     enum _SC_HOST_NAME_MAX = _Anonymous_32._SC_HOST_NAME_MAX;
3254     enum _SC_TRACE = _Anonymous_32._SC_TRACE;
3255     enum _SC_TRACE_EVENT_FILTER = _Anonymous_32._SC_TRACE_EVENT_FILTER;
3256     enum _SC_TRACE_INHERIT = _Anonymous_32._SC_TRACE_INHERIT;
3257     enum _SC_TRACE_LOG = _Anonymous_32._SC_TRACE_LOG;
3258     enum _SC_LEVEL1_ICACHE_SIZE = _Anonymous_32._SC_LEVEL1_ICACHE_SIZE;
3259     enum _SC_LEVEL1_ICACHE_ASSOC = _Anonymous_32._SC_LEVEL1_ICACHE_ASSOC;
3260     enum _SC_LEVEL1_ICACHE_LINESIZE = _Anonymous_32._SC_LEVEL1_ICACHE_LINESIZE;
3261     enum _SC_LEVEL1_DCACHE_SIZE = _Anonymous_32._SC_LEVEL1_DCACHE_SIZE;
3262     enum _SC_LEVEL1_DCACHE_ASSOC = _Anonymous_32._SC_LEVEL1_DCACHE_ASSOC;
3263     enum _SC_LEVEL1_DCACHE_LINESIZE = _Anonymous_32._SC_LEVEL1_DCACHE_LINESIZE;
3264     enum _SC_LEVEL2_CACHE_SIZE = _Anonymous_32._SC_LEVEL2_CACHE_SIZE;
3265     enum _SC_LEVEL2_CACHE_ASSOC = _Anonymous_32._SC_LEVEL2_CACHE_ASSOC;
3266     enum _SC_LEVEL2_CACHE_LINESIZE = _Anonymous_32._SC_LEVEL2_CACHE_LINESIZE;
3267     enum _SC_LEVEL3_CACHE_SIZE = _Anonymous_32._SC_LEVEL3_CACHE_SIZE;
3268     enum _SC_LEVEL3_CACHE_ASSOC = _Anonymous_32._SC_LEVEL3_CACHE_ASSOC;
3269     enum _SC_LEVEL3_CACHE_LINESIZE = _Anonymous_32._SC_LEVEL3_CACHE_LINESIZE;
3270     enum _SC_LEVEL4_CACHE_SIZE = _Anonymous_32._SC_LEVEL4_CACHE_SIZE;
3271     enum _SC_LEVEL4_CACHE_ASSOC = _Anonymous_32._SC_LEVEL4_CACHE_ASSOC;
3272     enum _SC_LEVEL4_CACHE_LINESIZE = _Anonymous_32._SC_LEVEL4_CACHE_LINESIZE;
3273     enum _SC_IPV6 = _Anonymous_32._SC_IPV6;
3274     enum _SC_RAW_SOCKETS = _Anonymous_32._SC_RAW_SOCKETS;
3275     enum _SC_V7_ILP32_OFF32 = _Anonymous_32._SC_V7_ILP32_OFF32;
3276     enum _SC_V7_ILP32_OFFBIG = _Anonymous_32._SC_V7_ILP32_OFFBIG;
3277     enum _SC_V7_LP64_OFF64 = _Anonymous_32._SC_V7_LP64_OFF64;
3278     enum _SC_V7_LPBIG_OFFBIG = _Anonymous_32._SC_V7_LPBIG_OFFBIG;
3279     enum _SC_SS_REPL_MAX = _Anonymous_32._SC_SS_REPL_MAX;
3280     enum _SC_TRACE_EVENT_NAME_MAX = _Anonymous_32._SC_TRACE_EVENT_NAME_MAX;
3281     enum _SC_TRACE_NAME_MAX = _Anonymous_32._SC_TRACE_NAME_MAX;
3282     enum _SC_TRACE_SYS_MAX = _Anonymous_32._SC_TRACE_SYS_MAX;
3283     enum _SC_TRACE_USER_EVENT_MAX = _Anonymous_32._SC_TRACE_USER_EVENT_MAX;
3284     enum _SC_XOPEN_STREAMS = _Anonymous_32._SC_XOPEN_STREAMS;
3285     enum _SC_THREAD_ROBUST_PRIO_INHERIT = _Anonymous_32._SC_THREAD_ROBUST_PRIO_INHERIT;
3286     enum _SC_THREAD_ROBUST_PRIO_PROTECT = _Anonymous_32._SC_THREAD_ROBUST_PRIO_PROTECT;
3287     int faccessat(int, const(char)*, int, int) @nogc nothrow;
3288     int access(const(char)*, int) @nogc nothrow;
3289     alias socklen_t = uint;
3290     alias useconds_t = uint;
3291     int timespec_get(timespec*, int) @nogc nothrow;
3292     int timer_getoverrun(void*) @nogc nothrow;
3293     int timer_gettime(void*, itimerspec*) @nogc nothrow;
3294     int timer_settime(void*, int, const(itimerspec)*, itimerspec*) @nogc nothrow;
3295     int timer_delete(void*) @nogc nothrow;
3296     int timer_create(int, sigevent*, void**) @nogc nothrow;
3297     int clock_getcpuclockid(int, int*) @nogc nothrow;
3298     int clock_nanosleep(int, int, const(timespec)*, timespec*) @nogc nothrow;
3299     int clock_settime(int, const(timespec)*) @nogc nothrow;
3300     int clock_gettime(int, timespec*) @nogc nothrow;
3301     int clock_getres(int, timespec*) @nogc nothrow;
3302     int nanosleep(const(timespec)*, timespec*) @nogc nothrow;
3303     int dysize(int) @nogc nothrow;
3304     c_long timelocal(tm*) @nogc nothrow;
3305     c_long timegm(tm*) @nogc nothrow;
3306     int stime(const(c_long)*) @nogc nothrow;
3307     extern __gshared c_long timezone;
3308     extern __gshared int daylight;
3309     void tzset() @nogc nothrow;
3310     extern __gshared char*[2] tzname;
3311     extern __gshared c_long __timezone;
3312     extern __gshared int __daylight;
3313     extern __gshared char*[2] __tzname;
3314     char* ctime_r(const(c_long)*, char*) @nogc nothrow;
3315     char* asctime_r(const(tm)*, char*) @nogc nothrow;
3316     char* ctime(const(c_long)*) @nogc nothrow;
3317     char* asctime(const(tm)*) @nogc nothrow;
3318     tm* localtime_r(const(c_long)*, tm*) @nogc nothrow;
3319     tm* gmtime_r(const(c_long)*, tm*) @nogc nothrow;
3320     tm* localtime(const(c_long)*) @nogc nothrow;
3321     tm* gmtime(const(c_long)*) @nogc nothrow;
3322     c_ulong strftime_l(char*, c_ulong, const(char)*, const(tm)*, __locale_struct*) @nogc nothrow;
3323     c_ulong strftime(char*, c_ulong, const(char)*, const(tm)*) @nogc nothrow;
3324     c_long mktime(tm*) @nogc nothrow;
3325     double difftime(c_long, c_long) @nogc nothrow;
3326     c_long time(c_long*) @nogc nothrow;
3327     c_long clock() @nogc nothrow;
3328     struct sigevent;
3329     alias fsfilcnt_t = c_ulong;
3330     alias fsblkcnt_t = c_ulong;
3331     alias blkcnt_t = c_long;
3332     alias blksize_t = c_long;
3333     alias register_t = c_long;
3334     alias u_int64_t = c_ulong;
3335     alias u_int32_t = uint;
3336     alias u_int16_t = ushort;
3337     alias u_int8_t = ubyte;
3338     alias key_t = int;
3339     alias caddr_t = char*;
3340     alias daddr_t = int;
3341     alias id_t = uint;
3342     alias pid_t = int;
3343     alias uid_t = uint;
3344     alias nlink_t = c_ulong;
3345     alias mode_t = uint;
3346     alias gid_t = uint;
3347     alias dev_t = c_ulong;
3348     alias ino_t = c_ulong;
3349     alias loff_t = c_long;
3350     alias fsid_t = __fsid_t;
3351     alias u_quad_t = c_ulong;
3352     alias quad_t = c_long;
3353     alias u_long = c_ulong;
3354     alias u_int = uint;
3355     alias u_short = ushort;
3356     alias u_char = ubyte;
3357     int pselect(int, fd_set*, fd_set*, fd_set*, const(timespec)*, const(__sigset_t)*) @nogc nothrow;
3358     int select(int, fd_set*, fd_set*, fd_set*, timeval*) @nogc nothrow;
3359     alias fd_mask = c_long;
3360     struct fd_set
3361     {
3362         c_long[16] __fds_bits;
3363     }
3364     alias __fd_mask = c_long;
3365     alias suseconds_t = c_long;
3366     enum _Anonymous_33
3367     {
3368         _CS_PATH = 0,
3369         _CS_V6_WIDTH_RESTRICTED_ENVS = 1,
3370         _CS_GNU_LIBC_VERSION = 2,
3371         _CS_GNU_LIBPTHREAD_VERSION = 3,
3372         _CS_V5_WIDTH_RESTRICTED_ENVS = 4,
3373         _CS_V7_WIDTH_RESTRICTED_ENVS = 5,
3374         _CS_LFS_CFLAGS = 1000,
3375         _CS_LFS_LDFLAGS = 1001,
3376         _CS_LFS_LIBS = 1002,
3377         _CS_LFS_LINTFLAGS = 1003,
3378         _CS_LFS64_CFLAGS = 1004,
3379         _CS_LFS64_LDFLAGS = 1005,
3380         _CS_LFS64_LIBS = 1006,
3381         _CS_LFS64_LINTFLAGS = 1007,
3382         _CS_XBS5_ILP32_OFF32_CFLAGS = 1100,
3383         _CS_XBS5_ILP32_OFF32_LDFLAGS = 1101,
3384         _CS_XBS5_ILP32_OFF32_LIBS = 1102,
3385         _CS_XBS5_ILP32_OFF32_LINTFLAGS = 1103,
3386         _CS_XBS5_ILP32_OFFBIG_CFLAGS = 1104,
3387         _CS_XBS5_ILP32_OFFBIG_LDFLAGS = 1105,
3388         _CS_XBS5_ILP32_OFFBIG_LIBS = 1106,
3389         _CS_XBS5_ILP32_OFFBIG_LINTFLAGS = 1107,
3390         _CS_XBS5_LP64_OFF64_CFLAGS = 1108,
3391         _CS_XBS5_LP64_OFF64_LDFLAGS = 1109,
3392         _CS_XBS5_LP64_OFF64_LIBS = 1110,
3393         _CS_XBS5_LP64_OFF64_LINTFLAGS = 1111,
3394         _CS_XBS5_LPBIG_OFFBIG_CFLAGS = 1112,
3395         _CS_XBS5_LPBIG_OFFBIG_LDFLAGS = 1113,
3396         _CS_XBS5_LPBIG_OFFBIG_LIBS = 1114,
3397         _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS = 1115,
3398         _CS_POSIX_V6_ILP32_OFF32_CFLAGS = 1116,
3399         _CS_POSIX_V6_ILP32_OFF32_LDFLAGS = 1117,
3400         _CS_POSIX_V6_ILP32_OFF32_LIBS = 1118,
3401         _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS = 1119,
3402         _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS = 1120,
3403         _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS = 1121,
3404         _CS_POSIX_V6_ILP32_OFFBIG_LIBS = 1122,
3405         _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS = 1123,
3406         _CS_POSIX_V6_LP64_OFF64_CFLAGS = 1124,
3407         _CS_POSIX_V6_LP64_OFF64_LDFLAGS = 1125,
3408         _CS_POSIX_V6_LP64_OFF64_LIBS = 1126,
3409         _CS_POSIX_V6_LP64_OFF64_LINTFLAGS = 1127,
3410         _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS = 1128,
3411         _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS = 1129,
3412         _CS_POSIX_V6_LPBIG_OFFBIG_LIBS = 1130,
3413         _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS = 1131,
3414         _CS_POSIX_V7_ILP32_OFF32_CFLAGS = 1132,
3415         _CS_POSIX_V7_ILP32_OFF32_LDFLAGS = 1133,
3416         _CS_POSIX_V7_ILP32_OFF32_LIBS = 1134,
3417         _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS = 1135,
3418         _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS = 1136,
3419         _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS = 1137,
3420         _CS_POSIX_V7_ILP32_OFFBIG_LIBS = 1138,
3421         _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS = 1139,
3422         _CS_POSIX_V7_LP64_OFF64_CFLAGS = 1140,
3423         _CS_POSIX_V7_LP64_OFF64_LDFLAGS = 1141,
3424         _CS_POSIX_V7_LP64_OFF64_LIBS = 1142,
3425         _CS_POSIX_V7_LP64_OFF64_LINTFLAGS = 1143,
3426         _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS = 1144,
3427         _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS = 1145,
3428         _CS_POSIX_V7_LPBIG_OFFBIG_LIBS = 1146,
3429         _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS = 1147,
3430         _CS_V6_ENV = 1148,
3431         _CS_V7_ENV = 1149,
3432     }
3433     enum _CS_PATH = _Anonymous_33._CS_PATH;
3434     enum _CS_V6_WIDTH_RESTRICTED_ENVS = _Anonymous_33._CS_V6_WIDTH_RESTRICTED_ENVS;
3435     enum _CS_GNU_LIBC_VERSION = _Anonymous_33._CS_GNU_LIBC_VERSION;
3436     enum _CS_GNU_LIBPTHREAD_VERSION = _Anonymous_33._CS_GNU_LIBPTHREAD_VERSION;
3437     enum _CS_V5_WIDTH_RESTRICTED_ENVS = _Anonymous_33._CS_V5_WIDTH_RESTRICTED_ENVS;
3438     enum _CS_V7_WIDTH_RESTRICTED_ENVS = _Anonymous_33._CS_V7_WIDTH_RESTRICTED_ENVS;
3439     enum _CS_LFS_CFLAGS = _Anonymous_33._CS_LFS_CFLAGS;
3440     enum _CS_LFS_LDFLAGS = _Anonymous_33._CS_LFS_LDFLAGS;
3441     enum _CS_LFS_LIBS = _Anonymous_33._CS_LFS_LIBS;
3442     enum _CS_LFS_LINTFLAGS = _Anonymous_33._CS_LFS_LINTFLAGS;
3443     enum _CS_LFS64_CFLAGS = _Anonymous_33._CS_LFS64_CFLAGS;
3444     enum _CS_LFS64_LDFLAGS = _Anonymous_33._CS_LFS64_LDFLAGS;
3445     enum _CS_LFS64_LIBS = _Anonymous_33._CS_LFS64_LIBS;
3446     enum _CS_LFS64_LINTFLAGS = _Anonymous_33._CS_LFS64_LINTFLAGS;
3447     enum _CS_XBS5_ILP32_OFF32_CFLAGS = _Anonymous_33._CS_XBS5_ILP32_OFF32_CFLAGS;
3448     enum _CS_XBS5_ILP32_OFF32_LDFLAGS = _Anonymous_33._CS_XBS5_ILP32_OFF32_LDFLAGS;
3449     enum _CS_XBS5_ILP32_OFF32_LIBS = _Anonymous_33._CS_XBS5_ILP32_OFF32_LIBS;
3450     enum _CS_XBS5_ILP32_OFF32_LINTFLAGS = _Anonymous_33._CS_XBS5_ILP32_OFF32_LINTFLAGS;
3451     enum _CS_XBS5_ILP32_OFFBIG_CFLAGS = _Anonymous_33._CS_XBS5_ILP32_OFFBIG_CFLAGS;
3452     enum _CS_XBS5_ILP32_OFFBIG_LDFLAGS = _Anonymous_33._CS_XBS5_ILP32_OFFBIG_LDFLAGS;
3453     enum _CS_XBS5_ILP32_OFFBIG_LIBS = _Anonymous_33._CS_XBS5_ILP32_OFFBIG_LIBS;
3454     enum _CS_XBS5_ILP32_OFFBIG_LINTFLAGS = _Anonymous_33._CS_XBS5_ILP32_OFFBIG_LINTFLAGS;
3455     enum _CS_XBS5_LP64_OFF64_CFLAGS = _Anonymous_33._CS_XBS5_LP64_OFF64_CFLAGS;
3456     enum _CS_XBS5_LP64_OFF64_LDFLAGS = _Anonymous_33._CS_XBS5_LP64_OFF64_LDFLAGS;
3457     enum _CS_XBS5_LP64_OFF64_LIBS = _Anonymous_33._CS_XBS5_LP64_OFF64_LIBS;
3458     enum _CS_XBS5_LP64_OFF64_LINTFLAGS = _Anonymous_33._CS_XBS5_LP64_OFF64_LINTFLAGS;
3459     enum _CS_XBS5_LPBIG_OFFBIG_CFLAGS = _Anonymous_33._CS_XBS5_LPBIG_OFFBIG_CFLAGS;
3460     enum _CS_XBS5_LPBIG_OFFBIG_LDFLAGS = _Anonymous_33._CS_XBS5_LPBIG_OFFBIG_LDFLAGS;
3461     enum _CS_XBS5_LPBIG_OFFBIG_LIBS = _Anonymous_33._CS_XBS5_LPBIG_OFFBIG_LIBS;
3462     enum _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS = _Anonymous_33._CS_XBS5_LPBIG_OFFBIG_LINTFLAGS;
3463     enum _CS_POSIX_V6_ILP32_OFF32_CFLAGS = _Anonymous_33._CS_POSIX_V6_ILP32_OFF32_CFLAGS;
3464     enum _CS_POSIX_V6_ILP32_OFF32_LDFLAGS = _Anonymous_33._CS_POSIX_V6_ILP32_OFF32_LDFLAGS;
3465     enum _CS_POSIX_V6_ILP32_OFF32_LIBS = _Anonymous_33._CS_POSIX_V6_ILP32_OFF32_LIBS;
3466     enum _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS = _Anonymous_33._CS_POSIX_V6_ILP32_OFF32_LINTFLAGS;
3467     enum _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS = _Anonymous_33._CS_POSIX_V6_ILP32_OFFBIG_CFLAGS;
3468     enum _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS = _Anonymous_33._CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS;
3469     enum _CS_POSIX_V6_ILP32_OFFBIG_LIBS = _Anonymous_33._CS_POSIX_V6_ILP32_OFFBIG_LIBS;
3470     enum _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS = _Anonymous_33._CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS;
3471     enum _CS_POSIX_V6_LP64_OFF64_CFLAGS = _Anonymous_33._CS_POSIX_V6_LP64_OFF64_CFLAGS;
3472     enum _CS_POSIX_V6_LP64_OFF64_LDFLAGS = _Anonymous_33._CS_POSIX_V6_LP64_OFF64_LDFLAGS;
3473     enum _CS_POSIX_V6_LP64_OFF64_LIBS = _Anonymous_33._CS_POSIX_V6_LP64_OFF64_LIBS;
3474     enum _CS_POSIX_V6_LP64_OFF64_LINTFLAGS = _Anonymous_33._CS_POSIX_V6_LP64_OFF64_LINTFLAGS;
3475     enum _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS = _Anonymous_33._CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS;
3476     enum _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS = _Anonymous_33._CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS;
3477     enum _CS_POSIX_V6_LPBIG_OFFBIG_LIBS = _Anonymous_33._CS_POSIX_V6_LPBIG_OFFBIG_LIBS;
3478     enum _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS = _Anonymous_33._CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS;
3479     enum _CS_POSIX_V7_ILP32_OFF32_CFLAGS = _Anonymous_33._CS_POSIX_V7_ILP32_OFF32_CFLAGS;
3480     enum _CS_POSIX_V7_ILP32_OFF32_LDFLAGS = _Anonymous_33._CS_POSIX_V7_ILP32_OFF32_LDFLAGS;
3481     enum _CS_POSIX_V7_ILP32_OFF32_LIBS = _Anonymous_33._CS_POSIX_V7_ILP32_OFF32_LIBS;
3482     enum _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS = _Anonymous_33._CS_POSIX_V7_ILP32_OFF32_LINTFLAGS;
3483     enum _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS = _Anonymous_33._CS_POSIX_V7_ILP32_OFFBIG_CFLAGS;
3484     enum _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS = _Anonymous_33._CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS;
3485     enum _CS_POSIX_V7_ILP32_OFFBIG_LIBS = _Anonymous_33._CS_POSIX_V7_ILP32_OFFBIG_LIBS;
3486     enum _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS = _Anonymous_33._CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS;
3487     enum _CS_POSIX_V7_LP64_OFF64_CFLAGS = _Anonymous_33._CS_POSIX_V7_LP64_OFF64_CFLAGS;
3488     enum _CS_POSIX_V7_LP64_OFF64_LDFLAGS = _Anonymous_33._CS_POSIX_V7_LP64_OFF64_LDFLAGS;
3489     enum _CS_POSIX_V7_LP64_OFF64_LIBS = _Anonymous_33._CS_POSIX_V7_LP64_OFF64_LIBS;
3490     enum _CS_POSIX_V7_LP64_OFF64_LINTFLAGS = _Anonymous_33._CS_POSIX_V7_LP64_OFF64_LINTFLAGS;
3491     enum _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS = _Anonymous_33._CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS;
3492     enum _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS = _Anonymous_33._CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS;
3493     enum _CS_POSIX_V7_LPBIG_OFFBIG_LIBS = _Anonymous_33._CS_POSIX_V7_LPBIG_OFFBIG_LIBS;
3494     enum _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS = _Anonymous_33._CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS;
3495     enum _CS_V6_ENV = _Anonymous_33._CS_V6_ENV;
3496     enum _CS_V7_ENV = _Anonymous_33._CS_V7_ENV;
3497     int strncasecmp_l(const(char)*, const(char)*, c_ulong, __locale_struct*) @nogc nothrow;
3498     int strcasecmp_l(const(char)*, const(char)*, __locale_struct*) @nogc nothrow;
3499     int strncasecmp(const(char)*, const(char)*, c_ulong) @nogc nothrow;
3500     int strcasecmp(const(char)*, const(char)*) @nogc nothrow;
3501     int ffsll(long) @nogc nothrow;
3502     int ffsl(c_long) @nogc nothrow;
3503     int ffs(int) @nogc nothrow;
3504     char* rindex(const(char)*, int) @nogc nothrow;
3505     char* index(const(char)*, int) @nogc nothrow;
3506     void bzero(void*, c_ulong) @nogc nothrow;
3507     void bcopy(const(void)*, void*, c_ulong) @nogc nothrow;
3508     int bcmp(const(void)*, const(void)*, c_ulong) @nogc nothrow;
3509     alias _Float32 = float;
3510     alias _Float64 = double;
3511     alias _Float32x = double;
3512     char* stpncpy(char*, const(char)*, c_ulong) @nogc nothrow;
3513     alias _Float64x = real;
3514     char* __stpncpy(char*, const(char)*, c_ulong) @nogc nothrow;
3515     char* stpcpy(char*, const(char)*) @nogc nothrow;
3516     char* __stpcpy(char*, const(char)*) @nogc nothrow;
3517     char* strsignal(int) @nogc nothrow;
3518     extern __gshared char* optarg;
3519     extern __gshared int optind;
3520     extern __gshared int opterr;
3521     extern __gshared int optopt;
3522     int getopt(int, char**, const(char)*) @nogc nothrow;
3523     char* strsep(char**, const(char)*) @nogc nothrow;
3524     void explicit_bzero(void*, c_ulong) @nogc nothrow;
3525     char* strerror_l(int, __locale_struct*) @nogc nothrow;
3526     int strerror_r(int, char*, c_ulong) @nogc nothrow;
3527     char* strerror(int) @nogc nothrow;
3528     c_ulong strnlen(const(char)*, c_ulong) @nogc nothrow;
3529     c_ulong strlen(const(char)*) @nogc nothrow;
3530     char* strtok_r(char*, const(char)*, char**) @nogc nothrow;
3531     char* __strtok_r(char*, const(char)*, char**) @nogc nothrow;
3532     char* strtok(char*, const(char)*) @nogc nothrow;
3533     char* strstr(const(char)*, const(char)*) @nogc nothrow;
3534     char* strpbrk(const(char)*, const(char)*) @nogc nothrow;
3535     c_ulong strspn(const(char)*, const(char)*) @nogc nothrow;
3536     c_ulong strcspn(const(char)*, const(char)*) @nogc nothrow;
3537     char* strrchr(const(char)*, int) @nogc nothrow;
3538     char* strchr(const(char)*, int) @nogc nothrow;
3539     char* strndup(const(char)*, c_ulong) @nogc nothrow;
3540     char* strdup(const(char)*) @nogc nothrow;
3541     c_ulong strxfrm_l(char*, const(char)*, c_ulong, __locale_struct*) @nogc nothrow;
3542     int strcoll_l(const(char)*, const(char)*, __locale_struct*) @nogc nothrow;
3543     c_ulong strxfrm(char*, const(char)*, c_ulong) @nogc nothrow;
3544     int strcoll(const(char)*, const(char)*) @nogc nothrow;
3545     int strncmp(const(char)*, const(char)*, c_ulong) @nogc nothrow;
3546     int strcmp(const(char)*, const(char)*) @nogc nothrow;
3547     char* strncat(char*, const(char)*, c_ulong) @nogc nothrow;
3548     char* strcat(char*, const(char)*) @nogc nothrow;
3549     char* strncpy(char*, const(char)*, c_ulong) @nogc nothrow;
3550     char* strcpy(char*, const(char)*) @nogc nothrow;
3551     void* memchr(const(void)*, int, c_ulong) @nogc nothrow;
3552     int memcmp(const(void)*, const(void)*, c_ulong) @nogc nothrow;
3553     void* memset(void*, int, c_ulong) @nogc nothrow;
3554     void* memccpy(void*, const(void)*, int, c_ulong) @nogc nothrow;
3555     void* memmove(void*, const(void)*, c_ulong) @nogc nothrow;
3556     void* memcpy(void*, const(void)*, c_ulong) @nogc nothrow;
3557     int getloadavg(double*, int) @nogc nothrow;
3558     int getsubopt(char**, char**, char**) @nogc nothrow;
3559     int rpmatch(const(char)*) @nogc nothrow;
3560     c_ulong wcstombs(char*, const(int)*, c_ulong) @nogc nothrow;
3561     c_ulong mbstowcs(int*, const(char)*, c_ulong) @nogc nothrow;
3562     int wctomb(char*, int) @nogc nothrow;
3563     int mbtowc(int*, const(char)*, c_ulong) @nogc nothrow;
3564     int mblen(const(char)*, c_ulong) @nogc nothrow;
3565     int qfcvt_r(real, int, int*, int*, char*, c_ulong) @nogc nothrow;
3566     struct __pthread_rwlock_arch_t
3567     {
3568         uint __readers;
3569         uint __writers;
3570         uint __wrphase_futex;
3571         uint __writers_futex;
3572         uint __pad3;
3573         uint __pad4;
3574         int __cur_writer;
3575         int __shared;
3576         byte __rwelision;
3577         ubyte[7] __pad1;
3578         c_ulong __pad2;
3579         uint __flags;
3580     }
3581     int qecvt_r(real, int, int*, int*, char*, c_ulong) @nogc nothrow;
3582     alias pthread_t = c_ulong;
3583     union pthread_mutexattr_t
3584     {
3585         char[4] __size;
3586         int __align;
3587     }
3588     union pthread_condattr_t
3589     {
3590         char[4] __size;
3591         int __align;
3592     }
3593     alias pthread_key_t = uint;
3594     alias pthread_once_t = int;
3595     union pthread_attr_t
3596     {
3597         char[56] __size;
3598         c_long __align;
3599     }
3600     union pthread_mutex_t
3601     {
3602         __pthread_mutex_s __data;
3603         char[40] __size;
3604         c_long __align;
3605     }
3606     union pthread_cond_t
3607     {
3608         __pthread_cond_s __data;
3609         char[48] __size;
3610         long __align;
3611     }
3612     union pthread_rwlock_t
3613     {
3614         __pthread_rwlock_arch_t __data;
3615         char[56] __size;
3616         c_long __align;
3617     }
3618     union pthread_rwlockattr_t
3619     {
3620         char[8] __size;
3621         c_long __align;
3622     }
3623     alias pthread_spinlock_t = int;
3624     union pthread_barrier_t
3625     {
3626         char[32] __size;
3627         c_long __align;
3628     }
3629     union pthread_barrierattr_t
3630     {
3631         char[4] __size;
3632         int __align;
3633     }
3634     int fcvt_r(double, int, int*, int*, char*, c_ulong) @nogc nothrow;
3635     int ecvt_r(double, int, int*, int*, char*, c_ulong) @nogc nothrow;
3636     alias int8_t = byte;
3637     alias int16_t = short;
3638     alias int32_t = int;
3639     alias int64_t = c_long;
3640     alias uint8_t = ubyte;
3641     alias uint16_t = ushort;
3642     alias uint32_t = uint;
3643     alias uint64_t = ulong;
3644     char* qgcvt(real, int, char*) @nogc nothrow;
3645     char* qfcvt(real, int, int*, int*) @nogc nothrow;
3646     extern __gshared int sys_nerr;
3647     extern __gshared const(const(char)*)[0] sys_errlist;
3648     alias __pthread_list_t = __pthread_internal_list;
3649     struct __pthread_internal_list
3650     {
3651         __pthread_internal_list* __prev;
3652         __pthread_internal_list* __next;
3653     }
3654     char* qecvt(real, int, int*, int*) @nogc nothrow;
3655     struct __pthread_mutex_s
3656     {
3657         int __lock;
3658         uint __count;
3659         int __owner;
3660         uint __nusers;
3661         int __kind;
3662         short __spins;
3663         short __elision;
3664         __pthread_internal_list __list;
3665     }
3666     struct __pthread_cond_s
3667     {
3668         static union _Anonymous_34
3669         {
3670             ulong __wseq;
3671             static struct _Anonymous_35
3672             {
3673                 uint __low;
3674                 uint __high;
3675             }
3676             _Anonymous_35 __wseq32;
3677         }
3678         _Anonymous_34 _anonymous_36;
3679         auto __wseq() @property @nogc pure nothrow { return _anonymous_36.__wseq; }
3680         void __wseq(_T_)(auto ref _T_ val) @property @nogc pure nothrow { _anonymous_36.__wseq = val; }
3681         auto __wseq32() @property @nogc pure nothrow { return _anonymous_36.__wseq32; }
3682         void __wseq32(_T_)(auto ref _T_ val) @property @nogc pure nothrow { _anonymous_36.__wseq32 = val; }
3683         static union _Anonymous_37
3684         {
3685             ulong __g1_start;
3686             static struct _Anonymous_38
3687             {
3688                 uint __low;
3689                 uint __high;
3690             }
3691             _Anonymous_38 __g1_start32;
3692         }
3693         _Anonymous_37 _anonymous_39;
3694         auto __g1_start() @property @nogc pure nothrow { return _anonymous_39.__g1_start; }
3695         void __g1_start(_T_)(auto ref _T_ val) @property @nogc pure nothrow { _anonymous_39.__g1_start = val; }
3696         auto __g1_start32() @property @nogc pure nothrow { return _anonymous_39.__g1_start32; }
3697         void __g1_start32(_T_)(auto ref _T_ val) @property @nogc pure nothrow { _anonymous_39.__g1_start32 = val; }
3698         uint[2] __g_refs;
3699         uint[2] __g_size;
3700         uint __g1_orig_size;
3701         uint __wrefs;
3702         uint[2] __g_signals;
3703     }
3704     char* gcvt(double, int, char*) @nogc nothrow;
3705     char* fcvt(double, int, int*, int*) @nogc nothrow;
3706     char* ecvt(double, int, int*, int*) @nogc nothrow;
3707     lldiv_t lldiv(long, long) @nogc nothrow;
3708     alias __u_char = ubyte;
3709     alias __u_short = ushort;
3710     alias __u_int = uint;
3711     alias __u_long = c_ulong;
3712     alias __int8_t = byte;
3713     alias __uint8_t = ubyte;
3714     alias __int16_t = short;
3715     alias __uint16_t = ushort;
3716     alias __int32_t = int;
3717     alias __uint32_t = uint;
3718     alias __int64_t = c_long;
3719     alias __uint64_t = c_ulong;
3720     alias __int_least8_t = byte;
3721     alias __uint_least8_t = ubyte;
3722     alias __int_least16_t = short;
3723     alias __uint_least16_t = ushort;
3724     alias __int_least32_t = int;
3725     alias __uint_least32_t = uint;
3726     alias __int_least64_t = c_long;
3727     alias __uint_least64_t = c_ulong;
3728     alias __quad_t = c_long;
3729     alias __u_quad_t = c_ulong;
3730     alias __intmax_t = c_long;
3731     alias __uintmax_t = c_ulong;
3732     ldiv_t ldiv(c_long, c_long) @nogc nothrow;
3733     div_t div(int, int) @nogc nothrow;
3734     long llabs(long) @nogc nothrow;
3735     c_long labs(c_long) @nogc nothrow;
3736     alias __dev_t = c_ulong;
3737     alias __uid_t = uint;
3738     alias __gid_t = uint;
3739     alias __ino_t = c_ulong;
3740     alias __ino64_t = c_ulong;
3741     alias __mode_t = uint;
3742     alias __nlink_t = c_ulong;
3743     alias __off_t = c_long;
3744     alias __off64_t = c_long;
3745     alias __pid_t = int;
3746     struct __fsid_t
3747     {
3748         int[2] __val;
3749     }
3750     alias __clock_t = c_long;
3751     alias __rlim_t = c_ulong;
3752     alias __rlim64_t = c_ulong;
3753     alias __id_t = uint;
3754     alias __time_t = c_long;
3755     alias __useconds_t = uint;
3756     alias __suseconds_t = c_long;
3757     alias __daddr_t = int;
3758     alias __key_t = int;
3759     alias __clockid_t = int;
3760     alias __timer_t = void*;
3761     alias __blksize_t = c_long;
3762     alias __blkcnt_t = c_long;
3763     alias __blkcnt64_t = c_long;
3764     alias __fsblkcnt_t = c_ulong;
3765     alias __fsblkcnt64_t = c_ulong;
3766     alias __fsfilcnt_t = c_ulong;
3767     alias __fsfilcnt64_t = c_ulong;
3768     alias __fsword_t = c_long;
3769     alias __ssize_t = c_long;
3770     alias __syscall_slong_t = c_long;
3771     alias __syscall_ulong_t = c_ulong;
3772     alias __loff_t = c_long;
3773     alias __caddr_t = char*;
3774     alias __intptr_t = c_long;
3775     alias __socklen_t = uint;
3776     alias __sig_atomic_t = int;
3777     int abs(int) @nogc nothrow;
3778     alias FILE = _IO_FILE;
3779     void qsort(void*, c_ulong, c_ulong, int function(const(void)*, const(void)*)) @nogc nothrow;
3780     struct _IO_FILE_DUMMY
3781     {
3782         int _flags;
3783         char* _IO_read_ptr;
3784         char* _IO_read_end;
3785         char* _IO_read_base;
3786         char* _IO_write_base;
3787         char* _IO_write_ptr;
3788         char* _IO_write_end;
3789         char* _IO_buf_base;
3790         char* _IO_buf_end;
3791         char* _IO_save_base;
3792         char* _IO_backup_base;
3793         char* _IO_save_end;
3794         _IO_marker* _markers;
3795         _IO_FILE* _chain;
3796         int _fileno;
3797         int _flags2;
3798         c_long _old_offset;
3799         ushort _cur_column;
3800         byte _vtable_offset;
3801         char[1] _shortbuf;
3802         void* _lock;
3803         c_long _offset;
3804         _IO_codecvt* _codecvt;
3805         _IO_wide_data* _wide_data;
3806         _IO_FILE* _freeres_list;
3807         void* _freeres_buf;
3808         c_ulong __pad5;
3809         int _mode;
3810         char[20] _unused2;
3811     }
3812 	version(LDC) {
3813 		import core.stdc.stdio : _IO_FILE = FILE;
3814 	} else version(Windows) {
3815 		alias _IO_FILE = _IO_FILE_DUMMY;
3816 	} else {
3817 		alias _IO_FILE = _IO_FILE_DUMMY;
3818 	}
3819     alias __FILE = _IO_FILE;
3820     alias __fpos64_t = _G_fpos64_t;
3821     struct _G_fpos64_t
3822     {
3823         c_long __pos;
3824         __mbstate_t __state;
3825     }
3826     alias __fpos_t = _G_fpos_t;
3827     struct _G_fpos_t
3828     {
3829         c_long __pos;
3830         __mbstate_t __state;
3831     }
3832     void* bsearch(const(void)*, const(void)*, c_ulong, c_ulong, int function(const(void)*, const(void)*)) @nogc nothrow;
3833     struct __locale_struct
3834     {
3835         __locale_data*[13] __locales;
3836         const(ushort)* __ctype_b;
3837         const(int)* __ctype_tolower;
3838         const(int)* __ctype_toupper;
3839         const(char)*[13] __names;
3840     }
3841     alias __locale_t = __locale_struct*;
3842     alias __compar_fn_t = int function(const(void)*, const(void)*);
3843     struct __mbstate_t
3844     {
3845         int __count;
3846         static union _Anonymous_40
3847         {
3848             uint __wch;
3849             char[4] __wchb;
3850         }
3851         _Anonymous_40 __value;
3852     }
3853     struct __sigset_t
3854     {
3855         c_ulong[16] __val;
3856     }
3857     char* realpath(const(char)*, char*) @nogc nothrow;
3858     alias clock_t = c_long;
3859     alias clockid_t = int;
3860     alias locale_t = __locale_struct*;
3861     int system(const(char)*) @nogc nothrow;
3862     alias sigset_t = __sigset_t;
3863     struct _IO_marker;
3864     struct _IO_codecvt;
3865     struct _IO_wide_data;
3866     alias _IO_lock_t = void;
3867     char* mkdtemp(char*) @nogc nothrow;
3868     int mkstemps(char*, int) @nogc nothrow;
3869     struct itimerspec
3870     {
3871         timespec it_interval;
3872         timespec it_value;
3873     }
3874     struct timespec
3875     {
3876         c_long tv_sec;
3877         c_long tv_nsec;
3878     }
3879     struct timeval
3880     {
3881         c_long tv_sec;
3882         c_long tv_usec;
3883     }
3884     int mkstemp(char*) @nogc nothrow;
3885     struct tm
3886     {
3887         int tm_sec;
3888         int tm_min;
3889         int tm_hour;
3890         int tm_mday;
3891         int tm_mon;
3892         int tm_year;
3893         int tm_wday;
3894         int tm_yday;
3895         int tm_isdst;
3896         c_long tm_gmtoff;
3897         const(char)* tm_zone;
3898     }
3899     alias time_t = c_long;
3900     alias timer_t = void*;
3901     char* mktemp(char*) @nogc nothrow;
3902     int clearenv() @nogc nothrow;
3903     int unsetenv(const(char)*) @nogc nothrow;
3904     int setenv(const(char)*, const(char)*, int) @nogc nothrow;
3905     int putenv(char*) @nogc nothrow;
3906     char* getenv(const(char)*) @nogc nothrow;
3907     void _Exit(int) @nogc nothrow;
3908     void quick_exit(int) @nogc nothrow;
3909     void exit(int) @nogc nothrow;
3910     int on_exit(void function(int, void*), void*) @nogc nothrow;
3911     int at_quick_exit(void function()) @nogc nothrow;
3912     static ushort __uint16_identity(ushort) @nogc nothrow;
3913     static uint __uint32_identity(uint) @nogc nothrow;
3914     static c_ulong __uint64_identity(c_ulong) @nogc nothrow;
3915     int atexit(void function()) @nogc nothrow;
3916     void abort() @nogc nothrow;
3917     void* aligned_alloc(c_ulong, c_ulong) @nogc nothrow;
3918     int posix_memalign(void**, c_ulong, c_ulong) @nogc nothrow;
3919     void* valloc(c_ulong) @nogc nothrow;
3920     void free(void*) @nogc nothrow;
3921     void* reallocarray(void*, c_ulong, c_ulong) @nogc nothrow;
3922     void* realloc(void*, c_ulong) @nogc nothrow;
3923     void* calloc(c_ulong, c_ulong) @nogc nothrow;
3924     void* malloc(c_ulong) @nogc nothrow;
3925     int lcong48_r(ushort*, drand48_data*) @nogc nothrow;
3926     int seed48_r(ushort*, drand48_data*) @nogc nothrow;
3927     enum _Anonymous_41
3928     {
3929         _ISupper = 256,
3930         _ISlower = 512,
3931         _ISalpha = 1024,
3932         _ISdigit = 2048,
3933         _ISxdigit = 4096,
3934         _ISspace = 8192,
3935         _ISprint = 16384,
3936         _ISgraph = 32768,
3937         _ISblank = 1,
3938         _IScntrl = 2,
3939         _ISpunct = 4,
3940         _ISalnum = 8,
3941     }
3942     enum _ISupper = _Anonymous_41._ISupper;
3943     enum _ISlower = _Anonymous_41._ISlower;
3944     enum _ISalpha = _Anonymous_41._ISalpha;
3945     enum _ISdigit = _Anonymous_41._ISdigit;
3946     enum _ISxdigit = _Anonymous_41._ISxdigit;
3947     enum _ISspace = _Anonymous_41._ISspace;
3948     enum _ISprint = _Anonymous_41._ISprint;
3949     enum _ISgraph = _Anonymous_41._ISgraph;
3950     enum _ISblank = _Anonymous_41._ISblank;
3951     enum _IScntrl = _Anonymous_41._IScntrl;
3952     enum _ISpunct = _Anonymous_41._ISpunct;
3953     enum _ISalnum = _Anonymous_41._ISalnum;
3954     const(ushort)** __ctype_b_loc() @nogc nothrow;
3955     const(int)** __ctype_tolower_loc() @nogc nothrow;
3956     const(int)** __ctype_toupper_loc() @nogc nothrow;
3957     int srand48_r(c_long, drand48_data*) @nogc nothrow;
3958     int jrand48_r(ushort*, drand48_data*, c_long*) @nogc nothrow;
3959     pragma(mangle, "isalnum") int isalnum_(int) @nogc nothrow;
3960     pragma(mangle, "isalpha") int isalpha_(int) @nogc nothrow;
3961     pragma(mangle, "iscntrl") int iscntrl_(int) @nogc nothrow;
3962     pragma(mangle, "isdigit") int isdigit_(int) @nogc nothrow;
3963     pragma(mangle, "islower") int islower_(int) @nogc nothrow;
3964     pragma(mangle, "isgraph") int isgraph_(int) @nogc nothrow;
3965     pragma(mangle, "isprint") int isprint_(int) @nogc nothrow;
3966     pragma(mangle, "ispunct") int ispunct_(int) @nogc nothrow;
3967     pragma(mangle, "isspace") int isspace_(int) @nogc nothrow;
3968     pragma(mangle, "isupper") int isupper_(int) @nogc nothrow;
3969     pragma(mangle, "isxdigit") int isxdigit_(int) @nogc nothrow;
3970     int tolower(int) @nogc nothrow;
3971     int toupper(int) @nogc nothrow;
3972     pragma(mangle, "isblank") int isblank_(int) @nogc nothrow;
3973     pragma(mangle, "isascii") int isascii_(int) @nogc nothrow;
3974     pragma(mangle, "toascii") int toascii_(int) @nogc nothrow;
3975     pragma(mangle, "_toupper") int _toupper_(int) @nogc nothrow;
3976     pragma(mangle, "_tolower") int _tolower_(int) @nogc nothrow;
3977     int mrand48_r(drand48_data*, c_long*) @nogc nothrow;
3978     int nrand48_r(ushort*, drand48_data*, c_long*) @nogc nothrow;
3979     int lrand48_r(drand48_data*, c_long*) @nogc nothrow;
3980     int erand48_r(ushort*, drand48_data*, double*) @nogc nothrow;
3981     int drand48_r(drand48_data*, double*) @nogc nothrow;
3982     struct drand48_data
3983     {
3984         ushort[3] __x;
3985         ushort[3] __old_x;
3986         ushort __c;
3987         ushort __init;
3988         ulong __a;
3989     }
3990     pragma(mangle, "isalnum_l") int isalnum_l_(int, __locale_struct*) @nogc nothrow;
3991     pragma(mangle, "isalpha_l") int isalpha_l_(int, __locale_struct*) @nogc nothrow;
3992     pragma(mangle, "iscntrl_l") int iscntrl_l_(int, __locale_struct*) @nogc nothrow;
3993     pragma(mangle, "isdigit_l") int isdigit_l_(int, __locale_struct*) @nogc nothrow;
3994     pragma(mangle, "islower_l") int islower_l_(int, __locale_struct*) @nogc nothrow;
3995     pragma(mangle, "isgraph_l") int isgraph_l_(int, __locale_struct*) @nogc nothrow;
3996     pragma(mangle, "isprint_l") int isprint_l_(int, __locale_struct*) @nogc nothrow;
3997     pragma(mangle, "ispunct_l") int ispunct_l_(int, __locale_struct*) @nogc nothrow;
3998     pragma(mangle, "isspace_l") int isspace_l_(int, __locale_struct*) @nogc nothrow;
3999     pragma(mangle, "isupper_l") int isupper_l_(int, __locale_struct*) @nogc nothrow;
4000     pragma(mangle, "isxdigit_l") int isxdigit_l_(int, __locale_struct*) @nogc nothrow;
4001     pragma(mangle, "isblank_l") int isblank_l_(int, __locale_struct*) @nogc nothrow;
4002     int __tolower_l(int, __locale_struct*) @nogc nothrow;
4003     int tolower_l(int, __locale_struct*) @nogc nothrow;
4004     int __toupper_l(int, __locale_struct*) @nogc nothrow;
4005     int toupper_l(int, __locale_struct*) @nogc nothrow;
4006     void lcong48(ushort*) @nogc nothrow;
4007     ushort* seed48(ushort*) @nogc nothrow;
4008     void srand48(c_long) @nogc nothrow;
4009     c_long jrand48(ushort*) @nogc nothrow;
4010     c_long mrand48() @nogc nothrow;
4011     c_long nrand48(ushort*) @nogc nothrow;
4012     c_long lrand48() @nogc nothrow;
4013     double erand48(ushort*) @nogc nothrow;
4014     double drand48() @nogc nothrow;
4015     int rand_r(uint*) @nogc nothrow;
4016     void srand(uint) @nogc nothrow;
4017     int rand() @nogc nothrow;
4018     int setstate_r(char*, random_data*) @nogc nothrow;
4019     int initstate_r(uint, char*, c_ulong, random_data*) @nogc nothrow;
4020     int srandom_r(uint, random_data*) @nogc nothrow;
4021     int random_r(random_data*, int*) @nogc nothrow;
4022     struct random_data
4023     {
4024         int* fptr;
4025         int* rptr;
4026         int* state;
4027         int rand_type;
4028         int rand_deg;
4029         int rand_sep;
4030         int* end_ptr;
4031     }
4032     char* setstate(char*) @nogc nothrow;
4033     char* initstate(uint, char*, c_ulong) @nogc nothrow;
4034     void srandom(uint) @nogc nothrow;
4035     int* __errno_location() @nogc nothrow;
4036     c_long random() @nogc nothrow;
4037     c_long a64l(const(char)*) @nogc nothrow;
4038     char* l64a(c_long) @nogc nothrow;
4039     ulong strtoull(const(char)*, char**, int) @nogc nothrow;
4040     long strtoll(const(char)*, char**, int) @nogc nothrow;
4041     ulong strtouq(const(char)*, char**, int) @nogc nothrow;
4042     long strtoq(const(char)*, char**, int) @nogc nothrow;
4043     c_ulong strtoul(const(char)*, char**, int) @nogc nothrow;
4044     c_long strtol(const(char)*, char**, int) @nogc nothrow;
4045     real strtold(const(char)*, char**) @nogc nothrow;
4046     float strtof(const(char)*, char**) @nogc nothrow;
4047     alias int_least8_t = byte;
4048     alias int_least16_t = short;
4049     alias int_least32_t = int;
4050     alias int_least64_t = c_long;
4051     alias uint_least8_t = ubyte;
4052     alias uint_least16_t = ushort;
4053     alias uint_least32_t = uint;
4054     alias uint_least64_t = c_ulong;
4055     alias int_fast8_t = byte;
4056     alias int_fast16_t = c_long;
4057     alias int_fast32_t = c_long;
4058     alias int_fast64_t = c_long;
4059     alias uint_fast8_t = ubyte;
4060     alias uint_fast16_t = c_ulong;
4061     alias uint_fast32_t = c_ulong;
4062     alias uint_fast64_t = c_ulong;
4063     alias intptr_t = c_long;
4064     double strtod(const(char)*, char**) @nogc nothrow;
4065     alias uintptr_t = c_ulong;
4066     alias intmax_t = c_long;
4067     alias uintmax_t = c_ulong;
4068     long atoll(const(char)*) @nogc nothrow;
4069     c_long atol(const(char)*) @nogc nothrow;
4070     int atoi(const(char)*) @nogc nothrow;
4071     double atof(const(char)*) @nogc nothrow;
4072     c_ulong __ctype_get_mb_cur_max() @nogc nothrow;
4073     struct lldiv_t
4074     {
4075         long quot;
4076         long rem;
4077     }
4078     struct ldiv_t
4079     {
4080         c_long quot;
4081         c_long rem;
4082     }
4083     struct div_t
4084     {
4085         int quot;
4086         int rem;
4087     }
4088     int __overflow(_IO_FILE*, int) @nogc nothrow;
4089     int __uflow(_IO_FILE*) @nogc nothrow;
4090     void funlockfile(_IO_FILE*) @nogc nothrow;
4091     int ftrylockfile(_IO_FILE*) @nogc nothrow;
4092     void flockfile(_IO_FILE*) @nogc nothrow;
4093     char* ctermid(char*) @nogc nothrow;
4094     int pclose(_IO_FILE*) @nogc nothrow;
4095     _IO_FILE* popen(const(char)*, const(char)*) @nogc nothrow;
4096     int fileno_unlocked(_IO_FILE*) @nogc nothrow;
4097     int fileno(_IO_FILE*) @nogc nothrow;
4098     alias off_t = c_long;
4099     alias ssize_t = c_long;
4100     void perror(const(char)*) @nogc nothrow;
4101     alias fpos_t = _G_fpos_t;
4102     int ferror_unlocked(_IO_FILE*) @nogc nothrow;
4103     int feof_unlocked(_IO_FILE*) @nogc nothrow;
4104     void clearerr_unlocked(_IO_FILE*) @nogc nothrow;
4105     extern __gshared _IO_FILE* stdin;
4106     extern __gshared _IO_FILE* stdout;
4107     extern __gshared _IO_FILE* stderr;
4108     int ferror(_IO_FILE*) @nogc nothrow;
4109     int remove(const(char)*) @nogc nothrow;
4110     int rename(const(char)*, const(char)*) @nogc nothrow;
4111     int renameat(int, const(char)*, int, const(char)*) @nogc nothrow;
4112     _IO_FILE* tmpfile() @nogc nothrow;
4113     char* tmpnam(char*) @nogc nothrow;
4114     char* tmpnam_r(char*) @nogc nothrow;
4115     char* tempnam(const(char)*, const(char)*) @nogc nothrow;
4116     int fclose(_IO_FILE*) @nogc nothrow;
4117     int fflush(_IO_FILE*) @nogc nothrow;
4118     int fflush_unlocked(_IO_FILE*) @nogc nothrow;
4119     _IO_FILE* fopen(const(char)*, const(char)*) @nogc nothrow;
4120     _IO_FILE* freopen(const(char)*, const(char)*, _IO_FILE*) @nogc nothrow;
4121     _IO_FILE* fdopen(int, const(char)*) @nogc nothrow;
4122     _IO_FILE* fmemopen(void*, c_ulong, const(char)*) @nogc nothrow;
4123     _IO_FILE* open_memstream(char**, c_ulong*) @nogc nothrow;
4124     void setbuf(_IO_FILE*, char*) @nogc nothrow;
4125     int setvbuf(_IO_FILE*, char*, int, c_ulong) @nogc nothrow;
4126     void setbuffer(_IO_FILE*, char*, c_ulong) @nogc nothrow;
4127     void setlinebuf(_IO_FILE*) @nogc nothrow;
4128     int fprintf(_IO_FILE*, const(char)*, ...) @nogc nothrow;
4129     int printf(const(char)*, ...) @nogc nothrow;
4130     int sprintf(char*, const(char)*, ...) @nogc nothrow;
4131     int vfprintf(_IO_FILE*, const(char)*, va_list*) @nogc nothrow;
4132     int vprintf(const(char)*, va_list*) @nogc nothrow;
4133     int vsprintf(char*, const(char)*, va_list*) @nogc nothrow;
4134     int snprintf(char*, c_ulong, const(char)*, ...) @nogc nothrow;
4135     int vsnprintf(char*, c_ulong, const(char)*, va_list*) @nogc nothrow;
4136     int vdprintf(int, const(char)*, va_list*) @nogc nothrow;
4137     int dprintf(int, const(char)*, ...) @nogc nothrow;
4138     int fscanf(_IO_FILE*, const(char)*, ...) @nogc nothrow;
4139     int scanf(const(char)*, ...) @nogc nothrow;
4140     int sscanf(const(char)*, const(char)*, ...) @nogc nothrow;
4141     int vfscanf(_IO_FILE*, const(char)*, va_list*) @nogc nothrow;
4142     int vscanf(const(char)*, va_list*) @nogc nothrow;
4143     int vsscanf(const(char)*, const(char)*, va_list*) @nogc nothrow;
4144     int fgetc(_IO_FILE*) @nogc nothrow;
4145     int getc(_IO_FILE*) @nogc nothrow;
4146     int getchar() @nogc nothrow;
4147     int getc_unlocked(_IO_FILE*) @nogc nothrow;
4148     int getchar_unlocked() @nogc nothrow;
4149     int fgetc_unlocked(_IO_FILE*) @nogc nothrow;
4150     int fputc(int, _IO_FILE*) @nogc nothrow;
4151     int putc(int, _IO_FILE*) @nogc nothrow;
4152     int putchar(int) @nogc nothrow;
4153     int fputc_unlocked(int, _IO_FILE*) @nogc nothrow;
4154     int putc_unlocked(int, _IO_FILE*) @nogc nothrow;
4155     int putchar_unlocked(int) @nogc nothrow;
4156     int getw(_IO_FILE*) @nogc nothrow;
4157     int putw(int, _IO_FILE*) @nogc nothrow;
4158     char* fgets(char*, int, _IO_FILE*) @nogc nothrow;
4159     c_long __getdelim(char**, c_ulong*, int, _IO_FILE*) @nogc nothrow;
4160     c_long getdelim(char**, c_ulong*, int, _IO_FILE*) @nogc nothrow;
4161     c_long getline(char**, c_ulong*, _IO_FILE*) @nogc nothrow;
4162     int fputs(const(char)*, _IO_FILE*) @nogc nothrow;
4163     int puts(const(char)*) @nogc nothrow;
4164     int ungetc(int, _IO_FILE*) @nogc nothrow;
4165     c_ulong fread(void*, c_ulong, c_ulong, _IO_FILE*) @nogc nothrow;
4166     c_ulong fwrite(const(void)*, c_ulong, c_ulong, _IO_FILE*) @nogc nothrow;
4167     c_ulong fread_unlocked(void*, c_ulong, c_ulong, _IO_FILE*) @nogc nothrow;
4168     c_ulong fwrite_unlocked(const(void)*, c_ulong, c_ulong, _IO_FILE*) @nogc nothrow;
4169     int fseek(_IO_FILE*, c_long, int) @nogc nothrow;
4170     c_long ftell(_IO_FILE*) @nogc nothrow;
4171     void rewind(_IO_FILE*) @nogc nothrow;
4172     int fseeko(_IO_FILE*, c_long, int) @nogc nothrow;
4173     c_long ftello(_IO_FILE*) @nogc nothrow;
4174     int fgetpos(_IO_FILE*, _G_fpos_t*) @nogc nothrow;
4175     int fsetpos(_IO_FILE*, const(_G_fpos_t)*) @nogc nothrow;
4176     void clearerr(_IO_FILE*) @nogc nothrow;
4177     int feof(_IO_FILE*) @nogc nothrow;
4178     static if(!is(typeof(P_tmpdir))) {
4179         enum P_tmpdir = "/tmp";
4180     }
4181 
4182 
4183 
4184 
4185     static if(!is(typeof(SEEK_END))) {
4186         enum SEEK_END = 2;
4187     }
4188 
4189 
4190 
4191 
4192     static if(!is(typeof(SEEK_CUR))) {
4193         enum SEEK_CUR = 1;
4194     }
4195 
4196 
4197 
4198 
4199     static if(!is(typeof(SEEK_SET))) {
4200         enum SEEK_SET = 0;
4201     }
4202 
4203 
4204 
4205 
4206 
4207 
4208     static if(!is(typeof(BUFSIZ))) {
4209         enum BUFSIZ = 8192;
4210     }
4211 
4212 
4213 
4214 
4215     static if(!is(typeof(_IONBF))) {
4216         enum _IONBF = 2;
4217     }
4218 
4219 
4220 
4221 
4222     static if(!is(typeof(_IOLBF))) {
4223         enum _IOLBF = 1;
4224     }
4225 
4226 
4227 
4228 
4229     static if(!is(typeof(_IOFBF))) {
4230         enum _IOFBF = 0;
4231     }
4232     static if(!is(typeof(_STDIO_H))) {
4233         enum _STDIO_H = 1;
4234     }
4235     static if(!is(typeof(_STDLIB_H))) {
4236         enum _STDLIB_H = 1;
4237     }
4238     static if(!is(typeof(__ldiv_t_defined))) {
4239         enum __ldiv_t_defined = 1;
4240     }
4241     static if(!is(typeof(__lldiv_t_defined))) {
4242         enum __lldiv_t_defined = 1;
4243     }
4244 
4245 
4246 
4247 
4248     static if(!is(typeof(RAND_MAX))) {
4249         enum RAND_MAX = 2147483647;
4250     }
4251 
4252 
4253 
4254 
4255     static if(!is(typeof(EXIT_FAILURE))) {
4256         enum EXIT_FAILURE = 1;
4257     }
4258 
4259 
4260 
4261 
4262     static if(!is(typeof(EXIT_SUCCESS))) {
4263         enum EXIT_SUCCESS = 0;
4264     }
4265     static if(!is(typeof(_STDINT_H))) {
4266         enum _STDINT_H = 1;
4267     }
4268 
4269 
4270 
4271 
4272     static if(!is(typeof(_STDC_PREDEF_H))) {
4273         enum _STDC_PREDEF_H = 1;
4274     }
4275 
4276 
4277 
4278 
4279     static if(!is(typeof(RTSIG_MAX))) {
4280         enum RTSIG_MAX = 32;
4281     }
4282 
4283 
4284 
4285 
4286     static if(!is(typeof(XATTR_LIST_MAX))) {
4287         enum XATTR_LIST_MAX = 65536;
4288     }
4289 
4290 
4291 
4292 
4293     static if(!is(typeof(XATTR_SIZE_MAX))) {
4294         enum XATTR_SIZE_MAX = 65536;
4295     }
4296 
4297 
4298 
4299 
4300     static if(!is(typeof(XATTR_NAME_MAX))) {
4301         enum XATTR_NAME_MAX = 255;
4302     }
4303 
4304 
4305 
4306 
4307     static if(!is(typeof(PIPE_BUF))) {
4308         enum PIPE_BUF = 4096;
4309     }
4310 
4311 
4312 
4313 
4314     static if(!is(typeof(PATH_MAX))) {
4315         enum PATH_MAX = 4096;
4316     }
4317 
4318 
4319 
4320 
4321     static if(!is(typeof(NAME_MAX))) {
4322         enum NAME_MAX = 255;
4323     }
4324 
4325 
4326 
4327 
4328     static if(!is(typeof(MAX_INPUT))) {
4329         enum MAX_INPUT = 255;
4330     }
4331 
4332 
4333 
4334 
4335     static if(!is(typeof(MAX_CANON))) {
4336         enum MAX_CANON = 255;
4337     }
4338 
4339 
4340 
4341 
4342     static if(!is(typeof(LINK_MAX))) {
4343         enum LINK_MAX = 127;
4344     }
4345 
4346 
4347 
4348 
4349     static if(!is(typeof(ARG_MAX))) {
4350         enum ARG_MAX = 131072;
4351     }
4352 
4353 
4354 
4355 
4356     static if(!is(typeof(NGROUPS_MAX))) {
4357         enum NGROUPS_MAX = 65536;
4358     }
4359 
4360 
4361 
4362 
4363     static if(!is(typeof(NR_OPEN))) {
4364         enum NR_OPEN = 1024;
4365     }
4366     static if(!is(typeof(MB_LEN_MAX))) {
4367         enum MB_LEN_MAX = 16;
4368     }
4369 
4370 
4371 
4372 
4373     static if(!is(typeof(_LIBC_LIMITS_H_))) {
4374         enum _LIBC_LIMITS_H_ = 1;
4375     }
4376     static if(!is(typeof(__GLIBC_MINOR__))) {
4377         enum __GLIBC_MINOR__ = 29;
4378     }
4379 
4380 
4381 
4382 
4383     static if(!is(typeof(__GLIBC__))) {
4384         enum __GLIBC__ = 2;
4385     }
4386 
4387 
4388 
4389 
4390     static if(!is(typeof(__GNU_LIBRARY__))) {
4391         enum __GNU_LIBRARY__ = 6;
4392     }
4393 
4394 
4395 
4396 
4397     static if(!is(typeof(__GLIBC_USE_DEPRECATED_SCANF))) {
4398         enum __GLIBC_USE_DEPRECATED_SCANF = 0;
4399     }
4400 
4401 
4402 
4403 
4404     static if(!is(typeof(__GLIBC_USE_DEPRECATED_GETS))) {
4405         enum __GLIBC_USE_DEPRECATED_GETS = 0;
4406     }
4407 
4408 
4409 
4410 
4411     static if(!is(typeof(__USE_FORTIFY_LEVEL))) {
4412         enum __USE_FORTIFY_LEVEL = 0;
4413     }
4414 
4415 
4416 
4417 
4418     static if(!is(typeof(__USE_ATFILE))) {
4419         enum __USE_ATFILE = 1;
4420     }
4421 
4422 
4423 
4424 
4425     static if(!is(typeof(__USE_MISC))) {
4426         enum __USE_MISC = 1;
4427     }
4428 
4429 
4430 
4431 
4432     static if(!is(typeof(_ATFILE_SOURCE))) {
4433         enum _ATFILE_SOURCE = 1;
4434     }
4435 
4436 
4437 
4438 
4439     static if(!is(typeof(__USE_XOPEN2K8))) {
4440         enum __USE_XOPEN2K8 = 1;
4441     }
4442 
4443 
4444 
4445 
4446     static if(!is(typeof(__USE_ISOC99))) {
4447         enum __USE_ISOC99 = 1;
4448     }
4449 
4450 
4451 
4452 
4453     static if(!is(typeof(__USE_ISOC95))) {
4454         enum __USE_ISOC95 = 1;
4455     }
4456 
4457 
4458 
4459 
4460     static if(!is(typeof(__USE_XOPEN2K))) {
4461         enum __USE_XOPEN2K = 1;
4462     }
4463 
4464 
4465 
4466 
4467     static if(!is(typeof(__USE_POSIX199506))) {
4468         enum __USE_POSIX199506 = 1;
4469     }
4470 
4471 
4472 
4473 
4474     static if(!is(typeof(__USE_POSIX199309))) {
4475         enum __USE_POSIX199309 = 1;
4476     }
4477 
4478 
4479 
4480 
4481     static if(!is(typeof(__USE_POSIX2))) {
4482         enum __USE_POSIX2 = 1;
4483     }
4484 
4485 
4486 
4487 
4488     static if(!is(typeof(__USE_POSIX))) {
4489         enum __USE_POSIX = 1;
4490     }
4491 
4492 
4493 
4494 
4495     static if(!is(typeof(_POSIX_C_SOURCE))) {
4496         enum _POSIX_C_SOURCE = 200809L;
4497     }
4498 
4499 
4500 
4501 
4502     static if(!is(typeof(_POSIX_SOURCE))) {
4503         enum _POSIX_SOURCE = 1;
4504     }
4505 
4506 
4507 
4508 
4509     static if(!is(typeof(__USE_POSIX_IMPLICITLY))) {
4510         enum __USE_POSIX_IMPLICITLY = 1;
4511     }
4512 
4513 
4514 
4515 
4516     static if(!is(typeof(__USE_ISOC11))) {
4517         enum __USE_ISOC11 = 1;
4518     }
4519 
4520 
4521 
4522 
4523     static if(!is(typeof(_DEFAULT_SOURCE))) {
4524         enum _DEFAULT_SOURCE = 1;
4525     }
4526     static if(!is(typeof(_FEATURES_H))) {
4527         enum _FEATURES_H = 1;
4528     }
4529 
4530 
4531 
4532 
4533 
4534 
4535     static if(!is(typeof(_ERRNO_H))) {
4536         enum _ERRNO_H = 1;
4537     }
4538     static if(!is(typeof(__PDP_ENDIAN))) {
4539         enum __PDP_ENDIAN = 3412;
4540     }
4541 
4542 
4543 
4544 
4545     static if(!is(typeof(__BIG_ENDIAN))) {
4546         enum __BIG_ENDIAN = 4321;
4547     }
4548 
4549 
4550 
4551 
4552     static if(!is(typeof(__LITTLE_ENDIAN))) {
4553         enum __LITTLE_ENDIAN = 1234;
4554     }
4555 
4556 
4557 
4558 
4559     static if(!is(typeof(_ENDIAN_H))) {
4560         enum _ENDIAN_H = 1;
4561     }
4562     static if(!is(typeof(_CTYPE_H))) {
4563         enum _CTYPE_H = 1;
4564     }
4565 
4566 
4567 
4568 
4569     static if(!is(typeof(__SYSCALL_WORDSIZE))) {
4570         enum __SYSCALL_WORDSIZE = 64;
4571     }
4572 
4573 
4574 
4575 
4576     static if(!is(typeof(__WORDSIZE_TIME64_COMPAT32))) {
4577         enum __WORDSIZE_TIME64_COMPAT32 = 1;
4578     }
4579 
4580 
4581 
4582 
4583     static if(!is(typeof(__WORDSIZE))) {
4584         enum __WORDSIZE = 64;
4585     }
4586     static if(!is(typeof(_BITS_WCHAR_H))) {
4587         enum _BITS_WCHAR_H = 1;
4588     }
4589 
4590 
4591 
4592 
4593     static if(!is(typeof(__WCOREFLAG))) {
4594         enum __WCOREFLAG = 0x80;
4595     }
4596 
4597 
4598 
4599 
4600     static if(!is(typeof(__W_CONTINUED))) {
4601         enum __W_CONTINUED = 0xffff;
4602     }
4603     static if(!is(typeof(__WCLONE))) {
4604         enum __WCLONE = 0x80000000;
4605     }
4606 
4607 
4608 
4609 
4610     static if(!is(typeof(__WALL))) {
4611         enum __WALL = 0x40000000;
4612     }
4613 
4614 
4615 
4616 
4617     static if(!is(typeof(__WNOTHREAD))) {
4618         enum __WNOTHREAD = 0x20000000;
4619     }
4620 
4621 
4622 
4623 
4624     static if(!is(typeof(WNOWAIT))) {
4625         enum WNOWAIT = 0x01000000;
4626     }
4627 
4628 
4629 
4630 
4631     static if(!is(typeof(WCONTINUED))) {
4632         enum WCONTINUED = 8;
4633     }
4634 
4635 
4636 
4637 
4638     static if(!is(typeof(WEXITED))) {
4639         enum WEXITED = 4;
4640     }
4641 
4642 
4643 
4644 
4645     static if(!is(typeof(WSTOPPED))) {
4646         enum WSTOPPED = 2;
4647     }
4648 
4649 
4650 
4651 
4652     static if(!is(typeof(WUNTRACED))) {
4653         enum WUNTRACED = 2;
4654     }
4655 
4656 
4657 
4658 
4659     static if(!is(typeof(WNOHANG))) {
4660         enum WNOHANG = 1;
4661     }
4662 
4663 
4664 
4665 
4666     static if(!is(typeof(_BITS_UINTN_IDENTITY_H))) {
4667         enum _BITS_UINTN_IDENTITY_H = 1;
4668     }
4669 
4670 
4671 
4672 
4673     static if(!is(typeof(__FD_SETSIZE))) {
4674         enum __FD_SETSIZE = 1024;
4675     }
4676 
4677 
4678 
4679 
4680     static if(!is(typeof(__RLIM_T_MATCHES_RLIM64_T))) {
4681         enum __RLIM_T_MATCHES_RLIM64_T = 1;
4682     }
4683 
4684 
4685 
4686 
4687     static if(!is(typeof(__INO_T_MATCHES_INO64_T))) {
4688         enum __INO_T_MATCHES_INO64_T = 1;
4689     }
4690 
4691 
4692 
4693 
4694     static if(!is(typeof(__OFF_T_MATCHES_OFF64_T))) {
4695         enum __OFF_T_MATCHES_OFF64_T = 1;
4696     }
4697     static if(!is(typeof(_BITS_TYPESIZES_H))) {
4698         enum _BITS_TYPESIZES_H = 1;
4699     }
4700 
4701 
4702 
4703 
4704     static if(!is(typeof(__timer_t_defined))) {
4705         enum __timer_t_defined = 1;
4706     }
4707 
4708 
4709 
4710 
4711     static if(!is(typeof(__time_t_defined))) {
4712         enum __time_t_defined = 1;
4713     }
4714 
4715 
4716 
4717 
4718     static if(!is(typeof(__struct_tm_defined))) {
4719         enum __struct_tm_defined = 1;
4720     }
4721 
4722 
4723 
4724 
4725     static if(!is(typeof(__timeval_defined))) {
4726         enum __timeval_defined = 1;
4727     }
4728 
4729 
4730 
4731 
4732     static if(!is(typeof(_STRUCT_TIMESPEC))) {
4733         enum _STRUCT_TIMESPEC = 1;
4734     }
4735 
4736 
4737 
4738 
4739     static if(!is(typeof(__itimerspec_defined))) {
4740         enum __itimerspec_defined = 1;
4741     }
4742 
4743 
4744 
4745 
4746     static if(!is(typeof(_IO_USER_LOCK))) {
4747         enum _IO_USER_LOCK = 0x8000;
4748     }
4749 
4750 
4751 
4752 
4753 
4754 
4755     static if(!is(typeof(_IO_ERR_SEEN))) {
4756         enum _IO_ERR_SEEN = 0x0020;
4757     }
4758 
4759 
4760 
4761 
4762 
4763 
4764     static if(!is(typeof(_IO_EOF_SEEN))) {
4765         enum _IO_EOF_SEEN = 0x0010;
4766     }
4767     static if(!is(typeof(__struct_FILE_defined))) {
4768         enum __struct_FILE_defined = 1;
4769     }
4770 
4771 
4772 
4773 
4774     static if(!is(typeof(__sigset_t_defined))) {
4775         enum __sigset_t_defined = 1;
4776     }
4777 
4778 
4779 
4780 
4781     static if(!is(typeof(_BITS_TYPES_LOCALE_T_H))) {
4782         enum _BITS_TYPES_LOCALE_T_H = 1;
4783     }
4784 
4785 
4786 
4787 
4788     static if(!is(typeof(__clockid_t_defined))) {
4789         enum __clockid_t_defined = 1;
4790     }
4791 
4792 
4793 
4794 
4795     static if(!is(typeof(__clock_t_defined))) {
4796         enum __clock_t_defined = 1;
4797     }
4798     static if(!is(typeof(____mbstate_t_defined))) {
4799         enum ____mbstate_t_defined = 1;
4800     }
4801 
4802 
4803 
4804 
4805     static if(!is(typeof(_BITS_TYPES___LOCALE_T_H))) {
4806         enum _BITS_TYPES___LOCALE_T_H = 1;
4807     }
4808 
4809 
4810 
4811 
4812     static if(!is(typeof(_____fpos_t_defined))) {
4813         enum _____fpos_t_defined = 1;
4814     }
4815 
4816 
4817 
4818 
4819     static if(!is(typeof(_____fpos64_t_defined))) {
4820         enum _____fpos64_t_defined = 1;
4821     }
4822 
4823 
4824 
4825 
4826     static if(!is(typeof(____FILE_defined))) {
4827         enum ____FILE_defined = 1;
4828     }
4829 
4830 
4831 
4832 
4833     static if(!is(typeof(__FILE_defined))) {
4834         enum __FILE_defined = 1;
4835     }
4836     static if(!is(typeof(_BITS_TYPES_H))) {
4837         enum _BITS_TYPES_H = 1;
4838     }
4839     static if(!is(typeof(_BITS_TIME64_H))) {
4840         enum _BITS_TIME64_H = 1;
4841     }
4842 
4843 
4844 
4845 
4846     static if(!is(typeof(TIMER_ABSTIME))) {
4847         enum TIMER_ABSTIME = 1;
4848     }
4849 
4850 
4851 
4852 
4853     static if(!is(typeof(CLOCK_TAI))) {
4854         enum CLOCK_TAI = 11;
4855     }
4856 
4857 
4858 
4859 
4860     static if(!is(typeof(CLOCK_BOOTTIME_ALARM))) {
4861         enum CLOCK_BOOTTIME_ALARM = 9;
4862     }
4863 
4864 
4865 
4866 
4867     static if(!is(typeof(CLOCK_REALTIME_ALARM))) {
4868         enum CLOCK_REALTIME_ALARM = 8;
4869     }
4870 
4871 
4872 
4873 
4874     static if(!is(typeof(CLOCK_BOOTTIME))) {
4875         enum CLOCK_BOOTTIME = 7;
4876     }
4877 
4878 
4879 
4880 
4881     static if(!is(typeof(CLOCK_MONOTONIC_COARSE))) {
4882         enum CLOCK_MONOTONIC_COARSE = 6;
4883     }
4884 
4885 
4886 
4887 
4888     static if(!is(typeof(CLOCK_REALTIME_COARSE))) {
4889         enum CLOCK_REALTIME_COARSE = 5;
4890     }
4891 
4892 
4893 
4894 
4895     static if(!is(typeof(CLOCK_MONOTONIC_RAW))) {
4896         enum CLOCK_MONOTONIC_RAW = 4;
4897     }
4898 
4899 
4900 
4901 
4902     static if(!is(typeof(CLOCK_THREAD_CPUTIME_ID))) {
4903         enum CLOCK_THREAD_CPUTIME_ID = 3;
4904     }
4905 
4906 
4907 
4908 
4909     static if(!is(typeof(CLOCK_PROCESS_CPUTIME_ID))) {
4910         enum CLOCK_PROCESS_CPUTIME_ID = 2;
4911     }
4912 
4913 
4914 
4915 
4916     static if(!is(typeof(CLOCK_MONOTONIC))) {
4917         enum CLOCK_MONOTONIC = 1;
4918     }
4919 
4920 
4921 
4922 
4923     static if(!is(typeof(CLOCK_REALTIME))) {
4924         enum CLOCK_REALTIME = 0;
4925     }
4926 
4927 
4928 
4929 
4930 
4931 
4932     static if(!is(typeof(_BITS_TIME_H))) {
4933         enum _BITS_TIME_H = 1;
4934     }
4935 
4936 
4937 
4938 
4939     static if(!is(typeof(__PTHREAD_MUTEX_HAVE_PREV))) {
4940         enum __PTHREAD_MUTEX_HAVE_PREV = 1;
4941     }
4942     static if(!is(typeof(_THREAD_SHARED_TYPES_H))) {
4943         enum _THREAD_SHARED_TYPES_H = 1;
4944     }
4945 
4946 
4947 
4948 
4949     static if(!is(typeof(FOPEN_MAX))) {
4950         enum FOPEN_MAX = 16;
4951     }
4952 
4953 
4954 
4955 
4956     static if(!is(typeof(L_ctermid))) {
4957         enum L_ctermid = 9;
4958     }
4959 
4960 
4961 
4962 
4963     static if(!is(typeof(FILENAME_MAX))) {
4964         enum FILENAME_MAX = 4096;
4965     }
4966 
4967 
4968 
4969 
4970     static if(!is(typeof(TMP_MAX))) {
4971         enum TMP_MAX = 238328;
4972     }
4973 
4974 
4975 
4976 
4977     static if(!is(typeof(L_tmpnam))) {
4978         enum L_tmpnam = 20;
4979     }
4980 
4981 
4982 
4983 
4984     static if(!is(typeof(_BITS_STDIO_LIM_H))) {
4985         enum _BITS_STDIO_LIM_H = 1;
4986     }
4987 
4988 
4989 
4990 
4991     static if(!is(typeof(_BITS_STDINT_UINTN_H))) {
4992         enum _BITS_STDINT_UINTN_H = 1;
4993     }
4994 
4995 
4996 
4997 
4998     static if(!is(typeof(_BITS_STDINT_INTN_H))) {
4999         enum _BITS_STDINT_INTN_H = 1;
5000     }
5001     static if(!is(typeof(__FD_ZERO_STOS))) {
5002         enum __FD_ZERO_STOS = "stosq";
5003     }
5004 
5005 
5006 
5007 
5008     static if(!is(typeof(__have_pthread_attr_t))) {
5009         enum __have_pthread_attr_t = 1;
5010     }
5011 
5012 
5013 
5014 
5015     static if(!is(typeof(_BITS_PTHREADTYPES_COMMON_H))) {
5016         enum _BITS_PTHREADTYPES_COMMON_H = 1;
5017     }
5018 
5019 
5020 
5021 
5022     static if(!is(typeof(__PTHREAD_RWLOCK_INT_FLAGS_SHARED))) {
5023         enum __PTHREAD_RWLOCK_INT_FLAGS_SHARED = 1;
5024     }
5025     static if(!is(typeof(__PTHREAD_MUTEX_USE_UNION))) {
5026         enum __PTHREAD_MUTEX_USE_UNION = 0;
5027     }
5028 
5029 
5030 
5031 
5032     static if(!is(typeof(__PTHREAD_MUTEX_NUSERS_AFTER_KIND))) {
5033         enum __PTHREAD_MUTEX_NUSERS_AFTER_KIND = 0;
5034     }
5035 
5036 
5037 
5038 
5039     static if(!is(typeof(__PTHREAD_MUTEX_LOCK_ELISION))) {
5040         enum __PTHREAD_MUTEX_LOCK_ELISION = 1;
5041     }
5042     static if(!is(typeof(__SIZEOF_PTHREAD_BARRIERATTR_T))) {
5043         enum __SIZEOF_PTHREAD_BARRIERATTR_T = 4;
5044     }
5045 
5046 
5047 
5048 
5049     static if(!is(typeof(__SIZEOF_PTHREAD_RWLOCKATTR_T))) {
5050         enum __SIZEOF_PTHREAD_RWLOCKATTR_T = 8;
5051     }
5052 
5053 
5054 
5055 
5056     static if(!is(typeof(__SIZEOF_PTHREAD_CONDATTR_T))) {
5057         enum __SIZEOF_PTHREAD_CONDATTR_T = 4;
5058     }
5059 
5060 
5061 
5062 
5063     static if(!is(typeof(__SIZEOF_PTHREAD_COND_T))) {
5064         enum __SIZEOF_PTHREAD_COND_T = 48;
5065     }
5066 
5067 
5068 
5069 
5070     static if(!is(typeof(__SIZEOF_PTHREAD_MUTEXATTR_T))) {
5071         enum __SIZEOF_PTHREAD_MUTEXATTR_T = 4;
5072     }
5073 
5074 
5075 
5076 
5077     static if(!is(typeof(__SIZEOF_PTHREAD_BARRIER_T))) {
5078         enum __SIZEOF_PTHREAD_BARRIER_T = 32;
5079     }
5080 
5081 
5082 
5083 
5084     static if(!is(typeof(__SIZEOF_PTHREAD_RWLOCK_T))) {
5085         enum __SIZEOF_PTHREAD_RWLOCK_T = 56;
5086     }
5087 
5088 
5089 
5090 
5091     static if(!is(typeof(__SIZEOF_PTHREAD_MUTEX_T))) {
5092         enum __SIZEOF_PTHREAD_MUTEX_T = 40;
5093     }
5094 
5095 
5096 
5097 
5098     static if(!is(typeof(__SIZEOF_PTHREAD_ATTR_T))) {
5099         enum __SIZEOF_PTHREAD_ATTR_T = 56;
5100     }
5101 
5102 
5103 
5104 
5105     static if(!is(typeof(_BITS_PTHREADTYPES_ARCH_H))) {
5106         enum _BITS_PTHREADTYPES_ARCH_H = 1;
5107     }
5108     static if(!is(typeof(_POSIX2_CHAR_TERM))) {
5109         enum _POSIX2_CHAR_TERM = 200809L;
5110     }
5111 
5112 
5113 
5114 
5115     static if(!is(typeof(_POSIX_RAW_SOCKETS))) {
5116         enum _POSIX_RAW_SOCKETS = 200809L;
5117     }
5118 
5119 
5120 
5121 
5122     static if(!is(typeof(_POSIX_IPV6))) {
5123         enum _POSIX_IPV6 = 200809L;
5124     }
5125 
5126 
5127 
5128 
5129     static if(!is(typeof(_POSIX_ADVISORY_INFO))) {
5130         enum _POSIX_ADVISORY_INFO = 200809L;
5131     }
5132 
5133 
5134 
5135 
5136     static if(!is(typeof(_POSIX_CLOCK_SELECTION))) {
5137         enum _POSIX_CLOCK_SELECTION = 200809L;
5138     }
5139 
5140 
5141 
5142 
5143     static if(!is(typeof(_POSIX_MONOTONIC_CLOCK))) {
5144         enum _POSIX_MONOTONIC_CLOCK = 0;
5145     }
5146 
5147 
5148 
5149 
5150     static if(!is(typeof(_POSIX_THREAD_PROCESS_SHARED))) {
5151         enum _POSIX_THREAD_PROCESS_SHARED = 200809L;
5152     }
5153 
5154 
5155 
5156 
5157     static if(!is(typeof(_POSIX_MESSAGE_PASSING))) {
5158         enum _POSIX_MESSAGE_PASSING = 200809L;
5159     }
5160 
5161 
5162 
5163 
5164     static if(!is(typeof(_STRING_H))) {
5165         enum _STRING_H = 1;
5166     }
5167 
5168 
5169 
5170 
5171     static if(!is(typeof(_POSIX_BARRIERS))) {
5172         enum _POSIX_BARRIERS = 200809L;
5173     }
5174 
5175 
5176 
5177 
5178     static if(!is(typeof(_POSIX_TIMERS))) {
5179         enum _POSIX_TIMERS = 200809L;
5180     }
5181 
5182 
5183 
5184 
5185     static if(!is(typeof(_POSIX_SPAWN))) {
5186         enum _POSIX_SPAWN = 200809L;
5187     }
5188 
5189 
5190 
5191 
5192     static if(!is(typeof(_POSIX_SPIN_LOCKS))) {
5193         enum _POSIX_SPIN_LOCKS = 200809L;
5194     }
5195 
5196 
5197 
5198 
5199     static if(!is(typeof(_POSIX_TIMEOUTS))) {
5200         enum _POSIX_TIMEOUTS = 200809L;
5201     }
5202 
5203 
5204 
5205 
5206     static if(!is(typeof(_POSIX_SHELL))) {
5207         enum _POSIX_SHELL = 1;
5208     }
5209 
5210 
5211 
5212 
5213     static if(!is(typeof(_POSIX_READER_WRITER_LOCKS))) {
5214         enum _POSIX_READER_WRITER_LOCKS = 200809L;
5215     }
5216 
5217 
5218 
5219 
5220     static if(!is(typeof(_POSIX_REGEXP))) {
5221         enum _POSIX_REGEXP = 1;
5222     }
5223 
5224 
5225 
5226 
5227     static if(!is(typeof(_POSIX_THREAD_CPUTIME))) {
5228         enum _POSIX_THREAD_CPUTIME = 0;
5229     }
5230 
5231 
5232 
5233 
5234     static if(!is(typeof(_POSIX_CPUTIME))) {
5235         enum _POSIX_CPUTIME = 0;
5236     }
5237 
5238 
5239 
5240 
5241     static if(!is(typeof(_POSIX_SHARED_MEMORY_OBJECTS))) {
5242         enum _POSIX_SHARED_MEMORY_OBJECTS = 200809L;
5243     }
5244 
5245 
5246 
5247 
5248     static if(!is(typeof(_LFS64_STDIO))) {
5249         enum _LFS64_STDIO = 1;
5250     }
5251 
5252 
5253 
5254 
5255     static if(!is(typeof(_LFS64_LARGEFILE))) {
5256         enum _LFS64_LARGEFILE = 1;
5257     }
5258 
5259 
5260 
5261 
5262     static if(!is(typeof(_LFS_LARGEFILE))) {
5263         enum _LFS_LARGEFILE = 1;
5264     }
5265 
5266 
5267 
5268 
5269     static if(!is(typeof(_LFS64_ASYNCHRONOUS_IO))) {
5270         enum _LFS64_ASYNCHRONOUS_IO = 1;
5271     }
5272 
5273 
5274 
5275 
5276     static if(!is(typeof(_POSIX_PRIORITIZED_IO))) {
5277         enum _POSIX_PRIORITIZED_IO = 200809L;
5278     }
5279 
5280 
5281 
5282 
5283     static if(!is(typeof(_LFS_ASYNCHRONOUS_IO))) {
5284         enum _LFS_ASYNCHRONOUS_IO = 1;
5285     }
5286 
5287 
5288 
5289 
5290     static if(!is(typeof(_POSIX_ASYNC_IO))) {
5291         enum _POSIX_ASYNC_IO = 1;
5292     }
5293 
5294 
5295 
5296 
5297     static if(!is(typeof(_POSIX_ASYNCHRONOUS_IO))) {
5298         enum _POSIX_ASYNCHRONOUS_IO = 200809L;
5299     }
5300 
5301 
5302 
5303 
5304     static if(!is(typeof(_POSIX_REALTIME_SIGNALS))) {
5305         enum _POSIX_REALTIME_SIGNALS = 200809L;
5306     }
5307 
5308 
5309 
5310 
5311     static if(!is(typeof(_POSIX_SEMAPHORES))) {
5312         enum _POSIX_SEMAPHORES = 200809L;
5313     }
5314 
5315 
5316 
5317 
5318 
5319 
5320     static if(!is(typeof(_POSIX_THREAD_ROBUST_PRIO_INHERIT))) {
5321         enum _POSIX_THREAD_ROBUST_PRIO_INHERIT = 200809L;
5322     }
5323 
5324 
5325 
5326 
5327     static if(!is(typeof(_POSIX_THREAD_PRIO_PROTECT))) {
5328         enum _POSIX_THREAD_PRIO_PROTECT = 200809L;
5329     }
5330 
5331 
5332 
5333 
5334     static if(!is(typeof(_POSIX_THREAD_PRIO_INHERIT))) {
5335         enum _POSIX_THREAD_PRIO_INHERIT = 200809L;
5336     }
5337 
5338 
5339 
5340 
5341     static if(!is(typeof(_POSIX_THREAD_ATTR_STACKADDR))) {
5342         enum _POSIX_THREAD_ATTR_STACKADDR = 200809L;
5343     }
5344 
5345 
5346 
5347 
5348     static if(!is(typeof(_POSIX_THREAD_ATTR_STACKSIZE))) {
5349         enum _POSIX_THREAD_ATTR_STACKSIZE = 200809L;
5350     }
5351 
5352 
5353 
5354 
5355     static if(!is(typeof(_POSIX_THREAD_PRIORITY_SCHEDULING))) {
5356         enum _POSIX_THREAD_PRIORITY_SCHEDULING = 200809L;
5357     }
5358 
5359 
5360 
5361 
5362     static if(!is(typeof(_POSIX_THREAD_SAFE_FUNCTIONS))) {
5363         enum _POSIX_THREAD_SAFE_FUNCTIONS = 200809L;
5364     }
5365 
5366 
5367 
5368 
5369     static if(!is(typeof(_POSIX_REENTRANT_FUNCTIONS))) {
5370         enum _POSIX_REENTRANT_FUNCTIONS = 1;
5371     }
5372 
5373 
5374 
5375 
5376     static if(!is(typeof(_POSIX_THREADS))) {
5377         enum _POSIX_THREADS = 200809L;
5378     }
5379 
5380 
5381 
5382 
5383     static if(!is(typeof(_XOPEN_SHM))) {
5384         enum _XOPEN_SHM = 1;
5385     }
5386 
5387 
5388 
5389 
5390     static if(!is(typeof(_XOPEN_REALTIME_THREADS))) {
5391         enum _XOPEN_REALTIME_THREADS = 1;
5392     }
5393 
5394 
5395 
5396 
5397     static if(!is(typeof(_XOPEN_REALTIME))) {
5398         enum _XOPEN_REALTIME = 1;
5399     }
5400 
5401 
5402 
5403 
5404     static if(!is(typeof(_POSIX_NO_TRUNC))) {
5405         enum _POSIX_NO_TRUNC = 1;
5406     }
5407 
5408 
5409 
5410 
5411     static if(!is(typeof(_POSIX_VDISABLE))) {
5412         enum _POSIX_VDISABLE = '\0';
5413     }
5414 
5415 
5416 
5417 
5418     static if(!is(typeof(_POSIX_CHOWN_RESTRICTED))) {
5419         enum _POSIX_CHOWN_RESTRICTED = 0;
5420     }
5421 
5422 
5423 
5424 
5425     static if(!is(typeof(_POSIX_MEMORY_PROTECTION))) {
5426         enum _POSIX_MEMORY_PROTECTION = 200809L;
5427     }
5428 
5429 
5430 
5431 
5432     static if(!is(typeof(_POSIX_MEMLOCK_RANGE))) {
5433         enum _POSIX_MEMLOCK_RANGE = 200809L;
5434     }
5435 
5436 
5437 
5438 
5439     static if(!is(typeof(_POSIX_MEMLOCK))) {
5440         enum _POSIX_MEMLOCK = 200809L;
5441     }
5442 
5443 
5444 
5445 
5446     static if(!is(typeof(_POSIX_MAPPED_FILES))) {
5447         enum _POSIX_MAPPED_FILES = 200809L;
5448     }
5449 
5450 
5451 
5452 
5453     static if(!is(typeof(_POSIX_FSYNC))) {
5454         enum _POSIX_FSYNC = 200809L;
5455     }
5456 
5457 
5458 
5459 
5460     static if(!is(typeof(_POSIX_SYNCHRONIZED_IO))) {
5461         enum _POSIX_SYNCHRONIZED_IO = 200809L;
5462     }
5463 
5464 
5465 
5466 
5467     static if(!is(typeof(_POSIX_PRIORITY_SCHEDULING))) {
5468         enum _POSIX_PRIORITY_SCHEDULING = 200809L;
5469     }
5470 
5471 
5472 
5473 
5474     static if(!is(typeof(_POSIX_SAVED_IDS))) {
5475         enum _POSIX_SAVED_IDS = 1;
5476     }
5477 
5478 
5479 
5480 
5481     static if(!is(typeof(_POSIX_JOB_CONTROL))) {
5482         enum _POSIX_JOB_CONTROL = 1;
5483     }
5484 
5485 
5486 
5487 
5488     static if(!is(typeof(_BITS_POSIX_OPT_H))) {
5489         enum _BITS_POSIX_OPT_H = 1;
5490     }
5491 
5492 
5493 
5494 
5495 
5496 
5497     static if(!is(typeof(CHARCLASS_NAME_MAX))) {
5498         enum CHARCLASS_NAME_MAX = 2048;
5499     }
5500     static if(!is(typeof(COLL_WEIGHTS_MAX))) {
5501         enum COLL_WEIGHTS_MAX = 255;
5502     }
5503     static if(!is(typeof(_POSIX2_CHARCLASS_NAME_MAX))) {
5504         enum _POSIX2_CHARCLASS_NAME_MAX = 14;
5505     }
5506 
5507 
5508 
5509 
5510     static if(!is(typeof(_POSIX2_RE_DUP_MAX))) {
5511         enum _POSIX2_RE_DUP_MAX = 255;
5512     }
5513 
5514 
5515 
5516 
5517     static if(!is(typeof(_POSIX2_LINE_MAX))) {
5518         enum _POSIX2_LINE_MAX = 2048;
5519     }
5520 
5521 
5522 
5523 
5524     static if(!is(typeof(_POSIX2_EXPR_NEST_MAX))) {
5525         enum _POSIX2_EXPR_NEST_MAX = 32;
5526     }
5527 
5528 
5529 
5530 
5531     static if(!is(typeof(_POSIX2_COLL_WEIGHTS_MAX))) {
5532         enum _POSIX2_COLL_WEIGHTS_MAX = 2;
5533     }
5534 
5535 
5536 
5537 
5538     static if(!is(typeof(_POSIX2_BC_STRING_MAX))) {
5539         enum _POSIX2_BC_STRING_MAX = 1000;
5540     }
5541 
5542 
5543 
5544 
5545     static if(!is(typeof(_POSIX2_BC_SCALE_MAX))) {
5546         enum _POSIX2_BC_SCALE_MAX = 99;
5547     }
5548 
5549 
5550 
5551 
5552     static if(!is(typeof(_POSIX2_BC_DIM_MAX))) {
5553         enum _POSIX2_BC_DIM_MAX = 2048;
5554     }
5555 
5556 
5557 
5558 
5559     static if(!is(typeof(_POSIX2_BC_BASE_MAX))) {
5560         enum _POSIX2_BC_BASE_MAX = 99;
5561     }
5562 
5563 
5564 
5565 
5566     static if(!is(typeof(_BITS_POSIX2_LIM_H))) {
5567         enum _BITS_POSIX2_LIM_H = 1;
5568     }
5569 
5570 
5571 
5572 
5573 
5574 
5575     static if(!is(typeof(_POSIX_CLOCKRES_MIN))) {
5576         enum _POSIX_CLOCKRES_MIN = 20000000;
5577     }
5578 
5579 
5580 
5581 
5582     static if(!is(typeof(_POSIX_TZNAME_MAX))) {
5583         enum _POSIX_TZNAME_MAX = 6;
5584     }
5585 
5586 
5587 
5588 
5589     static if(!is(typeof(_POSIX_TTY_NAME_MAX))) {
5590         enum _POSIX_TTY_NAME_MAX = 9;
5591     }
5592 
5593 
5594 
5595 
5596     static if(!is(typeof(_POSIX_TIMER_MAX))) {
5597         enum _POSIX_TIMER_MAX = 32;
5598     }
5599 
5600 
5601 
5602 
5603     static if(!is(typeof(_POSIX_SYMLOOP_MAX))) {
5604         enum _POSIX_SYMLOOP_MAX = 8;
5605     }
5606 
5607 
5608 
5609 
5610     static if(!is(typeof(_POSIX_SYMLINK_MAX))) {
5611         enum _POSIX_SYMLINK_MAX = 255;
5612     }
5613 
5614 
5615 
5616 
5617     static if(!is(typeof(_POSIX_STREAM_MAX))) {
5618         enum _POSIX_STREAM_MAX = 8;
5619     }
5620 
5621 
5622 
5623 
5624     static if(!is(typeof(_POSIX_SSIZE_MAX))) {
5625         enum _POSIX_SSIZE_MAX = 32767;
5626     }
5627 
5628 
5629 
5630 
5631     static if(!is(typeof(_POSIX_SIGQUEUE_MAX))) {
5632         enum _POSIX_SIGQUEUE_MAX = 32;
5633     }
5634 
5635 
5636 
5637 
5638     static if(!is(typeof(_POSIX_SEM_VALUE_MAX))) {
5639         enum _POSIX_SEM_VALUE_MAX = 32767;
5640     }
5641 
5642 
5643 
5644 
5645     static if(!is(typeof(_POSIX_SEM_NSEMS_MAX))) {
5646         enum _POSIX_SEM_NSEMS_MAX = 256;
5647     }
5648 
5649 
5650 
5651 
5652     static if(!is(typeof(_POSIX_RTSIG_MAX))) {
5653         enum _POSIX_RTSIG_MAX = 8;
5654     }
5655 
5656 
5657 
5658 
5659     static if(!is(typeof(_POSIX_RE_DUP_MAX))) {
5660         enum _POSIX_RE_DUP_MAX = 255;
5661     }
5662 
5663 
5664 
5665 
5666     static if(!is(typeof(_POSIX_PIPE_BUF))) {
5667         enum _POSIX_PIPE_BUF = 512;
5668     }
5669 
5670 
5671 
5672 
5673     static if(!is(typeof(_POSIX_PATH_MAX))) {
5674         enum _POSIX_PATH_MAX = 256;
5675     }
5676 
5677 
5678 
5679 
5680     static if(!is(typeof(_POSIX_OPEN_MAX))) {
5681         enum _POSIX_OPEN_MAX = 20;
5682     }
5683 
5684 
5685 
5686 
5687     static if(!is(typeof(_POSIX_NGROUPS_MAX))) {
5688         enum _POSIX_NGROUPS_MAX = 8;
5689     }
5690 
5691 
5692 
5693 
5694     static if(!is(typeof(_POSIX_NAME_MAX))) {
5695         enum _POSIX_NAME_MAX = 14;
5696     }
5697 
5698 
5699 
5700 
5701     static if(!is(typeof(_POSIX_MQ_PRIO_MAX))) {
5702         enum _POSIX_MQ_PRIO_MAX = 32;
5703     }
5704 
5705 
5706 
5707 
5708     static if(!is(typeof(_POSIX_MQ_OPEN_MAX))) {
5709         enum _POSIX_MQ_OPEN_MAX = 8;
5710     }
5711 
5712 
5713 
5714 
5715     static if(!is(typeof(_POSIX_MAX_INPUT))) {
5716         enum _POSIX_MAX_INPUT = 255;
5717     }
5718 
5719 
5720 
5721 
5722     static if(!is(typeof(_POSIX_MAX_CANON))) {
5723         enum _POSIX_MAX_CANON = 255;
5724     }
5725 
5726 
5727 
5728 
5729     static if(!is(typeof(_POSIX_LOGIN_NAME_MAX))) {
5730         enum _POSIX_LOGIN_NAME_MAX = 9;
5731     }
5732 
5733 
5734 
5735 
5736     static if(!is(typeof(_POSIX_LINK_MAX))) {
5737         enum _POSIX_LINK_MAX = 8;
5738     }
5739 
5740 
5741 
5742 
5743     static if(!is(typeof(_POSIX_HOST_NAME_MAX))) {
5744         enum _POSIX_HOST_NAME_MAX = 255;
5745     }
5746 
5747 
5748 
5749 
5750     static if(!is(typeof(_POSIX_DELAYTIMER_MAX))) {
5751         enum _POSIX_DELAYTIMER_MAX = 32;
5752     }
5753 
5754 
5755 
5756 
5757     static if(!is(typeof(_POSIX_CHILD_MAX))) {
5758         enum _POSIX_CHILD_MAX = 25;
5759     }
5760 
5761 
5762 
5763 
5764     static if(!is(typeof(_POSIX_ARG_MAX))) {
5765         enum _POSIX_ARG_MAX = 4096;
5766     }
5767 
5768 
5769 
5770 
5771     static if(!is(typeof(_POSIX_AIO_MAX))) {
5772         enum _POSIX_AIO_MAX = 1;
5773     }
5774 
5775 
5776 
5777 
5778     static if(!is(typeof(_POSIX_AIO_LISTIO_MAX))) {
5779         enum _POSIX_AIO_LISTIO_MAX = 2;
5780     }
5781 
5782 
5783 
5784 
5785     static if(!is(typeof(_BITS_POSIX1_LIM_H))) {
5786         enum _BITS_POSIX1_LIM_H = 1;
5787     }
5788 
5789 
5790 
5791 
5792 
5793 
5794     static if(!is(typeof(MQ_PRIO_MAX))) {
5795         enum MQ_PRIO_MAX = 32768;
5796     }
5797 
5798 
5799 
5800 
5801     static if(!is(typeof(HOST_NAME_MAX))) {
5802         enum HOST_NAME_MAX = 64;
5803     }
5804 
5805 
5806 
5807 
5808     static if(!is(typeof(LOGIN_NAME_MAX))) {
5809         enum LOGIN_NAME_MAX = 256;
5810     }
5811 
5812 
5813 
5814 
5815     static if(!is(typeof(TTY_NAME_MAX))) {
5816         enum TTY_NAME_MAX = 32;
5817     }
5818 
5819 
5820 
5821 
5822     static if(!is(typeof(DELAYTIMER_MAX))) {
5823         enum DELAYTIMER_MAX = 2147483647;
5824     }
5825 
5826 
5827 
5828 
5829     static if(!is(typeof(PTHREAD_STACK_MIN))) {
5830         enum PTHREAD_STACK_MIN = 16384;
5831     }
5832 
5833 
5834 
5835 
5836     static if(!is(typeof(AIO_PRIO_DELTA_MAX))) {
5837         enum AIO_PRIO_DELTA_MAX = 20;
5838     }
5839 
5840 
5841 
5842 
5843     static if(!is(typeof(_POSIX_THREAD_THREADS_MAX))) {
5844         enum _POSIX_THREAD_THREADS_MAX = 64;
5845     }
5846 
5847 
5848 
5849 
5850 
5851 
5852     static if(!is(typeof(_POSIX_THREAD_DESTRUCTOR_ITERATIONS))) {
5853         enum _POSIX_THREAD_DESTRUCTOR_ITERATIONS = 4;
5854     }
5855 
5856 
5857 
5858 
5859     static if(!is(typeof(PTHREAD_KEYS_MAX))) {
5860         enum PTHREAD_KEYS_MAX = 1024;
5861     }
5862 
5863 
5864 
5865 
5866     static if(!is(typeof(_POSIX_THREAD_KEYS_MAX))) {
5867         enum _POSIX_THREAD_KEYS_MAX = 128;
5868     }
5869     static if(!is(typeof(__GLIBC_USE_IEC_60559_TYPES_EXT))) {
5870         enum __GLIBC_USE_IEC_60559_TYPES_EXT = 0;
5871     }
5872 
5873 
5874 
5875 
5876     static if(!is(typeof(__GLIBC_USE_IEC_60559_FUNCS_EXT))) {
5877         enum __GLIBC_USE_IEC_60559_FUNCS_EXT = 0;
5878     }
5879 
5880 
5881 
5882 
5883     static if(!is(typeof(__GLIBC_USE_IEC_60559_BFP_EXT))) {
5884         enum __GLIBC_USE_IEC_60559_BFP_EXT = 0;
5885     }
5886 
5887 
5888 
5889 
5890     static if(!is(typeof(__GLIBC_USE_LIB_EXT2))) {
5891         enum __GLIBC_USE_LIB_EXT2 = 0;
5892     }
5893 
5894 
5895 
5896 
5897     static if(!is(typeof(_GETOPT_POSIX_H))) {
5898         enum _GETOPT_POSIX_H = 1;
5899     }
5900 
5901 
5902 
5903 
5904     static if(!is(typeof(_GETOPT_CORE_H))) {
5905         enum _GETOPT_CORE_H = 1;
5906     }
5907 
5908 
5909 
5910 
5911     static if(!is(typeof(__HAVE_FLOAT64X_LONG_DOUBLE))) {
5912         enum __HAVE_FLOAT64X_LONG_DOUBLE = 1;
5913     }
5914 
5915 
5916 
5917 
5918     static if(!is(typeof(__HAVE_FLOAT64X))) {
5919         enum __HAVE_FLOAT64X = 1;
5920     }
5921 
5922 
5923 
5924 
5925     static if(!is(typeof(__HAVE_DISTINCT_FLOAT128))) {
5926         enum __HAVE_DISTINCT_FLOAT128 = 0;
5927     }
5928 
5929 
5930 
5931 
5932     static if(!is(typeof(__HAVE_FLOAT128))) {
5933         enum __HAVE_FLOAT128 = 0;
5934     }
5935     static if(!is(typeof(_STRINGS_H))) {
5936         enum _STRINGS_H = 1;
5937     }
5938     static if(!is(typeof(__HAVE_FLOATN_NOT_TYPEDEF))) {
5939         enum __HAVE_FLOATN_NOT_TYPEDEF = 0;
5940     }
5941     static if(!is(typeof(__HAVE_DISTINCT_FLOAT64X))) {
5942         enum __HAVE_DISTINCT_FLOAT64X = 0;
5943     }
5944 
5945 
5946 
5947 
5948     static if(!is(typeof(__HAVE_DISTINCT_FLOAT32X))) {
5949         enum __HAVE_DISTINCT_FLOAT32X = 0;
5950     }
5951 
5952 
5953 
5954 
5955     static if(!is(typeof(__HAVE_DISTINCT_FLOAT64))) {
5956         enum __HAVE_DISTINCT_FLOAT64 = 0;
5957     }
5958 
5959 
5960 
5961 
5962     static if(!is(typeof(__HAVE_DISTINCT_FLOAT32))) {
5963         enum __HAVE_DISTINCT_FLOAT32 = 0;
5964     }
5965 
5966 
5967 
5968 
5969 
5970 
5971     static if(!is(typeof(__HAVE_FLOAT128X))) {
5972         enum __HAVE_FLOAT128X = 0;
5973     }
5974 
5975 
5976 
5977 
5978     static if(!is(typeof(__HAVE_FLOAT32X))) {
5979         enum __HAVE_FLOAT32X = 1;
5980     }
5981 
5982 
5983 
5984 
5985     static if(!is(typeof(__HAVE_FLOAT64))) {
5986         enum __HAVE_FLOAT64 = 1;
5987     }
5988 
5989 
5990 
5991 
5992     static if(!is(typeof(__HAVE_FLOAT32))) {
5993         enum __HAVE_FLOAT32 = 1;
5994     }
5995 
5996 
5997 
5998 
5999     static if(!is(typeof(__HAVE_FLOAT16))) {
6000         enum __HAVE_FLOAT16 = 0;
6001     }
6002     static if(!is(typeof(_BITS_ERRNO_H))) {
6003         enum _BITS_ERRNO_H = 1;
6004     }
6005 
6006 
6007 
6008 
6009     static if(!is(typeof(__LP64_OFF64_LDFLAGS))) {
6010         enum __LP64_OFF64_LDFLAGS = "-m64";
6011     }
6012 
6013 
6014 
6015 
6016     static if(!is(typeof(__LP64_OFF64_CFLAGS))) {
6017         enum __LP64_OFF64_CFLAGS = "-m64";
6018     }
6019 
6020 
6021 
6022 
6023     static if(!is(typeof(__ILP32_OFFBIG_LDFLAGS))) {
6024         enum __ILP32_OFFBIG_LDFLAGS = "-m32";
6025     }
6026 
6027 
6028 
6029 
6030     static if(!is(typeof(__ILP32_OFFBIG_CFLAGS))) {
6031         enum __ILP32_OFFBIG_CFLAGS = "-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64";
6032     }
6033 
6034 
6035 
6036 
6037     static if(!is(typeof(__ILP32_OFF32_LDFLAGS))) {
6038         enum __ILP32_OFF32_LDFLAGS = "-m32";
6039     }
6040 
6041 
6042 
6043 
6044     static if(!is(typeof(__ILP32_OFF32_CFLAGS))) {
6045         enum __ILP32_OFF32_CFLAGS = "-m32";
6046     }
6047 
6048 
6049 
6050 
6051     static if(!is(typeof(_XBS5_LP64_OFF64))) {
6052         enum _XBS5_LP64_OFF64 = 1;
6053     }
6054 
6055 
6056 
6057 
6058     static if(!is(typeof(_POSIX_V6_LP64_OFF64))) {
6059         enum _POSIX_V6_LP64_OFF64 = 1;
6060     }
6061 
6062 
6063 
6064 
6065     static if(!is(typeof(_POSIX_V7_LP64_OFF64))) {
6066         enum _POSIX_V7_LP64_OFF64 = 1;
6067     }
6068     static if(!is(typeof(_SYS_CDEFS_H))) {
6069         enum _SYS_CDEFS_H = 1;
6070     }
6071     static if(!is(typeof(__glibc_c99_flexarr_available))) {
6072         enum __glibc_c99_flexarr_available = 1;
6073     }
6074     static if(!is(typeof(__HAVE_GENERIC_SELECTION))) {
6075         enum __HAVE_GENERIC_SELECTION = 1;
6076     }
6077 
6078 
6079 
6080 
6081     static if(!is(typeof(_SYS_SELECT_H))) {
6082         enum _SYS_SELECT_H = 1;
6083     }
6084     static if(!is(typeof(_SYS_TYPES_H))) {
6085         enum _SYS_TYPES_H = 1;
6086     }
6087     static if(!is(typeof(__BIT_TYPES_DEFINED__))) {
6088         enum __BIT_TYPES_DEFINED__ = 1;
6089     }
6090     static if(!is(typeof(_TIME_H))) {
6091         enum _TIME_H = 1;
6092     }
6093     static if(!is(typeof(TIME_UTC))) {
6094         enum TIME_UTC = 1;
6095     }
6096     static if(!is(typeof(_UNISTD_H))) {
6097         enum _UNISTD_H = 1;
6098     }
6099     static if(!is(typeof(_POSIX_VERSION))) {
6100         enum _POSIX_VERSION = 200809L;
6101     }
6102 
6103 
6104 
6105 
6106 
6107 
6108     static if(!is(typeof(__POSIX2_THIS_VERSION))) {
6109         enum __POSIX2_THIS_VERSION = 200809L;
6110     }
6111     static if(!is(typeof(_XOPEN_VERSION))) {
6112         enum _XOPEN_VERSION = 700;
6113     }
6114 
6115 
6116 
6117 
6118     static if(!is(typeof(_XOPEN_XCU_VERSION))) {
6119         enum _XOPEN_XCU_VERSION = 4;
6120     }
6121 
6122 
6123 
6124 
6125     static if(!is(typeof(_XOPEN_XPG2))) {
6126         enum _XOPEN_XPG2 = 1;
6127     }
6128 
6129 
6130 
6131 
6132     static if(!is(typeof(_XOPEN_XPG3))) {
6133         enum _XOPEN_XPG3 = 1;
6134     }
6135 
6136 
6137 
6138 
6139     static if(!is(typeof(_XOPEN_XPG4))) {
6140         enum _XOPEN_XPG4 = 1;
6141     }
6142 
6143 
6144 
6145 
6146     static if(!is(typeof(_XOPEN_UNIX))) {
6147         enum _XOPEN_UNIX = 1;
6148     }
6149 
6150 
6151 
6152 
6153     static if(!is(typeof(_XOPEN_ENH_I18N))) {
6154         enum _XOPEN_ENH_I18N = 1;
6155     }
6156 
6157 
6158 
6159 
6160     static if(!is(typeof(_XOPEN_LEGACY))) {
6161         enum _XOPEN_LEGACY = 1;
6162     }
6163     static if(!is(typeof(STDIN_FILENO))) {
6164         enum STDIN_FILENO = 0;
6165     }
6166 
6167 
6168 
6169 
6170     static if(!is(typeof(STDOUT_FILENO))) {
6171         enum STDOUT_FILENO = 1;
6172     }
6173 
6174 
6175 
6176 
6177     static if(!is(typeof(STDERR_FILENO))) {
6178         enum STDERR_FILENO = 2;
6179     }
6180     static if(!is(typeof(R_OK))) {
6181         enum R_OK = 4;
6182     }
6183 
6184 
6185 
6186 
6187     static if(!is(typeof(W_OK))) {
6188         enum W_OK = 2;
6189     }
6190 
6191 
6192 
6193 
6194     static if(!is(typeof(X_OK))) {
6195         enum X_OK = 1;
6196     }
6197 
6198 
6199 
6200 
6201     static if(!is(typeof(F_OK))) {
6202         enum F_OK = 0;
6203     }
6204     static if(!is(typeof(_BITS_BYTESWAP_H))) {
6205         enum _BITS_BYTESWAP_H = 1;
6206     }
6207 
6208 
6209 
6210 
6211     static if(!is(typeof(EHWPOISON))) {
6212         enum EHWPOISON = 133;
6213     }
6214 
6215 
6216 
6217 
6218     static if(!is(typeof(ERFKILL))) {
6219         enum ERFKILL = 132;
6220     }
6221 
6222 
6223 
6224 
6225     static if(!is(typeof(ENOTRECOVERABLE))) {
6226         enum ENOTRECOVERABLE = 131;
6227     }
6228 
6229 
6230 
6231 
6232     static if(!is(typeof(EOWNERDEAD))) {
6233         enum EOWNERDEAD = 130;
6234     }
6235 
6236 
6237 
6238 
6239     static if(!is(typeof(EKEYREJECTED))) {
6240         enum EKEYREJECTED = 129;
6241     }
6242 
6243 
6244 
6245 
6246     static if(!is(typeof(EKEYREVOKED))) {
6247         enum EKEYREVOKED = 128;
6248     }
6249 
6250 
6251 
6252 
6253     static if(!is(typeof(EKEYEXPIRED))) {
6254         enum EKEYEXPIRED = 127;
6255     }
6256 
6257 
6258 
6259 
6260     static if(!is(typeof(ENOKEY))) {
6261         enum ENOKEY = 126;
6262     }
6263 
6264 
6265 
6266 
6267     static if(!is(typeof(ECANCELED))) {
6268         enum ECANCELED = 125;
6269     }
6270 
6271 
6272 
6273 
6274     static if(!is(typeof(EMEDIUMTYPE))) {
6275         enum EMEDIUMTYPE = 124;
6276     }
6277 
6278 
6279 
6280 
6281     static if(!is(typeof(ENOMEDIUM))) {
6282         enum ENOMEDIUM = 123;
6283     }
6284 
6285 
6286 
6287 
6288     static if(!is(typeof(EDQUOT))) {
6289         enum EDQUOT = 122;
6290     }
6291 
6292 
6293 
6294 
6295     static if(!is(typeof(EREMOTEIO))) {
6296         enum EREMOTEIO = 121;
6297     }
6298 
6299 
6300 
6301 
6302     static if(!is(typeof(EISNAM))) {
6303         enum EISNAM = 120;
6304     }
6305 
6306 
6307 
6308 
6309     static if(!is(typeof(ENAVAIL))) {
6310         enum ENAVAIL = 119;
6311     }
6312 
6313 
6314 
6315 
6316     static if(!is(typeof(ENOTNAM))) {
6317         enum ENOTNAM = 118;
6318     }
6319 
6320 
6321 
6322 
6323     static if(!is(typeof(EUCLEAN))) {
6324         enum EUCLEAN = 117;
6325     }
6326 
6327 
6328 
6329 
6330     static if(!is(typeof(ESTALE))) {
6331         enum ESTALE = 116;
6332     }
6333 
6334 
6335 
6336 
6337     static if(!is(typeof(EINPROGRESS))) {
6338         enum EINPROGRESS = 115;
6339     }
6340 
6341 
6342 
6343 
6344     static if(!is(typeof(EALREADY))) {
6345         enum EALREADY = 114;
6346     }
6347 
6348 
6349 
6350 
6351     static if(!is(typeof(EHOSTUNREACH))) {
6352         enum EHOSTUNREACH = 113;
6353     }
6354 
6355 
6356 
6357 
6358     static if(!is(typeof(EHOSTDOWN))) {
6359         enum EHOSTDOWN = 112;
6360     }
6361 
6362 
6363 
6364 
6365     static if(!is(typeof(ECONNREFUSED))) {
6366         enum ECONNREFUSED = 111;
6367     }
6368 
6369 
6370 
6371 
6372     static if(!is(typeof(ETIMEDOUT))) {
6373         enum ETIMEDOUT = 110;
6374     }
6375 
6376 
6377 
6378 
6379     static if(!is(typeof(ETOOMANYREFS))) {
6380         enum ETOOMANYREFS = 109;
6381     }
6382 
6383 
6384 
6385 
6386     static if(!is(typeof(ESHUTDOWN))) {
6387         enum ESHUTDOWN = 108;
6388     }
6389 
6390 
6391 
6392 
6393     static if(!is(typeof(ENOTCONN))) {
6394         enum ENOTCONN = 107;
6395     }
6396 
6397 
6398 
6399 
6400     static if(!is(typeof(EISCONN))) {
6401         enum EISCONN = 106;
6402     }
6403 
6404 
6405 
6406 
6407     static if(!is(typeof(ENOBUFS))) {
6408         enum ENOBUFS = 105;
6409     }
6410 
6411 
6412 
6413 
6414     static if(!is(typeof(ECONNRESET))) {
6415         enum ECONNRESET = 104;
6416     }
6417 
6418 
6419 
6420 
6421     static if(!is(typeof(ECONNABORTED))) {
6422         enum ECONNABORTED = 103;
6423     }
6424 
6425 
6426 
6427 
6428     static if(!is(typeof(ENETRESET))) {
6429         enum ENETRESET = 102;
6430     }
6431 
6432 
6433 
6434 
6435     static if(!is(typeof(ENETUNREACH))) {
6436         enum ENETUNREACH = 101;
6437     }
6438 
6439 
6440 
6441 
6442     static if(!is(typeof(ENETDOWN))) {
6443         enum ENETDOWN = 100;
6444     }
6445 
6446 
6447 
6448 
6449     static if(!is(typeof(EADDRNOTAVAIL))) {
6450         enum EADDRNOTAVAIL = 99;
6451     }
6452 
6453 
6454 
6455 
6456     static if(!is(typeof(EADDRINUSE))) {
6457         enum EADDRINUSE = 98;
6458     }
6459 
6460 
6461 
6462 
6463     static if(!is(typeof(EAFNOSUPPORT))) {
6464         enum EAFNOSUPPORT = 97;
6465     }
6466 
6467 
6468 
6469 
6470     static if(!is(typeof(EPFNOSUPPORT))) {
6471         enum EPFNOSUPPORT = 96;
6472     }
6473 
6474 
6475 
6476 
6477     static if(!is(typeof(EOPNOTSUPP))) {
6478         enum EOPNOTSUPP = 95;
6479     }
6480 
6481 
6482 
6483 
6484     static if(!is(typeof(ESOCKTNOSUPPORT))) {
6485         enum ESOCKTNOSUPPORT = 94;
6486     }
6487 
6488 
6489 
6490 
6491     static if(!is(typeof(EPROTONOSUPPORT))) {
6492         enum EPROTONOSUPPORT = 93;
6493     }
6494 
6495 
6496 
6497 
6498     static if(!is(typeof(ENOPROTOOPT))) {
6499         enum ENOPROTOOPT = 92;
6500     }
6501 
6502 
6503 
6504 
6505     static if(!is(typeof(EPROTOTYPE))) {
6506         enum EPROTOTYPE = 91;
6507     }
6508 
6509 
6510 
6511 
6512     static if(!is(typeof(EMSGSIZE))) {
6513         enum EMSGSIZE = 90;
6514     }
6515 
6516 
6517 
6518 
6519     static if(!is(typeof(EDESTADDRREQ))) {
6520         enum EDESTADDRREQ = 89;
6521     }
6522 
6523 
6524 
6525 
6526     static if(!is(typeof(ENOTSOCK))) {
6527         enum ENOTSOCK = 88;
6528     }
6529 
6530 
6531 
6532 
6533     static if(!is(typeof(EUSERS))) {
6534         enum EUSERS = 87;
6535     }
6536 
6537 
6538 
6539 
6540     static if(!is(typeof(ESTRPIPE))) {
6541         enum ESTRPIPE = 86;
6542     }
6543 
6544 
6545 
6546 
6547     static if(!is(typeof(ERESTART))) {
6548         enum ERESTART = 85;
6549     }
6550 
6551 
6552 
6553 
6554     static if(!is(typeof(EILSEQ))) {
6555         enum EILSEQ = 84;
6556     }
6557 
6558 
6559 
6560 
6561     static if(!is(typeof(ELIBEXEC))) {
6562         enum ELIBEXEC = 83;
6563     }
6564 
6565 
6566 
6567 
6568     static if(!is(typeof(ELIBMAX))) {
6569         enum ELIBMAX = 82;
6570     }
6571 
6572 
6573 
6574 
6575     static if(!is(typeof(ELIBSCN))) {
6576         enum ELIBSCN = 81;
6577     }
6578 
6579 
6580 
6581 
6582     static if(!is(typeof(ELIBBAD))) {
6583         enum ELIBBAD = 80;
6584     }
6585 
6586 
6587 
6588 
6589     static if(!is(typeof(ELIBACC))) {
6590         enum ELIBACC = 79;
6591     }
6592 
6593 
6594 
6595 
6596     static if(!is(typeof(EREMCHG))) {
6597         enum EREMCHG = 78;
6598     }
6599 
6600 
6601 
6602 
6603     static if(!is(typeof(EBADFD))) {
6604         enum EBADFD = 77;
6605     }
6606 
6607 
6608 
6609 
6610     static if(!is(typeof(ENOTUNIQ))) {
6611         enum ENOTUNIQ = 76;
6612     }
6613 
6614 
6615 
6616 
6617     static if(!is(typeof(EOVERFLOW))) {
6618         enum EOVERFLOW = 75;
6619     }
6620 
6621 
6622 
6623 
6624     static if(!is(typeof(EBADMSG))) {
6625         enum EBADMSG = 74;
6626     }
6627 
6628 
6629 
6630 
6631     static if(!is(typeof(EDOTDOT))) {
6632         enum EDOTDOT = 73;
6633     }
6634 
6635 
6636 
6637 
6638     static if(!is(typeof(EMULTIHOP))) {
6639         enum EMULTIHOP = 72;
6640     }
6641 
6642 
6643 
6644 
6645     static if(!is(typeof(EPROTO))) {
6646         enum EPROTO = 71;
6647     }
6648 
6649 
6650 
6651 
6652     static if(!is(typeof(ECOMM))) {
6653         enum ECOMM = 70;
6654     }
6655 
6656 
6657 
6658 
6659     static if(!is(typeof(ESRMNT))) {
6660         enum ESRMNT = 69;
6661     }
6662 
6663 
6664 
6665 
6666     static if(!is(typeof(EADV))) {
6667         enum EADV = 68;
6668     }
6669 
6670 
6671 
6672 
6673     static if(!is(typeof(ENOLINK))) {
6674         enum ENOLINK = 67;
6675     }
6676 
6677 
6678 
6679 
6680     static if(!is(typeof(EREMOTE))) {
6681         enum EREMOTE = 66;
6682     }
6683 
6684 
6685 
6686 
6687     static if(!is(typeof(ENOPKG))) {
6688         enum ENOPKG = 65;
6689     }
6690 
6691 
6692 
6693 
6694     static if(!is(typeof(ENONET))) {
6695         enum ENONET = 64;
6696     }
6697 
6698 
6699 
6700 
6701     static if(!is(typeof(ENOSR))) {
6702         enum ENOSR = 63;
6703     }
6704 
6705 
6706 
6707 
6708     static if(!is(typeof(ETIME))) {
6709         enum ETIME = 62;
6710     }
6711 
6712 
6713 
6714 
6715     static if(!is(typeof(ENODATA))) {
6716         enum ENODATA = 61;
6717     }
6718 
6719 
6720 
6721 
6722     static if(!is(typeof(ENOSTR))) {
6723         enum ENOSTR = 60;
6724     }
6725 
6726 
6727 
6728 
6729     static if(!is(typeof(EBFONT))) {
6730         enum EBFONT = 59;
6731     }
6732 
6733 
6734 
6735 
6736 
6737 
6738     static if(!is(typeof(EBADSLT))) {
6739         enum EBADSLT = 57;
6740     }
6741 
6742 
6743 
6744 
6745     static if(!is(typeof(EBADRQC))) {
6746         enum EBADRQC = 56;
6747     }
6748 
6749 
6750 
6751 
6752     static if(!is(typeof(ENOANO))) {
6753         enum ENOANO = 55;
6754     }
6755 
6756 
6757 
6758 
6759     static if(!is(typeof(EXFULL))) {
6760         enum EXFULL = 54;
6761     }
6762 
6763 
6764 
6765 
6766     static if(!is(typeof(EBADR))) {
6767         enum EBADR = 53;
6768     }
6769 
6770 
6771 
6772 
6773     static if(!is(typeof(EBADE))) {
6774         enum EBADE = 52;
6775     }
6776 
6777 
6778 
6779 
6780     static if(!is(typeof(EL2HLT))) {
6781         enum EL2HLT = 51;
6782     }
6783 
6784 
6785 
6786 
6787     static if(!is(typeof(ENOCSI))) {
6788         enum ENOCSI = 50;
6789     }
6790 
6791 
6792 
6793 
6794     static if(!is(typeof(EUNATCH))) {
6795         enum EUNATCH = 49;
6796     }
6797 
6798 
6799 
6800 
6801     static if(!is(typeof(ELNRNG))) {
6802         enum ELNRNG = 48;
6803     }
6804 
6805 
6806 
6807 
6808     static if(!is(typeof(EL3RST))) {
6809         enum EL3RST = 47;
6810     }
6811 
6812 
6813 
6814 
6815     static if(!is(typeof(EL3HLT))) {
6816         enum EL3HLT = 46;
6817     }
6818 
6819 
6820 
6821 
6822     static if(!is(typeof(EL2NSYNC))) {
6823         enum EL2NSYNC = 45;
6824     }
6825 
6826 
6827 
6828 
6829     static if(!is(typeof(ECHRNG))) {
6830         enum ECHRNG = 44;
6831     }
6832 
6833 
6834 
6835 
6836     static if(!is(typeof(EIDRM))) {
6837         enum EIDRM = 43;
6838     }
6839 
6840 
6841 
6842 
6843     static if(!is(typeof(ENOMSG))) {
6844         enum ENOMSG = 42;
6845     }
6846 
6847 
6848 
6849 
6850 
6851 
6852     static if(!is(typeof(ELOOP))) {
6853         enum ELOOP = 40;
6854     }
6855 
6856 
6857 
6858 
6859     static if(!is(typeof(ENOTEMPTY))) {
6860         enum ENOTEMPTY = 39;
6861     }
6862 
6863 
6864 
6865 
6866     static if(!is(typeof(ENOSYS))) {
6867         enum ENOSYS = 38;
6868     }
6869 
6870 
6871 
6872 
6873     static if(!is(typeof(ENOLCK))) {
6874         enum ENOLCK = 37;
6875     }
6876 
6877 
6878 
6879 
6880     static if(!is(typeof(ENAMETOOLONG))) {
6881         enum ENAMETOOLONG = 36;
6882     }
6883 
6884 
6885 
6886 
6887     static if(!is(typeof(EDEADLK))) {
6888         enum EDEADLK = 35;
6889     }
6890 
6891 
6892 
6893 
6894 
6895 
6896     static if(!is(typeof(ERANGE))) {
6897         enum ERANGE = 34;
6898     }
6899 
6900 
6901 
6902 
6903     static if(!is(typeof(EDOM))) {
6904         enum EDOM = 33;
6905     }
6906 
6907 
6908 
6909 
6910     static if(!is(typeof(EPIPE))) {
6911         enum EPIPE = 32;
6912     }
6913 
6914 
6915 
6916 
6917     static if(!is(typeof(EMLINK))) {
6918         enum EMLINK = 31;
6919     }
6920 
6921 
6922 
6923 
6924     static if(!is(typeof(EROFS))) {
6925         enum EROFS = 30;
6926     }
6927 
6928 
6929 
6930 
6931     static if(!is(typeof(ESPIPE))) {
6932         enum ESPIPE = 29;
6933     }
6934 
6935 
6936 
6937 
6938     static if(!is(typeof(ENOSPC))) {
6939         enum ENOSPC = 28;
6940     }
6941 
6942 
6943 
6944 
6945     static if(!is(typeof(EFBIG))) {
6946         enum EFBIG = 27;
6947     }
6948 
6949 
6950 
6951 
6952     static if(!is(typeof(ETXTBSY))) {
6953         enum ETXTBSY = 26;
6954     }
6955 
6956 
6957 
6958 
6959     static if(!is(typeof(ENOTTY))) {
6960         enum ENOTTY = 25;
6961     }
6962 
6963 
6964 
6965 
6966     static if(!is(typeof(EMFILE))) {
6967         enum EMFILE = 24;
6968     }
6969 
6970 
6971 
6972 
6973     static if(!is(typeof(ENFILE))) {
6974         enum ENFILE = 23;
6975     }
6976 
6977 
6978 
6979 
6980     static if(!is(typeof(EINVAL))) {
6981         enum EINVAL = 22;
6982     }
6983 
6984 
6985 
6986 
6987     static if(!is(typeof(EISDIR))) {
6988         enum EISDIR = 21;
6989     }
6990 
6991 
6992 
6993 
6994     static if(!is(typeof(ENOTDIR))) {
6995         enum ENOTDIR = 20;
6996     }
6997 
6998 
6999 
7000 
7001     static if(!is(typeof(ENODEV))) {
7002         enum ENODEV = 19;
7003     }
7004 
7005 
7006 
7007 
7008     static if(!is(typeof(EXDEV))) {
7009         enum EXDEV = 18;
7010     }
7011 
7012 
7013 
7014 
7015     static if(!is(typeof(EEXIST))) {
7016         enum EEXIST = 17;
7017     }
7018 
7019 
7020 
7021 
7022     static if(!is(typeof(EBUSY))) {
7023         enum EBUSY = 16;
7024     }
7025 
7026 
7027 
7028 
7029     static if(!is(typeof(ENOTBLK))) {
7030         enum ENOTBLK = 15;
7031     }
7032 
7033 
7034 
7035 
7036     static if(!is(typeof(EFAULT))) {
7037         enum EFAULT = 14;
7038     }
7039 
7040 
7041 
7042 
7043     static if(!is(typeof(EACCES))) {
7044         enum EACCES = 13;
7045     }
7046 
7047 
7048 
7049 
7050     static if(!is(typeof(ENOMEM))) {
7051         enum ENOMEM = 12;
7052     }
7053 
7054 
7055 
7056 
7057     static if(!is(typeof(EAGAIN))) {
7058         enum EAGAIN = 11;
7059     }
7060 
7061 
7062 
7063 
7064     static if(!is(typeof(ECHILD))) {
7065         enum ECHILD = 10;
7066     }
7067 
7068 
7069 
7070 
7071     static if(!is(typeof(EBADF))) {
7072         enum EBADF = 9;
7073     }
7074 
7075 
7076 
7077 
7078     static if(!is(typeof(ENOEXEC))) {
7079         enum ENOEXEC = 8;
7080     }
7081 
7082 
7083 
7084 
7085     static if(!is(typeof(E2BIG))) {
7086         enum E2BIG = 7;
7087     }
7088 
7089 
7090 
7091 
7092     static if(!is(typeof(ENXIO))) {
7093         enum ENXIO = 6;
7094     }
7095 
7096 
7097 
7098 
7099     static if(!is(typeof(EIO))) {
7100         enum EIO = 5;
7101     }
7102 
7103 
7104 
7105 
7106     static if(!is(typeof(EINTR))) {
7107         enum EINTR = 4;
7108     }
7109 
7110 
7111 
7112 
7113     static if(!is(typeof(ESRCH))) {
7114         enum ESRCH = 3;
7115     }
7116 
7117 
7118 
7119 
7120     static if(!is(typeof(ENOENT))) {
7121         enum ENOENT = 2;
7122     }
7123 
7124 
7125 
7126 
7127     static if(!is(typeof(EPERM))) {
7128         enum EPERM = 1;
7129     }
7130     static if(!is(typeof(_ALLOCA_H))) {
7131         enum _ALLOCA_H = 1;
7132     }
7133     static if(!is(typeof(LXW_ATTR_32))) {
7134         enum LXW_ATTR_32 = 32;
7135     }
7136 
7137 
7138 
7139 
7140     static if(!is(typeof(LXW_MAX_ATTRIBUTE_LENGTH))) {
7141         enum LXW_MAX_ATTRIBUTE_LENGTH = 256;
7142     }
7143     static if(!is(typeof(LXW_BREAKS_MAX))) {
7144         enum LXW_BREAKS_MAX = 1023;
7145     }
7146 
7147 
7148 
7149 
7150     static if(!is(typeof(LXW_PANE_NAME_LENGTH))) {
7151         enum LXW_PANE_NAME_LENGTH = 12;
7152     }
7153 
7154 
7155 
7156 
7157     static if(!is(typeof(LXW_MAX_NUMBER_URLS))) {
7158         enum LXW_MAX_NUMBER_URLS = 65530;
7159     }
7160 
7161 
7162 
7163 
7164     static if(!is(typeof(LXW_HEADER_FOOTER_MAX))) {
7165         enum LXW_HEADER_FOOTER_MAX = 255;
7166     }
7167 
7168 
7169 
7170 
7171     static if(!is(typeof(LXW_COL_META_MAX))) {
7172         enum LXW_COL_META_MAX = 128;
7173     }
7174 
7175 
7176 
7177 
7178     static if(!is(typeof(LXW_COL_MAX))) {
7179         enum LXW_COL_MAX = 16384;
7180     }
7181 
7182 
7183 
7184 
7185     static if(!is(typeof(LXW_ROW_MAX))) {
7186         enum LXW_ROW_MAX = 1048576;
7187     }
7188     static if(!is(typeof(LXW_DEFINED_NAME_LENGTH))) {
7189         enum LXW_DEFINED_NAME_LENGTH = 128;
7190     }
7191     static if(!is(typeof(DEF_MEM_LEVEL))) {
7192         enum DEF_MEM_LEVEL = 8;
7193     }
7194     static if(!is(typeof(Z_BZIP2ED))) {
7195         enum Z_BZIP2ED = 12;
7196     }
7197     static if(!is(typeof(RB_INF))) {
7198         enum RB_INF = 1;
7199     }
7200     static if(!is(typeof(RB_RED))) {
7201         enum RB_RED = 1;
7202     }
7203 
7204 
7205 
7206 
7207     static if(!is(typeof(RB_BLACK))) {
7208         enum RB_BLACK = 0;
7209     }
7210     static if(!is(typeof(SPLAY_INF))) {
7211         enum SPLAY_INF = 1;
7212     }
7213     static if(!is(typeof(F_ULOCK))) {
7214         enum F_ULOCK = 0;
7215     }
7216 
7217 
7218 
7219 
7220     static if(!is(typeof(F_LOCK))) {
7221         enum F_LOCK = 1;
7222     }
7223 
7224 
7225 
7226 
7227     static if(!is(typeof(F_TLOCK))) {
7228         enum F_TLOCK = 2;
7229     }
7230 
7231 
7232 
7233 
7234     static if(!is(typeof(F_TEST))) {
7235         enum F_TEST = 3;
7236     }
7237     static if(!is(typeof(MAX_MEM_LEVEL))) {
7238         enum MAX_MEM_LEVEL = 9;
7239     }
7240 
7241 
7242 
7243 
7244     static if(!is(typeof(MAX_WBITS))) {
7245         enum MAX_WBITS = 15;
7246     }
7247     static if(!is(typeof(ZLIB_VERSION))) {
7248         enum ZLIB_VERSION = "1.2.11";
7249     }
7250 
7251 
7252 
7253 
7254     static if(!is(typeof(ZLIB_VERNUM))) {
7255         enum ZLIB_VERNUM = 0x12b0;
7256     }
7257 
7258 
7259 
7260 
7261     static if(!is(typeof(ZLIB_VER_MAJOR))) {
7262         enum ZLIB_VER_MAJOR = 1;
7263     }
7264 
7265 
7266 
7267 
7268     static if(!is(typeof(ZLIB_VER_MINOR))) {
7269         enum ZLIB_VER_MINOR = 2;
7270     }
7271 
7272 
7273 
7274 
7275     static if(!is(typeof(ZLIB_VER_REVISION))) {
7276         enum ZLIB_VER_REVISION = 11;
7277     }
7278 
7279 
7280 
7281 
7282     static if(!is(typeof(ZLIB_VER_SUBREVISION))) {
7283         enum ZLIB_VER_SUBREVISION = 0;
7284     }
7285     static if(!is(typeof(Z_NO_FLUSH))) {
7286         enum Z_NO_FLUSH = 0;
7287     }
7288 
7289 
7290 
7291 
7292     static if(!is(typeof(Z_PARTIAL_FLUSH))) {
7293         enum Z_PARTIAL_FLUSH = 1;
7294     }
7295 
7296 
7297 
7298 
7299     static if(!is(typeof(Z_SYNC_FLUSH))) {
7300         enum Z_SYNC_FLUSH = 2;
7301     }
7302 
7303 
7304 
7305 
7306     static if(!is(typeof(Z_FULL_FLUSH))) {
7307         enum Z_FULL_FLUSH = 3;
7308     }
7309 
7310 
7311 
7312 
7313     static if(!is(typeof(Z_FINISH))) {
7314         enum Z_FINISH = 4;
7315     }
7316 
7317 
7318 
7319 
7320     static if(!is(typeof(Z_BLOCK))) {
7321         enum Z_BLOCK = 5;
7322     }
7323 
7324 
7325 
7326 
7327     static if(!is(typeof(Z_TREES))) {
7328         enum Z_TREES = 6;
7329     }
7330 
7331 
7332 
7333 
7334     static if(!is(typeof(Z_OK))) {
7335         enum Z_OK = 0;
7336     }
7337 
7338 
7339 
7340 
7341     static if(!is(typeof(Z_STREAM_END))) {
7342         enum Z_STREAM_END = 1;
7343     }
7344 
7345 
7346 
7347 
7348     static if(!is(typeof(Z_NEED_DICT))) {
7349         enum Z_NEED_DICT = 2;
7350     }
7351     static if(!is(typeof(Z_NO_COMPRESSION))) {
7352         enum Z_NO_COMPRESSION = 0;
7353     }
7354 
7355 
7356 
7357 
7358     static if(!is(typeof(Z_BEST_SPEED))) {
7359         enum Z_BEST_SPEED = 1;
7360     }
7361 
7362 
7363 
7364 
7365     static if(!is(typeof(Z_BEST_COMPRESSION))) {
7366         enum Z_BEST_COMPRESSION = 9;
7367     }
7368 
7369 
7370 
7371 
7372 
7373 
7374     static if(!is(typeof(Z_FILTERED))) {
7375         enum Z_FILTERED = 1;
7376     }
7377 
7378 
7379 
7380 
7381     static if(!is(typeof(Z_HUFFMAN_ONLY))) {
7382         enum Z_HUFFMAN_ONLY = 2;
7383     }
7384 
7385 
7386 
7387 
7388     static if(!is(typeof(Z_RLE))) {
7389         enum Z_RLE = 3;
7390     }
7391 
7392 
7393 
7394 
7395     static if(!is(typeof(Z_FIXED))) {
7396         enum Z_FIXED = 4;
7397     }
7398 
7399 
7400 
7401 
7402     static if(!is(typeof(Z_DEFAULT_STRATEGY))) {
7403         enum Z_DEFAULT_STRATEGY = 0;
7404     }
7405 
7406 
7407 
7408 
7409     static if(!is(typeof(Z_BINARY))) {
7410         enum Z_BINARY = 0;
7411     }
7412 
7413 
7414 
7415 
7416     static if(!is(typeof(Z_TEXT))) {
7417         enum Z_TEXT = 1;
7418     }
7419 
7420 
7421 
7422 
7423 
7424 
7425     static if(!is(typeof(Z_UNKNOWN))) {
7426         enum Z_UNKNOWN = 2;
7427     }
7428 
7429 
7430 
7431 
7432     static if(!is(typeof(Z_DEFLATED))) {
7433         enum Z_DEFLATED = 8;
7434     }
7435 
7436 
7437 
7438 
7439     static if(!is(typeof(Z_NULL))) {
7440         enum Z_NULL = 0;
7441     }
7442     static if(!is(typeof(MAXU32))) {
7443         enum MAXU32 = 0xffffffff;
7444     }
7445 
7446 
7447 
7448 
7449     static if(!is(typeof(_FILE_OFFSET_BIT))) {
7450         enum _FILE_OFFSET_BIT = 64;
7451     }
7452     static if(!is(typeof(LXW_MAX_FONT_SIZE))) {
7453         enum LXW_MAX_FONT_SIZE = 409.0;
7454     }
7455 
7456 
7457 
7458 
7459     static if(!is(typeof(LXW_MIN_FONT_SIZE))) {
7460         enum LXW_MIN_FONT_SIZE = 1.0;
7461     }
7462 
7463 
7464 
7465 
7466     static if(!is(typeof(LXW_COLOR_MASK))) {
7467         enum LXW_COLOR_MASK = 0xFFFFFF;
7468     }
7469     static if(!is(typeof(LXW_DEFAULT_FONT_THEME))) {
7470         enum LXW_DEFAULT_FONT_THEME = 1;
7471     }
7472 
7473 
7474 
7475 
7476     static if(!is(typeof(LXW_DEFAULT_FONT_FAMILY))) {
7477         enum LXW_DEFAULT_FONT_FAMILY = 2;
7478     }
7479 
7480 
7481 
7482 
7483     static if(!is(typeof(LXW_DEFAULT_FONT_NAME))) {
7484         enum LXW_DEFAULT_FONT_NAME = "Calibri";
7485     }
7486 
7487 
7488 
7489 
7490     static if(!is(typeof(LXW_FORMAT_FIELD_LEN))) {
7491         enum LXW_FORMAT_FIELD_LEN = 128;
7492     }
7493     static if(!is(typeof(LXW_APP_MSEXCEL))) {
7494         enum LXW_APP_MSEXCEL = "application/vnd.ms-excel.";
7495     }
7496 
7497 
7498 
7499 
7500     static if(!is(typeof(LXW_APP_DOCUMENT))) {
7501         enum LXW_APP_DOCUMENT = "application/vnd.openxmlformats-officedocument.";
7502     }
7503 
7504 
7505 
7506 
7507     static if(!is(typeof(LXW_APP_PACKAGE))) {
7508         enum LXW_APP_PACKAGE = "application/vnd.openxmlformats-package.";
7509     }
7510     static if(!is(typeof(LXW_SCHEMA_ROOT))) {
7511         enum LXW_SCHEMA_ROOT = "http://schemas.openxmlformats.org";
7512     }
7513 
7514 
7515 
7516 
7517     static if(!is(typeof(LXW_SCHEMA_MS))) {
7518         enum LXW_SCHEMA_MS = "http://schemas.microsoft.com/office/2006/relationships";
7519     }
7520 
7521 
7522 
7523 
7524     static if(!is(typeof(LXW_LANDSCAPE))) {
7525         enum LXW_LANDSCAPE = 0;
7526     }
7527 
7528 
7529 
7530 
7531     static if(!is(typeof(LXW_PORTRAIT))) {
7532         enum LXW_PORTRAIT = 1;
7533     }
7534 
7535 
7536 
7537 
7538     static if(!is(typeof(LXW_IGNORE))) {
7539         enum LXW_IGNORE = 1;
7540     }
7541 
7542 
7543 
7544 
7545     static if(!is(typeof(LXW_FILENAME_LENGTH))) {
7546         enum LXW_FILENAME_LENGTH = 128;
7547     }
7548 
7549 
7550 
7551 
7552 
7553 
7554     static if(!is(typeof(LXW_EPOCH_1904))) {
7555         enum LXW_EPOCH_1904 = 1;
7556     }
7557 
7558 
7559 
7560 
7561     static if(!is(typeof(LXW_EPOCH_1900))) {
7562         enum LXW_EPOCH_1900 = 0;
7563     }
7564     static if(!is(typeof(LXW_SHEETNAME_MAX))) {
7565         enum LXW_SHEETNAME_MAX = 31;
7566     }
7567     static if(!is(typeof(LXW_CHART_DEFAULT_GAP))) {
7568         enum LXW_CHART_DEFAULT_GAP = 501;
7569     }
7570 
7571 
7572 
7573 
7574     static if(!is(typeof(LXW_CHART_NUM_FORMAT_LEN))) {
7575         enum LXW_CHART_NUM_FORMAT_LEN = 128;
7576     }
7577     static if(!is(typeof(__GNUC_VA_LIST))) {
7578         enum __GNUC_VA_LIST = 1;
7579     }
7580 }
7581 
7582 
7583 struct __va_list_tag;