File indexing completed on 2025-09-17 08:40:26
0001
0002
0003
0004
0005
0006
0007
0008
0009 namespace boost::parser::detail {
0010
0011
0012 template<> struct tie_aggregate_impl<1> {
0013 template<typename T> static constexpr auto call(T & x) {
0014 auto & [
0015 _01
0016 ] = x;
0017 return parser::tuple<
0018 decltype(_01) &
0019 >(
0020 _01
0021 );
0022 }
0023 };
0024
0025
0026 template<> struct tie_aggregate_impl<2> {
0027 template<typename T> static constexpr auto call(T & x) {
0028 auto & [
0029 _01, _02
0030 ] = x;
0031 return parser::tuple<
0032 decltype(_01) &, decltype(_02) &
0033 >(
0034 _01, _02
0035 );
0036 }
0037 };
0038
0039
0040 template<> struct tie_aggregate_impl<3> {
0041 template<typename T> static constexpr auto call(T & x) {
0042 auto & [
0043 _01, _02, _03
0044 ] = x;
0045 return parser::tuple<
0046 decltype(_01) &, decltype(_02) &, decltype(_03) &
0047 >(
0048 _01, _02, _03
0049 );
0050 }
0051 };
0052
0053
0054 template<> struct tie_aggregate_impl<4> {
0055 template<typename T> static constexpr auto call(T & x) {
0056 auto & [
0057 _01, _02, _03, _04
0058 ] = x;
0059 return parser::tuple<
0060 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &
0061 >(
0062 _01, _02, _03, _04
0063 );
0064 }
0065 };
0066
0067
0068 template<> struct tie_aggregate_impl<5> {
0069 template<typename T> static constexpr auto call(T & x) {
0070 auto & [
0071 _01, _02, _03, _04, _05
0072 ] = x;
0073 return parser::tuple<
0074 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &
0075 >(
0076 _01, _02, _03, _04, _05
0077 );
0078 }
0079 };
0080
0081
0082 template<> struct tie_aggregate_impl<6> {
0083 template<typename T> static constexpr auto call(T & x) {
0084 auto & [
0085 _01, _02, _03, _04, _05, _06
0086 ] = x;
0087 return parser::tuple<
0088 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0089 decltype(_06) &
0090 >(
0091 _01, _02, _03, _04, _05, _06
0092 );
0093 }
0094 };
0095
0096
0097 template<> struct tie_aggregate_impl<7> {
0098 template<typename T> static constexpr auto call(T & x) {
0099 auto & [
0100 _01, _02, _03, _04, _05, _06, _07
0101 ] = x;
0102 return parser::tuple<
0103 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0104 decltype(_06) &, decltype(_07) &
0105 >(
0106 _01, _02, _03, _04, _05, _06, _07
0107 );
0108 }
0109 };
0110
0111
0112 template<> struct tie_aggregate_impl<8> {
0113 template<typename T> static constexpr auto call(T & x) {
0114 auto & [
0115 _01, _02, _03, _04, _05, _06, _07, _08
0116 ] = x;
0117 return parser::tuple<
0118 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0119 decltype(_06) &, decltype(_07) &, decltype(_08) &
0120 >(
0121 _01, _02, _03, _04, _05, _06, _07, _08
0122 );
0123 }
0124 };
0125
0126
0127 template<> struct tie_aggregate_impl<9> {
0128 template<typename T> static constexpr auto call(T & x) {
0129 auto & [
0130 _01, _02, _03, _04, _05, _06, _07, _08, _09
0131 ] = x;
0132 return parser::tuple<
0133 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0134 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &
0135 >(
0136 _01, _02, _03, _04, _05, _06, _07, _08, _09
0137 );
0138 }
0139 };
0140
0141
0142 template<> struct tie_aggregate_impl<10> {
0143 template<typename T> static constexpr auto call(T & x) {
0144 auto & [
0145 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a
0146 ] = x;
0147 return parser::tuple<
0148 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0149 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &
0150 >(
0151 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a
0152 );
0153 }
0154 };
0155
0156
0157 template<> struct tie_aggregate_impl<11> {
0158 template<typename T> static constexpr auto call(T & x) {
0159 auto & [
0160 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b
0161 ] = x;
0162 return parser::tuple<
0163 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0164 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0165 decltype(_0b) &
0166 >(
0167 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b
0168 );
0169 }
0170 };
0171
0172
0173 template<> struct tie_aggregate_impl<12> {
0174 template<typename T> static constexpr auto call(T & x) {
0175 auto & [
0176 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c
0177 ] = x;
0178 return parser::tuple<
0179 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0180 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0181 decltype(_0b) &, decltype(_0c) &
0182 >(
0183 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c
0184 );
0185 }
0186 };
0187
0188
0189 template<> struct tie_aggregate_impl<13> {
0190 template<typename T> static constexpr auto call(T & x) {
0191 auto & [
0192 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d
0193 ] = x;
0194 return parser::tuple<
0195 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0196 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0197 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &
0198 >(
0199 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d
0200 );
0201 }
0202 };
0203
0204
0205 template<> struct tie_aggregate_impl<14> {
0206 template<typename T> static constexpr auto call(T & x) {
0207 auto & [
0208 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e
0209 ] = x;
0210 return parser::tuple<
0211 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0212 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0213 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &
0214 >(
0215 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e
0216 );
0217 }
0218 };
0219
0220
0221 template<> struct tie_aggregate_impl<15> {
0222 template<typename T> static constexpr auto call(T & x) {
0223 auto & [
0224 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f
0225 ] = x;
0226 return parser::tuple<
0227 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0228 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0229 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &
0230 >(
0231 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f
0232 );
0233 }
0234 };
0235
0236
0237 template<> struct tie_aggregate_impl<16> {
0238 template<typename T> static constexpr auto call(T & x) {
0239 auto & [
0240 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0241 _10
0242 ] = x;
0243 return parser::tuple<
0244 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0245 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0246 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0247 decltype(_10) &
0248 >(
0249 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0250 _10
0251 );
0252 }
0253 };
0254
0255
0256 template<> struct tie_aggregate_impl<17> {
0257 template<typename T> static constexpr auto call(T & x) {
0258 auto & [
0259 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0260 _10, _11
0261 ] = x;
0262 return parser::tuple<
0263 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0264 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0265 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0266 decltype(_10) &, decltype(_11) &
0267 >(
0268 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0269 _10, _11
0270 );
0271 }
0272 };
0273
0274
0275 template<> struct tie_aggregate_impl<18> {
0276 template<typename T> static constexpr auto call(T & x) {
0277 auto & [
0278 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0279 _10, _11, _12
0280 ] = x;
0281 return parser::tuple<
0282 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0283 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0284 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0285 decltype(_10) &, decltype(_11) &, decltype(_12) &
0286 >(
0287 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0288 _10, _11, _12
0289 );
0290 }
0291 };
0292
0293
0294 template<> struct tie_aggregate_impl<19> {
0295 template<typename T> static constexpr auto call(T & x) {
0296 auto & [
0297 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0298 _10, _11, _12, _13
0299 ] = x;
0300 return parser::tuple<
0301 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0302 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0303 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0304 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &
0305 >(
0306 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0307 _10, _11, _12, _13
0308 );
0309 }
0310 };
0311
0312
0313 template<> struct tie_aggregate_impl<20> {
0314 template<typename T> static constexpr auto call(T & x) {
0315 auto & [
0316 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0317 _10, _11, _12, _13, _14
0318 ] = x;
0319 return parser::tuple<
0320 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0321 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0322 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0323 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &
0324 >(
0325 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0326 _10, _11, _12, _13, _14
0327 );
0328 }
0329 };
0330
0331
0332 template<> struct tie_aggregate_impl<21> {
0333 template<typename T> static constexpr auto call(T & x) {
0334 auto & [
0335 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0336 _10, _11, _12, _13, _14, _15
0337 ] = x;
0338 return parser::tuple<
0339 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0340 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0341 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0342 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0343 decltype(_15) &
0344 >(
0345 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0346 _10, _11, _12, _13, _14, _15
0347 );
0348 }
0349 };
0350
0351
0352 template<> struct tie_aggregate_impl<22> {
0353 template<typename T> static constexpr auto call(T & x) {
0354 auto & [
0355 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0356 _10, _11, _12, _13, _14, _15, _16
0357 ] = x;
0358 return parser::tuple<
0359 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0360 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0361 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0362 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0363 decltype(_15) &, decltype(_16) &
0364 >(
0365 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0366 _10, _11, _12, _13, _14, _15, _16
0367 );
0368 }
0369 };
0370
0371
0372 template<> struct tie_aggregate_impl<23> {
0373 template<typename T> static constexpr auto call(T & x) {
0374 auto & [
0375 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0376 _10, _11, _12, _13, _14, _15, _16, _17
0377 ] = x;
0378 return parser::tuple<
0379 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0380 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0381 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0382 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0383 decltype(_15) &, decltype(_16) &, decltype(_17) &
0384 >(
0385 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0386 _10, _11, _12, _13, _14, _15, _16, _17
0387 );
0388 }
0389 };
0390
0391
0392 template<> struct tie_aggregate_impl<24> {
0393 template<typename T> static constexpr auto call(T & x) {
0394 auto & [
0395 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0396 _10, _11, _12, _13, _14, _15, _16, _17, _18
0397 ] = x;
0398 return parser::tuple<
0399 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0400 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0401 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0402 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0403 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &
0404 >(
0405 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0406 _10, _11, _12, _13, _14, _15, _16, _17, _18
0407 );
0408 }
0409 };
0410
0411
0412 template<> struct tie_aggregate_impl<25> {
0413 template<typename T> static constexpr auto call(T & x) {
0414 auto & [
0415 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0416 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19
0417 ] = x;
0418 return parser::tuple<
0419 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0420 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0421 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0422 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0423 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &
0424 >(
0425 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0426 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19
0427 );
0428 }
0429 };
0430
0431
0432 template<> struct tie_aggregate_impl<26> {
0433 template<typename T> static constexpr auto call(T & x) {
0434 auto & [
0435 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0436 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a
0437 ] = x;
0438 return parser::tuple<
0439 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0440 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0441 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0442 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0443 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
0444 decltype(_1a) &
0445 >(
0446 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0447 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a
0448 );
0449 }
0450 };
0451
0452
0453 template<> struct tie_aggregate_impl<27> {
0454 template<typename T> static constexpr auto call(T & x) {
0455 auto & [
0456 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0457 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b
0458 ] = x;
0459 return parser::tuple<
0460 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0461 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0462 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0463 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0464 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
0465 decltype(_1a) &, decltype(_1b) &
0466 >(
0467 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0468 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b
0469 );
0470 }
0471 };
0472
0473
0474 template<> struct tie_aggregate_impl<28> {
0475 template<typename T> static constexpr auto call(T & x) {
0476 auto & [
0477 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0478 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c
0479 ] = x;
0480 return parser::tuple<
0481 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0482 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0483 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0484 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0485 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
0486 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &
0487 >(
0488 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0489 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c
0490 );
0491 }
0492 };
0493
0494
0495 template<> struct tie_aggregate_impl<29> {
0496 template<typename T> static constexpr auto call(T & x) {
0497 auto & [
0498 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0499 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d
0500 ] = x;
0501 return parser::tuple<
0502 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0503 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0504 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0505 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0506 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
0507 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &
0508 >(
0509 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0510 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d
0511 );
0512 }
0513 };
0514
0515
0516 template<> struct tie_aggregate_impl<30> {
0517 template<typename T> static constexpr auto call(T & x) {
0518 auto & [
0519 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0520 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e
0521 ] = x;
0522 return parser::tuple<
0523 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0524 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0525 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0526 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0527 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
0528 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &
0529 >(
0530 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0531 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e
0532 );
0533 }
0534 };
0535
0536
0537 template<> struct tie_aggregate_impl<31> {
0538 template<typename T> static constexpr auto call(T & x) {
0539 auto & [
0540 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0541 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0542 _1f
0543 ] = x;
0544 return parser::tuple<
0545 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0546 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0547 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0548 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0549 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
0550 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
0551 decltype(_1f) &
0552 >(
0553 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0554 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0555 _1f
0556 );
0557 }
0558 };
0559
0560
0561 template<> struct tie_aggregate_impl<32> {
0562 template<typename T> static constexpr auto call(T & x) {
0563 auto & [
0564 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0565 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0566 _1f, _20
0567 ] = x;
0568 return parser::tuple<
0569 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0570 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0571 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0572 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0573 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
0574 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
0575 decltype(_1f) &, decltype(_20) &
0576 >(
0577 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0578 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0579 _1f, _20
0580 );
0581 }
0582 };
0583
0584
0585 template<> struct tie_aggregate_impl<33> {
0586 template<typename T> static constexpr auto call(T & x) {
0587 auto & [
0588 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0589 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0590 _1f, _20, _21
0591 ] = x;
0592 return parser::tuple<
0593 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0594 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0595 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0596 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0597 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
0598 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
0599 decltype(_1f) &, decltype(_20) &, decltype(_21) &
0600 >(
0601 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0602 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0603 _1f, _20, _21
0604 );
0605 }
0606 };
0607
0608
0609 template<> struct tie_aggregate_impl<34> {
0610 template<typename T> static constexpr auto call(T & x) {
0611 auto & [
0612 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0613 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0614 _1f, _20, _21, _22
0615 ] = x;
0616 return parser::tuple<
0617 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0618 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0619 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0620 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0621 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
0622 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
0623 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &
0624 >(
0625 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0626 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0627 _1f, _20, _21, _22
0628 );
0629 }
0630 };
0631
0632
0633 template<> struct tie_aggregate_impl<35> {
0634 template<typename T> static constexpr auto call(T & x) {
0635 auto & [
0636 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0637 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0638 _1f, _20, _21, _22, _23
0639 ] = x;
0640 return parser::tuple<
0641 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0642 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0643 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0644 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0645 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
0646 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
0647 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &
0648 >(
0649 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0650 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0651 _1f, _20, _21, _22, _23
0652 );
0653 }
0654 };
0655
0656
0657 template<> struct tie_aggregate_impl<36> {
0658 template<typename T> static constexpr auto call(T & x) {
0659 auto & [
0660 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0661 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0662 _1f, _20, _21, _22, _23, _24
0663 ] = x;
0664 return parser::tuple<
0665 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0666 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0667 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0668 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0669 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
0670 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
0671 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
0672 decltype(_24) &
0673 >(
0674 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0675 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0676 _1f, _20, _21, _22, _23, _24
0677 );
0678 }
0679 };
0680
0681
0682 template<> struct tie_aggregate_impl<37> {
0683 template<typename T> static constexpr auto call(T & x) {
0684 auto & [
0685 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0686 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0687 _1f, _20, _21, _22, _23, _24, _25
0688 ] = x;
0689 return parser::tuple<
0690 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0691 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0692 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0693 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0694 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
0695 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
0696 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
0697 decltype(_24) &, decltype(_25) &
0698 >(
0699 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0700 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0701 _1f, _20, _21, _22, _23, _24, _25
0702 );
0703 }
0704 };
0705
0706
0707 template<> struct tie_aggregate_impl<38> {
0708 template<typename T> static constexpr auto call(T & x) {
0709 auto & [
0710 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0711 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0712 _1f, _20, _21, _22, _23, _24, _25, _26
0713 ] = x;
0714 return parser::tuple<
0715 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0716 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0717 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0718 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0719 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
0720 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
0721 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
0722 decltype(_24) &, decltype(_25) &, decltype(_26) &
0723 >(
0724 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0725 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0726 _1f, _20, _21, _22, _23, _24, _25, _26
0727 );
0728 }
0729 };
0730
0731
0732 template<> struct tie_aggregate_impl<39> {
0733 template<typename T> static constexpr auto call(T & x) {
0734 auto & [
0735 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0736 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0737 _1f, _20, _21, _22, _23, _24, _25, _26, _27
0738 ] = x;
0739 return parser::tuple<
0740 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0741 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0742 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0743 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0744 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
0745 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
0746 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
0747 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &
0748 >(
0749 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0750 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0751 _1f, _20, _21, _22, _23, _24, _25, _26, _27
0752 );
0753 }
0754 };
0755
0756
0757 template<> struct tie_aggregate_impl<40> {
0758 template<typename T> static constexpr auto call(T & x) {
0759 auto & [
0760 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0761 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0762 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28
0763 ] = x;
0764 return parser::tuple<
0765 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0766 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0767 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0768 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0769 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
0770 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
0771 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
0772 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &
0773 >(
0774 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0775 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0776 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28
0777 );
0778 }
0779 };
0780
0781
0782 template<> struct tie_aggregate_impl<41> {
0783 template<typename T> static constexpr auto call(T & x) {
0784 auto & [
0785 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0786 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0787 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29
0788 ] = x;
0789 return parser::tuple<
0790 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0791 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0792 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0793 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0794 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
0795 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
0796 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
0797 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
0798 decltype(_29) &
0799 >(
0800 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0801 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0802 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29
0803 );
0804 }
0805 };
0806
0807
0808 template<> struct tie_aggregate_impl<42> {
0809 template<typename T> static constexpr auto call(T & x) {
0810 auto & [
0811 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0812 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0813 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a
0814 ] = x;
0815 return parser::tuple<
0816 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0817 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0818 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0819 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0820 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
0821 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
0822 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
0823 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
0824 decltype(_29) &, decltype(_2a) &
0825 >(
0826 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0827 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0828 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a
0829 );
0830 }
0831 };
0832
0833
0834 template<> struct tie_aggregate_impl<43> {
0835 template<typename T> static constexpr auto call(T & x) {
0836 auto & [
0837 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0838 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0839 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b
0840 ] = x;
0841 return parser::tuple<
0842 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0843 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0844 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0845 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0846 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
0847 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
0848 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
0849 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
0850 decltype(_29) &, decltype(_2a) &, decltype(_2b) &
0851 >(
0852 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0853 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0854 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b
0855 );
0856 }
0857 };
0858
0859
0860 template<> struct tie_aggregate_impl<44> {
0861 template<typename T> static constexpr auto call(T & x) {
0862 auto & [
0863 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0864 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0865 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c
0866 ] = x;
0867 return parser::tuple<
0868 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0869 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0870 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0871 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0872 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
0873 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
0874 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
0875 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
0876 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &
0877 >(
0878 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0879 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0880 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c
0881 );
0882 }
0883 };
0884
0885
0886 template<> struct tie_aggregate_impl<45> {
0887 template<typename T> static constexpr auto call(T & x) {
0888 auto & [
0889 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0890 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0891 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d
0892 ] = x;
0893 return parser::tuple<
0894 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0895 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0896 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0897 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0898 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
0899 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
0900 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
0901 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
0902 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &
0903 >(
0904 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0905 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0906 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d
0907 );
0908 }
0909 };
0910
0911
0912 template<> struct tie_aggregate_impl<46> {
0913 template<typename T> static constexpr auto call(T & x) {
0914 auto & [
0915 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0916 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0917 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
0918 _2e
0919 ] = x;
0920 return parser::tuple<
0921 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0922 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0923 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0924 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0925 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
0926 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
0927 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
0928 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
0929 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
0930 decltype(_2e) &
0931 >(
0932 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0933 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0934 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
0935 _2e
0936 );
0937 }
0938 };
0939
0940
0941 template<> struct tie_aggregate_impl<47> {
0942 template<typename T> static constexpr auto call(T & x) {
0943 auto & [
0944 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0945 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0946 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
0947 _2e, _2f
0948 ] = x;
0949 return parser::tuple<
0950 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0951 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0952 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0953 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0954 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
0955 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
0956 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
0957 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
0958 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
0959 decltype(_2e) &, decltype(_2f) &
0960 >(
0961 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0962 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0963 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
0964 _2e, _2f
0965 );
0966 }
0967 };
0968
0969
0970 template<> struct tie_aggregate_impl<48> {
0971 template<typename T> static constexpr auto call(T & x) {
0972 auto & [
0973 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0974 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0975 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
0976 _2e, _2f, _30
0977 ] = x;
0978 return parser::tuple<
0979 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
0980 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
0981 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
0982 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
0983 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
0984 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
0985 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
0986 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
0987 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
0988 decltype(_2e) &, decltype(_2f) &, decltype(_30) &
0989 >(
0990 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
0991 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
0992 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
0993 _2e, _2f, _30
0994 );
0995 }
0996 };
0997
0998
0999 template<> struct tie_aggregate_impl<49> {
1000 template<typename T> static constexpr auto call(T & x) {
1001 auto & [
1002 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1003 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1004 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1005 _2e, _2f, _30, _31
1006 ] = x;
1007 return parser::tuple<
1008 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1009 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1010 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1011 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1012 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1013 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1014 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1015 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1016 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1017 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &
1018 >(
1019 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1020 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1021 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1022 _2e, _2f, _30, _31
1023 );
1024 }
1025 };
1026
1027
1028 template<> struct tie_aggregate_impl<50> {
1029 template<typename T> static constexpr auto call(T & x) {
1030 auto & [
1031 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1032 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1033 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1034 _2e, _2f, _30, _31, _32
1035 ] = x;
1036 return parser::tuple<
1037 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1038 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1039 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1040 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1041 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1042 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1043 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1044 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1045 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1046 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &
1047 >(
1048 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1049 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1050 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1051 _2e, _2f, _30, _31, _32
1052 );
1053 }
1054 };
1055
1056
1057 template<> struct tie_aggregate_impl<51> {
1058 template<typename T> static constexpr auto call(T & x) {
1059 auto & [
1060 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1061 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1062 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1063 _2e, _2f, _30, _31, _32, _33
1064 ] = x;
1065 return parser::tuple<
1066 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1067 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1068 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1069 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1070 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1071 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1072 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1073 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1074 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1075 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1076 decltype(_33) &
1077 >(
1078 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1079 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1080 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1081 _2e, _2f, _30, _31, _32, _33
1082 );
1083 }
1084 };
1085
1086
1087 template<> struct tie_aggregate_impl<52> {
1088 template<typename T> static constexpr auto call(T & x) {
1089 auto & [
1090 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1091 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1092 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1093 _2e, _2f, _30, _31, _32, _33, _34
1094 ] = x;
1095 return parser::tuple<
1096 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1097 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1098 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1099 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1100 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1101 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1102 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1103 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1104 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1105 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1106 decltype(_33) &, decltype(_34) &
1107 >(
1108 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1109 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1110 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1111 _2e, _2f, _30, _31, _32, _33, _34
1112 );
1113 }
1114 };
1115
1116
1117 template<> struct tie_aggregate_impl<53> {
1118 template<typename T> static constexpr auto call(T & x) {
1119 auto & [
1120 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1121 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1122 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1123 _2e, _2f, _30, _31, _32, _33, _34, _35
1124 ] = x;
1125 return parser::tuple<
1126 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1127 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1128 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1129 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1130 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1131 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1132 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1133 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1134 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1135 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1136 decltype(_33) &, decltype(_34) &, decltype(_35) &
1137 >(
1138 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1139 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1140 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1141 _2e, _2f, _30, _31, _32, _33, _34, _35
1142 );
1143 }
1144 };
1145
1146
1147 template<> struct tie_aggregate_impl<54> {
1148 template<typename T> static constexpr auto call(T & x) {
1149 auto & [
1150 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1151 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1152 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1153 _2e, _2f, _30, _31, _32, _33, _34, _35, _36
1154 ] = x;
1155 return parser::tuple<
1156 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1157 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1158 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1159 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1160 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1161 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1162 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1163 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1164 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1165 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1166 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &
1167 >(
1168 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1169 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1170 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1171 _2e, _2f, _30, _31, _32, _33, _34, _35, _36
1172 );
1173 }
1174 };
1175
1176
1177 template<> struct tie_aggregate_impl<55> {
1178 template<typename T> static constexpr auto call(T & x) {
1179 auto & [
1180 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1181 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1182 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1183 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37
1184 ] = x;
1185 return parser::tuple<
1186 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1187 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1188 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1189 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1190 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1191 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1192 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1193 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1194 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1195 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1196 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &
1197 >(
1198 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1199 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1200 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1201 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37
1202 );
1203 }
1204 };
1205
1206
1207 template<> struct tie_aggregate_impl<56> {
1208 template<typename T> static constexpr auto call(T & x) {
1209 auto & [
1210 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1211 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1212 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1213 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38
1214 ] = x;
1215 return parser::tuple<
1216 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1217 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1218 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1219 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1220 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1221 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1222 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1223 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1224 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1225 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1226 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
1227 decltype(_38) &
1228 >(
1229 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1230 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1231 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1232 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38
1233 );
1234 }
1235 };
1236
1237
1238 template<> struct tie_aggregate_impl<57> {
1239 template<typename T> static constexpr auto call(T & x) {
1240 auto & [
1241 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1242 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1243 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1244 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39
1245 ] = x;
1246 return parser::tuple<
1247 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1248 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1249 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1250 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1251 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1252 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1253 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1254 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1255 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1256 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1257 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
1258 decltype(_38) &, decltype(_39) &
1259 >(
1260 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1261 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1262 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1263 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39
1264 );
1265 }
1266 };
1267
1268
1269 template<> struct tie_aggregate_impl<58> {
1270 template<typename T> static constexpr auto call(T & x) {
1271 auto & [
1272 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1273 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1274 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1275 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a
1276 ] = x;
1277 return parser::tuple<
1278 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1279 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1280 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1281 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1282 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1283 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1284 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1285 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1286 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1287 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1288 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
1289 decltype(_38) &, decltype(_39) &, decltype(_3a) &
1290 >(
1291 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1292 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1293 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1294 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a
1295 );
1296 }
1297 };
1298
1299
1300 template<> struct tie_aggregate_impl<59> {
1301 template<typename T> static constexpr auto call(T & x) {
1302 auto & [
1303 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1304 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1305 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1306 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b
1307 ] = x;
1308 return parser::tuple<
1309 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1310 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1311 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1312 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1313 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1314 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1315 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1316 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1317 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1318 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1319 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
1320 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &
1321 >(
1322 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1323 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1324 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1325 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b
1326 );
1327 }
1328 };
1329
1330
1331 template<> struct tie_aggregate_impl<60> {
1332 template<typename T> static constexpr auto call(T & x) {
1333 auto & [
1334 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1335 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1336 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1337 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c
1338 ] = x;
1339 return parser::tuple<
1340 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1341 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1342 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1343 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1344 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1345 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1346 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1347 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1348 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1349 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1350 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
1351 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &
1352 >(
1353 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1354 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1355 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1356 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c
1357 );
1358 }
1359 };
1360
1361
1362 template<> struct tie_aggregate_impl<61> {
1363 template<typename T> static constexpr auto call(T & x) {
1364 auto & [
1365 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1366 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1367 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1368 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1369 _3d
1370 ] = x;
1371 return parser::tuple<
1372 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1373 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1374 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1375 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1376 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1377 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1378 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1379 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1380 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1381 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1382 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
1383 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
1384 decltype(_3d) &
1385 >(
1386 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1387 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1388 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1389 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1390 _3d
1391 );
1392 }
1393 };
1394
1395
1396 template<> struct tie_aggregate_impl<62> {
1397 template<typename T> static constexpr auto call(T & x) {
1398 auto & [
1399 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1400 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1401 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1402 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1403 _3d, _3e
1404 ] = x;
1405 return parser::tuple<
1406 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1407 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1408 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1409 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1410 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1411 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1412 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1413 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1414 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1415 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1416 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
1417 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
1418 decltype(_3d) &, decltype(_3e) &
1419 >(
1420 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1421 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1422 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1423 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1424 _3d, _3e
1425 );
1426 }
1427 };
1428
1429
1430 template<> struct tie_aggregate_impl<63> {
1431 template<typename T> static constexpr auto call(T & x) {
1432 auto & [
1433 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1434 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1435 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1436 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1437 _3d, _3e, _3f
1438 ] = x;
1439 return parser::tuple<
1440 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1441 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1442 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1443 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1444 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1445 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1446 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1447 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1448 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1449 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1450 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
1451 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
1452 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &
1453 >(
1454 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1455 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1456 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1457 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1458 _3d, _3e, _3f
1459 );
1460 }
1461 };
1462
1463
1464 template<> struct tie_aggregate_impl<64> {
1465 template<typename T> static constexpr auto call(T & x) {
1466 auto & [
1467 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1468 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1469 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1470 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1471 _3d, _3e, _3f, _40
1472 ] = x;
1473 return parser::tuple<
1474 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1475 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1476 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1477 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1478 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1479 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1480 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1481 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1482 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1483 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1484 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
1485 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
1486 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &
1487 >(
1488 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1489 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1490 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1491 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1492 _3d, _3e, _3f, _40
1493 );
1494 }
1495 };
1496
1497
1498 template<> struct tie_aggregate_impl<65> {
1499 template<typename T> static constexpr auto call(T & x) {
1500 auto & [
1501 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1502 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1503 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1504 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1505 _3d, _3e, _3f, _40, _41
1506 ] = x;
1507 return parser::tuple<
1508 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1509 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1510 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1511 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1512 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1513 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1514 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1515 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1516 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1517 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1518 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
1519 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
1520 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &
1521 >(
1522 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1523 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1524 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1525 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1526 _3d, _3e, _3f, _40, _41
1527 );
1528 }
1529 };
1530
1531
1532 template<> struct tie_aggregate_impl<66> {
1533 template<typename T> static constexpr auto call(T & x) {
1534 auto & [
1535 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1536 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1537 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1538 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1539 _3d, _3e, _3f, _40, _41, _42
1540 ] = x;
1541 return parser::tuple<
1542 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1543 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1544 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1545 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1546 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1547 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1548 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1549 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1550 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1551 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1552 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
1553 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
1554 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
1555 decltype(_42) &
1556 >(
1557 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1558 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1559 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1560 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1561 _3d, _3e, _3f, _40, _41, _42
1562 );
1563 }
1564 };
1565
1566
1567 template<> struct tie_aggregate_impl<67> {
1568 template<typename T> static constexpr auto call(T & x) {
1569 auto & [
1570 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1571 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1572 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1573 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1574 _3d, _3e, _3f, _40, _41, _42, _43
1575 ] = x;
1576 return parser::tuple<
1577 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1578 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1579 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1580 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1581 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1582 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1583 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1584 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1585 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1586 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1587 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
1588 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
1589 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
1590 decltype(_42) &, decltype(_43) &
1591 >(
1592 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1593 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1594 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1595 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1596 _3d, _3e, _3f, _40, _41, _42, _43
1597 );
1598 }
1599 };
1600
1601
1602 template<> struct tie_aggregate_impl<68> {
1603 template<typename T> static constexpr auto call(T & x) {
1604 auto & [
1605 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1606 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1607 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1608 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1609 _3d, _3e, _3f, _40, _41, _42, _43, _44
1610 ] = x;
1611 return parser::tuple<
1612 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1613 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1614 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1615 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1616 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1617 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1618 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1619 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1620 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1621 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1622 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
1623 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
1624 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
1625 decltype(_42) &, decltype(_43) &, decltype(_44) &
1626 >(
1627 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1628 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1629 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1630 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1631 _3d, _3e, _3f, _40, _41, _42, _43, _44
1632 );
1633 }
1634 };
1635
1636
1637 template<> struct tie_aggregate_impl<69> {
1638 template<typename T> static constexpr auto call(T & x) {
1639 auto & [
1640 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1641 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1642 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1643 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1644 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45
1645 ] = x;
1646 return parser::tuple<
1647 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1648 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1649 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1650 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1651 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1652 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1653 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1654 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1655 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1656 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1657 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
1658 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
1659 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
1660 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &
1661 >(
1662 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1663 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1664 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1665 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1666 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45
1667 );
1668 }
1669 };
1670
1671
1672 template<> struct tie_aggregate_impl<70> {
1673 template<typename T> static constexpr auto call(T & x) {
1674 auto & [
1675 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1676 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1677 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1678 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1679 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46
1680 ] = x;
1681 return parser::tuple<
1682 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1683 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1684 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1685 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1686 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1687 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1688 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1689 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1690 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1691 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1692 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
1693 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
1694 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
1695 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &
1696 >(
1697 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1698 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1699 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1700 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1701 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46
1702 );
1703 }
1704 };
1705
1706
1707 template<> struct tie_aggregate_impl<71> {
1708 template<typename T> static constexpr auto call(T & x) {
1709 auto & [
1710 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1711 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1712 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1713 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1714 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47
1715 ] = x;
1716 return parser::tuple<
1717 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1718 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1719 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1720 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1721 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1722 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1723 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1724 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1725 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1726 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1727 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
1728 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
1729 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
1730 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
1731 decltype(_47) &
1732 >(
1733 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1734 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1735 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1736 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1737 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47
1738 );
1739 }
1740 };
1741
1742
1743 template<> struct tie_aggregate_impl<72> {
1744 template<typename T> static constexpr auto call(T & x) {
1745 auto & [
1746 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1747 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1748 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1749 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1750 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48
1751 ] = x;
1752 return parser::tuple<
1753 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1754 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1755 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1756 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1757 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1758 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1759 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1760 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1761 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1762 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1763 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
1764 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
1765 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
1766 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
1767 decltype(_47) &, decltype(_48) &
1768 >(
1769 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1770 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1771 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1772 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1773 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48
1774 );
1775 }
1776 };
1777
1778
1779 template<> struct tie_aggregate_impl<73> {
1780 template<typename T> static constexpr auto call(T & x) {
1781 auto & [
1782 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1783 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1784 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1785 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1786 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49
1787 ] = x;
1788 return parser::tuple<
1789 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1790 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1791 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1792 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1793 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1794 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1795 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1796 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1797 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1798 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1799 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
1800 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
1801 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
1802 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
1803 decltype(_47) &, decltype(_48) &, decltype(_49) &
1804 >(
1805 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1806 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1807 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1808 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1809 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49
1810 );
1811 }
1812 };
1813
1814
1815 template<> struct tie_aggregate_impl<74> {
1816 template<typename T> static constexpr auto call(T & x) {
1817 auto & [
1818 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1819 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1820 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1821 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1822 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a
1823 ] = x;
1824 return parser::tuple<
1825 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1826 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1827 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1828 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1829 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1830 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1831 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1832 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1833 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1834 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1835 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
1836 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
1837 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
1838 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
1839 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &
1840 >(
1841 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1842 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1843 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1844 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1845 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a
1846 );
1847 }
1848 };
1849
1850
1851 template<> struct tie_aggregate_impl<75> {
1852 template<typename T> static constexpr auto call(T & x) {
1853 auto & [
1854 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1855 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1856 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1857 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1858 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b
1859 ] = x;
1860 return parser::tuple<
1861 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1862 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1863 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1864 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1865 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1866 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1867 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1868 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1869 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1870 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1871 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
1872 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
1873 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
1874 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
1875 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &
1876 >(
1877 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1878 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1879 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1880 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1881 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b
1882 );
1883 }
1884 };
1885
1886
1887 template<> struct tie_aggregate_impl<76> {
1888 template<typename T> static constexpr auto call(T & x) {
1889 auto & [
1890 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1891 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1892 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1893 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1894 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
1895 _4c
1896 ] = x;
1897 return parser::tuple<
1898 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1899 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1900 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1901 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1902 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1903 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1904 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1905 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1906 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1907 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1908 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
1909 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
1910 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
1911 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
1912 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
1913 decltype(_4c) &
1914 >(
1915 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1916 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1917 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1918 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1919 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
1920 _4c
1921 );
1922 }
1923 };
1924
1925
1926 template<> struct tie_aggregate_impl<77> {
1927 template<typename T> static constexpr auto call(T & x) {
1928 auto & [
1929 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1930 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1931 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1932 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1933 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
1934 _4c, _4d
1935 ] = x;
1936 return parser::tuple<
1937 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1938 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1939 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1940 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1941 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1942 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1943 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1944 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1945 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1946 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1947 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
1948 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
1949 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
1950 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
1951 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
1952 decltype(_4c) &, decltype(_4d) &
1953 >(
1954 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1955 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1956 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1957 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1958 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
1959 _4c, _4d
1960 );
1961 }
1962 };
1963
1964
1965 template<> struct tie_aggregate_impl<78> {
1966 template<typename T> static constexpr auto call(T & x) {
1967 auto & [
1968 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1969 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1970 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1971 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1972 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
1973 _4c, _4d, _4e
1974 ] = x;
1975 return parser::tuple<
1976 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
1977 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
1978 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
1979 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
1980 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
1981 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
1982 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
1983 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
1984 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
1985 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
1986 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
1987 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
1988 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
1989 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
1990 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
1991 decltype(_4c) &, decltype(_4d) &, decltype(_4e) &
1992 >(
1993 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
1994 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
1995 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
1996 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
1997 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
1998 _4c, _4d, _4e
1999 );
2000 }
2001 };
2002
2003
2004 template<> struct tie_aggregate_impl<79> {
2005 template<typename T> static constexpr auto call(T & x) {
2006 auto & [
2007 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2008 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2009 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2010 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2011 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2012 _4c, _4d, _4e, _4f
2013 ] = x;
2014 return parser::tuple<
2015 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
2016 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
2017 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
2018 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
2019 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
2020 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
2021 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
2022 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
2023 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
2024 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
2025 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
2026 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
2027 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
2028 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
2029 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
2030 decltype(_4c) &, decltype(_4d) &, decltype(_4e) &, decltype(_4f) &
2031 >(
2032 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2033 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2034 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2035 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2036 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2037 _4c, _4d, _4e, _4f
2038 );
2039 }
2040 };
2041
2042
2043 template<> struct tie_aggregate_impl<80> {
2044 template<typename T> static constexpr auto call(T & x) {
2045 auto & [
2046 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2047 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2048 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2049 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2050 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2051 _4c, _4d, _4e, _4f, _50
2052 ] = x;
2053 return parser::tuple<
2054 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
2055 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
2056 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
2057 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
2058 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
2059 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
2060 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
2061 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
2062 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
2063 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
2064 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
2065 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
2066 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
2067 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
2068 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
2069 decltype(_4c) &, decltype(_4d) &, decltype(_4e) &, decltype(_4f) &, decltype(_50) &
2070 >(
2071 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2072 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2073 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2074 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2075 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2076 _4c, _4d, _4e, _4f, _50
2077 );
2078 }
2079 };
2080
2081
2082 template<> struct tie_aggregate_impl<81> {
2083 template<typename T> static constexpr auto call(T & x) {
2084 auto & [
2085 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2086 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2087 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2088 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2089 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2090 _4c, _4d, _4e, _4f, _50, _51
2091 ] = x;
2092 return parser::tuple<
2093 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
2094 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
2095 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
2096 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
2097 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
2098 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
2099 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
2100 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
2101 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
2102 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
2103 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
2104 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
2105 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
2106 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
2107 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
2108 decltype(_4c) &, decltype(_4d) &, decltype(_4e) &, decltype(_4f) &, decltype(_50) &,
2109 decltype(_51) &
2110 >(
2111 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2112 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2113 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2114 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2115 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2116 _4c, _4d, _4e, _4f, _50, _51
2117 );
2118 }
2119 };
2120
2121
2122 template<> struct tie_aggregate_impl<82> {
2123 template<typename T> static constexpr auto call(T & x) {
2124 auto & [
2125 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2126 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2127 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2128 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2129 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2130 _4c, _4d, _4e, _4f, _50, _51, _52
2131 ] = x;
2132 return parser::tuple<
2133 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
2134 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
2135 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
2136 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
2137 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
2138 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
2139 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
2140 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
2141 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
2142 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
2143 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
2144 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
2145 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
2146 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
2147 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
2148 decltype(_4c) &, decltype(_4d) &, decltype(_4e) &, decltype(_4f) &, decltype(_50) &,
2149 decltype(_51) &, decltype(_52) &
2150 >(
2151 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2152 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2153 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2154 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2155 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2156 _4c, _4d, _4e, _4f, _50, _51, _52
2157 );
2158 }
2159 };
2160
2161
2162 template<> struct tie_aggregate_impl<83> {
2163 template<typename T> static constexpr auto call(T & x) {
2164 auto & [
2165 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2166 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2167 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2168 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2169 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2170 _4c, _4d, _4e, _4f, _50, _51, _52, _53
2171 ] = x;
2172 return parser::tuple<
2173 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
2174 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
2175 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
2176 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
2177 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
2178 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
2179 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
2180 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
2181 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
2182 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
2183 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
2184 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
2185 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
2186 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
2187 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
2188 decltype(_4c) &, decltype(_4d) &, decltype(_4e) &, decltype(_4f) &, decltype(_50) &,
2189 decltype(_51) &, decltype(_52) &, decltype(_53) &
2190 >(
2191 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2192 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2193 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2194 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2195 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2196 _4c, _4d, _4e, _4f, _50, _51, _52, _53
2197 );
2198 }
2199 };
2200
2201
2202 template<> struct tie_aggregate_impl<84> {
2203 template<typename T> static constexpr auto call(T & x) {
2204 auto & [
2205 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2206 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2207 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2208 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2209 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2210 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54
2211 ] = x;
2212 return parser::tuple<
2213 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
2214 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
2215 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
2216 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
2217 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
2218 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
2219 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
2220 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
2221 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
2222 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
2223 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
2224 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
2225 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
2226 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
2227 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
2228 decltype(_4c) &, decltype(_4d) &, decltype(_4e) &, decltype(_4f) &, decltype(_50) &,
2229 decltype(_51) &, decltype(_52) &, decltype(_53) &, decltype(_54) &
2230 >(
2231 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2232 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2233 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2234 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2235 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2236 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54
2237 );
2238 }
2239 };
2240
2241
2242 template<> struct tie_aggregate_impl<85> {
2243 template<typename T> static constexpr auto call(T & x) {
2244 auto & [
2245 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2246 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2247 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2248 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2249 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2250 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55
2251 ] = x;
2252 return parser::tuple<
2253 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
2254 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
2255 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
2256 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
2257 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
2258 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
2259 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
2260 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
2261 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
2262 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
2263 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
2264 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
2265 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
2266 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
2267 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
2268 decltype(_4c) &, decltype(_4d) &, decltype(_4e) &, decltype(_4f) &, decltype(_50) &,
2269 decltype(_51) &, decltype(_52) &, decltype(_53) &, decltype(_54) &, decltype(_55) &
2270 >(
2271 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2272 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2273 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2274 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2275 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2276 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55
2277 );
2278 }
2279 };
2280
2281
2282 template<> struct tie_aggregate_impl<86> {
2283 template<typename T> static constexpr auto call(T & x) {
2284 auto & [
2285 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2286 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2287 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2288 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2289 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2290 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56
2291 ] = x;
2292 return parser::tuple<
2293 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
2294 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
2295 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
2296 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
2297 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
2298 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
2299 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
2300 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
2301 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
2302 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
2303 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
2304 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
2305 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
2306 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
2307 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
2308 decltype(_4c) &, decltype(_4d) &, decltype(_4e) &, decltype(_4f) &, decltype(_50) &,
2309 decltype(_51) &, decltype(_52) &, decltype(_53) &, decltype(_54) &, decltype(_55) &,
2310 decltype(_56) &
2311 >(
2312 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2313 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2314 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2315 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2316 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2317 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56
2318 );
2319 }
2320 };
2321
2322
2323 template<> struct tie_aggregate_impl<87> {
2324 template<typename T> static constexpr auto call(T & x) {
2325 auto & [
2326 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2327 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2328 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2329 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2330 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2331 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57
2332 ] = x;
2333 return parser::tuple<
2334 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
2335 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
2336 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
2337 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
2338 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
2339 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
2340 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
2341 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
2342 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
2343 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
2344 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
2345 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
2346 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
2347 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
2348 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
2349 decltype(_4c) &, decltype(_4d) &, decltype(_4e) &, decltype(_4f) &, decltype(_50) &,
2350 decltype(_51) &, decltype(_52) &, decltype(_53) &, decltype(_54) &, decltype(_55) &,
2351 decltype(_56) &, decltype(_57) &
2352 >(
2353 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2354 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2355 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2356 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2357 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2358 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57
2359 );
2360 }
2361 };
2362
2363
2364 template<> struct tie_aggregate_impl<88> {
2365 template<typename T> static constexpr auto call(T & x) {
2366 auto & [
2367 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2368 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2369 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2370 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2371 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2372 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58
2373 ] = x;
2374 return parser::tuple<
2375 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
2376 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
2377 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
2378 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
2379 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
2380 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
2381 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
2382 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
2383 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
2384 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
2385 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
2386 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
2387 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
2388 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
2389 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
2390 decltype(_4c) &, decltype(_4d) &, decltype(_4e) &, decltype(_4f) &, decltype(_50) &,
2391 decltype(_51) &, decltype(_52) &, decltype(_53) &, decltype(_54) &, decltype(_55) &,
2392 decltype(_56) &, decltype(_57) &, decltype(_58) &
2393 >(
2394 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2395 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2396 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2397 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2398 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2399 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58
2400 );
2401 }
2402 };
2403
2404
2405 template<> struct tie_aggregate_impl<89> {
2406 template<typename T> static constexpr auto call(T & x) {
2407 auto & [
2408 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2409 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2410 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2411 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2412 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2413 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59
2414 ] = x;
2415 return parser::tuple<
2416 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
2417 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
2418 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
2419 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
2420 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
2421 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
2422 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
2423 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
2424 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
2425 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
2426 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
2427 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
2428 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
2429 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
2430 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
2431 decltype(_4c) &, decltype(_4d) &, decltype(_4e) &, decltype(_4f) &, decltype(_50) &,
2432 decltype(_51) &, decltype(_52) &, decltype(_53) &, decltype(_54) &, decltype(_55) &,
2433 decltype(_56) &, decltype(_57) &, decltype(_58) &, decltype(_59) &
2434 >(
2435 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2436 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2437 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2438 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2439 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2440 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59
2441 );
2442 }
2443 };
2444
2445
2446 template<> struct tie_aggregate_impl<90> {
2447 template<typename T> static constexpr auto call(T & x) {
2448 auto & [
2449 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2450 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2451 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2452 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2453 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2454 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _5a
2455 ] = x;
2456 return parser::tuple<
2457 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
2458 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
2459 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
2460 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
2461 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
2462 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
2463 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
2464 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
2465 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
2466 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
2467 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
2468 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
2469 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
2470 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
2471 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
2472 decltype(_4c) &, decltype(_4d) &, decltype(_4e) &, decltype(_4f) &, decltype(_50) &,
2473 decltype(_51) &, decltype(_52) &, decltype(_53) &, decltype(_54) &, decltype(_55) &,
2474 decltype(_56) &, decltype(_57) &, decltype(_58) &, decltype(_59) &, decltype(_5a) &
2475 >(
2476 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2477 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2478 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2479 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2480 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2481 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _5a
2482 );
2483 }
2484 };
2485
2486
2487 template<> struct tie_aggregate_impl<91> {
2488 template<typename T> static constexpr auto call(T & x) {
2489 auto & [
2490 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2491 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2492 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2493 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2494 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2495 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _5a,
2496 _5b
2497 ] = x;
2498 return parser::tuple<
2499 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
2500 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
2501 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
2502 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
2503 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
2504 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
2505 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
2506 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
2507 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
2508 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
2509 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
2510 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
2511 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
2512 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
2513 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
2514 decltype(_4c) &, decltype(_4d) &, decltype(_4e) &, decltype(_4f) &, decltype(_50) &,
2515 decltype(_51) &, decltype(_52) &, decltype(_53) &, decltype(_54) &, decltype(_55) &,
2516 decltype(_56) &, decltype(_57) &, decltype(_58) &, decltype(_59) &, decltype(_5a) &,
2517 decltype(_5b) &
2518 >(
2519 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2520 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2521 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2522 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2523 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2524 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _5a,
2525 _5b
2526 );
2527 }
2528 };
2529
2530
2531 template<> struct tie_aggregate_impl<92> {
2532 template<typename T> static constexpr auto call(T & x) {
2533 auto & [
2534 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2535 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2536 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2537 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2538 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2539 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _5a,
2540 _5b, _5c
2541 ] = x;
2542 return parser::tuple<
2543 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
2544 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
2545 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
2546 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
2547 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
2548 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
2549 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
2550 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
2551 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
2552 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
2553 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
2554 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
2555 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
2556 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
2557 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
2558 decltype(_4c) &, decltype(_4d) &, decltype(_4e) &, decltype(_4f) &, decltype(_50) &,
2559 decltype(_51) &, decltype(_52) &, decltype(_53) &, decltype(_54) &, decltype(_55) &,
2560 decltype(_56) &, decltype(_57) &, decltype(_58) &, decltype(_59) &, decltype(_5a) &,
2561 decltype(_5b) &, decltype(_5c) &
2562 >(
2563 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2564 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2565 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2566 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2567 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2568 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _5a,
2569 _5b, _5c
2570 );
2571 }
2572 };
2573
2574
2575 template<> struct tie_aggregate_impl<93> {
2576 template<typename T> static constexpr auto call(T & x) {
2577 auto & [
2578 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2579 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2580 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2581 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2582 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2583 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _5a,
2584 _5b, _5c, _5d
2585 ] = x;
2586 return parser::tuple<
2587 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
2588 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
2589 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
2590 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
2591 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
2592 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
2593 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
2594 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
2595 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
2596 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
2597 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
2598 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
2599 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
2600 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
2601 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
2602 decltype(_4c) &, decltype(_4d) &, decltype(_4e) &, decltype(_4f) &, decltype(_50) &,
2603 decltype(_51) &, decltype(_52) &, decltype(_53) &, decltype(_54) &, decltype(_55) &,
2604 decltype(_56) &, decltype(_57) &, decltype(_58) &, decltype(_59) &, decltype(_5a) &,
2605 decltype(_5b) &, decltype(_5c) &, decltype(_5d) &
2606 >(
2607 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2608 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2609 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2610 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2611 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2612 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _5a,
2613 _5b, _5c, _5d
2614 );
2615 }
2616 };
2617
2618
2619 template<> struct tie_aggregate_impl<94> {
2620 template<typename T> static constexpr auto call(T & x) {
2621 auto & [
2622 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2623 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2624 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2625 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2626 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2627 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _5a,
2628 _5b, _5c, _5d, _5e
2629 ] = x;
2630 return parser::tuple<
2631 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
2632 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
2633 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
2634 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
2635 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
2636 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
2637 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
2638 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
2639 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
2640 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
2641 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
2642 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
2643 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
2644 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
2645 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
2646 decltype(_4c) &, decltype(_4d) &, decltype(_4e) &, decltype(_4f) &, decltype(_50) &,
2647 decltype(_51) &, decltype(_52) &, decltype(_53) &, decltype(_54) &, decltype(_55) &,
2648 decltype(_56) &, decltype(_57) &, decltype(_58) &, decltype(_59) &, decltype(_5a) &,
2649 decltype(_5b) &, decltype(_5c) &, decltype(_5d) &, decltype(_5e) &
2650 >(
2651 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2652 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2653 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2654 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2655 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2656 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _5a,
2657 _5b, _5c, _5d, _5e
2658 );
2659 }
2660 };
2661
2662
2663 template<> struct tie_aggregate_impl<95> {
2664 template<typename T> static constexpr auto call(T & x) {
2665 auto & [
2666 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2667 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2668 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2669 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2670 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2671 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _5a,
2672 _5b, _5c, _5d, _5e, _5f
2673 ] = x;
2674 return parser::tuple<
2675 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
2676 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
2677 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
2678 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
2679 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
2680 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
2681 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
2682 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
2683 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
2684 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
2685 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
2686 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
2687 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
2688 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
2689 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
2690 decltype(_4c) &, decltype(_4d) &, decltype(_4e) &, decltype(_4f) &, decltype(_50) &,
2691 decltype(_51) &, decltype(_52) &, decltype(_53) &, decltype(_54) &, decltype(_55) &,
2692 decltype(_56) &, decltype(_57) &, decltype(_58) &, decltype(_59) &, decltype(_5a) &,
2693 decltype(_5b) &, decltype(_5c) &, decltype(_5d) &, decltype(_5e) &, decltype(_5f) &
2694 >(
2695 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2696 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2697 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2698 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2699 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2700 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _5a,
2701 _5b, _5c, _5d, _5e, _5f
2702 );
2703 }
2704 };
2705
2706
2707 template<> struct tie_aggregate_impl<96> {
2708 template<typename T> static constexpr auto call(T & x) {
2709 auto & [
2710 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2711 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2712 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2713 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2714 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2715 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _5a,
2716 _5b, _5c, _5d, _5e, _5f, _60
2717 ] = x;
2718 return parser::tuple<
2719 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
2720 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
2721 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
2722 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
2723 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
2724 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
2725 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
2726 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
2727 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
2728 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
2729 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
2730 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
2731 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
2732 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
2733 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
2734 decltype(_4c) &, decltype(_4d) &, decltype(_4e) &, decltype(_4f) &, decltype(_50) &,
2735 decltype(_51) &, decltype(_52) &, decltype(_53) &, decltype(_54) &, decltype(_55) &,
2736 decltype(_56) &, decltype(_57) &, decltype(_58) &, decltype(_59) &, decltype(_5a) &,
2737 decltype(_5b) &, decltype(_5c) &, decltype(_5d) &, decltype(_5e) &, decltype(_5f) &,
2738 decltype(_60) &
2739 >(
2740 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2741 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2742 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2743 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2744 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2745 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _5a,
2746 _5b, _5c, _5d, _5e, _5f, _60
2747 );
2748 }
2749 };
2750
2751
2752 template<> struct tie_aggregate_impl<97> {
2753 template<typename T> static constexpr auto call(T & x) {
2754 auto & [
2755 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2756 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2757 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2758 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2759 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2760 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _5a,
2761 _5b, _5c, _5d, _5e, _5f, _60, _61
2762 ] = x;
2763 return parser::tuple<
2764 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
2765 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
2766 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
2767 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
2768 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
2769 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
2770 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
2771 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
2772 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
2773 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
2774 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
2775 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
2776 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
2777 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
2778 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
2779 decltype(_4c) &, decltype(_4d) &, decltype(_4e) &, decltype(_4f) &, decltype(_50) &,
2780 decltype(_51) &, decltype(_52) &, decltype(_53) &, decltype(_54) &, decltype(_55) &,
2781 decltype(_56) &, decltype(_57) &, decltype(_58) &, decltype(_59) &, decltype(_5a) &,
2782 decltype(_5b) &, decltype(_5c) &, decltype(_5d) &, decltype(_5e) &, decltype(_5f) &,
2783 decltype(_60) &, decltype(_61) &
2784 >(
2785 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2786 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2787 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2788 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2789 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2790 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _5a,
2791 _5b, _5c, _5d, _5e, _5f, _60, _61
2792 );
2793 }
2794 };
2795
2796
2797 template<> struct tie_aggregate_impl<98> {
2798 template<typename T> static constexpr auto call(T & x) {
2799 auto & [
2800 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2801 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2802 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2803 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2804 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2805 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _5a,
2806 _5b, _5c, _5d, _5e, _5f, _60, _61, _62
2807 ] = x;
2808 return parser::tuple<
2809 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
2810 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
2811 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
2812 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
2813 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
2814 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
2815 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
2816 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
2817 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
2818 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
2819 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
2820 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
2821 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
2822 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
2823 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
2824 decltype(_4c) &, decltype(_4d) &, decltype(_4e) &, decltype(_4f) &, decltype(_50) &,
2825 decltype(_51) &, decltype(_52) &, decltype(_53) &, decltype(_54) &, decltype(_55) &,
2826 decltype(_56) &, decltype(_57) &, decltype(_58) &, decltype(_59) &, decltype(_5a) &,
2827 decltype(_5b) &, decltype(_5c) &, decltype(_5d) &, decltype(_5e) &, decltype(_5f) &,
2828 decltype(_60) &, decltype(_61) &, decltype(_62) &
2829 >(
2830 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2831 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2832 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2833 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2834 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2835 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _5a,
2836 _5b, _5c, _5d, _5e, _5f, _60, _61, _62
2837 );
2838 }
2839 };
2840
2841
2842 template<> struct tie_aggregate_impl<99> {
2843 template<typename T> static constexpr auto call(T & x) {
2844 auto & [
2845 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2846 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2847 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2848 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2849 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2850 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _5a,
2851 _5b, _5c, _5d, _5e, _5f, _60, _61, _62, _63
2852 ] = x;
2853 return parser::tuple<
2854 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
2855 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
2856 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
2857 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
2858 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
2859 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
2860 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
2861 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
2862 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
2863 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
2864 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
2865 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
2866 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
2867 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
2868 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
2869 decltype(_4c) &, decltype(_4d) &, decltype(_4e) &, decltype(_4f) &, decltype(_50) &,
2870 decltype(_51) &, decltype(_52) &, decltype(_53) &, decltype(_54) &, decltype(_55) &,
2871 decltype(_56) &, decltype(_57) &, decltype(_58) &, decltype(_59) &, decltype(_5a) &,
2872 decltype(_5b) &, decltype(_5c) &, decltype(_5d) &, decltype(_5e) &, decltype(_5f) &,
2873 decltype(_60) &, decltype(_61) &, decltype(_62) &, decltype(_63) &
2874 >(
2875 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2876 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2877 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2878 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2879 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2880 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _5a,
2881 _5b, _5c, _5d, _5e, _5f, _60, _61, _62, _63
2882 );
2883 }
2884 };
2885
2886
2887 template<> struct tie_aggregate_impl<100> {
2888 template<typename T> static constexpr auto call(T & x) {
2889 auto & [
2890 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2891 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2892 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2893 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2894 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2895 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _5a,
2896 _5b, _5c, _5d, _5e, _5f, _60, _61, _62, _63, _64
2897 ] = x;
2898 return parser::tuple<
2899 decltype(_01) &, decltype(_02) &, decltype(_03) &, decltype(_04) &, decltype(_05) &,
2900 decltype(_06) &, decltype(_07) &, decltype(_08) &, decltype(_09) &, decltype(_0a) &,
2901 decltype(_0b) &, decltype(_0c) &, decltype(_0d) &, decltype(_0e) &, decltype(_0f) &,
2902 decltype(_10) &, decltype(_11) &, decltype(_12) &, decltype(_13) &, decltype(_14) &,
2903 decltype(_15) &, decltype(_16) &, decltype(_17) &, decltype(_18) &, decltype(_19) &,
2904 decltype(_1a) &, decltype(_1b) &, decltype(_1c) &, decltype(_1d) &, decltype(_1e) &,
2905 decltype(_1f) &, decltype(_20) &, decltype(_21) &, decltype(_22) &, decltype(_23) &,
2906 decltype(_24) &, decltype(_25) &, decltype(_26) &, decltype(_27) &, decltype(_28) &,
2907 decltype(_29) &, decltype(_2a) &, decltype(_2b) &, decltype(_2c) &, decltype(_2d) &,
2908 decltype(_2e) &, decltype(_2f) &, decltype(_30) &, decltype(_31) &, decltype(_32) &,
2909 decltype(_33) &, decltype(_34) &, decltype(_35) &, decltype(_36) &, decltype(_37) &,
2910 decltype(_38) &, decltype(_39) &, decltype(_3a) &, decltype(_3b) &, decltype(_3c) &,
2911 decltype(_3d) &, decltype(_3e) &, decltype(_3f) &, decltype(_40) &, decltype(_41) &,
2912 decltype(_42) &, decltype(_43) &, decltype(_44) &, decltype(_45) &, decltype(_46) &,
2913 decltype(_47) &, decltype(_48) &, decltype(_49) &, decltype(_4a) &, decltype(_4b) &,
2914 decltype(_4c) &, decltype(_4d) &, decltype(_4e) &, decltype(_4f) &, decltype(_50) &,
2915 decltype(_51) &, decltype(_52) &, decltype(_53) &, decltype(_54) &, decltype(_55) &,
2916 decltype(_56) &, decltype(_57) &, decltype(_58) &, decltype(_59) &, decltype(_5a) &,
2917 decltype(_5b) &, decltype(_5c) &, decltype(_5d) &, decltype(_5e) &, decltype(_5f) &,
2918 decltype(_60) &, decltype(_61) &, decltype(_62) &, decltype(_63) &, decltype(_64) &
2919 >(
2920 _01, _02, _03, _04, _05, _06, _07, _08, _09, _0a, _0b, _0c, _0d, _0e, _0f,
2921 _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _1a, _1b, _1c, _1d, _1e,
2922 _1f, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _2a, _2b, _2c, _2d,
2923 _2e, _2f, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _3a, _3b, _3c,
2924 _3d, _3e, _3f, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _4a, _4b,
2925 _4c, _4d, _4e, _4f, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _5a,
2926 _5b, _5c, _5d, _5e, _5f, _60, _61, _62, _63, _64
2927 );
2928 }
2929 };
2930
2931
2932 }
2933