1// TR1 code repetition -*- C++ -*-
2
3// Copyright (C) 2005 Free Software Foundation, Inc.
4// Written by Douglas Gregor <doug.gregor -at- gmail.com>
5//
6// This file is part of the GNU ISO C++ Library.  This library is free
7// software; you can redistribute it and/or modify it under the
8// terms of the GNU General Public License as published by the
9// Free Software Foundation; either version 2, or (at your option)
10// any later version.
11
12// This library is distributed in the hope that it will be useful,
13// but WITHOUT ANY WARRANTY; without even the implied warranty of
14// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15// GNU General Public License for more details.
16
17// You should have received a copy of the GNU General Public License along
18// with this library; see the file COPYING.  If not, write to the Free
19// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
20// USA.
21
22// As a special exception, you may use this file as part of a free software
23// library without restriction.  Specifically, if other files instantiate
24// templates or use macros or inline functions from this file, or you compile
25// this file and link it with other files to produce an executable, this
26// file does not by itself cause the resulting executable to be covered by
27// the GNU General Public License.  This exception does not however
28// invalidate any other reasons why the executable file might be covered by
29// the GNU General Public License.
30
31/** @file tr1/repeat.h
32 *  This is an internal header file, included by other library headers.
33 *  You should not attempt to use it directly.
34 */
35
36#ifndef _GLIBCXX_REPEAT_HEADER
37#  error Internal error: _GLIBCXX_REPEAT_HEADER must be set
38#endif /* _GLIBCXX_REPEAT_HEADER */
39
40#ifndef _GLIBCXX_TUPLE_ALL_TEMPLATE_PARAMS
41#  define _GLIBCXX_TUPLE_ALL_TEMPLATE_PARAMS typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10
42#  define _GLIBCXX_TUPLE_ALL_TEMPLATE_PARAMS_UNNAMED typename, typename, typename, typename, typename, typename, typename, typename, typename, typename
43#  define _GLIBCXX_TUPLE_ALL_TEMPLATE_ARGS _T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10
44#endif
45
46#define _GLIBCXX_NUM_ARGS 0
47#define _GLIBCXX_COMMA
48#define _GLIBCXX_TEMPLATE_PARAMS
49#define _GLIBCXX_TEMPLATE_ARGS
50#define _GLIBCXX_PARAMS
51#define _GLIBCXX_REF_PARAMS
52#define _GLIBCXX_ARGS
53#define _GLIBCXX_COMMA_SHIFTED
54#define _GLIBCXX_TEMPLATE_PARAMS_SHIFTED
55#define _GLIBCXX_TEMPLATE_ARGS_SHIFTED
56#define _GLIBCXX_PARAMS_SHIFTED
57#define _GLIBCXX_ARGS_SHIFTED
58#define _GLIBCXX_BIND_MEMBERS_INIT
59#define _GLIBCXX_BIND_MEMBERS
60#define _GLIBCXX_MU_GET_TUPLE_ARGS
61#define _GLIBCXX_BIND_V_TEMPLATE_ARGS(_CV)
62#define _GLIBCXX_BIND_V_ARGS
63#define _GLIBCXX_TUPLE_ADD_CREF
64#define _GLIBCXX_TUPLE_COPY_INIT
65#define _GLIBCXX_TUPLE_ASSIGN
66#define _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS
67#define _GLIBCXX_TEMPLATE_ARGS_STRIPPED
68#define _GLIBCXX_TEMPLATE_PARAMS_U
69#define _GLIBCXX_TEMPLATE_ARGS_U
70#define _GLIBCXX_REF_WRAP_PARAMS
71#define _GLIBCXX_REF_TEMPLATE_ARGS
72#define _GLIBCXX_NUM_ARGS_PLUS_1 1
73#define _GLIBCXX_T_NUM_ARGS_PLUS_1 _T1
74#include _GLIBCXX_REPEAT_HEADER
75#undef _GLIBCXX_T_NUM_ARGS_PLUS_1
76#undef _GLIBCXX_NUM_ARGS_PLUS_1
77#undef _GLIBCXX_REF_TEMPLATE_ARGS
78#undef _GLIBCXX_REF_WRAP_PARAMS
79#undef _GLIBCXX_TEMPLATE_ARGS_U
80#undef _GLIBCXX_TEMPLATE_PARAMS_U
81#undef _GLIBCXX_TEMPLATE_ARGS_STRIPPED
82#undef _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS
83#undef _GLIBCXX_TUPLE_ASSIGN
84#undef _GLIBCXX_TUPLE_COPY_INIT
85#undef _GLIBCXX_TUPLE_ADD_CREF
86#undef _GLIBCXX_BIND_V_ARGS
87#undef _GLIBCXX_BIND_V_TEMPLATE_ARGS
88#undef _GLIBCXX_MU_GET_TUPLE_ARGS
89#undef _GLIBCXX_BIND_MEMBERS_INIT
90#undef _GLIBCXX_BIND_MEMBERS
91#undef _GLIBCXX_ARGS_SHIFTED
92#undef _GLIBCXX_PARAMS_SHIFTED
93#undef _GLIBCXX_TEMPLATE_ARGS_SHIFTED
94#undef _GLIBCXX_TEMPLATE_PARAMS_SHIFTED
95#undef _GLIBCXX_COMMA_SHIFTED
96#undef _GLIBCXX_ARGS
97#undef _GLIBCXX_REF_PARAMS
98#undef _GLIBCXX_PARAMS
99#undef _GLIBCXX_TEMPLATE_ARGS
100#undef _GLIBCXX_TEMPLATE_PARAMS
101#undef _GLIBCXX_COMMA
102#undef _GLIBCXX_NUM_ARGS
103
104#define _GLIBCXX_NUM_ARGS 1
105#define _GLIBCXX_COMMA ,
106#define _GLIBCXX_TEMPLATE_PARAMS typename _T1
107#define _GLIBCXX_TEMPLATE_ARGS _T1
108#define _GLIBCXX_PARAMS _T1 __a1
109#define _GLIBCXX_REF_PARAMS _T1& __a1
110#define _GLIBCXX_ARGS __a1
111#define _GLIBCXX_COMMA_SHIFTED
112#define _GLIBCXX_TEMPLATE_PARAMS_SHIFTED
113#define _GLIBCXX_TEMPLATE_ARGS_SHIFTED
114#define _GLIBCXX_PARAMS_SHIFTED
115#define _GLIBCXX_ARGS_SHIFTED
116#define _GLIBCXX_BIND_MEMBERS _T1 _M_arg1;
117#define _GLIBCXX_BIND_MEMBERS_INIT _M_arg1(__a1)
118#define _GLIBCXX_MU_GET_TUPLE_ARGS ::std::tr1::get<0>(__tuple)
119#define _GLIBCXX_BIND_V_TEMPLATE_ARGS(_CV) typename result_of<_Mu<_T1> _CV(_T1, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type
120#define _GLIBCXX_BIND_V_ARGS _Mu<_T1>()(_M_arg1, ::std::tr1::tie(_GLIBCXX_BIND_ARGS))
121#define _GLIBCXX_TUPLE_ADD_CREF typename __add_c_ref<_T1>::type __a1
122#define _GLIBCXX_TUPLE_COPY_INIT _M_arg1(__in._M_arg1)
123#define _GLIBCXX_TUPLE_ASSIGN _M_arg1 = __in._M_arg1;
124#define _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS typename _T1 = _NullClass
125#define _GLIBCXX_TEMPLATE_ARGS_STRIPPED typename __strip_reference_wrapper<_T1>::__type
126#define _GLIBCXX_TEMPLATE_PARAMS_U typename _U1
127#define _GLIBCXX_TEMPLATE_ARGS_U _U1
128#define _GLIBCXX_REF_WRAP_PARAMS ref(__a1)
129#define _GLIBCXX_REF_TEMPLATE_ARGS _T1&
130#define _GLIBCXX_NUM_ARGS_PLUS_1 2
131#define _GLIBCXX_T_NUM_ARGS_PLUS_1 _T2
132#include _GLIBCXX_REPEAT_HEADER
133#undef _GLIBCXX_T_NUM_ARGS_PLUS_1
134#undef _GLIBCXX_NUM_ARGS_PLUS_1
135#undef _GLIBCXX_REF_TEMPLATE_ARGS
136#undef _GLIBCXX_REF_WRAP_PARAMS
137#undef _GLIBCXX_TEMPLATE_ARGS_U
138#undef _GLIBCXX_TEMPLATE_PARAMS_U
139#undef _GLIBCXX_TEMPLATE_ARGS_STRIPPED
140#undef _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS
141#undef _GLIBCXX_TUPLE_ASSIGN
142#undef _GLIBCXX_TUPLE_COPY_INIT
143#undef _GLIBCXX_TUPLE_ADD_CREF
144#undef _GLIBCXX_BIND_V_ARGS
145#undef _GLIBCXX_BIND_V_TEMPLATE_ARGS
146#undef _GLIBCXX_MU_GET_TUPLE_ARGS
147#undef _GLIBCXX_BIND_MEMBERS_INIT
148#undef _GLIBCXX_BIND_MEMBERS
149#undef _GLIBCXX_ARGS_SHIFTED
150#undef _GLIBCXX_PARAMS_SHIFTED
151#undef _GLIBCXX_TEMPLATE_ARGS_SHIFTED
152#undef _GLIBCXX_TEMPLATE_PARAMS_SHIFTED
153#undef _GLIBCXX_COMMA_SHIFTED
154#undef _GLIBCXX_ARGS
155#undef _GLIBCXX_REF_PARAMS
156#undef _GLIBCXX_PARAMS
157#undef _GLIBCXX_TEMPLATE_ARGS
158#undef _GLIBCXX_TEMPLATE_PARAMS
159#undef _GLIBCXX_COMMA
160#undef _GLIBCXX_NUM_ARGS
161
162#define _GLIBCXX_NUM_ARGS 2
163#define _GLIBCXX_COMMA ,
164#define _GLIBCXX_TEMPLATE_PARAMS typename _T1, typename _T2
165#define _GLIBCXX_TEMPLATE_ARGS _T1, _T2
166#define _GLIBCXX_PARAMS _T1 __a1, _T2 __a2
167#define _GLIBCXX_REF_PARAMS _T1& __a1, _T2& __a2
168#define _GLIBCXX_ARGS __a1, __a2
169#define _GLIBCXX_COMMA_SHIFTED ,
170#define _GLIBCXX_TEMPLATE_PARAMS_SHIFTED typename _T1
171#define _GLIBCXX_TEMPLATE_ARGS_SHIFTED _T1
172#define _GLIBCXX_PARAMS_SHIFTED _T1 __a1
173#define _GLIBCXX_ARGS_SHIFTED __a1
174#define _GLIBCXX_BIND_MEMBERS _T1 _M_arg1; _T2 _M_arg2;
175#define _GLIBCXX_BIND_MEMBERS_INIT _M_arg1(__a1), _M_arg2(__a2)
176#define _GLIBCXX_MU_GET_TUPLE_ARGS ::std::tr1::get<0>(__tuple), ::std::tr1::get<1>(__tuple)
177#define _GLIBCXX_BIND_V_TEMPLATE_ARGS(_CV) typename result_of<_Mu<_T1> _CV(_T1, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T2> _CV(_T2, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type
178#define _GLIBCXX_BIND_V_ARGS _Mu<_T1>()(_M_arg1, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T2>()(_M_arg2, ::std::tr1::tie(_GLIBCXX_BIND_ARGS))
179#define _GLIBCXX_TUPLE_ADD_CREF typename __add_c_ref<_T1>::type __a1, typename __add_c_ref<_T2>::type __a2
180#define _GLIBCXX_TUPLE_COPY_INIT _M_arg1(__in._M_arg1), _M_arg2(__in._M_arg2)
181#define _GLIBCXX_TUPLE_ASSIGN _M_arg1 = __in._M_arg1; _M_arg2 = __in._M_arg2;
182#define _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS typename _T1 = _NullClass, typename _T2 = _NullClass
183#define _GLIBCXX_TEMPLATE_ARGS_STRIPPED typename __strip_reference_wrapper<_T1>::__type, typename __strip_reference_wrapper<_T2>::__type
184#define _GLIBCXX_TEMPLATE_PARAMS_U typename _U1, typename _U2
185#define _GLIBCXX_TEMPLATE_ARGS_U _U1, _U2
186#define _GLIBCXX_REF_WRAP_PARAMS ref(__a1), ref(__a2)
187#define _GLIBCXX_REF_TEMPLATE_ARGS _T1&, _T2&
188#define _GLIBCXX_NUM_ARGS_PLUS_1 3
189#define _GLIBCXX_T_NUM_ARGS_PLUS_1 _T3
190#include _GLIBCXX_REPEAT_HEADER
191#undef _GLIBCXX_T_NUM_ARGS_PLUS_1
192#undef _GLIBCXX_NUM_ARGS_PLUS_1
193#undef _GLIBCXX_REF_TEMPLATE_ARGS
194#undef _GLIBCXX_REF_WRAP_PARAMS
195#undef _GLIBCXX_TEMPLATE_ARGS_U
196#undef _GLIBCXX_TEMPLATE_PARAMS_U
197#undef _GLIBCXX_TEMPLATE_ARGS_STRIPPED
198#undef _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS
199#undef _GLIBCXX_TUPLE_ASSIGN
200#undef _GLIBCXX_TUPLE_COPY_INIT
201#undef _GLIBCXX_TUPLE_ADD_CREF
202#undef _GLIBCXX_BIND_V_ARGS
203#undef _GLIBCXX_BIND_V_TEMPLATE_ARGS
204#undef _GLIBCXX_MU_GET_TUPLE_ARGS
205#undef _GLIBCXX_BIND_MEMBERS_INIT
206#undef _GLIBCXX_BIND_MEMBERS
207#undef _GLIBCXX_ARGS_SHIFTED
208#undef _GLIBCXX_PARAMS_SHIFTED
209#undef _GLIBCXX_TEMPLATE_ARGS_SHIFTED
210#undef _GLIBCXX_TEMPLATE_PARAMS_SHIFTED
211#undef _GLIBCXX_COMMA_SHIFTED
212#undef _GLIBCXX_ARGS
213#undef _GLIBCXX_REF_PARAMS
214#undef _GLIBCXX_PARAMS
215#undef _GLIBCXX_TEMPLATE_ARGS
216#undef _GLIBCXX_TEMPLATE_PARAMS
217#undef _GLIBCXX_COMMA
218#undef _GLIBCXX_NUM_ARGS
219#define _GLIBCXX_NUM_ARGS 3
220#define _GLIBCXX_COMMA ,
221#define _GLIBCXX_TEMPLATE_PARAMS typename _T1, typename _T2, typename _T3
222#define _GLIBCXX_TEMPLATE_ARGS _T1, _T2, _T3
223#define _GLIBCXX_PARAMS _T1 __a1, _T2 __a2, _T3 __a3
224#define _GLIBCXX_REF_PARAMS _T1& __a1, _T2& __a2, _T3& __a3
225#define _GLIBCXX_ARGS __a1, __a2, __a3
226#define _GLIBCXX_COMMA_SHIFTED ,
227#define _GLIBCXX_TEMPLATE_PARAMS_SHIFTED typename _T1, typename _T2
228#define _GLIBCXX_TEMPLATE_ARGS_SHIFTED _T1, _T2
229#define _GLIBCXX_PARAMS_SHIFTED _T1 __a1, _T2 __a2
230#define _GLIBCXX_ARGS_SHIFTED __a1, __a2
231#define _GLIBCXX_BIND_MEMBERS _T1 _M_arg1; _T2 _M_arg2; _T3 _M_arg3;
232#define _GLIBCXX_BIND_MEMBERS_INIT _M_arg1(__a1), _M_arg2(__a2), _M_arg3(__a3)
233#define _GLIBCXX_MU_GET_TUPLE_ARGS ::std::tr1::get<0>(__tuple), ::std::tr1::get<1>(__tuple), ::std::tr1::get<2>(__tuple)
234#define _GLIBCXX_BIND_V_TEMPLATE_ARGS(_CV) typename result_of<_Mu<_T1> _CV(_T1, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T2> _CV(_T2, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T3> _CV(_T3, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type
235#define _GLIBCXX_BIND_V_ARGS _Mu<_T1>()(_M_arg1, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T2>()(_M_arg2, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T3>()(_M_arg3, ::std::tr1::tie(_GLIBCXX_BIND_ARGS))
236#define _GLIBCXX_TUPLE_ADD_CREF typename __add_c_ref<_T1>::type __a1, typename __add_c_ref<_T2>::type __a2, typename __add_c_ref<_T3>::type __a3
237#define _GLIBCXX_TUPLE_COPY_INIT _M_arg1(__in._M_arg1), _M_arg2(__in._M_arg2), _M_arg3(__in._M_arg3)
238#define _GLIBCXX_TUPLE_ASSIGN _M_arg1 = __in._M_arg1; _M_arg2 = __in._M_arg2; _M_arg3 = __in._M_arg3;
239#define _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS typename _T1 = _NullClass, typename _T2 = _NullClass, typename _T3 = _NullClass
240#define _GLIBCXX_TEMPLATE_ARGS_STRIPPED typename __strip_reference_wrapper<_T1>::__type, typename __strip_reference_wrapper<_T2>::__type, typename __strip_reference_wrapper<_T3>::__type
241#define _GLIBCXX_TEMPLATE_PARAMS_U typename _U1, typename _U2, typename _U3
242#define _GLIBCXX_TEMPLATE_ARGS_U _U1, _U2, _U3
243#define _GLIBCXX_REF_WRAP_PARAMS ref(__a1), ref(__a2), ref(__a3)
244#define _GLIBCXX_REF_TEMPLATE_ARGS _T1&, _T2&, _T3&
245#define _GLIBCXX_NUM_ARGS_PLUS_1 4
246#define _GLIBCXX_T_NUM_ARGS_PLUS_1 _T4
247#include _GLIBCXX_REPEAT_HEADER
248#undef _GLIBCXX_T_NUM_ARGS_PLUS_1
249#undef _GLIBCXX_NUM_ARGS_PLUS_1
250#undef _GLIBCXX_REF_TEMPLATE_ARGS
251#undef _GLIBCXX_REF_WRAP_PARAMS
252#undef _GLIBCXX_TEMPLATE_ARGS_U
253#undef _GLIBCXX_TEMPLATE_PARAMS_U
254#undef _GLIBCXX_TEMPLATE_ARGS_STRIPPED
255#undef _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS
256#undef _GLIBCXX_TUPLE_ASSIGN
257#undef _GLIBCXX_TUPLE_COPY_INIT
258#undef _GLIBCXX_TUPLE_ADD_CREF
259#undef _GLIBCXX_BIND_V_ARGS
260#undef _GLIBCXX_BIND_V_TEMPLATE_ARGS
261#undef _GLIBCXX_MU_GET_TUPLE_ARGS
262#undef _GLIBCXX_BIND_MEMBERS_INIT
263#undef _GLIBCXX_BIND_MEMBERS
264#undef _GLIBCXX_ARGS_SHIFTED
265#undef _GLIBCXX_PARAMS_SHIFTED
266#undef _GLIBCXX_TEMPLATE_ARGS_SHIFTED
267#undef _GLIBCXX_TEMPLATE_PARAMS_SHIFTED
268#undef _GLIBCXX_COMMA_SHIFTED
269#undef _GLIBCXX_ARGS
270#undef _GLIBCXX_REF_PARAMS
271#undef _GLIBCXX_PARAMS
272#undef _GLIBCXX_TEMPLATE_ARGS
273#undef _GLIBCXX_TEMPLATE_PARAMS
274#undef _GLIBCXX_COMMA
275#undef _GLIBCXX_NUM_ARGS
276#define _GLIBCXX_NUM_ARGS 4
277#define _GLIBCXX_COMMA ,
278#define _GLIBCXX_TEMPLATE_PARAMS typename _T1, typename _T2, typename _T3, typename _T4
279#define _GLIBCXX_TEMPLATE_ARGS _T1, _T2, _T3, _T4
280#define _GLIBCXX_PARAMS _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4
281#define _GLIBCXX_REF_PARAMS _T1& __a1, _T2& __a2, _T3& __a3, _T4& __a4
282#define _GLIBCXX_ARGS __a1, __a2, __a3, __a4
283#define _GLIBCXX_COMMA_SHIFTED ,
284#define _GLIBCXX_TEMPLATE_PARAMS_SHIFTED typename _T1, typename _T2, typename _T3
285#define _GLIBCXX_TEMPLATE_ARGS_SHIFTED _T1, _T2, _T3
286#define _GLIBCXX_PARAMS_SHIFTED _T1 __a1, _T2 __a2, _T3 __a3
287#define _GLIBCXX_ARGS_SHIFTED __a1, __a2, __a3
288#define _GLIBCXX_BIND_MEMBERS _T1 _M_arg1; _T2 _M_arg2; _T3 _M_arg3; _T4 _M_arg4;
289#define _GLIBCXX_BIND_MEMBERS_INIT _M_arg1(__a1), _M_arg2(__a2), _M_arg3(__a3), _M_arg4(__a4)
290#define _GLIBCXX_MU_GET_TUPLE_ARGS ::std::tr1::get<0>(__tuple), ::std::tr1::get<1>(__tuple), ::std::tr1::get<2>(__tuple), ::std::tr1::get<3>(__tuple)
291#define _GLIBCXX_BIND_V_TEMPLATE_ARGS(_CV) typename result_of<_Mu<_T1> _CV(_T1, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T2> _CV(_T2, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T3> _CV(_T3, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T4> _CV(_T4, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type
292#define _GLIBCXX_BIND_V_ARGS _Mu<_T1>()(_M_arg1, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T2>()(_M_arg2, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T3>()(_M_arg3, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T4>()(_M_arg4, ::std::tr1::tie(_GLIBCXX_BIND_ARGS))
293#define _GLIBCXX_TUPLE_ADD_CREF typename __add_c_ref<_T1>::type __a1, typename __add_c_ref<_T2>::type __a2, typename __add_c_ref<_T3>::type __a3, typename __add_c_ref<_T4>::type __a4
294#define _GLIBCXX_TUPLE_COPY_INIT _M_arg1(__in._M_arg1), _M_arg2(__in._M_arg2), _M_arg3(__in._M_arg3), _M_arg4(__in._M_arg4)
295#define _GLIBCXX_TUPLE_ASSIGN _M_arg1 = __in._M_arg1; _M_arg2 = __in._M_arg2; _M_arg3 = __in._M_arg3; _M_arg4 = __in._M_arg4;
296#define _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS typename _T1 = _NullClass, typename _T2 = _NullClass, typename _T3 = _NullClass, typename _T4 = _NullClass
297#define _GLIBCXX_TEMPLATE_ARGS_STRIPPED typename __strip_reference_wrapper<_T1>::__type, typename __strip_reference_wrapper<_T2>::__type, typename __strip_reference_wrapper<_T3>::__type, typename __strip_reference_wrapper<_T4>::__type
298#define _GLIBCXX_TEMPLATE_PARAMS_U typename _U1, typename _U2, typename _U3, typename _U4
299#define _GLIBCXX_TEMPLATE_ARGS_U _U1, _U2, _U3, _U4
300#define _GLIBCXX_REF_WRAP_PARAMS ref(__a1), ref(__a2), ref(__a3), ref(__a4)
301#define _GLIBCXX_REF_TEMPLATE_ARGS _T1&, _T2&, _T3&, _T4&
302#define _GLIBCXX_NUM_ARGS_PLUS_1 5
303#define _GLIBCXX_T_NUM_ARGS_PLUS_1 _T5
304#include _GLIBCXX_REPEAT_HEADER
305#undef _GLIBCXX_T_NUM_ARGS_PLUS_1
306#undef _GLIBCXX_NUM_ARGS_PLUS_1
307#undef _GLIBCXX_REF_TEMPLATE_ARGS
308#undef _GLIBCXX_REF_WRAP_PARAMS
309#undef _GLIBCXX_TEMPLATE_ARGS_U
310#undef _GLIBCXX_TEMPLATE_PARAMS_U
311#undef _GLIBCXX_TEMPLATE_ARGS_STRIPPED
312#undef _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS
313#undef _GLIBCXX_TUPLE_ASSIGN
314#undef _GLIBCXX_TUPLE_COPY_INIT
315#undef _GLIBCXX_TUPLE_ADD_CREF
316#undef _GLIBCXX_BIND_V_ARGS
317#undef _GLIBCXX_BIND_V_TEMPLATE_ARGS
318#undef _GLIBCXX_MU_GET_TUPLE_ARGS
319#undef _GLIBCXX_BIND_MEMBERS_INIT
320#undef _GLIBCXX_BIND_MEMBERS
321#undef _GLIBCXX_ARGS_SHIFTED
322#undef _GLIBCXX_PARAMS_SHIFTED
323#undef _GLIBCXX_TEMPLATE_ARGS_SHIFTED
324#undef _GLIBCXX_TEMPLATE_PARAMS_SHIFTED
325#undef _GLIBCXX_COMMA_SHIFTED
326#undef _GLIBCXX_ARGS
327#undef _GLIBCXX_REF_PARAMS
328#undef _GLIBCXX_PARAMS
329#undef _GLIBCXX_TEMPLATE_ARGS
330#undef _GLIBCXX_TEMPLATE_PARAMS
331#undef _GLIBCXX_COMMA
332#undef _GLIBCXX_NUM_ARGS
333#define _GLIBCXX_NUM_ARGS 5
334#define _GLIBCXX_COMMA ,
335#define _GLIBCXX_TEMPLATE_PARAMS typename _T1, typename _T2, typename _T3, typename _T4, typename _T5
336#define _GLIBCXX_TEMPLATE_ARGS _T1, _T2, _T3, _T4, _T5
337#define _GLIBCXX_PARAMS _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4, _T5 __a5
338#define _GLIBCXX_REF_PARAMS _T1& __a1, _T2& __a2, _T3& __a3, _T4& __a4, _T5& __a5
339#define _GLIBCXX_ARGS __a1, __a2, __a3, __a4, __a5
340#define _GLIBCXX_COMMA_SHIFTED ,
341#define _GLIBCXX_TEMPLATE_PARAMS_SHIFTED typename _T1, typename _T2, typename _T3, typename _T4
342#define _GLIBCXX_TEMPLATE_ARGS_SHIFTED _T1, _T2, _T3, _T4
343#define _GLIBCXX_PARAMS_SHIFTED _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4
344#define _GLIBCXX_ARGS_SHIFTED __a1, __a2, __a3, __a4
345#define _GLIBCXX_BIND_MEMBERS _T1 _M_arg1; _T2 _M_arg2; _T3 _M_arg3; _T4 _M_arg4; _T5 _M_arg5;
346#define _GLIBCXX_BIND_MEMBERS_INIT _M_arg1(__a1), _M_arg2(__a2), _M_arg3(__a3), _M_arg4(__a4), _M_arg5(__a5)
347#define _GLIBCXX_MU_GET_TUPLE_ARGS ::std::tr1::get<0>(__tuple), ::std::tr1::get<1>(__tuple), ::std::tr1::get<2>(__tuple), ::std::tr1::get<3>(__tuple), ::std::tr1::get<4>(__tuple)
348#define _GLIBCXX_BIND_V_TEMPLATE_ARGS(_CV) typename result_of<_Mu<_T1> _CV(_T1, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T2> _CV(_T2, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T3> _CV(_T3, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T4> _CV(_T4, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T5> _CV(_T5, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type
349#define _GLIBCXX_BIND_V_ARGS _Mu<_T1>()(_M_arg1, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T2>()(_M_arg2, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T3>()(_M_arg3, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T4>()(_M_arg4, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T5>()(_M_arg5, ::std::tr1::tie(_GLIBCXX_BIND_ARGS))
350#define _GLIBCXX_TUPLE_ADD_CREF typename __add_c_ref<_T1>::type __a1, typename __add_c_ref<_T2>::type __a2, typename __add_c_ref<_T3>::type __a3, typename __add_c_ref<_T4>::type __a4, typename __add_c_ref<_T5>::type __a5
351#define _GLIBCXX_TUPLE_COPY_INIT _M_arg1(__in._M_arg1), _M_arg2(__in._M_arg2), _M_arg3(__in._M_arg3), _M_arg4(__in._M_arg4), _M_arg5(__in._M_arg5)
352#define _GLIBCXX_TUPLE_ASSIGN _M_arg1 = __in._M_arg1; _M_arg2 = __in._M_arg2; _M_arg3 = __in._M_arg3; _M_arg4 = __in._M_arg4; _M_arg5 = __in._M_arg5;
353#define _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS typename _T1 = _NullClass, typename _T2 = _NullClass, typename _T3 = _NullClass, typename _T4 = _NullClass, typename _T5 = _NullClass
354#define _GLIBCXX_TEMPLATE_ARGS_STRIPPED typename __strip_reference_wrapper<_T1>::__type, typename __strip_reference_wrapper<_T2>::__type, typename __strip_reference_wrapper<_T3>::__type, typename __strip_reference_wrapper<_T4>::__type, typename __strip_reference_wrapper<_T5>::__type
355#define _GLIBCXX_TEMPLATE_PARAMS_U typename _U1, typename _U2, typename _U3, typename _U4, typename _U5
356#define _GLIBCXX_TEMPLATE_ARGS_U _U1, _U2, _U3, _U4, _U5
357#define _GLIBCXX_REF_WRAP_PARAMS ref(__a1), ref(__a2), ref(__a3), ref(__a4), ref(__a5)
358#define _GLIBCXX_REF_TEMPLATE_ARGS _T1&, _T2&, _T3&, _T4&, _T5&
359#define _GLIBCXX_NUM_ARGS_PLUS_1 6
360#define _GLIBCXX_T_NUM_ARGS_PLUS_1 _T6
361#include _GLIBCXX_REPEAT_HEADER
362#undef _GLIBCXX_T_NUM_ARGS_PLUS_1
363#undef _GLIBCXX_NUM_ARGS_PLUS_1
364#undef _GLIBCXX_REF_TEMPLATE_ARGS
365#undef _GLIBCXX_REF_WRAP_PARAMS
366#undef _GLIBCXX_TEMPLATE_ARGS_U
367#undef _GLIBCXX_TEMPLATE_PARAMS_U
368#undef _GLIBCXX_TEMPLATE_ARGS_STRIPPED
369#undef _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS
370#undef _GLIBCXX_TUPLE_ASSIGN
371#undef _GLIBCXX_TUPLE_COPY_INIT
372#undef _GLIBCXX_TUPLE_ADD_CREF
373#undef _GLIBCXX_BIND_V_ARGS
374#undef _GLIBCXX_BIND_V_TEMPLATE_ARGS
375#undef _GLIBCXX_MU_GET_TUPLE_ARGS
376#undef _GLIBCXX_BIND_MEMBERS_INIT
377#undef _GLIBCXX_BIND_MEMBERS
378#undef _GLIBCXX_ARGS_SHIFTED
379#undef _GLIBCXX_PARAMS_SHIFTED
380#undef _GLIBCXX_TEMPLATE_ARGS_SHIFTED
381#undef _GLIBCXX_TEMPLATE_PARAMS_SHIFTED
382#undef _GLIBCXX_COMMA_SHIFTED
383#undef _GLIBCXX_ARGS
384#undef _GLIBCXX_REF_PARAMS
385#undef _GLIBCXX_PARAMS
386#undef _GLIBCXX_TEMPLATE_ARGS
387#undef _GLIBCXX_TEMPLATE_PARAMS
388#undef _GLIBCXX_COMMA
389#undef _GLIBCXX_NUM_ARGS
390#define _GLIBCXX_NUM_ARGS 6
391#define _GLIBCXX_COMMA ,
392#define _GLIBCXX_TEMPLATE_PARAMS typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6
393#define _GLIBCXX_TEMPLATE_ARGS _T1, _T2, _T3, _T4, _T5, _T6
394#define _GLIBCXX_PARAMS _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4, _T5 __a5, _T6 __a6
395#define _GLIBCXX_REF_PARAMS _T1& __a1, _T2& __a2, _T3& __a3, _T4& __a4, _T5& __a5, _T6& __a6
396#define _GLIBCXX_ARGS __a1, __a2, __a3, __a4, __a5, __a6
397#define _GLIBCXX_COMMA_SHIFTED ,
398#define _GLIBCXX_TEMPLATE_PARAMS_SHIFTED typename _T1, typename _T2, typename _T3, typename _T4, typename _T5
399#define _GLIBCXX_TEMPLATE_ARGS_SHIFTED _T1, _T2, _T3, _T4, _T5
400#define _GLIBCXX_PARAMS_SHIFTED _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4, _T5 __a5
401#define _GLIBCXX_ARGS_SHIFTED __a1, __a2, __a3, __a4, __a5
402#define _GLIBCXX_BIND_MEMBERS _T1 _M_arg1; _T2 _M_arg2; _T3 _M_arg3; _T4 _M_arg4; _T5 _M_arg5; _T6 _M_arg6;
403#define _GLIBCXX_BIND_MEMBERS_INIT _M_arg1(__a1), _M_arg2(__a2), _M_arg3(__a3), _M_arg4(__a4), _M_arg5(__a5), _M_arg6(__a6)
404#define _GLIBCXX_MU_GET_TUPLE_ARGS ::std::tr1::get<0>(__tuple), ::std::tr1::get<1>(__tuple), ::std::tr1::get<2>(__tuple), ::std::tr1::get<3>(__tuple), ::std::tr1::get<4>(__tuple), ::std::tr1::get<5>(__tuple)
405#define _GLIBCXX_BIND_V_TEMPLATE_ARGS(_CV) typename result_of<_Mu<_T1> _CV(_T1, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T2> _CV(_T2, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T3> _CV(_T3, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T4> _CV(_T4, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T5> _CV(_T5, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T6> _CV(_T6, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type
406#define _GLIBCXX_BIND_V_ARGS _Mu<_T1>()(_M_arg1, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T2>()(_M_arg2, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T3>()(_M_arg3, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T4>()(_M_arg4, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T5>()(_M_arg5, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T6>()(_M_arg6, ::std::tr1::tie(_GLIBCXX_BIND_ARGS))
407#define _GLIBCXX_TUPLE_ADD_CREF typename __add_c_ref<_T1>::type __a1, typename __add_c_ref<_T2>::type __a2, typename __add_c_ref<_T3>::type __a3, typename __add_c_ref<_T4>::type __a4, typename __add_c_ref<_T5>::type __a5, typename __add_c_ref<_T6>::type __a6
408#define _GLIBCXX_TUPLE_COPY_INIT _M_arg1(__in._M_arg1), _M_arg2(__in._M_arg2), _M_arg3(__in._M_arg3), _M_arg4(__in._M_arg4), _M_arg5(__in._M_arg5), _M_arg6(__in._M_arg6)
409#define _GLIBCXX_TUPLE_ASSIGN _M_arg1 = __in._M_arg1; _M_arg2 = __in._M_arg2; _M_arg3 = __in._M_arg3; _M_arg4 = __in._M_arg4; _M_arg5 = __in._M_arg5; _M_arg6 = __in._M_arg6;
410#define _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS typename _T1 = _NullClass, typename _T2 = _NullClass, typename _T3 = _NullClass, typename _T4 = _NullClass, typename _T5 = _NullClass, typename _T6 = _NullClass
411#define _GLIBCXX_TEMPLATE_ARGS_STRIPPED typename __strip_reference_wrapper<_T1>::__type, typename __strip_reference_wrapper<_T2>::__type, typename __strip_reference_wrapper<_T3>::__type, typename __strip_reference_wrapper<_T4>::__type, typename __strip_reference_wrapper<_T5>::__type, typename __strip_reference_wrapper<_T6>::__type
412#define _GLIBCXX_TEMPLATE_PARAMS_U typename _U1, typename _U2, typename _U3, typename _U4, typename _U5, typename _U6
413#define _GLIBCXX_TEMPLATE_ARGS_U _U1, _U2, _U3, _U4, _U5, _U6
414#define _GLIBCXX_REF_WRAP_PARAMS ref(__a1), ref(__a2), ref(__a3), ref(__a4), ref(__a5), ref(__a6)
415#define _GLIBCXX_REF_TEMPLATE_ARGS _T1&, _T2&, _T3&, _T4&, _T5&, _T6&
416#define _GLIBCXX_NUM_ARGS_PLUS_1 7
417#define _GLIBCXX_T_NUM_ARGS_PLUS_1 _T7
418#include _GLIBCXX_REPEAT_HEADER
419#undef _GLIBCXX_T_NUM_ARGS_PLUS_1
420#undef _GLIBCXX_NUM_ARGS_PLUS_1
421#undef _GLIBCXX_REF_TEMPLATE_ARGS
422#undef _GLIBCXX_REF_WRAP_PARAMS
423#undef _GLIBCXX_TEMPLATE_ARGS_U
424#undef _GLIBCXX_TEMPLATE_PARAMS_U
425#undef _GLIBCXX_TEMPLATE_ARGS_STRIPPED
426#undef _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS
427#undef _GLIBCXX_TUPLE_ASSIGN
428#undef _GLIBCXX_TUPLE_COPY_INIT
429#undef _GLIBCXX_TUPLE_ADD_CREF
430#undef _GLIBCXX_BIND_V_ARGS
431#undef _GLIBCXX_BIND_V_TEMPLATE_ARGS
432#undef _GLIBCXX_MU_GET_TUPLE_ARGS
433#undef _GLIBCXX_BIND_MEMBERS_INIT
434#undef _GLIBCXX_BIND_MEMBERS
435#undef _GLIBCXX_ARGS_SHIFTED
436#undef _GLIBCXX_PARAMS_SHIFTED
437#undef _GLIBCXX_TEMPLATE_ARGS_SHIFTED
438#undef _GLIBCXX_TEMPLATE_PARAMS_SHIFTED
439#undef _GLIBCXX_COMMA_SHIFTED
440#undef _GLIBCXX_ARGS
441#undef _GLIBCXX_REF_PARAMS
442#undef _GLIBCXX_PARAMS
443#undef _GLIBCXX_TEMPLATE_ARGS
444#undef _GLIBCXX_TEMPLATE_PARAMS
445#undef _GLIBCXX_COMMA
446#undef _GLIBCXX_NUM_ARGS
447#define _GLIBCXX_NUM_ARGS 7
448#define _GLIBCXX_COMMA ,
449#define _GLIBCXX_TEMPLATE_PARAMS typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7
450#define _GLIBCXX_TEMPLATE_ARGS _T1, _T2, _T3, _T4, _T5, _T6, _T7
451#define _GLIBCXX_PARAMS _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4, _T5 __a5, _T6 __a6, _T7 __a7
452#define _GLIBCXX_REF_PARAMS _T1& __a1, _T2& __a2, _T3& __a3, _T4& __a4, _T5& __a5, _T6& __a6, _T7& __a7
453#define _GLIBCXX_ARGS __a1, __a2, __a3, __a4, __a5, __a6, __a7
454#define _GLIBCXX_COMMA_SHIFTED ,
455#define _GLIBCXX_TEMPLATE_PARAMS_SHIFTED typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6
456#define _GLIBCXX_TEMPLATE_ARGS_SHIFTED _T1, _T2, _T3, _T4, _T5, _T6
457#define _GLIBCXX_PARAMS_SHIFTED _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4, _T5 __a5, _T6 __a6
458#define _GLIBCXX_ARGS_SHIFTED __a1, __a2, __a3, __a4, __a5, __a6
459#define _GLIBCXX_BIND_MEMBERS _T1 _M_arg1; _T2 _M_arg2; _T3 _M_arg3; _T4 _M_arg4; _T5 _M_arg5; _T6 _M_arg6; _T7 _M_arg7;
460#define _GLIBCXX_BIND_MEMBERS_INIT _M_arg1(__a1), _M_arg2(__a2), _M_arg3(__a3), _M_arg4(__a4), _M_arg5(__a5), _M_arg6(__a6), _M_arg7(__a7)
461#define _GLIBCXX_MU_GET_TUPLE_ARGS ::std::tr1::get<0>(__tuple), ::std::tr1::get<1>(__tuple), ::std::tr1::get<2>(__tuple), ::std::tr1::get<3>(__tuple), ::std::tr1::get<4>(__tuple), ::std::tr1::get<5>(__tuple), ::std::tr1::get<6>(__tuple)
462#define _GLIBCXX_BIND_V_TEMPLATE_ARGS(_CV) typename result_of<_Mu<_T1> _CV(_T1, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T2> _CV(_T2, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T3> _CV(_T3, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T4> _CV(_T4, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T5> _CV(_T5, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T6> _CV(_T6, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T7> _CV(_T7, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type
463#define _GLIBCXX_BIND_V_ARGS _Mu<_T1>()(_M_arg1, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T2>()(_M_arg2, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T3>()(_M_arg3, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T4>()(_M_arg4, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T5>()(_M_arg5, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T6>()(_M_arg6, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T7>()(_M_arg7, ::std::tr1::tie(_GLIBCXX_BIND_ARGS))
464#define _GLIBCXX_TUPLE_ADD_CREF typename __add_c_ref<_T1>::type __a1, typename __add_c_ref<_T2>::type __a2, typename __add_c_ref<_T3>::type __a3, typename __add_c_ref<_T4>::type __a4, typename __add_c_ref<_T5>::type __a5, typename __add_c_ref<_T6>::type __a6, typename __add_c_ref<_T7>::type __a7
465#define _GLIBCXX_TUPLE_COPY_INIT _M_arg1(__in._M_arg1), _M_arg2(__in._M_arg2), _M_arg3(__in._M_arg3), _M_arg4(__in._M_arg4), _M_arg5(__in._M_arg5), _M_arg6(__in._M_arg6), _M_arg7(__in._M_arg7)
466#define _GLIBCXX_TUPLE_ASSIGN _M_arg1 = __in._M_arg1; _M_arg2 = __in._M_arg2; _M_arg3 = __in._M_arg3; _M_arg4 = __in._M_arg4; _M_arg5 = __in._M_arg5; _M_arg6 = __in._M_arg6; _M_arg7 = __in._M_arg7;
467#define _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS typename _T1 = _NullClass, typename _T2 = _NullClass, typename _T3 = _NullClass, typename _T4 = _NullClass, typename _T5 = _NullClass, typename _T6 = _NullClass, typename _T7 = _NullClass
468#define _GLIBCXX_TEMPLATE_ARGS_STRIPPED typename __strip_reference_wrapper<_T1>::__type, typename __strip_reference_wrapper<_T2>::__type, typename __strip_reference_wrapper<_T3>::__type, typename __strip_reference_wrapper<_T4>::__type, typename __strip_reference_wrapper<_T5>::__type, typename __strip_reference_wrapper<_T6>::__type, typename __strip_reference_wrapper<_T7>::__type
469#define _GLIBCXX_TEMPLATE_PARAMS_U typename _U1, typename _U2, typename _U3, typename _U4, typename _U5, typename _U6, typename _U7
470#define _GLIBCXX_TEMPLATE_ARGS_U _U1, _U2, _U3, _U4, _U5, _U6, _U7
471#define _GLIBCXX_REF_WRAP_PARAMS ref(__a1), ref(__a2), ref(__a3), ref(__a4), ref(__a5), ref(__a6), ref(__a7)
472#define _GLIBCXX_REF_TEMPLATE_ARGS _T1&, _T2&, _T3&, _T4&, _T5&, _T6&, _T7&
473#define _GLIBCXX_NUM_ARGS_PLUS_1 8
474#define _GLIBCXX_T_NUM_ARGS_PLUS_1 _T8
475#include _GLIBCXX_REPEAT_HEADER
476#undef _GLIBCXX_T_NUM_ARGS_PLUS_1
477#undef _GLIBCXX_NUM_ARGS_PLUS_1
478#undef _GLIBCXX_REF_TEMPLATE_ARGS
479#undef _GLIBCXX_REF_WRAP_PARAMS
480#undef _GLIBCXX_TEMPLATE_ARGS_U
481#undef _GLIBCXX_TEMPLATE_PARAMS_U
482#undef _GLIBCXX_TEMPLATE_ARGS_STRIPPED
483#undef _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS
484#undef _GLIBCXX_TUPLE_ASSIGN
485#undef _GLIBCXX_TUPLE_COPY_INIT
486#undef _GLIBCXX_TUPLE_ADD_CREF
487#undef _GLIBCXX_BIND_V_ARGS
488#undef _GLIBCXX_BIND_V_TEMPLATE_ARGS
489#undef _GLIBCXX_MU_GET_TUPLE_ARGS
490#undef _GLIBCXX_BIND_MEMBERS_INIT
491#undef _GLIBCXX_BIND_MEMBERS
492#undef _GLIBCXX_ARGS_SHIFTED
493#undef _GLIBCXX_PARAMS_SHIFTED
494#undef _GLIBCXX_TEMPLATE_ARGS_SHIFTED
495#undef _GLIBCXX_TEMPLATE_PARAMS_SHIFTED
496#undef _GLIBCXX_COMMA_SHIFTED
497#undef _GLIBCXX_ARGS
498#undef _GLIBCXX_REF_PARAMS
499#undef _GLIBCXX_PARAMS
500#undef _GLIBCXX_TEMPLATE_ARGS
501#undef _GLIBCXX_TEMPLATE_PARAMS
502#undef _GLIBCXX_COMMA
503#undef _GLIBCXX_NUM_ARGS
504#define _GLIBCXX_NUM_ARGS 8
505#define _GLIBCXX_COMMA ,
506#define _GLIBCXX_TEMPLATE_PARAMS typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8
507#define _GLIBCXX_TEMPLATE_ARGS _T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8
508#define _GLIBCXX_PARAMS _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4, _T5 __a5, _T6 __a6, _T7 __a7, _T8 __a8
509#define _GLIBCXX_REF_PARAMS _T1& __a1, _T2& __a2, _T3& __a3, _T4& __a4, _T5& __a5, _T6& __a6, _T7& __a7, _T8& __a8
510#define _GLIBCXX_ARGS __a1, __a2, __a3, __a4, __a5, __a6, __a7, __a8
511#define _GLIBCXX_COMMA_SHIFTED ,
512#define _GLIBCXX_TEMPLATE_PARAMS_SHIFTED typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7
513#define _GLIBCXX_TEMPLATE_ARGS_SHIFTED _T1, _T2, _T3, _T4, _T5, _T6, _T7
514#define _GLIBCXX_PARAMS_SHIFTED _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4, _T5 __a5, _T6 __a6, _T7 __a7
515#define _GLIBCXX_ARGS_SHIFTED __a1, __a2, __a3, __a4, __a5, __a6, __a7
516#define _GLIBCXX_BIND_MEMBERS _T1 _M_arg1; _T2 _M_arg2; _T3 _M_arg3; _T4 _M_arg4; _T5 _M_arg5; _T6 _M_arg6; _T7 _M_arg7; _T8 _M_arg8;
517#define _GLIBCXX_BIND_MEMBERS_INIT _M_arg1(__a1), _M_arg2(__a2), _M_arg3(__a3), _M_arg4(__a4), _M_arg5(__a5), _M_arg6(__a6), _M_arg7(__a7), _M_arg8(__a8)
518#define _GLIBCXX_MU_GET_TUPLE_ARGS ::std::tr1::get<0>(__tuple), ::std::tr1::get<1>(__tuple), ::std::tr1::get<2>(__tuple), ::std::tr1::get<3>(__tuple), ::std::tr1::get<4>(__tuple), ::std::tr1::get<5>(__tuple), ::std::tr1::get<6>(__tuple), ::std::tr1::get<7>(__tuple)
519#define _GLIBCXX_BIND_V_TEMPLATE_ARGS(_CV) typename result_of<_Mu<_T1> _CV(_T1, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T2> _CV(_T2, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T3> _CV(_T3, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T4> _CV(_T4, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T5> _CV(_T5, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T6> _CV(_T6, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T7> _CV(_T7, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T8> _CV(_T8, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type
520#define _GLIBCXX_BIND_V_ARGS _Mu<_T1>()(_M_arg1, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T2>()(_M_arg2, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T3>()(_M_arg3, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T4>()(_M_arg4, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T5>()(_M_arg5, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T6>()(_M_arg6, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T7>()(_M_arg7, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T8>()(_M_arg8, ::std::tr1::tie(_GLIBCXX_BIND_ARGS))
521#define _GLIBCXX_TUPLE_ADD_CREF typename __add_c_ref<_T1>::type __a1, typename __add_c_ref<_T2>::type __a2, typename __add_c_ref<_T3>::type __a3, typename __add_c_ref<_T4>::type __a4, typename __add_c_ref<_T5>::type __a5, typename __add_c_ref<_T6>::type __a6, typename __add_c_ref<_T7>::type __a7, typename __add_c_ref<_T8>::type __a8
522#define _GLIBCXX_TUPLE_COPY_INIT _M_arg1(__in._M_arg1), _M_arg2(__in._M_arg2), _M_arg3(__in._M_arg3), _M_arg4(__in._M_arg4), _M_arg5(__in._M_arg5), _M_arg6(__in._M_arg6), _M_arg7(__in._M_arg7), _M_arg8(__in._M_arg8)
523#define _GLIBCXX_TUPLE_ASSIGN _M_arg1 = __in._M_arg1; _M_arg2 = __in._M_arg2; _M_arg3 = __in._M_arg3; _M_arg4 = __in._M_arg4; _M_arg5 = __in._M_arg5; _M_arg6 = __in._M_arg6; _M_arg7 = __in._M_arg7; _M_arg8 = __in._M_arg8;
524#define _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS typename _T1 = _NullClass, typename _T2 = _NullClass, typename _T3 = _NullClass, typename _T4 = _NullClass, typename _T5 = _NullClass, typename _T6 = _NullClass, typename _T7 = _NullClass, typename _T8 = _NullClass
525#define _GLIBCXX_TEMPLATE_ARGS_STRIPPED typename __strip_reference_wrapper<_T1>::__type, typename __strip_reference_wrapper<_T2>::__type, typename __strip_reference_wrapper<_T3>::__type, typename __strip_reference_wrapper<_T4>::__type, typename __strip_reference_wrapper<_T5>::__type, typename __strip_reference_wrapper<_T6>::__type, typename __strip_reference_wrapper<_T7>::__type, typename __strip_reference_wrapper<_T8>::__type
526#define _GLIBCXX_TEMPLATE_PARAMS_U typename _U1, typename _U2, typename _U3, typename _U4, typename _U5, typename _U6, typename _U7, typename _U8
527#define _GLIBCXX_TEMPLATE_ARGS_U _U1, _U2, _U3, _U4, _U5, _U6, _U7, _U8
528#define _GLIBCXX_REF_WRAP_PARAMS ref(__a1), ref(__a2), ref(__a3), ref(__a4), ref(__a5), ref(__a6), ref(__a7), ref(__a8)
529#define _GLIBCXX_REF_TEMPLATE_ARGS _T1&, _T2&, _T3&, _T4&, _T5&, _T6&, _T7&, _T8&
530#define _GLIBCXX_NUM_ARGS_PLUS_1 9
531#define _GLIBCXX_T_NUM_ARGS_PLUS_1 _T9
532#include _GLIBCXX_REPEAT_HEADER
533#undef _GLIBCXX_T_NUM_ARGS_PLUS_1
534#undef _GLIBCXX_NUM_ARGS_PLUS_1
535#undef _GLIBCXX_REF_TEMPLATE_ARGS
536#undef _GLIBCXX_REF_WRAP_PARAMS
537#undef _GLIBCXX_TEMPLATE_ARGS_U
538#undef _GLIBCXX_TEMPLATE_PARAMS_U
539#undef _GLIBCXX_TEMPLATE_ARGS_STRIPPED
540#undef _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS
541#undef _GLIBCXX_TUPLE_ASSIGN
542#undef _GLIBCXX_TUPLE_COPY_INIT
543#undef _GLIBCXX_TUPLE_ADD_CREF
544#undef _GLIBCXX_BIND_V_ARGS
545#undef _GLIBCXX_BIND_V_TEMPLATE_ARGS
546#undef _GLIBCXX_MU_GET_TUPLE_ARGS
547#undef _GLIBCXX_BIND_MEMBERS_INIT
548#undef _GLIBCXX_BIND_MEMBERS
549#undef _GLIBCXX_ARGS_SHIFTED
550#undef _GLIBCXX_PARAMS_SHIFTED
551#undef _GLIBCXX_TEMPLATE_ARGS_SHIFTED
552#undef _GLIBCXX_TEMPLATE_PARAMS_SHIFTED
553#undef _GLIBCXX_COMMA_SHIFTED
554#undef _GLIBCXX_ARGS
555#undef _GLIBCXX_REF_PARAMS
556#undef _GLIBCXX_PARAMS
557#undef _GLIBCXX_TEMPLATE_ARGS
558#undef _GLIBCXX_TEMPLATE_PARAMS
559#undef _GLIBCXX_COMMA
560#undef _GLIBCXX_NUM_ARGS
561#define _GLIBCXX_NUM_ARGS 9
562#define _GLIBCXX_COMMA ,
563#define _GLIBCXX_TEMPLATE_PARAMS typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9
564#define _GLIBCXX_TEMPLATE_ARGS _T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9
565#define _GLIBCXX_PARAMS _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4, _T5 __a5, _T6 __a6, _T7 __a7, _T8 __a8, _T9 __a9
566#define _GLIBCXX_REF_PARAMS _T1& __a1, _T2& __a2, _T3& __a3, _T4& __a4, _T5& __a5, _T6& __a6, _T7& __a7, _T8& __a8, _T9& __a9
567#define _GLIBCXX_ARGS __a1, __a2, __a3, __a4, __a5, __a6, __a7, __a8, __a9
568#define _GLIBCXX_COMMA_SHIFTED ,
569#define _GLIBCXX_TEMPLATE_PARAMS_SHIFTED typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8
570#define _GLIBCXX_TEMPLATE_ARGS_SHIFTED _T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8
571#define _GLIBCXX_PARAMS_SHIFTED _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4, _T5 __a5, _T6 __a6, _T7 __a7, _T8 __a8
572#define _GLIBCXX_ARGS_SHIFTED __a1, __a2, __a3, __a4, __a5, __a6, __a7, __a8
573#define _GLIBCXX_BIND_MEMBERS _T1 _M_arg1; _T2 _M_arg2; _T3 _M_arg3; _T4 _M_arg4; _T5 _M_arg5; _T6 _M_arg6; _T7 _M_arg7; _T8 _M_arg8; _T9 _M_arg9;
574#define _GLIBCXX_BIND_MEMBERS_INIT _M_arg1(__a1), _M_arg2(__a2), _M_arg3(__a3), _M_arg4(__a4), _M_arg5(__a5), _M_arg6(__a6), _M_arg7(__a7), _M_arg8(__a8), _M_arg9(__a9)
575#define _GLIBCXX_MU_GET_TUPLE_ARGS ::std::tr1::get<0>(__tuple), ::std::tr1::get<1>(__tuple), ::std::tr1::get<2>(__tuple), ::std::tr1::get<3>(__tuple), ::std::tr1::get<4>(__tuple), ::std::tr1::get<5>(__tuple), ::std::tr1::get<6>(__tuple), ::std::tr1::get<7>(__tuple), ::std::tr1::get<8>(__tuple)
576#define _GLIBCXX_BIND_V_TEMPLATE_ARGS(_CV) typename result_of<_Mu<_T1> _CV(_T1, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T2> _CV(_T2, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T3> _CV(_T3, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T4> _CV(_T4, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T5> _CV(_T5, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T6> _CV(_T6, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T7> _CV(_T7, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T8> _CV(_T8, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T9> _CV(_T9, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type
577#define _GLIBCXX_BIND_V_ARGS _Mu<_T1>()(_M_arg1, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T2>()(_M_arg2, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T3>()(_M_arg3, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T4>()(_M_arg4, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T5>()(_M_arg5, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T6>()(_M_arg6, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T7>()(_M_arg7, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T8>()(_M_arg8, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T9>()(_M_arg9, ::std::tr1::tie(_GLIBCXX_BIND_ARGS))
578#define _GLIBCXX_TUPLE_ADD_CREF typename __add_c_ref<_T1>::type __a1, typename __add_c_ref<_T2>::type __a2, typename __add_c_ref<_T3>::type __a3, typename __add_c_ref<_T4>::type __a4, typename __add_c_ref<_T5>::type __a5, typename __add_c_ref<_T6>::type __a6, typename __add_c_ref<_T7>::type __a7, typename __add_c_ref<_T8>::type __a8, typename __add_c_ref<_T9>::type __a9
579#define _GLIBCXX_TUPLE_COPY_INIT _M_arg1(__in._M_arg1), _M_arg2(__in._M_arg2), _M_arg3(__in._M_arg3), _M_arg4(__in._M_arg4), _M_arg5(__in._M_arg5), _M_arg6(__in._M_arg6), _M_arg7(__in._M_arg7), _M_arg8(__in._M_arg8), _M_arg9(__in._M_arg9)
580#define _GLIBCXX_TUPLE_ASSIGN _M_arg1 = __in._M_arg1; _M_arg2 = __in._M_arg2; _M_arg3 = __in._M_arg3; _M_arg4 = __in._M_arg4; _M_arg5 = __in._M_arg5; _M_arg6 = __in._M_arg6; _M_arg7 = __in._M_arg7; _M_arg8 = __in._M_arg8; _M_arg9 = __in._M_arg9;
581#define _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS typename _T1 = _NullClass, typename _T2 = _NullClass, typename _T3 = _NullClass, typename _T4 = _NullClass, typename _T5 = _NullClass, typename _T6 = _NullClass, typename _T7 = _NullClass, typename _T8 = _NullClass, typename _T9 = _NullClass
582#define _GLIBCXX_TEMPLATE_ARGS_STRIPPED typename __strip_reference_wrapper<_T1>::__type, typename __strip_reference_wrapper<_T2>::__type, typename __strip_reference_wrapper<_T3>::__type, typename __strip_reference_wrapper<_T4>::__type, typename __strip_reference_wrapper<_T5>::__type, typename __strip_reference_wrapper<_T6>::__type, typename __strip_reference_wrapper<_T7>::__type, typename __strip_reference_wrapper<_T8>::__type, typename __strip_reference_wrapper<_T9>::__type
583#define _GLIBCXX_TEMPLATE_PARAMS_U typename _U1, typename _U2, typename _U3, typename _U4, typename _U5, typename _U6, typename _U7, typename _U8, typename _U9
584#define _GLIBCXX_TEMPLATE_ARGS_U _U1, _U2, _U3, _U4, _U5, _U6, _U7, _U8, _U9
585#define _GLIBCXX_REF_WRAP_PARAMS ref(__a1), ref(__a2), ref(__a3), ref(__a4), ref(__a5), ref(__a6), ref(__a7), ref(__a8), ref(__a9)
586#define _GLIBCXX_REF_TEMPLATE_ARGS _T1&, _T2&, _T3&, _T4&, _T5&, _T6&, _T7&, _T8&, _T9&
587#define _GLIBCXX_NUM_ARGS_PLUS_1 10
588#define _GLIBCXX_T_NUM_ARGS_PLUS_1 _T10
589#include _GLIBCXX_REPEAT_HEADER
590#undef _GLIBCXX_T_NUM_ARGS_PLUS_1
591#undef _GLIBCXX_NUM_ARGS_PLUS_1
592#undef _GLIBCXX_REF_TEMPLATE_ARGS
593#undef _GLIBCXX_REF_WRAP_PARAMS
594#undef _GLIBCXX_TEMPLATE_ARGS_U
595#undef _GLIBCXX_TEMPLATE_PARAMS_U
596#undef _GLIBCXX_TEMPLATE_ARGS_STRIPPED
597#undef _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS
598#undef _GLIBCXX_TUPLE_ASSIGN
599#undef _GLIBCXX_TUPLE_COPY_INIT
600#undef _GLIBCXX_TUPLE_ADD_CREF
601#undef _GLIBCXX_BIND_V_ARGS
602#undef _GLIBCXX_BIND_V_TEMPLATE_ARGS
603#undef _GLIBCXX_MU_GET_TUPLE_ARGS
604#undef _GLIBCXX_BIND_MEMBERS_INIT
605#undef _GLIBCXX_BIND_MEMBERS
606#undef _GLIBCXX_ARGS_SHIFTED
607#undef _GLIBCXX_PARAMS_SHIFTED
608#undef _GLIBCXX_TEMPLATE_ARGS_SHIFTED
609#undef _GLIBCXX_TEMPLATE_PARAMS_SHIFTED
610#undef _GLIBCXX_COMMA_SHIFTED
611#undef _GLIBCXX_ARGS
612#undef _GLIBCXX_REF_PARAMS
613#undef _GLIBCXX_PARAMS
614#undef _GLIBCXX_TEMPLATE_ARGS
615#undef _GLIBCXX_TEMPLATE_PARAMS
616#undef _GLIBCXX_COMMA
617#undef _GLIBCXX_NUM_ARGS
618#define _GLIBCXX_LAST_INCLUDE
619#define _GLIBCXX_NUM_ARGS 10
620#define _GLIBCXX_COMMA ,
621#define _GLIBCXX_TEMPLATE_PARAMS typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10
622#define _GLIBCXX_TEMPLATE_ARGS _T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10
623#define _GLIBCXX_PARAMS _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4, _T5 __a5, _T6 __a6, _T7 __a7, _T8 __a8, _T9 __a9, _T10 __a10
624#define _GLIBCXX_REF_PARAMS _T1& __a1, _T2& __a2, _T3& __a3, _T4& __a4, _T5& __a5, _T6& __a6, _T7& __a7, _T8& __a8, _T9& __a9, _T10& __a10
625#define _GLIBCXX_ARGS __a1, __a2, __a3, __a4, __a5, __a6, __a7, __a8, __a9, __a10
626#define _GLIBCXX_COMMA_SHIFTED ,
627#define _GLIBCXX_TEMPLATE_PARAMS_SHIFTED typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9
628#define _GLIBCXX_TEMPLATE_ARGS_SHIFTED _T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9
629#define _GLIBCXX_PARAMS_SHIFTED _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4, _T5 __a5, _T6 __a6, _T7 __a7, _T8 __a8, _T9 __a9
630#define _GLIBCXX_ARGS_SHIFTED __a1, __a2, __a3, __a4, __a5, __a6, __a7, __a8, __a9
631#define _GLIBCXX_BIND_MEMBERS _T1 _M_arg1; _T2 _M_arg2; _T3 _M_arg3; _T4 _M_arg4; _T5 _M_arg5; _T6 _M_arg6; _T7 _M_arg7; _T8 _M_arg8; _T9 _M_arg9; _T10 _M_arg10;
632#define _GLIBCXX_BIND_MEMBERS_INIT _M_arg1(__a1), _M_arg2(__a2), _M_arg3(__a3), _M_arg4(__a4), _M_arg5(__a5), _M_arg6(__a6), _M_arg7(__a7), _M_arg8(__a8), _M_arg9(__a9), _M_arg10(__a10)
633#define _GLIBCXX_MU_GET_TUPLE_ARGS ::std::tr1::get<0>(__tuple), ::std::tr1::get<1>(__tuple), ::std::tr1::get<2>(__tuple), ::std::tr1::get<3>(__tuple), ::std::tr1::get<4>(__tuple), ::std::tr1::get<5>(__tuple), ::std::tr1::get<6>(__tuple), ::std::tr1::get<7>(__tuple), ::std::tr1::get<8>(__tuple), ::std::tr1::get<9>(__tuple)
634#define _GLIBCXX_BIND_V_TEMPLATE_ARGS(_CV) typename result_of<_Mu<_T1> _CV(_T1, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T2> _CV(_T2, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T3> _CV(_T3, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T4> _CV(_T4, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T5> _CV(_T5, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T6> _CV(_T6, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T7> _CV(_T7, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T8> _CV(_T8, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T9> _CV(_T9, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T10> _CV(_T10, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type
635#define _GLIBCXX_BIND_V_ARGS _Mu<_T1>()(_M_arg1, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T2>()(_M_arg2, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T3>()(_M_arg3, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T4>()(_M_arg4, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T5>()(_M_arg5, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T6>()(_M_arg6, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T7>()(_M_arg7, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T8>()(_M_arg8, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T9>()(_M_arg9, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T10>()(_M_arg10, ::std::tr1::tie(_GLIBCXX_BIND_ARGS))
636#define _GLIBCXX_TUPLE_ADD_CREF typename __add_c_ref<_T1>::type __a1, typename __add_c_ref<_T2>::type __a2, typename __add_c_ref<_T3>::type __a3, typename __add_c_ref<_T4>::type __a4, typename __add_c_ref<_T5>::type __a5, typename __add_c_ref<_T6>::type __a6, typename __add_c_ref<_T7>::type __a7, typename __add_c_ref<_T8>::type __a8, typename __add_c_ref<_T9>::type __a9, typename __add_c_ref<_T10>::type __a10
637#define _GLIBCXX_TUPLE_COPY_INIT _M_arg1(__in._M_arg1), _M_arg2(__in._M_arg2), _M_arg3(__in._M_arg3), _M_arg4(__in._M_arg4), _M_arg5(__in._M_arg5), _M_arg6(__in._M_arg6), _M_arg7(__in._M_arg7), _M_arg8(__in._M_arg8), _M_arg9(__in._M_arg9), _M_arg10(__in._M_arg10)
638#define _GLIBCXX_TUPLE_ASSIGN _M_arg1 = __in._M_arg1; _M_arg2 = __in._M_arg2; _M_arg3 = __in._M_arg3; _M_arg4 = __in._M_arg4; _M_arg5 = __in._M_arg5; _M_arg6 = __in._M_arg6; _M_arg7 = __in._M_arg7; _M_arg8 = __in._M_arg8; _M_arg9 = __in._M_arg9; _M_arg10 = __in._M_arg10;
639#define _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS typename _T1 = _NullClass, typename _T2 = _NullClass, typename _T3 = _NullClass, typename _T4 = _NullClass, typename _T5 = _NullClass, typename _T6 = _NullClass, typename _T7 = _NullClass, typename _T8 = _NullClass, typename _T9 = _NullClass, typename _T10 = _NullClass
640#define _GLIBCXX_TEMPLATE_ARGS_STRIPPED typename __strip_reference_wrapper<_T1>::__type, typename __strip_reference_wrapper<_T2>::__type, typename __strip_reference_wrapper<_T3>::__type, typename __strip_reference_wrapper<_T4>::__type, typename __strip_reference_wrapper<_T5>::__type, typename __strip_reference_wrapper<_T6>::__type, typename __strip_reference_wrapper<_T7>::__type, typename __strip_reference_wrapper<_T8>::__type, typename __strip_reference_wrapper<_T9>::__type, typename __strip_reference_wrapper<_T10>::__type
641#define _GLIBCXX_TEMPLATE_PARAMS_U typename _U1, typename _U2, typename _U3, typename _U4, typename _U5, typename _U6, typename _U7, typename _U8, typename _U9, typename _U10
642#define _GLIBCXX_TEMPLATE_ARGS_U _U1, _U2, _U3, _U4, _U5, _U6, _U7, _U8, _U9, _U10
643#define _GLIBCXX_REF_WRAP_PARAMS ref(__a1), ref(__a2), ref(__a3), ref(__a4), ref(__a5), ref(__a6), ref(__a7), ref(__a8), ref(__a9), ref(__a10)
644#define _GLIBCXX_REF_TEMPLATE_ARGS _T1&, _T2&, _T3&, _T4&, _T5&, _T6&, _T7&, _T8&, _T9&, _T10&
645#define _GLIBCXX_NUM_ARGS_PLUS_1 11
646#define _GLIBCXX_T_NUM_ARGS_PLUS_1 _T11
647#include _GLIBCXX_REPEAT_HEADER
648#undef _GLIBCXX_T_NUM_ARGS_PLUS_1
649#undef _GLIBCXX_NUM_ARGS_PLUS_1
650#undef _GLIBCXX_REF_TEMPLATE_ARGS
651#undef _GLIBCXX_REF_WRAP_PARAMS
652#undef _GLIBCXX_TEMPLATE_ARGS_U
653#undef _GLIBCXX_TEMPLATE_PARAMS_U
654#undef _GLIBCXX_TEMPLATE_ARGS_STRIPPED
655#undef _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS
656#undef _GLIBCXX_TUPLE_ASSIGN
657#undef _GLIBCXX_TUPLE_COPY_INIT
658#undef _GLIBCXX_TUPLE_ADD_CREF
659#undef _GLIBCXX_BIND_V_ARGS
660#undef _GLIBCXX_BIND_V_TEMPLATE_ARGS
661#undef _GLIBCXX_MU_GET_TUPLE_ARGS
662#undef _GLIBCXX_BIND_MEMBERS_INIT
663#undef _GLIBCXX_BIND_MEMBERS
664#undef _GLIBCXX_ARGS_SHIFTED
665#undef _GLIBCXX_PARAMS_SHIFTED
666#undef _GLIBCXX_TEMPLATE_ARGS_SHIFTED
667#undef _GLIBCXX_TEMPLATE_PARAMS_SHIFTED
668#undef _GLIBCXX_COMMA_SHIFTED
669#undef _GLIBCXX_ARGS
670#undef _GLIBCXX_REF_PARAMS
671#undef _GLIBCXX_PARAMS
672#undef _GLIBCXX_TEMPLATE_ARGS
673#undef _GLIBCXX_TEMPLATE_PARAMS
674#undef _GLIBCXX_COMMA
675#undef _GLIBCXX_NUM_ARGS
676#undef _GLIBCXX_LAST_INCLUDE
677
678