tuples/gen/
split_to_tuple_by.rs

1// auto generated code, do not modify
2
3#[doc = "Split to tuple by 2"]
4pub trait TupleSplitToTupleBy2 {
5    type OutTuple;
6    #[doc = "Split to tuple by 2"]
7    fn split_to_tuple_by_2(self) -> Self::OutTuple;
8}
9impl<T0, T1> TupleSplitToTupleBy2 for (T0, T1) {
10    type OutTuple = ((T0, T1),);
11    fn split_to_tuple_by_2(self) -> Self::OutTuple {
12        ((self.0, self.1),)
13    }
14}
15impl<T0, T1, T2> TupleSplitToTupleBy2 for (T0, T1, T2) {
16    type OutTuple = ((T0, T1), (T2,));
17    fn split_to_tuple_by_2(self) -> Self::OutTuple {
18        ((self.0, self.1), (self.2,))
19    }
20}
21impl<T0, T1, T2, T3> TupleSplitToTupleBy2 for (T0, T1, T2, T3) {
22    type OutTuple = ((T0, T1), (T2, T3));
23    fn split_to_tuple_by_2(self) -> Self::OutTuple {
24        ((self.0, self.1), (self.2, self.3))
25    }
26}
27impl<T0, T1, T2, T3, T4> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4) {
28    type OutTuple = ((T0, T1), (T2, T3), (T4,));
29    fn split_to_tuple_by_2(self) -> Self::OutTuple {
30        ((self.0, self.1), (self.2, self.3), (self.4,))
31    }
32}
33impl<T0, T1, T2, T3, T4, T5> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5) {
34    type OutTuple = ((T0, T1), (T2, T3), (T4, T5));
35    fn split_to_tuple_by_2(self) -> Self::OutTuple {
36        ((self.0, self.1), (self.2, self.3), (self.4, self.5))
37    }
38}
39impl<T0, T1, T2, T3, T4, T5, T6> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6) {
40    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6,));
41    fn split_to_tuple_by_2(self) -> Self::OutTuple {
42        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6,))
43    }
44}
45impl<T0, T1, T2, T3, T4, T5, T6, T7> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7) {
46    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7));
47    fn split_to_tuple_by_2(self) -> Self::OutTuple {
48        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7))
49    }
50}
51impl<T0, T1, T2, T3, T4, T5, T6, T7, T8> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7, T8) {
52    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7), (T8,));
53    fn split_to_tuple_by_2(self) -> Self::OutTuple {
54        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7), (self.8,))
55    }
56}
57impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9) {
58    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7), (T8, T9));
59    fn split_to_tuple_by_2(self) -> Self::OutTuple {
60        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7), (self.8, self.9))
61    }
62}
63impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) {
64    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7), (T8, T9), (T10,));
65    fn split_to_tuple_by_2(self) -> Self::OutTuple {
66        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7), (self.8, self.9), (self.10,))
67    }
68}
69impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) {
70    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7), (T8, T9), (T10, T11));
71    fn split_to_tuple_by_2(self) -> Self::OutTuple {
72        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7), (self.8, self.9), (self.10, self.11))
73    }
74}
75impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) {
76    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7), (T8, T9), (T10, T11), (T12,));
77    fn split_to_tuple_by_2(self) -> Self::OutTuple {
78        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7), (self.8, self.9), (self.10, self.11), (self.12,))
79    }
80}
81impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) {
82    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7), (T8, T9), (T10, T11), (T12, T13));
83    fn split_to_tuple_by_2(self) -> Self::OutTuple {
84        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7), (self.8, self.9), (self.10, self.11), (self.12, self.13))
85    }
86}
87impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) {
88    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7), (T8, T9), (T10, T11), (T12, T13), (T14,));
89    fn split_to_tuple_by_2(self) -> Self::OutTuple {
90        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7), (self.8, self.9), (self.10, self.11), (self.12, self.13), (self.14,))
91    }
92}
93impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) {
94    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7), (T8, T9), (T10, T11), (T12, T13), (T14, T15));
95    fn split_to_tuple_by_2(self) -> Self::OutTuple {
96        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7), (self.8, self.9), (self.10, self.11), (self.12, self.13), (self.14, self.15))
97    }
98}
99impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) {
100    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7), (T8, T9), (T10, T11), (T12, T13), (T14, T15), (T16,));
101    fn split_to_tuple_by_2(self) -> Self::OutTuple {
102        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7), (self.8, self.9), (self.10, self.11), (self.12, self.13), (self.14, self.15), (self.16,))
103    }
104}
105impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) {
106    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7), (T8, T9), (T10, T11), (T12, T13), (T14, T15), (T16, T17));
107    fn split_to_tuple_by_2(self) -> Self::OutTuple {
108        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7), (self.8, self.9), (self.10, self.11), (self.12, self.13), (self.14, self.15), (self.16, self.17))
109    }
110}
111impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) {
112    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7), (T8, T9), (T10, T11), (T12, T13), (T14, T15), (T16, T17), (T18,));
113    fn split_to_tuple_by_2(self) -> Self::OutTuple {
114        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7), (self.8, self.9), (self.10, self.11), (self.12, self.13), (self.14, self.15), (self.16, self.17), (self.18,))
115    }
116}
117impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) {
118    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7), (T8, T9), (T10, T11), (T12, T13), (T14, T15), (T16, T17), (T18, T19));
119    fn split_to_tuple_by_2(self) -> Self::OutTuple {
120        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7), (self.8, self.9), (self.10, self.11), (self.12, self.13), (self.14, self.15), (self.16, self.17), (self.18, self.19))
121    }
122}
123impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) {
124    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7), (T8, T9), (T10, T11), (T12, T13), (T14, T15), (T16, T17), (T18, T19), (T20,));
125    fn split_to_tuple_by_2(self) -> Self::OutTuple {
126        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7), (self.8, self.9), (self.10, self.11), (self.12, self.13), (self.14, self.15), (self.16, self.17), (self.18, self.19), (self.20,))
127    }
128}
129impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) {
130    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7), (T8, T9), (T10, T11), (T12, T13), (T14, T15), (T16, T17), (T18, T19), (T20, T21));
131    fn split_to_tuple_by_2(self) -> Self::OutTuple {
132        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7), (self.8, self.9), (self.10, self.11), (self.12, self.13), (self.14, self.15), (self.16, self.17), (self.18, self.19), (self.20, self.21))
133    }
134}
135impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) {
136    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7), (T8, T9), (T10, T11), (T12, T13), (T14, T15), (T16, T17), (T18, T19), (T20, T21), (T22,));
137    fn split_to_tuple_by_2(self) -> Self::OutTuple {
138        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7), (self.8, self.9), (self.10, self.11), (self.12, self.13), (self.14, self.15), (self.16, self.17), (self.18, self.19), (self.20, self.21), (self.22,))
139    }
140}
141impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23) {
142    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7), (T8, T9), (T10, T11), (T12, T13), (T14, T15), (T16, T17), (T18, T19), (T20, T21), (T22, T23));
143    fn split_to_tuple_by_2(self) -> Self::OutTuple {
144        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7), (self.8, self.9), (self.10, self.11), (self.12, self.13), (self.14, self.15), (self.16, self.17), (self.18, self.19), (self.20, self.21), (self.22, self.23))
145    }
146}
147impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24) {
148    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7), (T8, T9), (T10, T11), (T12, T13), (T14, T15), (T16, T17), (T18, T19), (T20, T21), (T22, T23), (T24,));
149    fn split_to_tuple_by_2(self) -> Self::OutTuple {
150        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7), (self.8, self.9), (self.10, self.11), (self.12, self.13), (self.14, self.15), (self.16, self.17), (self.18, self.19), (self.20, self.21), (self.22, self.23), (self.24,))
151    }
152}
153impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
154    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7), (T8, T9), (T10, T11), (T12, T13), (T14, T15), (T16, T17), (T18, T19), (T20, T21), (T22, T23), (T24, T25));
155    fn split_to_tuple_by_2(self) -> Self::OutTuple {
156        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7), (self.8, self.9), (self.10, self.11), (self.12, self.13), (self.14, self.15), (self.16, self.17), (self.18, self.19), (self.20, self.21), (self.22, self.23), (self.24, self.25))
157    }
158}
159impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
160    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7), (T8, T9), (T10, T11), (T12, T13), (T14, T15), (T16, T17), (T18, T19), (T20, T21), (T22, T23), (T24, T25), (T26,));
161    fn split_to_tuple_by_2(self) -> Self::OutTuple {
162        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7), (self.8, self.9), (self.10, self.11), (self.12, self.13), (self.14, self.15), (self.16, self.17), (self.18, self.19), (self.20, self.21), (self.22, self.23), (self.24, self.25), (self.26,))
163    }
164}
165impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
166    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7), (T8, T9), (T10, T11), (T12, T13), (T14, T15), (T16, T17), (T18, T19), (T20, T21), (T22, T23), (T24, T25), (T26, T27));
167    fn split_to_tuple_by_2(self) -> Self::OutTuple {
168        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7), (self.8, self.9), (self.10, self.11), (self.12, self.13), (self.14, self.15), (self.16, self.17), (self.18, self.19), (self.20, self.21), (self.22, self.23), (self.24, self.25), (self.26, self.27))
169    }
170}
171impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
172    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7), (T8, T9), (T10, T11), (T12, T13), (T14, T15), (T16, T17), (T18, T19), (T20, T21), (T22, T23), (T24, T25), (T26, T27), (T28,));
173    fn split_to_tuple_by_2(self) -> Self::OutTuple {
174        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7), (self.8, self.9), (self.10, self.11), (self.12, self.13), (self.14, self.15), (self.16, self.17), (self.18, self.19), (self.20, self.21), (self.22, self.23), (self.24, self.25), (self.26, self.27), (self.28,))
175    }
176}
177impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
178    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7), (T8, T9), (T10, T11), (T12, T13), (T14, T15), (T16, T17), (T18, T19), (T20, T21), (T22, T23), (T24, T25), (T26, T27), (T28, T29));
179    fn split_to_tuple_by_2(self) -> Self::OutTuple {
180        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7), (self.8, self.9), (self.10, self.11), (self.12, self.13), (self.14, self.15), (self.16, self.17), (self.18, self.19), (self.20, self.21), (self.22, self.23), (self.24, self.25), (self.26, self.27), (self.28, self.29))
181    }
182}
183impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
184    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7), (T8, T9), (T10, T11), (T12, T13), (T14, T15), (T16, T17), (T18, T19), (T20, T21), (T22, T23), (T24, T25), (T26, T27), (T28, T29), (T30,));
185    fn split_to_tuple_by_2(self) -> Self::OutTuple {
186        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7), (self.8, self.9), (self.10, self.11), (self.12, self.13), (self.14, self.15), (self.16, self.17), (self.18, self.19), (self.20, self.21), (self.22, self.23), (self.24, self.25), (self.26, self.27), (self.28, self.29), (self.30,))
187    }
188}
189impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy2 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
190    type OutTuple = ((T0, T1), (T2, T3), (T4, T5), (T6, T7), (T8, T9), (T10, T11), (T12, T13), (T14, T15), (T16, T17), (T18, T19), (T20, T21), (T22, T23), (T24, T25), (T26, T27), (T28, T29), (T30, T31));
191    fn split_to_tuple_by_2(self) -> Self::OutTuple {
192        ((self.0, self.1), (self.2, self.3), (self.4, self.5), (self.6, self.7), (self.8, self.9), (self.10, self.11), (self.12, self.13), (self.14, self.15), (self.16, self.17), (self.18, self.19), (self.20, self.21), (self.22, self.23), (self.24, self.25), (self.26, self.27), (self.28, self.29), (self.30, self.31))
193    }
194}
195#[doc = "Split to tuple by 3"]
196pub trait TupleSplitToTupleBy3 {
197    type OutTuple;
198    #[doc = "Split to tuple by 3"]
199    fn split_to_tuple_by_3(self) -> Self::OutTuple;
200}
201impl<T0, T1, T2> TupleSplitToTupleBy3 for (T0, T1, T2) {
202    type OutTuple = ((T0, T1, T2),);
203    fn split_to_tuple_by_3(self) -> Self::OutTuple {
204        ((self.0, self.1, self.2),)
205    }
206}
207impl<T0, T1, T2, T3> TupleSplitToTupleBy3 for (T0, T1, T2, T3) {
208    type OutTuple = ((T0, T1, T2), (T3,));
209    fn split_to_tuple_by_3(self) -> Self::OutTuple {
210        ((self.0, self.1, self.2), (self.3,))
211    }
212}
213impl<T0, T1, T2, T3, T4> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4) {
214    type OutTuple = ((T0, T1, T2), (T3, T4));
215    fn split_to_tuple_by_3(self) -> Self::OutTuple {
216        ((self.0, self.1, self.2), (self.3, self.4))
217    }
218}
219impl<T0, T1, T2, T3, T4, T5> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5) {
220    type OutTuple = ((T0, T1, T2), (T3, T4, T5));
221    fn split_to_tuple_by_3(self) -> Self::OutTuple {
222        ((self.0, self.1, self.2), (self.3, self.4, self.5))
223    }
224}
225impl<T0, T1, T2, T3, T4, T5, T6> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6) {
226    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6,));
227    fn split_to_tuple_by_3(self) -> Self::OutTuple {
228        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6,))
229    }
230}
231impl<T0, T1, T2, T3, T4, T5, T6, T7> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7) {
232    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7));
233    fn split_to_tuple_by_3(self) -> Self::OutTuple {
234        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7))
235    }
236}
237impl<T0, T1, T2, T3, T4, T5, T6, T7, T8> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7, T8) {
238    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7, T8));
239    fn split_to_tuple_by_3(self) -> Self::OutTuple {
240        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7, self.8))
241    }
242}
243impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9) {
244    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7, T8), (T9,));
245    fn split_to_tuple_by_3(self) -> Self::OutTuple {
246        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7, self.8), (self.9,))
247    }
248}
249impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) {
250    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7, T8), (T9, T10));
251    fn split_to_tuple_by_3(self) -> Self::OutTuple {
252        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7, self.8), (self.9, self.10))
253    }
254}
255impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) {
256    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7, T8), (T9, T10, T11));
257    fn split_to_tuple_by_3(self) -> Self::OutTuple {
258        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7, self.8), (self.9, self.10, self.11))
259    }
260}
261impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) {
262    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7, T8), (T9, T10, T11), (T12,));
263    fn split_to_tuple_by_3(self) -> Self::OutTuple {
264        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7, self.8), (self.9, self.10, self.11), (self.12,))
265    }
266}
267impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) {
268    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7, T8), (T9, T10, T11), (T12, T13));
269    fn split_to_tuple_by_3(self) -> Self::OutTuple {
270        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7, self.8), (self.9, self.10, self.11), (self.12, self.13))
271    }
272}
273impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) {
274    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7, T8), (T9, T10, T11), (T12, T13, T14));
275    fn split_to_tuple_by_3(self) -> Self::OutTuple {
276        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7, self.8), (self.9, self.10, self.11), (self.12, self.13, self.14))
277    }
278}
279impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) {
280    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7, T8), (T9, T10, T11), (T12, T13, T14), (T15,));
281    fn split_to_tuple_by_3(self) -> Self::OutTuple {
282        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7, self.8), (self.9, self.10, self.11), (self.12, self.13, self.14), (self.15,))
283    }
284}
285impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) {
286    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7, T8), (T9, T10, T11), (T12, T13, T14), (T15, T16));
287    fn split_to_tuple_by_3(self) -> Self::OutTuple {
288        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7, self.8), (self.9, self.10, self.11), (self.12, self.13, self.14), (self.15, self.16))
289    }
290}
291impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) {
292    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7, T8), (T9, T10, T11), (T12, T13, T14), (T15, T16, T17));
293    fn split_to_tuple_by_3(self) -> Self::OutTuple {
294        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7, self.8), (self.9, self.10, self.11), (self.12, self.13, self.14), (self.15, self.16, self.17))
295    }
296}
297impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) {
298    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7, T8), (T9, T10, T11), (T12, T13, T14), (T15, T16, T17), (T18,));
299    fn split_to_tuple_by_3(self) -> Self::OutTuple {
300        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7, self.8), (self.9, self.10, self.11), (self.12, self.13, self.14), (self.15, self.16, self.17), (self.18,))
301    }
302}
303impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) {
304    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7, T8), (T9, T10, T11), (T12, T13, T14), (T15, T16, T17), (T18, T19));
305    fn split_to_tuple_by_3(self) -> Self::OutTuple {
306        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7, self.8), (self.9, self.10, self.11), (self.12, self.13, self.14), (self.15, self.16, self.17), (self.18, self.19))
307    }
308}
309impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) {
310    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7, T8), (T9, T10, T11), (T12, T13, T14), (T15, T16, T17), (T18, T19, T20));
311    fn split_to_tuple_by_3(self) -> Self::OutTuple {
312        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7, self.8), (self.9, self.10, self.11), (self.12, self.13, self.14), (self.15, self.16, self.17), (self.18, self.19, self.20))
313    }
314}
315impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) {
316    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7, T8), (T9, T10, T11), (T12, T13, T14), (T15, T16, T17), (T18, T19, T20), (T21,));
317    fn split_to_tuple_by_3(self) -> Self::OutTuple {
318        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7, self.8), (self.9, self.10, self.11), (self.12, self.13, self.14), (self.15, self.16, self.17), (self.18, self.19, self.20), (self.21,))
319    }
320}
321impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) {
322    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7, T8), (T9, T10, T11), (T12, T13, T14), (T15, T16, T17), (T18, T19, T20), (T21, T22));
323    fn split_to_tuple_by_3(self) -> Self::OutTuple {
324        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7, self.8), (self.9, self.10, self.11), (self.12, self.13, self.14), (self.15, self.16, self.17), (self.18, self.19, self.20), (self.21, self.22))
325    }
326}
327impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23) {
328    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7, T8), (T9, T10, T11), (T12, T13, T14), (T15, T16, T17), (T18, T19, T20), (T21, T22, T23));
329    fn split_to_tuple_by_3(self) -> Self::OutTuple {
330        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7, self.8), (self.9, self.10, self.11), (self.12, self.13, self.14), (self.15, self.16, self.17), (self.18, self.19, self.20), (self.21, self.22, self.23))
331    }
332}
333impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24) {
334    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7, T8), (T9, T10, T11), (T12, T13, T14), (T15, T16, T17), (T18, T19, T20), (T21, T22, T23), (T24,));
335    fn split_to_tuple_by_3(self) -> Self::OutTuple {
336        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7, self.8), (self.9, self.10, self.11), (self.12, self.13, self.14), (self.15, self.16, self.17), (self.18, self.19, self.20), (self.21, self.22, self.23), (self.24,))
337    }
338}
339impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
340    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7, T8), (T9, T10, T11), (T12, T13, T14), (T15, T16, T17), (T18, T19, T20), (T21, T22, T23), (T24, T25));
341    fn split_to_tuple_by_3(self) -> Self::OutTuple {
342        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7, self.8), (self.9, self.10, self.11), (self.12, self.13, self.14), (self.15, self.16, self.17), (self.18, self.19, self.20), (self.21, self.22, self.23), (self.24, self.25))
343    }
344}
345impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
346    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7, T8), (T9, T10, T11), (T12, T13, T14), (T15, T16, T17), (T18, T19, T20), (T21, T22, T23), (T24, T25, T26));
347    fn split_to_tuple_by_3(self) -> Self::OutTuple {
348        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7, self.8), (self.9, self.10, self.11), (self.12, self.13, self.14), (self.15, self.16, self.17), (self.18, self.19, self.20), (self.21, self.22, self.23), (self.24, self.25, self.26))
349    }
350}
351impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
352    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7, T8), (T9, T10, T11), (T12, T13, T14), (T15, T16, T17), (T18, T19, T20), (T21, T22, T23), (T24, T25, T26), (T27,));
353    fn split_to_tuple_by_3(self) -> Self::OutTuple {
354        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7, self.8), (self.9, self.10, self.11), (self.12, self.13, self.14), (self.15, self.16, self.17), (self.18, self.19, self.20), (self.21, self.22, self.23), (self.24, self.25, self.26), (self.27,))
355    }
356}
357impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
358    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7, T8), (T9, T10, T11), (T12, T13, T14), (T15, T16, T17), (T18, T19, T20), (T21, T22, T23), (T24, T25, T26), (T27, T28));
359    fn split_to_tuple_by_3(self) -> Self::OutTuple {
360        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7, self.8), (self.9, self.10, self.11), (self.12, self.13, self.14), (self.15, self.16, self.17), (self.18, self.19, self.20), (self.21, self.22, self.23), (self.24, self.25, self.26), (self.27, self.28))
361    }
362}
363impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
364    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7, T8), (T9, T10, T11), (T12, T13, T14), (T15, T16, T17), (T18, T19, T20), (T21, T22, T23), (T24, T25, T26), (T27, T28, T29));
365    fn split_to_tuple_by_3(self) -> Self::OutTuple {
366        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7, self.8), (self.9, self.10, self.11), (self.12, self.13, self.14), (self.15, self.16, self.17), (self.18, self.19, self.20), (self.21, self.22, self.23), (self.24, self.25, self.26), (self.27, self.28, self.29))
367    }
368}
369impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
370    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7, T8), (T9, T10, T11), (T12, T13, T14), (T15, T16, T17), (T18, T19, T20), (T21, T22, T23), (T24, T25, T26), (T27, T28, T29), (T30,));
371    fn split_to_tuple_by_3(self) -> Self::OutTuple {
372        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7, self.8), (self.9, self.10, self.11), (self.12, self.13, self.14), (self.15, self.16, self.17), (self.18, self.19, self.20), (self.21, self.22, self.23), (self.24, self.25, self.26), (self.27, self.28, self.29), (self.30,))
373    }
374}
375impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy3 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
376    type OutTuple = ((T0, T1, T2), (T3, T4, T5), (T6, T7, T8), (T9, T10, T11), (T12, T13, T14), (T15, T16, T17), (T18, T19, T20), (T21, T22, T23), (T24, T25, T26), (T27, T28, T29), (T30, T31));
377    fn split_to_tuple_by_3(self) -> Self::OutTuple {
378        ((self.0, self.1, self.2), (self.3, self.4, self.5), (self.6, self.7, self.8), (self.9, self.10, self.11), (self.12, self.13, self.14), (self.15, self.16, self.17), (self.18, self.19, self.20), (self.21, self.22, self.23), (self.24, self.25, self.26), (self.27, self.28, self.29), (self.30, self.31))
379    }
380}
381#[doc = "Split to tuple by 4"]
382pub trait TupleSplitToTupleBy4 {
383    type OutTuple;
384    #[doc = "Split to tuple by 4"]
385    fn split_to_tuple_by_4(self) -> Self::OutTuple;
386}
387impl<T0, T1, T2, T3> TupleSplitToTupleBy4 for (T0, T1, T2, T3) {
388    type OutTuple = ((T0, T1, T2, T3),);
389    fn split_to_tuple_by_4(self) -> Self::OutTuple {
390        ((self.0, self.1, self.2, self.3),)
391    }
392}
393impl<T0, T1, T2, T3, T4> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4) {
394    type OutTuple = ((T0, T1, T2, T3), (T4,));
395    fn split_to_tuple_by_4(self) -> Self::OutTuple {
396        ((self.0, self.1, self.2, self.3), (self.4,))
397    }
398}
399impl<T0, T1, T2, T3, T4, T5> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5) {
400    type OutTuple = ((T0, T1, T2, T3), (T4, T5));
401    fn split_to_tuple_by_4(self) -> Self::OutTuple {
402        ((self.0, self.1, self.2, self.3), (self.4, self.5))
403    }
404}
405impl<T0, T1, T2, T3, T4, T5, T6> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6) {
406    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6));
407    fn split_to_tuple_by_4(self) -> Self::OutTuple {
408        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6))
409    }
410}
411impl<T0, T1, T2, T3, T4, T5, T6, T7> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7) {
412    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7));
413    fn split_to_tuple_by_4(self) -> Self::OutTuple {
414        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7))
415    }
416}
417impl<T0, T1, T2, T3, T4, T5, T6, T7, T8> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7, T8) {
418    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7), (T8,));
419    fn split_to_tuple_by_4(self) -> Self::OutTuple {
420        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7), (self.8,))
421    }
422}
423impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9) {
424    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7), (T8, T9));
425    fn split_to_tuple_by_4(self) -> Self::OutTuple {
426        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7), (self.8, self.9))
427    }
428}
429impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) {
430    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7), (T8, T9, T10));
431    fn split_to_tuple_by_4(self) -> Self::OutTuple {
432        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7), (self.8, self.9, self.10))
433    }
434}
435impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) {
436    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7), (T8, T9, T10, T11));
437    fn split_to_tuple_by_4(self) -> Self::OutTuple {
438        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11))
439    }
440}
441impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) {
442    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7), (T8, T9, T10, T11), (T12,));
443    fn split_to_tuple_by_4(self) -> Self::OutTuple {
444        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11), (self.12,))
445    }
446}
447impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) {
448    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7), (T8, T9, T10, T11), (T12, T13));
449    fn split_to_tuple_by_4(self) -> Self::OutTuple {
450        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11), (self.12, self.13))
451    }
452}
453impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) {
454    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7), (T8, T9, T10, T11), (T12, T13, T14));
455    fn split_to_tuple_by_4(self) -> Self::OutTuple {
456        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11), (self.12, self.13, self.14))
457    }
458}
459impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) {
460    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7), (T8, T9, T10, T11), (T12, T13, T14, T15));
461    fn split_to_tuple_by_4(self) -> Self::OutTuple {
462        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15))
463    }
464}
465impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) {
466    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7), (T8, T9, T10, T11), (T12, T13, T14, T15), (T16,));
467    fn split_to_tuple_by_4(self) -> Self::OutTuple {
468        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15), (self.16,))
469    }
470}
471impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) {
472    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7), (T8, T9, T10, T11), (T12, T13, T14, T15), (T16, T17));
473    fn split_to_tuple_by_4(self) -> Self::OutTuple {
474        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15), (self.16, self.17))
475    }
476}
477impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) {
478    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7), (T8, T9, T10, T11), (T12, T13, T14, T15), (T16, T17, T18));
479    fn split_to_tuple_by_4(self) -> Self::OutTuple {
480        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15), (self.16, self.17, self.18))
481    }
482}
483impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) {
484    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7), (T8, T9, T10, T11), (T12, T13, T14, T15), (T16, T17, T18, T19));
485    fn split_to_tuple_by_4(self) -> Self::OutTuple {
486        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19))
487    }
488}
489impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) {
490    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7), (T8, T9, T10, T11), (T12, T13, T14, T15), (T16, T17, T18, T19), (T20,));
491    fn split_to_tuple_by_4(self) -> Self::OutTuple {
492        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19), (self.20,))
493    }
494}
495impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) {
496    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7), (T8, T9, T10, T11), (T12, T13, T14, T15), (T16, T17, T18, T19), (T20, T21));
497    fn split_to_tuple_by_4(self) -> Self::OutTuple {
498        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19), (self.20, self.21))
499    }
500}
501impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) {
502    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7), (T8, T9, T10, T11), (T12, T13, T14, T15), (T16, T17, T18, T19), (T20, T21, T22));
503    fn split_to_tuple_by_4(self) -> Self::OutTuple {
504        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19), (self.20, self.21, self.22))
505    }
506}
507impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23) {
508    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7), (T8, T9, T10, T11), (T12, T13, T14, T15), (T16, T17, T18, T19), (T20, T21, T22, T23));
509    fn split_to_tuple_by_4(self) -> Self::OutTuple {
510        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23))
511    }
512}
513impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24) {
514    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7), (T8, T9, T10, T11), (T12, T13, T14, T15), (T16, T17, T18, T19), (T20, T21, T22, T23), (T24,));
515    fn split_to_tuple_by_4(self) -> Self::OutTuple {
516        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23), (self.24,))
517    }
518}
519impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
520    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7), (T8, T9, T10, T11), (T12, T13, T14, T15), (T16, T17, T18, T19), (T20, T21, T22, T23), (T24, T25));
521    fn split_to_tuple_by_4(self) -> Self::OutTuple {
522        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23), (self.24, self.25))
523    }
524}
525impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
526    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7), (T8, T9, T10, T11), (T12, T13, T14, T15), (T16, T17, T18, T19), (T20, T21, T22, T23), (T24, T25, T26));
527    fn split_to_tuple_by_4(self) -> Self::OutTuple {
528        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23), (self.24, self.25, self.26))
529    }
530}
531impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
532    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7), (T8, T9, T10, T11), (T12, T13, T14, T15), (T16, T17, T18, T19), (T20, T21, T22, T23), (T24, T25, T26, T27));
533    fn split_to_tuple_by_4(self) -> Self::OutTuple {
534        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27))
535    }
536}
537impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
538    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7), (T8, T9, T10, T11), (T12, T13, T14, T15), (T16, T17, T18, T19), (T20, T21, T22, T23), (T24, T25, T26, T27), (T28,));
539    fn split_to_tuple_by_4(self) -> Self::OutTuple {
540        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27), (self.28,))
541    }
542}
543impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
544    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7), (T8, T9, T10, T11), (T12, T13, T14, T15), (T16, T17, T18, T19), (T20, T21, T22, T23), (T24, T25, T26, T27), (T28, T29));
545    fn split_to_tuple_by_4(self) -> Self::OutTuple {
546        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27), (self.28, self.29))
547    }
548}
549impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
550    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7), (T8, T9, T10, T11), (T12, T13, T14, T15), (T16, T17, T18, T19), (T20, T21, T22, T23), (T24, T25, T26, T27), (T28, T29, T30));
551    fn split_to_tuple_by_4(self) -> Self::OutTuple {
552        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27), (self.28, self.29, self.30))
553    }
554}
555impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy4 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
556    type OutTuple = ((T0, T1, T2, T3), (T4, T5, T6, T7), (T8, T9, T10, T11), (T12, T13, T14, T15), (T16, T17, T18, T19), (T20, T21, T22, T23), (T24, T25, T26, T27), (T28, T29, T30, T31));
557    fn split_to_tuple_by_4(self) -> Self::OutTuple {
558        ((self.0, self.1, self.2, self.3), (self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27), (self.28, self.29, self.30, self.31))
559    }
560}
561#[doc = "Split to tuple by 5"]
562pub trait TupleSplitToTupleBy5 {
563    type OutTuple;
564    #[doc = "Split to tuple by 5"]
565    fn split_to_tuple_by_5(self) -> Self::OutTuple;
566}
567impl<T0, T1, T2, T3, T4> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4) {
568    type OutTuple = ((T0, T1, T2, T3, T4),);
569    fn split_to_tuple_by_5(self) -> Self::OutTuple {
570        ((self.0, self.1, self.2, self.3, self.4),)
571    }
572}
573impl<T0, T1, T2, T3, T4, T5> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5) {
574    type OutTuple = ((T0, T1, T2, T3, T4), (T5,));
575    fn split_to_tuple_by_5(self) -> Self::OutTuple {
576        ((self.0, self.1, self.2, self.3, self.4), (self.5,))
577    }
578}
579impl<T0, T1, T2, T3, T4, T5, T6> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6) {
580    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6));
581    fn split_to_tuple_by_5(self) -> Self::OutTuple {
582        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6))
583    }
584}
585impl<T0, T1, T2, T3, T4, T5, T6, T7> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7) {
586    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7));
587    fn split_to_tuple_by_5(self) -> Self::OutTuple {
588        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7))
589    }
590}
591impl<T0, T1, T2, T3, T4, T5, T6, T7, T8> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7, T8) {
592    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7, T8));
593    fn split_to_tuple_by_5(self) -> Self::OutTuple {
594        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7, self.8))
595    }
596}
597impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9) {
598    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7, T8, T9));
599    fn split_to_tuple_by_5(self) -> Self::OutTuple {
600        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7, self.8, self.9))
601    }
602}
603impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) {
604    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7, T8, T9), (T10,));
605    fn split_to_tuple_by_5(self) -> Self::OutTuple {
606        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7, self.8, self.9), (self.10,))
607    }
608}
609impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) {
610    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7, T8, T9), (T10, T11));
611    fn split_to_tuple_by_5(self) -> Self::OutTuple {
612        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7, self.8, self.9), (self.10, self.11))
613    }
614}
615impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) {
616    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7, T8, T9), (T10, T11, T12));
617    fn split_to_tuple_by_5(self) -> Self::OutTuple {
618        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12))
619    }
620}
621impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) {
622    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7, T8, T9), (T10, T11, T12, T13));
623    fn split_to_tuple_by_5(self) -> Self::OutTuple {
624        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13))
625    }
626}
627impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) {
628    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14));
629    fn split_to_tuple_by_5(self) -> Self::OutTuple {
630        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14))
631    }
632}
633impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) {
634    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14), (T15,));
635    fn split_to_tuple_by_5(self) -> Self::OutTuple {
636        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14), (self.15,))
637    }
638}
639impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) {
640    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14), (T15, T16));
641    fn split_to_tuple_by_5(self) -> Self::OutTuple {
642        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14), (self.15, self.16))
643    }
644}
645impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) {
646    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14), (T15, T16, T17));
647    fn split_to_tuple_by_5(self) -> Self::OutTuple {
648        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17))
649    }
650}
651impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) {
652    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14), (T15, T16, T17, T18));
653    fn split_to_tuple_by_5(self) -> Self::OutTuple {
654        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18))
655    }
656}
657impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) {
658    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19));
659    fn split_to_tuple_by_5(self) -> Self::OutTuple {
660        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19))
661    }
662}
663impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) {
664    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19), (T20,));
665    fn split_to_tuple_by_5(self) -> Self::OutTuple {
666        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19), (self.20,))
667    }
668}
669impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) {
670    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19), (T20, T21));
671    fn split_to_tuple_by_5(self) -> Self::OutTuple {
672        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19), (self.20, self.21))
673    }
674}
675impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) {
676    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19), (T20, T21, T22));
677    fn split_to_tuple_by_5(self) -> Self::OutTuple {
678        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22))
679    }
680}
681impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23) {
682    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19), (T20, T21, T22, T23));
683    fn split_to_tuple_by_5(self) -> Self::OutTuple {
684        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23))
685    }
686}
687impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24) {
688    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19), (T20, T21, T22, T23, T24));
689    fn split_to_tuple_by_5(self) -> Self::OutTuple {
690        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23, self.24))
691    }
692}
693impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
694    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19), (T20, T21, T22, T23, T24), (T25,));
695    fn split_to_tuple_by_5(self) -> Self::OutTuple {
696        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23, self.24), (self.25,))
697    }
698}
699impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
700    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19), (T20, T21, T22, T23, T24), (T25, T26));
701    fn split_to_tuple_by_5(self) -> Self::OutTuple {
702        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23, self.24), (self.25, self.26))
703    }
704}
705impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
706    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19), (T20, T21, T22, T23, T24), (T25, T26, T27));
707    fn split_to_tuple_by_5(self) -> Self::OutTuple {
708        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23, self.24), (self.25, self.26, self.27))
709    }
710}
711impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
712    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19), (T20, T21, T22, T23, T24), (T25, T26, T27, T28));
713    fn split_to_tuple_by_5(self) -> Self::OutTuple {
714        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23, self.24), (self.25, self.26, self.27, self.28))
715    }
716}
717impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
718    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19), (T20, T21, T22, T23, T24), (T25, T26, T27, T28, T29));
719    fn split_to_tuple_by_5(self) -> Self::OutTuple {
720        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23, self.24), (self.25, self.26, self.27, self.28, self.29))
721    }
722}
723impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
724    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19), (T20, T21, T22, T23, T24), (T25, T26, T27, T28, T29), (T30,));
725    fn split_to_tuple_by_5(self) -> Self::OutTuple {
726        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23, self.24), (self.25, self.26, self.27, self.28, self.29), (self.30,))
727    }
728}
729impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy5 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
730    type OutTuple = ((T0, T1, T2, T3, T4), (T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19), (T20, T21, T22, T23, T24), (T25, T26, T27, T28, T29), (T30, T31));
731    fn split_to_tuple_by_5(self) -> Self::OutTuple {
732        ((self.0, self.1, self.2, self.3, self.4), (self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23, self.24), (self.25, self.26, self.27, self.28, self.29), (self.30, self.31))
733    }
734}
735#[doc = "Split to tuple by 6"]
736pub trait TupleSplitToTupleBy6 {
737    type OutTuple;
738    #[doc = "Split to tuple by 6"]
739    fn split_to_tuple_by_6(self) -> Self::OutTuple;
740}
741impl<T0, T1, T2, T3, T4, T5> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5) {
742    type OutTuple = ((T0, T1, T2, T3, T4, T5),);
743    fn split_to_tuple_by_6(self) -> Self::OutTuple {
744        ((self.0, self.1, self.2, self.3, self.4, self.5),)
745    }
746}
747impl<T0, T1, T2, T3, T4, T5, T6> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6) {
748    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6,));
749    fn split_to_tuple_by_6(self) -> Self::OutTuple {
750        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6,))
751    }
752}
753impl<T0, T1, T2, T3, T4, T5, T6, T7> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7) {
754    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7));
755    fn split_to_tuple_by_6(self) -> Self::OutTuple {
756        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7))
757    }
758}
759impl<T0, T1, T2, T3, T4, T5, T6, T7, T8> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7, T8) {
760    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7, T8));
761    fn split_to_tuple_by_6(self) -> Self::OutTuple {
762        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7, self.8))
763    }
764}
765impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9) {
766    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7, T8, T9));
767    fn split_to_tuple_by_6(self) -> Self::OutTuple {
768        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7, self.8, self.9))
769    }
770}
771impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) {
772    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7, T8, T9, T10));
773    fn split_to_tuple_by_6(self) -> Self::OutTuple {
774        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7, self.8, self.9, self.10))
775    }
776}
777impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) {
778    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7, T8, T9, T10, T11));
779    fn split_to_tuple_by_6(self) -> Self::OutTuple {
780        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7, self.8, self.9, self.10, self.11))
781    }
782}
783impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) {
784    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7, T8, T9, T10, T11), (T12,));
785    fn split_to_tuple_by_6(self) -> Self::OutTuple {
786        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7, self.8, self.9, self.10, self.11), (self.12,))
787    }
788}
789impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) {
790    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7, T8, T9, T10, T11), (T12, T13));
791    fn split_to_tuple_by_6(self) -> Self::OutTuple {
792        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13))
793    }
794}
795impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) {
796    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7, T8, T9, T10, T11), (T12, T13, T14));
797    fn split_to_tuple_by_6(self) -> Self::OutTuple {
798        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14))
799    }
800}
801impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) {
802    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15));
803    fn split_to_tuple_by_6(self) -> Self::OutTuple {
804        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15))
805    }
806}
807impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) {
808    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16));
809    fn split_to_tuple_by_6(self) -> Self::OutTuple {
810        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16))
811    }
812}
813impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) {
814    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17));
815    fn split_to_tuple_by_6(self) -> Self::OutTuple {
816        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17))
817    }
818}
819impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) {
820    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17), (T18,));
821    fn split_to_tuple_by_6(self) -> Self::OutTuple {
822        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17), (self.18,))
823    }
824}
825impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) {
826    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17), (T18, T19));
827    fn split_to_tuple_by_6(self) -> Self::OutTuple {
828        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19))
829    }
830}
831impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) {
832    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17), (T18, T19, T20));
833    fn split_to_tuple_by_6(self) -> Self::OutTuple {
834        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20))
835    }
836}
837impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) {
838    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21));
839    fn split_to_tuple_by_6(self) -> Self::OutTuple {
840        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21))
841    }
842}
843impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) {
844    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22));
845    fn split_to_tuple_by_6(self) -> Self::OutTuple {
846        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22))
847    }
848}
849impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23) {
850    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23));
851    fn split_to_tuple_by_6(self) -> Self::OutTuple {
852        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23))
853    }
854}
855impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24) {
856    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23), (T24,));
857    fn split_to_tuple_by_6(self) -> Self::OutTuple {
858        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23), (self.24,))
859    }
860}
861impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
862    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23), (T24, T25));
863    fn split_to_tuple_by_6(self) -> Self::OutTuple {
864        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25))
865    }
866}
867impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
868    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23), (T24, T25, T26));
869    fn split_to_tuple_by_6(self) -> Self::OutTuple {
870        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25, self.26))
871    }
872}
873impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
874    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23), (T24, T25, T26, T27));
875    fn split_to_tuple_by_6(self) -> Self::OutTuple {
876        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27))
877    }
878}
879impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
880    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23), (T24, T25, T26, T27, T28));
881    fn split_to_tuple_by_6(self) -> Self::OutTuple {
882        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27, self.28))
883    }
884}
885impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
886    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23), (T24, T25, T26, T27, T28, T29));
887    fn split_to_tuple_by_6(self) -> Self::OutTuple {
888        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27, self.28, self.29))
889    }
890}
891impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
892    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23), (T24, T25, T26, T27, T28, T29), (T30,));
893    fn split_to_tuple_by_6(self) -> Self::OutTuple {
894        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27, self.28, self.29), (self.30,))
895    }
896}
897impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy6 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
898    type OutTuple = ((T0, T1, T2, T3, T4, T5), (T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23), (T24, T25, T26, T27, T28, T29), (T30, T31));
899    fn split_to_tuple_by_6(self) -> Self::OutTuple {
900        ((self.0, self.1, self.2, self.3, self.4, self.5), (self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27, self.28, self.29), (self.30, self.31))
901    }
902}
903#[doc = "Split to tuple by 7"]
904pub trait TupleSplitToTupleBy7 {
905    type OutTuple;
906    #[doc = "Split to tuple by 7"]
907    fn split_to_tuple_by_7(self) -> Self::OutTuple;
908}
909impl<T0, T1, T2, T3, T4, T5, T6> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6) {
910    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6),);
911    fn split_to_tuple_by_7(self) -> Self::OutTuple {
912        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6),)
913    }
914}
915impl<T0, T1, T2, T3, T4, T5, T6, T7> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7) {
916    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7,));
917    fn split_to_tuple_by_7(self) -> Self::OutTuple {
918        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7,))
919    }
920}
921impl<T0, T1, T2, T3, T4, T5, T6, T7, T8> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7, T8) {
922    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7, T8));
923    fn split_to_tuple_by_7(self) -> Self::OutTuple {
924        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7, self.8))
925    }
926}
927impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9) {
928    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7, T8, T9));
929    fn split_to_tuple_by_7(self) -> Self::OutTuple {
930        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7, self.8, self.9))
931    }
932}
933impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) {
934    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7, T8, T9, T10));
935    fn split_to_tuple_by_7(self) -> Self::OutTuple {
936        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7, self.8, self.9, self.10))
937    }
938}
939impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) {
940    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7, T8, T9, T10, T11));
941    fn split_to_tuple_by_7(self) -> Self::OutTuple {
942        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7, self.8, self.9, self.10, self.11))
943    }
944}
945impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) {
946    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7, T8, T9, T10, T11, T12));
947    fn split_to_tuple_by_7(self) -> Self::OutTuple {
948        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7, self.8, self.9, self.10, self.11, self.12))
949    }
950}
951impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) {
952    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7, T8, T9, T10, T11, T12, T13));
953    fn split_to_tuple_by_7(self) -> Self::OutTuple {
954        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7, self.8, self.9, self.10, self.11, self.12, self.13))
955    }
956}
957impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) {
958    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7, T8, T9, T10, T11, T12, T13), (T14,));
959    fn split_to_tuple_by_7(self) -> Self::OutTuple {
960        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14,))
961    }
962}
963impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) {
964    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7, T8, T9, T10, T11, T12, T13), (T14, T15));
965    fn split_to_tuple_by_7(self) -> Self::OutTuple {
966        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15))
967    }
968}
969impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) {
970    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16));
971    fn split_to_tuple_by_7(self) -> Self::OutTuple {
972        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16))
973    }
974}
975impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) {
976    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17));
977    fn split_to_tuple_by_7(self) -> Self::OutTuple {
978        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17))
979    }
980}
981impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) {
982    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18));
983    fn split_to_tuple_by_7(self) -> Self::OutTuple {
984        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18))
985    }
986}
987impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) {
988    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19));
989    fn split_to_tuple_by_7(self) -> Self::OutTuple {
990        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19))
991    }
992}
993impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) {
994    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19, T20));
995    fn split_to_tuple_by_7(self) -> Self::OutTuple {
996        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19, self.20))
997    }
998}
999impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) {
1000    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19, T20), (T21,));
1001    fn split_to_tuple_by_7(self) -> Self::OutTuple {
1002        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19, self.20), (self.21,))
1003    }
1004}
1005impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) {
1006    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19, T20), (T21, T22));
1007    fn split_to_tuple_by_7(self) -> Self::OutTuple {
1008        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19, self.20), (self.21, self.22))
1009    }
1010}
1011impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23) {
1012    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19, T20), (T21, T22, T23));
1013    fn split_to_tuple_by_7(self) -> Self::OutTuple {
1014        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19, self.20), (self.21, self.22, self.23))
1015    }
1016}
1017impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24) {
1018    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19, T20), (T21, T22, T23, T24));
1019    fn split_to_tuple_by_7(self) -> Self::OutTuple {
1020        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19, self.20), (self.21, self.22, self.23, self.24))
1021    }
1022}
1023impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
1024    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19, T20), (T21, T22, T23, T24, T25));
1025    fn split_to_tuple_by_7(self) -> Self::OutTuple {
1026        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19, self.20), (self.21, self.22, self.23, self.24, self.25))
1027    }
1028}
1029impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
1030    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19, T20), (T21, T22, T23, T24, T25, T26));
1031    fn split_to_tuple_by_7(self) -> Self::OutTuple {
1032        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19, self.20), (self.21, self.22, self.23, self.24, self.25, self.26))
1033    }
1034}
1035impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
1036    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19, T20), (T21, T22, T23, T24, T25, T26, T27));
1037    fn split_to_tuple_by_7(self) -> Self::OutTuple {
1038        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19, self.20), (self.21, self.22, self.23, self.24, self.25, self.26, self.27))
1039    }
1040}
1041impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
1042    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19, T20), (T21, T22, T23, T24, T25, T26, T27), (T28,));
1043    fn split_to_tuple_by_7(self) -> Self::OutTuple {
1044        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19, self.20), (self.21, self.22, self.23, self.24, self.25, self.26, self.27), (self.28,))
1045    }
1046}
1047impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
1048    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19, T20), (T21, T22, T23, T24, T25, T26, T27), (T28, T29));
1049    fn split_to_tuple_by_7(self) -> Self::OutTuple {
1050        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19, self.20), (self.21, self.22, self.23, self.24, self.25, self.26, self.27), (self.28, self.29))
1051    }
1052}
1053impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
1054    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19, T20), (T21, T22, T23, T24, T25, T26, T27), (T28, T29, T30));
1055    fn split_to_tuple_by_7(self) -> Self::OutTuple {
1056        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19, self.20), (self.21, self.22, self.23, self.24, self.25, self.26, self.27), (self.28, self.29, self.30))
1057    }
1058}
1059impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy7 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
1060    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6), (T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19, T20), (T21, T22, T23, T24, T25, T26, T27), (T28, T29, T30, T31));
1061    fn split_to_tuple_by_7(self) -> Self::OutTuple {
1062        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6), (self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19, self.20), (self.21, self.22, self.23, self.24, self.25, self.26, self.27), (self.28, self.29, self.30, self.31))
1063    }
1064}
1065#[doc = "Split to tuple by 8"]
1066pub trait TupleSplitToTupleBy8 {
1067    type OutTuple;
1068    #[doc = "Split to tuple by 8"]
1069    fn split_to_tuple_by_8(self) -> Self::OutTuple;
1070}
1071impl<T0, T1, T2, T3, T4, T5, T6, T7> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7) {
1072    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7),);
1073    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1074        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7),)
1075    }
1076}
1077impl<T0, T1, T2, T3, T4, T5, T6, T7, T8> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7, T8) {
1078    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7), (T8,));
1079    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1080        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7), (self.8,))
1081    }
1082}
1083impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9) {
1084    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7), (T8, T9));
1085    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1086        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7), (self.8, self.9))
1087    }
1088}
1089impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) {
1090    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7), (T8, T9, T10));
1091    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1092        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7), (self.8, self.9, self.10))
1093    }
1094}
1095impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) {
1096    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7), (T8, T9, T10, T11));
1097    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1098        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11))
1099    }
1100}
1101impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) {
1102    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7), (T8, T9, T10, T11, T12));
1103    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1104        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11, self.12))
1105    }
1106}
1107impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) {
1108    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7), (T8, T9, T10, T11, T12, T13));
1109    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1110        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11, self.12, self.13))
1111    }
1112}
1113impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) {
1114    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7), (T8, T9, T10, T11, T12, T13, T14));
1115    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1116        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11, self.12, self.13, self.14))
1117    }
1118}
1119impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) {
1120    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7), (T8, T9, T10, T11, T12, T13, T14, T15));
1121    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1122        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15))
1123    }
1124}
1125impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) {
1126    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7), (T8, T9, T10, T11, T12, T13, T14, T15), (T16,));
1127    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1128        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16,))
1129    }
1130}
1131impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) {
1132    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7), (T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17));
1133    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1134        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17))
1135    }
1136}
1137impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) {
1138    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7), (T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18));
1139    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1140        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18))
1141    }
1142}
1143impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) {
1144    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7), (T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19));
1145    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1146        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19))
1147    }
1148}
1149impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) {
1150    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7), (T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19, T20));
1151    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1152        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19, self.20))
1153    }
1154}
1155impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) {
1156    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7), (T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19, T20, T21));
1157    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1158        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19, self.20, self.21))
1159    }
1160}
1161impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) {
1162    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7), (T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19, T20, T21, T22));
1163    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1164        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19, self.20, self.21, self.22))
1165    }
1166}
1167impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23) {
1168    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7), (T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19, T20, T21, T22, T23));
1169    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1170        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23))
1171    }
1172}
1173impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24) {
1174    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7), (T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19, T20, T21, T22, T23), (T24,));
1175    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1176        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23), (self.24,))
1177    }
1178}
1179impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
1180    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7), (T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19, T20, T21, T22, T23), (T24, T25));
1181    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1182        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25))
1183    }
1184}
1185impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
1186    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7), (T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19, T20, T21, T22, T23), (T24, T25, T26));
1187    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1188        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25, self.26))
1189    }
1190}
1191impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
1192    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7), (T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19, T20, T21, T22, T23), (T24, T25, T26, T27));
1193    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1194        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27))
1195    }
1196}
1197impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
1198    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7), (T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19, T20, T21, T22, T23), (T24, T25, T26, T27, T28));
1199    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1200        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27, self.28))
1201    }
1202}
1203impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
1204    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7), (T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19, T20, T21, T22, T23), (T24, T25, T26, T27, T28, T29));
1205    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1206        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27, self.28, self.29))
1207    }
1208}
1209impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
1210    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7), (T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19, T20, T21, T22, T23), (T24, T25, T26, T27, T28, T29, T30));
1211    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1212        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27, self.28, self.29, self.30))
1213    }
1214}
1215impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy8 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
1216    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7), (T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19, T20, T21, T22, T23), (T24, T25, T26, T27, T28, T29, T30, T31));
1217    fn split_to_tuple_by_8(self) -> Self::OutTuple {
1218        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7), (self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27, self.28, self.29, self.30, self.31))
1219    }
1220}
1221#[doc = "Split to tuple by 9"]
1222pub trait TupleSplitToTupleBy9 {
1223    type OutTuple;
1224    #[doc = "Split to tuple by 9"]
1225    fn split_to_tuple_by_9(self) -> Self::OutTuple;
1226}
1227impl<T0, T1, T2, T3, T4, T5, T6, T7, T8> TupleSplitToTupleBy9 for (T0, T1, T2, T3, T4, T5, T6, T7, T8) {
1228    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8),);
1229    fn split_to_tuple_by_9(self) -> Self::OutTuple {
1230        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8),)
1231    }
1232}
1233impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> TupleSplitToTupleBy9 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9) {
1234    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8), (T9,));
1235    fn split_to_tuple_by_9(self) -> Self::OutTuple {
1236        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8), (self.9,))
1237    }
1238}
1239impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> TupleSplitToTupleBy9 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) {
1240    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8), (T9, T10));
1241    fn split_to_tuple_by_9(self) -> Self::OutTuple {
1242        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8), (self.9, self.10))
1243    }
1244}
1245impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> TupleSplitToTupleBy9 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) {
1246    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8), (T9, T10, T11));
1247    fn split_to_tuple_by_9(self) -> Self::OutTuple {
1248        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8), (self.9, self.10, self.11))
1249    }
1250}
1251impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> TupleSplitToTupleBy9 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) {
1252    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8), (T9, T10, T11, T12));
1253    fn split_to_tuple_by_9(self) -> Self::OutTuple {
1254        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8), (self.9, self.10, self.11, self.12))
1255    }
1256}
1257impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> TupleSplitToTupleBy9 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) {
1258    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8), (T9, T10, T11, T12, T13));
1259    fn split_to_tuple_by_9(self) -> Self::OutTuple {
1260        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8), (self.9, self.10, self.11, self.12, self.13))
1261    }
1262}
1263impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> TupleSplitToTupleBy9 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) {
1264    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8), (T9, T10, T11, T12, T13, T14));
1265    fn split_to_tuple_by_9(self) -> Self::OutTuple {
1266        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8), (self.9, self.10, self.11, self.12, self.13, self.14))
1267    }
1268}
1269impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> TupleSplitToTupleBy9 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) {
1270    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8), (T9, T10, T11, T12, T13, T14, T15));
1271    fn split_to_tuple_by_9(self) -> Self::OutTuple {
1272        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8), (self.9, self.10, self.11, self.12, self.13, self.14, self.15))
1273    }
1274}
1275impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> TupleSplitToTupleBy9 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) {
1276    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8), (T9, T10, T11, T12, T13, T14, T15, T16));
1277    fn split_to_tuple_by_9(self) -> Self::OutTuple {
1278        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8), (self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16))
1279    }
1280}
1281impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> TupleSplitToTupleBy9 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) {
1282    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8), (T9, T10, T11, T12, T13, T14, T15, T16, T17));
1283    fn split_to_tuple_by_9(self) -> Self::OutTuple {
1284        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8), (self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17))
1285    }
1286}
1287impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> TupleSplitToTupleBy9 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) {
1288    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8), (T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18,));
1289    fn split_to_tuple_by_9(self) -> Self::OutTuple {
1290        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8), (self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18,))
1291    }
1292}
1293impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> TupleSplitToTupleBy9 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) {
1294    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8), (T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19));
1295    fn split_to_tuple_by_9(self) -> Self::OutTuple {
1296        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8), (self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19))
1297    }
1298}
1299impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> TupleSplitToTupleBy9 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) {
1300    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8), (T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19, T20));
1301    fn split_to_tuple_by_9(self) -> Self::OutTuple {
1302        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8), (self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20))
1303    }
1304}
1305impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> TupleSplitToTupleBy9 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) {
1306    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8), (T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21));
1307    fn split_to_tuple_by_9(self) -> Self::OutTuple {
1308        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8), (self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21))
1309    }
1310}
1311impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> TupleSplitToTupleBy9 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) {
1312    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8), (T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22));
1313    fn split_to_tuple_by_9(self) -> Self::OutTuple {
1314        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8), (self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22))
1315    }
1316}
1317impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> TupleSplitToTupleBy9 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23) {
1318    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8), (T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23));
1319    fn split_to_tuple_by_9(self) -> Self::OutTuple {
1320        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8), (self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23))
1321    }
1322}
1323impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> TupleSplitToTupleBy9 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24) {
1324    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8), (T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23, T24));
1325    fn split_to_tuple_by_9(self) -> Self::OutTuple {
1326        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8), (self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23, self.24))
1327    }
1328}
1329impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy9 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
1330    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8), (T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23, T24, T25));
1331    fn split_to_tuple_by_9(self) -> Self::OutTuple {
1332        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8), (self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25))
1333    }
1334}
1335impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy9 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
1336    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8), (T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23, T24, T25, T26));
1337    fn split_to_tuple_by_9(self) -> Self::OutTuple {
1338        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8), (self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26))
1339    }
1340}
1341impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy9 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
1342    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8), (T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23, T24, T25, T26), (T27,));
1343    fn split_to_tuple_by_9(self) -> Self::OutTuple {
1344        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8), (self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26), (self.27,))
1345    }
1346}
1347impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy9 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
1348    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8), (T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23, T24, T25, T26), (T27, T28));
1349    fn split_to_tuple_by_9(self) -> Self::OutTuple {
1350        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8), (self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26), (self.27, self.28))
1351    }
1352}
1353impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy9 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
1354    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8), (T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23, T24, T25, T26), (T27, T28, T29));
1355    fn split_to_tuple_by_9(self) -> Self::OutTuple {
1356        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8), (self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26), (self.27, self.28, self.29))
1357    }
1358}
1359impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy9 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
1360    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8), (T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23, T24, T25, T26), (T27, T28, T29, T30));
1361    fn split_to_tuple_by_9(self) -> Self::OutTuple {
1362        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8), (self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26), (self.27, self.28, self.29, self.30))
1363    }
1364}
1365impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy9 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
1366    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8), (T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23, T24, T25, T26), (T27, T28, T29, T30, T31));
1367    fn split_to_tuple_by_9(self) -> Self::OutTuple {
1368        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8), (self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26), (self.27, self.28, self.29, self.30, self.31))
1369    }
1370}
1371#[doc = "Split to tuple by 10"]
1372pub trait TupleSplitToTupleBy10 {
1373    type OutTuple;
1374    #[doc = "Split to tuple by 10"]
1375    fn split_to_tuple_by_10(self) -> Self::OutTuple;
1376}
1377impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> TupleSplitToTupleBy10 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9) {
1378    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9),);
1379    fn split_to_tuple_by_10(self) -> Self::OutTuple {
1380        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9),)
1381    }
1382}
1383impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> TupleSplitToTupleBy10 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) {
1384    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9), (T10,));
1385    fn split_to_tuple_by_10(self) -> Self::OutTuple {
1386        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9), (self.10,))
1387    }
1388}
1389impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> TupleSplitToTupleBy10 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) {
1390    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9), (T10, T11));
1391    fn split_to_tuple_by_10(self) -> Self::OutTuple {
1392        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9), (self.10, self.11))
1393    }
1394}
1395impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> TupleSplitToTupleBy10 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) {
1396    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9), (T10, T11, T12));
1397    fn split_to_tuple_by_10(self) -> Self::OutTuple {
1398        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12))
1399    }
1400}
1401impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> TupleSplitToTupleBy10 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) {
1402    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9), (T10, T11, T12, T13));
1403    fn split_to_tuple_by_10(self) -> Self::OutTuple {
1404        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13))
1405    }
1406}
1407impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> TupleSplitToTupleBy10 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) {
1408    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14));
1409    fn split_to_tuple_by_10(self) -> Self::OutTuple {
1410        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14))
1411    }
1412}
1413impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> TupleSplitToTupleBy10 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) {
1414    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14, T15));
1415    fn split_to_tuple_by_10(self) -> Self::OutTuple {
1416        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14, self.15))
1417    }
1418}
1419impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> TupleSplitToTupleBy10 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) {
1420    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14, T15, T16));
1421    fn split_to_tuple_by_10(self) -> Self::OutTuple {
1422        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14, self.15, self.16))
1423    }
1424}
1425impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> TupleSplitToTupleBy10 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) {
1426    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14, T15, T16, T17));
1427    fn split_to_tuple_by_10(self) -> Self::OutTuple {
1428        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17))
1429    }
1430}
1431impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> TupleSplitToTupleBy10 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) {
1432    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14, T15, T16, T17, T18));
1433    fn split_to_tuple_by_10(self) -> Self::OutTuple {
1434        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18))
1435    }
1436}
1437impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> TupleSplitToTupleBy10 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) {
1438    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14, T15, T16, T17, T18, T19));
1439    fn split_to_tuple_by_10(self) -> Self::OutTuple {
1440        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19))
1441    }
1442}
1443impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> TupleSplitToTupleBy10 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) {
1444    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), (T20,));
1445    fn split_to_tuple_by_10(self) -> Self::OutTuple {
1446        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19), (self.20,))
1447    }
1448}
1449impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> TupleSplitToTupleBy10 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) {
1450    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), (T20, T21));
1451    fn split_to_tuple_by_10(self) -> Self::OutTuple {
1452        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19), (self.20, self.21))
1453    }
1454}
1455impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> TupleSplitToTupleBy10 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) {
1456    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), (T20, T21, T22));
1457    fn split_to_tuple_by_10(self) -> Self::OutTuple {
1458        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22))
1459    }
1460}
1461impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> TupleSplitToTupleBy10 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23) {
1462    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), (T20, T21, T22, T23));
1463    fn split_to_tuple_by_10(self) -> Self::OutTuple {
1464        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23))
1465    }
1466}
1467impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> TupleSplitToTupleBy10 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24) {
1468    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), (T20, T21, T22, T23, T24));
1469    fn split_to_tuple_by_10(self) -> Self::OutTuple {
1470        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23, self.24))
1471    }
1472}
1473impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy10 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
1474    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), (T20, T21, T22, T23, T24, T25));
1475    fn split_to_tuple_by_10(self) -> Self::OutTuple {
1476        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23, self.24, self.25))
1477    }
1478}
1479impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy10 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
1480    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), (T20, T21, T22, T23, T24, T25, T26));
1481    fn split_to_tuple_by_10(self) -> Self::OutTuple {
1482        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23, self.24, self.25, self.26))
1483    }
1484}
1485impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy10 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
1486    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), (T20, T21, T22, T23, T24, T25, T26, T27));
1487    fn split_to_tuple_by_10(self) -> Self::OutTuple {
1488        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27))
1489    }
1490}
1491impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy10 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
1492    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), (T20, T21, T22, T23, T24, T25, T26, T27, T28));
1493    fn split_to_tuple_by_10(self) -> Self::OutTuple {
1494        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28))
1495    }
1496}
1497impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy10 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
1498    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), (T20, T21, T22, T23, T24, T25, T26, T27, T28, T29));
1499    fn split_to_tuple_by_10(self) -> Self::OutTuple {
1500        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29))
1501    }
1502}
1503impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy10 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
1504    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), (T20, T21, T22, T23, T24, T25, T26, T27, T28, T29), (T30,));
1505    fn split_to_tuple_by_10(self) -> Self::OutTuple {
1506        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29), (self.30,))
1507    }
1508}
1509impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy10 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
1510    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9), (T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), (T20, T21, T22, T23, T24, T25, T26, T27, T28, T29), (T30, T31));
1511    fn split_to_tuple_by_10(self) -> Self::OutTuple {
1512        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9), (self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29), (self.30, self.31))
1513    }
1514}
1515#[doc = "Split to tuple by 11"]
1516pub trait TupleSplitToTupleBy11 {
1517    type OutTuple;
1518    #[doc = "Split to tuple by 11"]
1519    fn split_to_tuple_by_11(self) -> Self::OutTuple;
1520}
1521impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> TupleSplitToTupleBy11 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) {
1522    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10),);
1523    fn split_to_tuple_by_11(self) -> Self::OutTuple {
1524        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10),)
1525    }
1526}
1527impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> TupleSplitToTupleBy11 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) {
1528    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), (T11,));
1529    fn split_to_tuple_by_11(self) -> Self::OutTuple {
1530        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10), (self.11,))
1531    }
1532}
1533impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> TupleSplitToTupleBy11 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) {
1534    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), (T11, T12));
1535    fn split_to_tuple_by_11(self) -> Self::OutTuple {
1536        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10), (self.11, self.12))
1537    }
1538}
1539impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> TupleSplitToTupleBy11 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) {
1540    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), (T11, T12, T13));
1541    fn split_to_tuple_by_11(self) -> Self::OutTuple {
1542        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10), (self.11, self.12, self.13))
1543    }
1544}
1545impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> TupleSplitToTupleBy11 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) {
1546    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), (T11, T12, T13, T14));
1547    fn split_to_tuple_by_11(self) -> Self::OutTuple {
1548        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10), (self.11, self.12, self.13, self.14))
1549    }
1550}
1551impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> TupleSplitToTupleBy11 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) {
1552    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), (T11, T12, T13, T14, T15));
1553    fn split_to_tuple_by_11(self) -> Self::OutTuple {
1554        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10), (self.11, self.12, self.13, self.14, self.15))
1555    }
1556}
1557impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> TupleSplitToTupleBy11 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) {
1558    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), (T11, T12, T13, T14, T15, T16));
1559    fn split_to_tuple_by_11(self) -> Self::OutTuple {
1560        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10), (self.11, self.12, self.13, self.14, self.15, self.16))
1561    }
1562}
1563impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> TupleSplitToTupleBy11 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) {
1564    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), (T11, T12, T13, T14, T15, T16, T17));
1565    fn split_to_tuple_by_11(self) -> Self::OutTuple {
1566        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10), (self.11, self.12, self.13, self.14, self.15, self.16, self.17))
1567    }
1568}
1569impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> TupleSplitToTupleBy11 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) {
1570    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), (T11, T12, T13, T14, T15, T16, T17, T18));
1571    fn split_to_tuple_by_11(self) -> Self::OutTuple {
1572        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10), (self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18))
1573    }
1574}
1575impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> TupleSplitToTupleBy11 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) {
1576    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), (T11, T12, T13, T14, T15, T16, T17, T18, T19));
1577    fn split_to_tuple_by_11(self) -> Self::OutTuple {
1578        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10), (self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19))
1579    }
1580}
1581impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> TupleSplitToTupleBy11 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) {
1582    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), (T11, T12, T13, T14, T15, T16, T17, T18, T19, T20));
1583    fn split_to_tuple_by_11(self) -> Self::OutTuple {
1584        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10), (self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20))
1585    }
1586}
1587impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> TupleSplitToTupleBy11 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) {
1588    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), (T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21));
1589    fn split_to_tuple_by_11(self) -> Self::OutTuple {
1590        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10), (self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21))
1591    }
1592}
1593impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> TupleSplitToTupleBy11 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) {
1594    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), (T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21), (T22,));
1595    fn split_to_tuple_by_11(self) -> Self::OutTuple {
1596        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10), (self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21), (self.22,))
1597    }
1598}
1599impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> TupleSplitToTupleBy11 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23) {
1600    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), (T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21), (T22, T23));
1601    fn split_to_tuple_by_11(self) -> Self::OutTuple {
1602        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10), (self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21), (self.22, self.23))
1603    }
1604}
1605impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> TupleSplitToTupleBy11 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24) {
1606    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), (T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21), (T22, T23, T24));
1607    fn split_to_tuple_by_11(self) -> Self::OutTuple {
1608        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10), (self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21), (self.22, self.23, self.24))
1609    }
1610}
1611impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy11 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
1612    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), (T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21), (T22, T23, T24, T25));
1613    fn split_to_tuple_by_11(self) -> Self::OutTuple {
1614        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10), (self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21), (self.22, self.23, self.24, self.25))
1615    }
1616}
1617impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy11 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
1618    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), (T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21), (T22, T23, T24, T25, T26));
1619    fn split_to_tuple_by_11(self) -> Self::OutTuple {
1620        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10), (self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21), (self.22, self.23, self.24, self.25, self.26))
1621    }
1622}
1623impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy11 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
1624    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), (T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21), (T22, T23, T24, T25, T26, T27));
1625    fn split_to_tuple_by_11(self) -> Self::OutTuple {
1626        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10), (self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21), (self.22, self.23, self.24, self.25, self.26, self.27))
1627    }
1628}
1629impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy11 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
1630    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), (T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21), (T22, T23, T24, T25, T26, T27, T28));
1631    fn split_to_tuple_by_11(self) -> Self::OutTuple {
1632        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10), (self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21), (self.22, self.23, self.24, self.25, self.26, self.27, self.28))
1633    }
1634}
1635impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy11 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
1636    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), (T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21), (T22, T23, T24, T25, T26, T27, T28, T29));
1637    fn split_to_tuple_by_11(self) -> Self::OutTuple {
1638        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10), (self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21), (self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29))
1639    }
1640}
1641impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy11 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
1642    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), (T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21), (T22, T23, T24, T25, T26, T27, T28, T29, T30));
1643    fn split_to_tuple_by_11(self) -> Self::OutTuple {
1644        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10), (self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21), (self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29, self.30))
1645    }
1646}
1647impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy11 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
1648    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), (T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21), (T22, T23, T24, T25, T26, T27, T28, T29, T30, T31));
1649    fn split_to_tuple_by_11(self) -> Self::OutTuple {
1650        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10), (self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21), (self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29, self.30, self.31))
1651    }
1652}
1653#[doc = "Split to tuple by 12"]
1654pub trait TupleSplitToTupleBy12 {
1655    type OutTuple;
1656    #[doc = "Split to tuple by 12"]
1657    fn split_to_tuple_by_12(self) -> Self::OutTuple;
1658}
1659impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> TupleSplitToTupleBy12 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) {
1660    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11),);
1661    fn split_to_tuple_by_12(self) -> Self::OutTuple {
1662        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11),)
1663    }
1664}
1665impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> TupleSplitToTupleBy12 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) {
1666    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), (T12,));
1667    fn split_to_tuple_by_12(self) -> Self::OutTuple {
1668        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11), (self.12,))
1669    }
1670}
1671impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> TupleSplitToTupleBy12 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) {
1672    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), (T12, T13));
1673    fn split_to_tuple_by_12(self) -> Self::OutTuple {
1674        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13))
1675    }
1676}
1677impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> TupleSplitToTupleBy12 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) {
1678    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), (T12, T13, T14));
1679    fn split_to_tuple_by_12(self) -> Self::OutTuple {
1680        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14))
1681    }
1682}
1683impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> TupleSplitToTupleBy12 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) {
1684    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15));
1685    fn split_to_tuple_by_12(self) -> Self::OutTuple {
1686        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15))
1687    }
1688}
1689impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> TupleSplitToTupleBy12 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) {
1690    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16));
1691    fn split_to_tuple_by_12(self) -> Self::OutTuple {
1692        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16))
1693    }
1694}
1695impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> TupleSplitToTupleBy12 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) {
1696    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17));
1697    fn split_to_tuple_by_12(self) -> Self::OutTuple {
1698        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17))
1699    }
1700}
1701impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> TupleSplitToTupleBy12 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) {
1702    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17, T18));
1703    fn split_to_tuple_by_12(self) -> Self::OutTuple {
1704        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17, self.18))
1705    }
1706}
1707impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> TupleSplitToTupleBy12 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) {
1708    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17, T18, T19));
1709    fn split_to_tuple_by_12(self) -> Self::OutTuple {
1710        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19))
1711    }
1712}
1713impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> TupleSplitToTupleBy12 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) {
1714    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17, T18, T19, T20));
1715    fn split_to_tuple_by_12(self) -> Self::OutTuple {
1716        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20))
1717    }
1718}
1719impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> TupleSplitToTupleBy12 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) {
1720    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17, T18, T19, T20, T21));
1721    fn split_to_tuple_by_12(self) -> Self::OutTuple {
1722        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21))
1723    }
1724}
1725impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> TupleSplitToTupleBy12 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) {
1726    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22));
1727    fn split_to_tuple_by_12(self) -> Self::OutTuple {
1728        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22))
1729    }
1730}
1731impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> TupleSplitToTupleBy12 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23) {
1732    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23));
1733    fn split_to_tuple_by_12(self) -> Self::OutTuple {
1734        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23))
1735    }
1736}
1737impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> TupleSplitToTupleBy12 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24) {
1738    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23), (T24,));
1739    fn split_to_tuple_by_12(self) -> Self::OutTuple {
1740        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23), (self.24,))
1741    }
1742}
1743impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy12 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
1744    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23), (T24, T25));
1745    fn split_to_tuple_by_12(self) -> Self::OutTuple {
1746        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25))
1747    }
1748}
1749impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy12 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
1750    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23), (T24, T25, T26));
1751    fn split_to_tuple_by_12(self) -> Self::OutTuple {
1752        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25, self.26))
1753    }
1754}
1755impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy12 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
1756    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23), (T24, T25, T26, T27));
1757    fn split_to_tuple_by_12(self) -> Self::OutTuple {
1758        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27))
1759    }
1760}
1761impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy12 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
1762    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23), (T24, T25, T26, T27, T28));
1763    fn split_to_tuple_by_12(self) -> Self::OutTuple {
1764        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27, self.28))
1765    }
1766}
1767impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy12 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
1768    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23), (T24, T25, T26, T27, T28, T29));
1769    fn split_to_tuple_by_12(self) -> Self::OutTuple {
1770        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27, self.28, self.29))
1771    }
1772}
1773impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy12 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
1774    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23), (T24, T25, T26, T27, T28, T29, T30));
1775    fn split_to_tuple_by_12(self) -> Self::OutTuple {
1776        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27, self.28, self.29, self.30))
1777    }
1778}
1779impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy12 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
1780    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), (T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23), (T24, T25, T26, T27, T28, T29, T30, T31));
1781    fn split_to_tuple_by_12(self) -> Self::OutTuple {
1782        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11), (self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27, self.28, self.29, self.30, self.31))
1783    }
1784}
1785#[doc = "Split to tuple by 13"]
1786pub trait TupleSplitToTupleBy13 {
1787    type OutTuple;
1788    #[doc = "Split to tuple by 13"]
1789    fn split_to_tuple_by_13(self) -> Self::OutTuple;
1790}
1791impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> TupleSplitToTupleBy13 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) {
1792    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12),);
1793    fn split_to_tuple_by_13(self) -> Self::OutTuple {
1794        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12),)
1795    }
1796}
1797impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> TupleSplitToTupleBy13 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) {
1798    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12), (T13,));
1799    fn split_to_tuple_by_13(self) -> Self::OutTuple {
1800        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12), (self.13,))
1801    }
1802}
1803impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> TupleSplitToTupleBy13 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) {
1804    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12), (T13, T14));
1805    fn split_to_tuple_by_13(self) -> Self::OutTuple {
1806        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12), (self.13, self.14))
1807    }
1808}
1809impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> TupleSplitToTupleBy13 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) {
1810    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12), (T13, T14, T15));
1811    fn split_to_tuple_by_13(self) -> Self::OutTuple {
1812        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12), (self.13, self.14, self.15))
1813    }
1814}
1815impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> TupleSplitToTupleBy13 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) {
1816    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12), (T13, T14, T15, T16));
1817    fn split_to_tuple_by_13(self) -> Self::OutTuple {
1818        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12), (self.13, self.14, self.15, self.16))
1819    }
1820}
1821impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> TupleSplitToTupleBy13 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) {
1822    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12), (T13, T14, T15, T16, T17));
1823    fn split_to_tuple_by_13(self) -> Self::OutTuple {
1824        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12), (self.13, self.14, self.15, self.16, self.17))
1825    }
1826}
1827impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> TupleSplitToTupleBy13 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) {
1828    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12), (T13, T14, T15, T16, T17, T18));
1829    fn split_to_tuple_by_13(self) -> Self::OutTuple {
1830        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12), (self.13, self.14, self.15, self.16, self.17, self.18))
1831    }
1832}
1833impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> TupleSplitToTupleBy13 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) {
1834    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12), (T13, T14, T15, T16, T17, T18, T19));
1835    fn split_to_tuple_by_13(self) -> Self::OutTuple {
1836        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12), (self.13, self.14, self.15, self.16, self.17, self.18, self.19))
1837    }
1838}
1839impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> TupleSplitToTupleBy13 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) {
1840    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12), (T13, T14, T15, T16, T17, T18, T19, T20));
1841    fn split_to_tuple_by_13(self) -> Self::OutTuple {
1842        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12), (self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20))
1843    }
1844}
1845impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> TupleSplitToTupleBy13 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) {
1846    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12), (T13, T14, T15, T16, T17, T18, T19, T20, T21));
1847    fn split_to_tuple_by_13(self) -> Self::OutTuple {
1848        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12), (self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21))
1849    }
1850}
1851impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> TupleSplitToTupleBy13 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) {
1852    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12), (T13, T14, T15, T16, T17, T18, T19, T20, T21, T22));
1853    fn split_to_tuple_by_13(self) -> Self::OutTuple {
1854        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12), (self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22))
1855    }
1856}
1857impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> TupleSplitToTupleBy13 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23) {
1858    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12), (T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23));
1859    fn split_to_tuple_by_13(self) -> Self::OutTuple {
1860        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12), (self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23))
1861    }
1862}
1863impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> TupleSplitToTupleBy13 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24) {
1864    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12), (T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24));
1865    fn split_to_tuple_by_13(self) -> Self::OutTuple {
1866        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12), (self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24))
1867    }
1868}
1869impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy13 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
1870    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12), (T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25));
1871    fn split_to_tuple_by_13(self) -> Self::OutTuple {
1872        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12), (self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25))
1873    }
1874}
1875impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy13 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
1876    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12), (T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25), (T26,));
1877    fn split_to_tuple_by_13(self) -> Self::OutTuple {
1878        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12), (self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25), (self.26,))
1879    }
1880}
1881impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy13 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
1882    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12), (T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25), (T26, T27));
1883    fn split_to_tuple_by_13(self) -> Self::OutTuple {
1884        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12), (self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25), (self.26, self.27))
1885    }
1886}
1887impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy13 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
1888    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12), (T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25), (T26, T27, T28));
1889    fn split_to_tuple_by_13(self) -> Self::OutTuple {
1890        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12), (self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25), (self.26, self.27, self.28))
1891    }
1892}
1893impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy13 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
1894    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12), (T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25), (T26, T27, T28, T29));
1895    fn split_to_tuple_by_13(self) -> Self::OutTuple {
1896        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12), (self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25), (self.26, self.27, self.28, self.29))
1897    }
1898}
1899impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy13 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
1900    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12), (T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25), (T26, T27, T28, T29, T30));
1901    fn split_to_tuple_by_13(self) -> Self::OutTuple {
1902        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12), (self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25), (self.26, self.27, self.28, self.29, self.30))
1903    }
1904}
1905impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy13 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
1906    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12), (T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25), (T26, T27, T28, T29, T30, T31));
1907    fn split_to_tuple_by_13(self) -> Self::OutTuple {
1908        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12), (self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25), (self.26, self.27, self.28, self.29, self.30, self.31))
1909    }
1910}
1911#[doc = "Split to tuple by 14"]
1912pub trait TupleSplitToTupleBy14 {
1913    type OutTuple;
1914    #[doc = "Split to tuple by 14"]
1915    fn split_to_tuple_by_14(self) -> Self::OutTuple;
1916}
1917impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> TupleSplitToTupleBy14 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) {
1918    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13),);
1919    fn split_to_tuple_by_14(self) -> Self::OutTuple {
1920        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13),)
1921    }
1922}
1923impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> TupleSplitToTupleBy14 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) {
1924    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13), (T14,));
1925    fn split_to_tuple_by_14(self) -> Self::OutTuple {
1926        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14,))
1927    }
1928}
1929impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> TupleSplitToTupleBy14 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) {
1930    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13), (T14, T15));
1931    fn split_to_tuple_by_14(self) -> Self::OutTuple {
1932        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15))
1933    }
1934}
1935impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> TupleSplitToTupleBy14 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) {
1936    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16));
1937    fn split_to_tuple_by_14(self) -> Self::OutTuple {
1938        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16))
1939    }
1940}
1941impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> TupleSplitToTupleBy14 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) {
1942    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17));
1943    fn split_to_tuple_by_14(self) -> Self::OutTuple {
1944        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17))
1945    }
1946}
1947impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> TupleSplitToTupleBy14 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) {
1948    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18));
1949    fn split_to_tuple_by_14(self) -> Self::OutTuple {
1950        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18))
1951    }
1952}
1953impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> TupleSplitToTupleBy14 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) {
1954    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19));
1955    fn split_to_tuple_by_14(self) -> Self::OutTuple {
1956        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19))
1957    }
1958}
1959impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> TupleSplitToTupleBy14 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) {
1960    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19, T20));
1961    fn split_to_tuple_by_14(self) -> Self::OutTuple {
1962        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19, self.20))
1963    }
1964}
1965impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> TupleSplitToTupleBy14 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) {
1966    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19, T20, T21));
1967    fn split_to_tuple_by_14(self) -> Self::OutTuple {
1968        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21))
1969    }
1970}
1971impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> TupleSplitToTupleBy14 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) {
1972    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19, T20, T21, T22));
1973    fn split_to_tuple_by_14(self) -> Self::OutTuple {
1974        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22))
1975    }
1976}
1977impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> TupleSplitToTupleBy14 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23) {
1978    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19, T20, T21, T22, T23));
1979    fn split_to_tuple_by_14(self) -> Self::OutTuple {
1980        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23))
1981    }
1982}
1983impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> TupleSplitToTupleBy14 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24) {
1984    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24));
1985    fn split_to_tuple_by_14(self) -> Self::OutTuple {
1986        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24))
1987    }
1988}
1989impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy14 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
1990    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25));
1991    fn split_to_tuple_by_14(self) -> Self::OutTuple {
1992        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25))
1993    }
1994}
1995impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy14 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
1996    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26));
1997    fn split_to_tuple_by_14(self) -> Self::OutTuple {
1998        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26))
1999    }
2000}
2001impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy14 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
2002    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27));
2003    fn split_to_tuple_by_14(self) -> Self::OutTuple {
2004        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27))
2005    }
2006}
2007impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy14 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
2008    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27), (T28,));
2009    fn split_to_tuple_by_14(self) -> Self::OutTuple {
2010        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27), (self.28,))
2011    }
2012}
2013impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy14 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
2014    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27), (T28, T29));
2015    fn split_to_tuple_by_14(self) -> Self::OutTuple {
2016        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27), (self.28, self.29))
2017    }
2018}
2019impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy14 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
2020    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27), (T28, T29, T30));
2021    fn split_to_tuple_by_14(self) -> Self::OutTuple {
2022        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27), (self.28, self.29, self.30))
2023    }
2024}
2025impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy14 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
2026    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13), (T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27), (T28, T29, T30, T31));
2027    fn split_to_tuple_by_14(self) -> Self::OutTuple {
2028        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13), (self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27), (self.28, self.29, self.30, self.31))
2029    }
2030}
2031#[doc = "Split to tuple by 15"]
2032pub trait TupleSplitToTupleBy15 {
2033    type OutTuple;
2034    #[doc = "Split to tuple by 15"]
2035    fn split_to_tuple_by_15(self) -> Self::OutTuple;
2036}
2037impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> TupleSplitToTupleBy15 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) {
2038    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14),);
2039    fn split_to_tuple_by_15(self) -> Self::OutTuple {
2040        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14),)
2041    }
2042}
2043impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> TupleSplitToTupleBy15 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) {
2044    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14), (T15,));
2045    fn split_to_tuple_by_15(self) -> Self::OutTuple {
2046        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14), (self.15,))
2047    }
2048}
2049impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> TupleSplitToTupleBy15 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) {
2050    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14), (T15, T16));
2051    fn split_to_tuple_by_15(self) -> Self::OutTuple {
2052        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14), (self.15, self.16))
2053    }
2054}
2055impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> TupleSplitToTupleBy15 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) {
2056    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14), (T15, T16, T17));
2057    fn split_to_tuple_by_15(self) -> Self::OutTuple {
2058        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17))
2059    }
2060}
2061impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> TupleSplitToTupleBy15 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) {
2062    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14), (T15, T16, T17, T18));
2063    fn split_to_tuple_by_15(self) -> Self::OutTuple {
2064        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18))
2065    }
2066}
2067impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> TupleSplitToTupleBy15 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) {
2068    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19));
2069    fn split_to_tuple_by_15(self) -> Self::OutTuple {
2070        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19))
2071    }
2072}
2073impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> TupleSplitToTupleBy15 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) {
2074    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19, T20));
2075    fn split_to_tuple_by_15(self) -> Self::OutTuple {
2076        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19, self.20))
2077    }
2078}
2079impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> TupleSplitToTupleBy15 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) {
2080    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19, T20, T21));
2081    fn split_to_tuple_by_15(self) -> Self::OutTuple {
2082        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19, self.20, self.21))
2083    }
2084}
2085impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> TupleSplitToTupleBy15 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) {
2086    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19, T20, T21, T22));
2087    fn split_to_tuple_by_15(self) -> Self::OutTuple {
2088        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22))
2089    }
2090}
2091impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> TupleSplitToTupleBy15 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23) {
2092    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19, T20, T21, T22, T23));
2093    fn split_to_tuple_by_15(self) -> Self::OutTuple {
2094        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23))
2095    }
2096}
2097impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> TupleSplitToTupleBy15 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24) {
2098    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19, T20, T21, T22, T23, T24));
2099    fn split_to_tuple_by_15(self) -> Self::OutTuple {
2100        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24))
2101    }
2102}
2103impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy15 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
2104    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25));
2105    fn split_to_tuple_by_15(self) -> Self::OutTuple {
2106        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25))
2107    }
2108}
2109impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy15 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
2110    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26));
2111    fn split_to_tuple_by_15(self) -> Self::OutTuple {
2112        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26))
2113    }
2114}
2115impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy15 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
2116    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27));
2117    fn split_to_tuple_by_15(self) -> Self::OutTuple {
2118        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27))
2119    }
2120}
2121impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy15 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
2122    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28));
2123    fn split_to_tuple_by_15(self) -> Self::OutTuple {
2124        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28))
2125    }
2126}
2127impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy15 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
2128    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29));
2129    fn split_to_tuple_by_15(self) -> Self::OutTuple {
2130        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29))
2131    }
2132}
2133impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy15 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
2134    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29), (T30,));
2135    fn split_to_tuple_by_15(self) -> Self::OutTuple {
2136        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29), (self.30,))
2137    }
2138}
2139impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy15 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
2140    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14), (T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29), (T30, T31));
2141    fn split_to_tuple_by_15(self) -> Self::OutTuple {
2142        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14), (self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29), (self.30, self.31))
2143    }
2144}
2145#[doc = "Split to tuple by 16"]
2146pub trait TupleSplitToTupleBy16 {
2147    type OutTuple;
2148    #[doc = "Split to tuple by 16"]
2149    fn split_to_tuple_by_16(self) -> Self::OutTuple;
2150}
2151impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> TupleSplitToTupleBy16 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) {
2152    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15),);
2153    fn split_to_tuple_by_16(self) -> Self::OutTuple {
2154        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15),)
2155    }
2156}
2157impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> TupleSplitToTupleBy16 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) {
2158    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15), (T16,));
2159    fn split_to_tuple_by_16(self) -> Self::OutTuple {
2160        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16,))
2161    }
2162}
2163impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> TupleSplitToTupleBy16 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) {
2164    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17));
2165    fn split_to_tuple_by_16(self) -> Self::OutTuple {
2166        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17))
2167    }
2168}
2169impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> TupleSplitToTupleBy16 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) {
2170    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18));
2171    fn split_to_tuple_by_16(self) -> Self::OutTuple {
2172        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18))
2173    }
2174}
2175impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> TupleSplitToTupleBy16 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) {
2176    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19));
2177    fn split_to_tuple_by_16(self) -> Self::OutTuple {
2178        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19))
2179    }
2180}
2181impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> TupleSplitToTupleBy16 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) {
2182    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19, T20));
2183    fn split_to_tuple_by_16(self) -> Self::OutTuple {
2184        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19, self.20))
2185    }
2186}
2187impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> TupleSplitToTupleBy16 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) {
2188    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19, T20, T21));
2189    fn split_to_tuple_by_16(self) -> Self::OutTuple {
2190        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19, self.20, self.21))
2191    }
2192}
2193impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> TupleSplitToTupleBy16 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) {
2194    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19, T20, T21, T22));
2195    fn split_to_tuple_by_16(self) -> Self::OutTuple {
2196        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19, self.20, self.21, self.22))
2197    }
2198}
2199impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> TupleSplitToTupleBy16 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23) {
2200    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19, T20, T21, T22, T23));
2201    fn split_to_tuple_by_16(self) -> Self::OutTuple {
2202        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23))
2203    }
2204}
2205impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> TupleSplitToTupleBy16 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24) {
2206    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19, T20, T21, T22, T23, T24));
2207    fn split_to_tuple_by_16(self) -> Self::OutTuple {
2208        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24))
2209    }
2210}
2211impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy16 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
2212    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19, T20, T21, T22, T23, T24, T25));
2213    fn split_to_tuple_by_16(self) -> Self::OutTuple {
2214        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25))
2215    }
2216}
2217impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy16 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
2218    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26));
2219    fn split_to_tuple_by_16(self) -> Self::OutTuple {
2220        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26))
2221    }
2222}
2223impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy16 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
2224    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27));
2225    fn split_to_tuple_by_16(self) -> Self::OutTuple {
2226        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27))
2227    }
2228}
2229impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy16 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
2230    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28));
2231    fn split_to_tuple_by_16(self) -> Self::OutTuple {
2232        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28))
2233    }
2234}
2235impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy16 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
2236    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29));
2237    fn split_to_tuple_by_16(self) -> Self::OutTuple {
2238        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29))
2239    }
2240}
2241impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy16 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
2242    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30));
2243    fn split_to_tuple_by_16(self) -> Self::OutTuple {
2244        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29, self.30))
2245    }
2246}
2247impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy16 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
2248    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15), (T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31));
2249    fn split_to_tuple_by_16(self) -> Self::OutTuple {
2250        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15), (self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29, self.30, self.31))
2251    }
2252}
2253#[doc = "Split to tuple by 17"]
2254pub trait TupleSplitToTupleBy17 {
2255    type OutTuple;
2256    #[doc = "Split to tuple by 17"]
2257    fn split_to_tuple_by_17(self) -> Self::OutTuple;
2258}
2259impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> TupleSplitToTupleBy17 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) {
2260    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16),);
2261    fn split_to_tuple_by_17(self) -> Self::OutTuple {
2262        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16),)
2263    }
2264}
2265impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> TupleSplitToTupleBy17 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) {
2266    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16), (T17,));
2267    fn split_to_tuple_by_17(self) -> Self::OutTuple {
2268        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16), (self.17,))
2269    }
2270}
2271impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> TupleSplitToTupleBy17 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) {
2272    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16), (T17, T18));
2273    fn split_to_tuple_by_17(self) -> Self::OutTuple {
2274        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16), (self.17, self.18))
2275    }
2276}
2277impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> TupleSplitToTupleBy17 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) {
2278    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16), (T17, T18, T19));
2279    fn split_to_tuple_by_17(self) -> Self::OutTuple {
2280        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16), (self.17, self.18, self.19))
2281    }
2282}
2283impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> TupleSplitToTupleBy17 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) {
2284    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16), (T17, T18, T19, T20));
2285    fn split_to_tuple_by_17(self) -> Self::OutTuple {
2286        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16), (self.17, self.18, self.19, self.20))
2287    }
2288}
2289impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> TupleSplitToTupleBy17 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) {
2290    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16), (T17, T18, T19, T20, T21));
2291    fn split_to_tuple_by_17(self) -> Self::OutTuple {
2292        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16), (self.17, self.18, self.19, self.20, self.21))
2293    }
2294}
2295impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> TupleSplitToTupleBy17 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) {
2296    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16), (T17, T18, T19, T20, T21, T22));
2297    fn split_to_tuple_by_17(self) -> Self::OutTuple {
2298        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16), (self.17, self.18, self.19, self.20, self.21, self.22))
2299    }
2300}
2301impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> TupleSplitToTupleBy17 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23) {
2302    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16), (T17, T18, T19, T20, T21, T22, T23));
2303    fn split_to_tuple_by_17(self) -> Self::OutTuple {
2304        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16), (self.17, self.18, self.19, self.20, self.21, self.22, self.23))
2305    }
2306}
2307impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> TupleSplitToTupleBy17 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24) {
2308    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16), (T17, T18, T19, T20, T21, T22, T23, T24));
2309    fn split_to_tuple_by_17(self) -> Self::OutTuple {
2310        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16), (self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24))
2311    }
2312}
2313impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy17 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
2314    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16), (T17, T18, T19, T20, T21, T22, T23, T24, T25));
2315    fn split_to_tuple_by_17(self) -> Self::OutTuple {
2316        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16), (self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25))
2317    }
2318}
2319impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy17 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
2320    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16), (T17, T18, T19, T20, T21, T22, T23, T24, T25, T26));
2321    fn split_to_tuple_by_17(self) -> Self::OutTuple {
2322        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16), (self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26))
2323    }
2324}
2325impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy17 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
2326    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16), (T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27));
2327    fn split_to_tuple_by_17(self) -> Self::OutTuple {
2328        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16), (self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27))
2329    }
2330}
2331impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy17 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
2332    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16), (T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28));
2333    fn split_to_tuple_by_17(self) -> Self::OutTuple {
2334        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16), (self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28))
2335    }
2336}
2337impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy17 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
2338    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16), (T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29));
2339    fn split_to_tuple_by_17(self) -> Self::OutTuple {
2340        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16), (self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29))
2341    }
2342}
2343impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy17 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
2344    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16), (T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30));
2345    fn split_to_tuple_by_17(self) -> Self::OutTuple {
2346        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16), (self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29, self.30))
2347    }
2348}
2349impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy17 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
2350    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16), (T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31));
2351    fn split_to_tuple_by_17(self) -> Self::OutTuple {
2352        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16), (self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29, self.30, self.31))
2353    }
2354}
2355#[doc = "Split to tuple by 18"]
2356pub trait TupleSplitToTupleBy18 {
2357    type OutTuple;
2358    #[doc = "Split to tuple by 18"]
2359    fn split_to_tuple_by_18(self) -> Self::OutTuple;
2360}
2361impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> TupleSplitToTupleBy18 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) {
2362    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17),);
2363    fn split_to_tuple_by_18(self) -> Self::OutTuple {
2364        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17),)
2365    }
2366}
2367impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> TupleSplitToTupleBy18 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) {
2368    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18,));
2369    fn split_to_tuple_by_18(self) -> Self::OutTuple {
2370        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18,))
2371    }
2372}
2373impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> TupleSplitToTupleBy18 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) {
2374    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19));
2375    fn split_to_tuple_by_18(self) -> Self::OutTuple {
2376        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19))
2377    }
2378}
2379impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> TupleSplitToTupleBy18 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) {
2380    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19, T20));
2381    fn split_to_tuple_by_18(self) -> Self::OutTuple {
2382        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20))
2383    }
2384}
2385impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> TupleSplitToTupleBy18 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) {
2386    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21));
2387    fn split_to_tuple_by_18(self) -> Self::OutTuple {
2388        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21))
2389    }
2390}
2391impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> TupleSplitToTupleBy18 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) {
2392    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22));
2393    fn split_to_tuple_by_18(self) -> Self::OutTuple {
2394        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22))
2395    }
2396}
2397impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> TupleSplitToTupleBy18 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23) {
2398    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23));
2399    fn split_to_tuple_by_18(self) -> Self::OutTuple {
2400        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23))
2401    }
2402}
2403impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> TupleSplitToTupleBy18 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24) {
2404    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23, T24));
2405    fn split_to_tuple_by_18(self) -> Self::OutTuple {
2406        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23, self.24))
2407    }
2408}
2409impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy18 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
2410    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23, T24, T25));
2411    fn split_to_tuple_by_18(self) -> Self::OutTuple {
2412        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25))
2413    }
2414}
2415impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy18 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
2416    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23, T24, T25, T26));
2417    fn split_to_tuple_by_18(self) -> Self::OutTuple {
2418        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26))
2419    }
2420}
2421impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy18 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
2422    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23, T24, T25, T26, T27));
2423    fn split_to_tuple_by_18(self) -> Self::OutTuple {
2424        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27))
2425    }
2426}
2427impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy18 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
2428    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28));
2429    fn split_to_tuple_by_18(self) -> Self::OutTuple {
2430        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28))
2431    }
2432}
2433impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy18 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
2434    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29));
2435    fn split_to_tuple_by_18(self) -> Self::OutTuple {
2436        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29))
2437    }
2438}
2439impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy18 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
2440    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30));
2441    fn split_to_tuple_by_18(self) -> Self::OutTuple {
2442        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29, self.30))
2443    }
2444}
2445impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy18 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
2446    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17), (T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31));
2447    fn split_to_tuple_by_18(self) -> Self::OutTuple {
2448        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17), (self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29, self.30, self.31))
2449    }
2450}
2451#[doc = "Split to tuple by 19"]
2452pub trait TupleSplitToTupleBy19 {
2453    type OutTuple;
2454    #[doc = "Split to tuple by 19"]
2455    fn split_to_tuple_by_19(self) -> Self::OutTuple;
2456}
2457impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> TupleSplitToTupleBy19 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) {
2458    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18),);
2459    fn split_to_tuple_by_19(self) -> Self::OutTuple {
2460        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18),)
2461    }
2462}
2463impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> TupleSplitToTupleBy19 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) {
2464    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18), (T19,));
2465    fn split_to_tuple_by_19(self) -> Self::OutTuple {
2466        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18), (self.19,))
2467    }
2468}
2469impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> TupleSplitToTupleBy19 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) {
2470    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18), (T19, T20));
2471    fn split_to_tuple_by_19(self) -> Self::OutTuple {
2472        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18), (self.19, self.20))
2473    }
2474}
2475impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> TupleSplitToTupleBy19 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) {
2476    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18), (T19, T20, T21));
2477    fn split_to_tuple_by_19(self) -> Self::OutTuple {
2478        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18), (self.19, self.20, self.21))
2479    }
2480}
2481impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> TupleSplitToTupleBy19 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) {
2482    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18), (T19, T20, T21, T22));
2483    fn split_to_tuple_by_19(self) -> Self::OutTuple {
2484        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18), (self.19, self.20, self.21, self.22))
2485    }
2486}
2487impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> TupleSplitToTupleBy19 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23) {
2488    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18), (T19, T20, T21, T22, T23));
2489    fn split_to_tuple_by_19(self) -> Self::OutTuple {
2490        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18), (self.19, self.20, self.21, self.22, self.23))
2491    }
2492}
2493impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> TupleSplitToTupleBy19 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24) {
2494    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18), (T19, T20, T21, T22, T23, T24));
2495    fn split_to_tuple_by_19(self) -> Self::OutTuple {
2496        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18), (self.19, self.20, self.21, self.22, self.23, self.24))
2497    }
2498}
2499impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy19 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
2500    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18), (T19, T20, T21, T22, T23, T24, T25));
2501    fn split_to_tuple_by_19(self) -> Self::OutTuple {
2502        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18), (self.19, self.20, self.21, self.22, self.23, self.24, self.25))
2503    }
2504}
2505impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy19 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
2506    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18), (T19, T20, T21, T22, T23, T24, T25, T26));
2507    fn split_to_tuple_by_19(self) -> Self::OutTuple {
2508        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18), (self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26))
2509    }
2510}
2511impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy19 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
2512    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18), (T19, T20, T21, T22, T23, T24, T25, T26, T27));
2513    fn split_to_tuple_by_19(self) -> Self::OutTuple {
2514        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18), (self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27))
2515    }
2516}
2517impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy19 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
2518    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18), (T19, T20, T21, T22, T23, T24, T25, T26, T27, T28));
2519    fn split_to_tuple_by_19(self) -> Self::OutTuple {
2520        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18), (self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28))
2521    }
2522}
2523impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy19 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
2524    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18), (T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29));
2525    fn split_to_tuple_by_19(self) -> Self::OutTuple {
2526        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18), (self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29))
2527    }
2528}
2529impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy19 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
2530    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18), (T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30));
2531    fn split_to_tuple_by_19(self) -> Self::OutTuple {
2532        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18), (self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29, self.30))
2533    }
2534}
2535impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy19 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
2536    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18), (T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31));
2537    fn split_to_tuple_by_19(self) -> Self::OutTuple {
2538        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18), (self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29, self.30, self.31))
2539    }
2540}
2541#[doc = "Split to tuple by 20"]
2542pub trait TupleSplitToTupleBy20 {
2543    type OutTuple;
2544    #[doc = "Split to tuple by 20"]
2545    fn split_to_tuple_by_20(self) -> Self::OutTuple;
2546}
2547impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> TupleSplitToTupleBy20 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) {
2548    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19),);
2549    fn split_to_tuple_by_20(self) -> Self::OutTuple {
2550        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19),)
2551    }
2552}
2553impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> TupleSplitToTupleBy20 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) {
2554    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), (T20,));
2555    fn split_to_tuple_by_20(self) -> Self::OutTuple {
2556        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19), (self.20,))
2557    }
2558}
2559impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> TupleSplitToTupleBy20 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) {
2560    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), (T20, T21));
2561    fn split_to_tuple_by_20(self) -> Self::OutTuple {
2562        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19), (self.20, self.21))
2563    }
2564}
2565impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> TupleSplitToTupleBy20 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) {
2566    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), (T20, T21, T22));
2567    fn split_to_tuple_by_20(self) -> Self::OutTuple {
2568        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22))
2569    }
2570}
2571impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> TupleSplitToTupleBy20 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23) {
2572    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), (T20, T21, T22, T23));
2573    fn split_to_tuple_by_20(self) -> Self::OutTuple {
2574        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23))
2575    }
2576}
2577impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> TupleSplitToTupleBy20 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24) {
2578    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), (T20, T21, T22, T23, T24));
2579    fn split_to_tuple_by_20(self) -> Self::OutTuple {
2580        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23, self.24))
2581    }
2582}
2583impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy20 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
2584    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), (T20, T21, T22, T23, T24, T25));
2585    fn split_to_tuple_by_20(self) -> Self::OutTuple {
2586        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23, self.24, self.25))
2587    }
2588}
2589impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy20 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
2590    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), (T20, T21, T22, T23, T24, T25, T26));
2591    fn split_to_tuple_by_20(self) -> Self::OutTuple {
2592        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23, self.24, self.25, self.26))
2593    }
2594}
2595impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy20 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
2596    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), (T20, T21, T22, T23, T24, T25, T26, T27));
2597    fn split_to_tuple_by_20(self) -> Self::OutTuple {
2598        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27))
2599    }
2600}
2601impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy20 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
2602    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), (T20, T21, T22, T23, T24, T25, T26, T27, T28));
2603    fn split_to_tuple_by_20(self) -> Self::OutTuple {
2604        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28))
2605    }
2606}
2607impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy20 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
2608    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), (T20, T21, T22, T23, T24, T25, T26, T27, T28, T29));
2609    fn split_to_tuple_by_20(self) -> Self::OutTuple {
2610        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29))
2611    }
2612}
2613impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy20 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
2614    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), (T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30));
2615    fn split_to_tuple_by_20(self) -> Self::OutTuple {
2616        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29, self.30))
2617    }
2618}
2619impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy20 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
2620    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19), (T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31));
2621    fn split_to_tuple_by_20(self) -> Self::OutTuple {
2622        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19), (self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29, self.30, self.31))
2623    }
2624}
2625#[doc = "Split to tuple by 21"]
2626pub trait TupleSplitToTupleBy21 {
2627    type OutTuple;
2628    #[doc = "Split to tuple by 21"]
2629    fn split_to_tuple_by_21(self) -> Self::OutTuple;
2630}
2631impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> TupleSplitToTupleBy21 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) {
2632    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20),);
2633    fn split_to_tuple_by_21(self) -> Self::OutTuple {
2634        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20),)
2635    }
2636}
2637impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> TupleSplitToTupleBy21 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) {
2638    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20), (T21,));
2639    fn split_to_tuple_by_21(self) -> Self::OutTuple {
2640        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20), (self.21,))
2641    }
2642}
2643impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> TupleSplitToTupleBy21 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) {
2644    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20), (T21, T22));
2645    fn split_to_tuple_by_21(self) -> Self::OutTuple {
2646        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20), (self.21, self.22))
2647    }
2648}
2649impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> TupleSplitToTupleBy21 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23) {
2650    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20), (T21, T22, T23));
2651    fn split_to_tuple_by_21(self) -> Self::OutTuple {
2652        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20), (self.21, self.22, self.23))
2653    }
2654}
2655impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> TupleSplitToTupleBy21 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24) {
2656    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20), (T21, T22, T23, T24));
2657    fn split_to_tuple_by_21(self) -> Self::OutTuple {
2658        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20), (self.21, self.22, self.23, self.24))
2659    }
2660}
2661impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy21 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
2662    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20), (T21, T22, T23, T24, T25));
2663    fn split_to_tuple_by_21(self) -> Self::OutTuple {
2664        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20), (self.21, self.22, self.23, self.24, self.25))
2665    }
2666}
2667impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy21 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
2668    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20), (T21, T22, T23, T24, T25, T26));
2669    fn split_to_tuple_by_21(self) -> Self::OutTuple {
2670        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20), (self.21, self.22, self.23, self.24, self.25, self.26))
2671    }
2672}
2673impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy21 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
2674    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20), (T21, T22, T23, T24, T25, T26, T27));
2675    fn split_to_tuple_by_21(self) -> Self::OutTuple {
2676        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20), (self.21, self.22, self.23, self.24, self.25, self.26, self.27))
2677    }
2678}
2679impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy21 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
2680    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20), (T21, T22, T23, T24, T25, T26, T27, T28));
2681    fn split_to_tuple_by_21(self) -> Self::OutTuple {
2682        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20), (self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28))
2683    }
2684}
2685impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy21 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
2686    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20), (T21, T22, T23, T24, T25, T26, T27, T28, T29));
2687    fn split_to_tuple_by_21(self) -> Self::OutTuple {
2688        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20), (self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29))
2689    }
2690}
2691impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy21 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
2692    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20), (T21, T22, T23, T24, T25, T26, T27, T28, T29, T30));
2693    fn split_to_tuple_by_21(self) -> Self::OutTuple {
2694        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20), (self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29, self.30))
2695    }
2696}
2697impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy21 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
2698    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20), (T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31));
2699    fn split_to_tuple_by_21(self) -> Self::OutTuple {
2700        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20), (self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29, self.30, self.31))
2701    }
2702}
2703#[doc = "Split to tuple by 22"]
2704pub trait TupleSplitToTupleBy22 {
2705    type OutTuple;
2706    #[doc = "Split to tuple by 22"]
2707    fn split_to_tuple_by_22(self) -> Self::OutTuple;
2708}
2709impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> TupleSplitToTupleBy22 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) {
2710    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21),);
2711    fn split_to_tuple_by_22(self) -> Self::OutTuple {
2712        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21),)
2713    }
2714}
2715impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> TupleSplitToTupleBy22 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) {
2716    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21), (T22,));
2717    fn split_to_tuple_by_22(self) -> Self::OutTuple {
2718        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21), (self.22,))
2719    }
2720}
2721impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> TupleSplitToTupleBy22 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23) {
2722    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21), (T22, T23));
2723    fn split_to_tuple_by_22(self) -> Self::OutTuple {
2724        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21), (self.22, self.23))
2725    }
2726}
2727impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> TupleSplitToTupleBy22 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24) {
2728    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21), (T22, T23, T24));
2729    fn split_to_tuple_by_22(self) -> Self::OutTuple {
2730        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21), (self.22, self.23, self.24))
2731    }
2732}
2733impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy22 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
2734    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21), (T22, T23, T24, T25));
2735    fn split_to_tuple_by_22(self) -> Self::OutTuple {
2736        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21), (self.22, self.23, self.24, self.25))
2737    }
2738}
2739impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy22 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
2740    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21), (T22, T23, T24, T25, T26));
2741    fn split_to_tuple_by_22(self) -> Self::OutTuple {
2742        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21), (self.22, self.23, self.24, self.25, self.26))
2743    }
2744}
2745impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy22 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
2746    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21), (T22, T23, T24, T25, T26, T27));
2747    fn split_to_tuple_by_22(self) -> Self::OutTuple {
2748        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21), (self.22, self.23, self.24, self.25, self.26, self.27))
2749    }
2750}
2751impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy22 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
2752    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21), (T22, T23, T24, T25, T26, T27, T28));
2753    fn split_to_tuple_by_22(self) -> Self::OutTuple {
2754        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21), (self.22, self.23, self.24, self.25, self.26, self.27, self.28))
2755    }
2756}
2757impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy22 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
2758    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21), (T22, T23, T24, T25, T26, T27, T28, T29));
2759    fn split_to_tuple_by_22(self) -> Self::OutTuple {
2760        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21), (self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29))
2761    }
2762}
2763impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy22 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
2764    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21), (T22, T23, T24, T25, T26, T27, T28, T29, T30));
2765    fn split_to_tuple_by_22(self) -> Self::OutTuple {
2766        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21), (self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29, self.30))
2767    }
2768}
2769impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy22 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
2770    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21), (T22, T23, T24, T25, T26, T27, T28, T29, T30, T31));
2771    fn split_to_tuple_by_22(self) -> Self::OutTuple {
2772        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21), (self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29, self.30, self.31))
2773    }
2774}
2775#[doc = "Split to tuple by 23"]
2776pub trait TupleSplitToTupleBy23 {
2777    type OutTuple;
2778    #[doc = "Split to tuple by 23"]
2779    fn split_to_tuple_by_23(self) -> Self::OutTuple;
2780}
2781impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> TupleSplitToTupleBy23 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) {
2782    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22),);
2783    fn split_to_tuple_by_23(self) -> Self::OutTuple {
2784        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22),)
2785    }
2786}
2787impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> TupleSplitToTupleBy23 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23) {
2788    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22), (T23,));
2789    fn split_to_tuple_by_23(self) -> Self::OutTuple {
2790        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22), (self.23,))
2791    }
2792}
2793impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> TupleSplitToTupleBy23 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24) {
2794    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22), (T23, T24));
2795    fn split_to_tuple_by_23(self) -> Self::OutTuple {
2796        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22), (self.23, self.24))
2797    }
2798}
2799impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy23 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
2800    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22), (T23, T24, T25));
2801    fn split_to_tuple_by_23(self) -> Self::OutTuple {
2802        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22), (self.23, self.24, self.25))
2803    }
2804}
2805impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy23 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
2806    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22), (T23, T24, T25, T26));
2807    fn split_to_tuple_by_23(self) -> Self::OutTuple {
2808        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22), (self.23, self.24, self.25, self.26))
2809    }
2810}
2811impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy23 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
2812    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22), (T23, T24, T25, T26, T27));
2813    fn split_to_tuple_by_23(self) -> Self::OutTuple {
2814        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22), (self.23, self.24, self.25, self.26, self.27))
2815    }
2816}
2817impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy23 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
2818    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22), (T23, T24, T25, T26, T27, T28));
2819    fn split_to_tuple_by_23(self) -> Self::OutTuple {
2820        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22), (self.23, self.24, self.25, self.26, self.27, self.28))
2821    }
2822}
2823impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy23 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
2824    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22), (T23, T24, T25, T26, T27, T28, T29));
2825    fn split_to_tuple_by_23(self) -> Self::OutTuple {
2826        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22), (self.23, self.24, self.25, self.26, self.27, self.28, self.29))
2827    }
2828}
2829impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy23 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
2830    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22), (T23, T24, T25, T26, T27, T28, T29, T30));
2831    fn split_to_tuple_by_23(self) -> Self::OutTuple {
2832        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22), (self.23, self.24, self.25, self.26, self.27, self.28, self.29, self.30))
2833    }
2834}
2835impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy23 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
2836    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22), (T23, T24, T25, T26, T27, T28, T29, T30, T31));
2837    fn split_to_tuple_by_23(self) -> Self::OutTuple {
2838        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22), (self.23, self.24, self.25, self.26, self.27, self.28, self.29, self.30, self.31))
2839    }
2840}
2841#[doc = "Split to tuple by 24"]
2842pub trait TupleSplitToTupleBy24 {
2843    type OutTuple;
2844    #[doc = "Split to tuple by 24"]
2845    fn split_to_tuple_by_24(self) -> Self::OutTuple;
2846}
2847impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23> TupleSplitToTupleBy24 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23) {
2848    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23),);
2849    fn split_to_tuple_by_24(self) -> Self::OutTuple {
2850        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23),)
2851    }
2852}
2853impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> TupleSplitToTupleBy24 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24) {
2854    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23), (T24,));
2855    fn split_to_tuple_by_24(self) -> Self::OutTuple {
2856        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23), (self.24,))
2857    }
2858}
2859impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy24 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
2860    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23), (T24, T25));
2861    fn split_to_tuple_by_24(self) -> Self::OutTuple {
2862        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25))
2863    }
2864}
2865impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy24 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
2866    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23), (T24, T25, T26));
2867    fn split_to_tuple_by_24(self) -> Self::OutTuple {
2868        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25, self.26))
2869    }
2870}
2871impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy24 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
2872    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23), (T24, T25, T26, T27));
2873    fn split_to_tuple_by_24(self) -> Self::OutTuple {
2874        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27))
2875    }
2876}
2877impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy24 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
2878    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23), (T24, T25, T26, T27, T28));
2879    fn split_to_tuple_by_24(self) -> Self::OutTuple {
2880        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27, self.28))
2881    }
2882}
2883impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy24 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
2884    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23), (T24, T25, T26, T27, T28, T29));
2885    fn split_to_tuple_by_24(self) -> Self::OutTuple {
2886        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27, self.28, self.29))
2887    }
2888}
2889impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy24 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
2890    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23), (T24, T25, T26, T27, T28, T29, T30));
2891    fn split_to_tuple_by_24(self) -> Self::OutTuple {
2892        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27, self.28, self.29, self.30))
2893    }
2894}
2895impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy24 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
2896    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23), (T24, T25, T26, T27, T28, T29, T30, T31));
2897    fn split_to_tuple_by_24(self) -> Self::OutTuple {
2898        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23), (self.24, self.25, self.26, self.27, self.28, self.29, self.30, self.31))
2899    }
2900}
2901#[doc = "Split to tuple by 25"]
2902pub trait TupleSplitToTupleBy25 {
2903    type OutTuple;
2904    #[doc = "Split to tuple by 25"]
2905    fn split_to_tuple_by_25(self) -> Self::OutTuple;
2906}
2907impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24> TupleSplitToTupleBy25 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24) {
2908    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24),);
2909    fn split_to_tuple_by_25(self) -> Self::OutTuple {
2910        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24),)
2911    }
2912}
2913impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy25 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
2914    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24), (T25,));
2915    fn split_to_tuple_by_25(self) -> Self::OutTuple {
2916        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24), (self.25,))
2917    }
2918}
2919impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy25 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
2920    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24), (T25, T26));
2921    fn split_to_tuple_by_25(self) -> Self::OutTuple {
2922        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24), (self.25, self.26))
2923    }
2924}
2925impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy25 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
2926    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24), (T25, T26, T27));
2927    fn split_to_tuple_by_25(self) -> Self::OutTuple {
2928        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24), (self.25, self.26, self.27))
2929    }
2930}
2931impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy25 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
2932    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24), (T25, T26, T27, T28));
2933    fn split_to_tuple_by_25(self) -> Self::OutTuple {
2934        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24), (self.25, self.26, self.27, self.28))
2935    }
2936}
2937impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy25 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
2938    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24), (T25, T26, T27, T28, T29));
2939    fn split_to_tuple_by_25(self) -> Self::OutTuple {
2940        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24), (self.25, self.26, self.27, self.28, self.29))
2941    }
2942}
2943impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy25 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
2944    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24), (T25, T26, T27, T28, T29, T30));
2945    fn split_to_tuple_by_25(self) -> Self::OutTuple {
2946        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24), (self.25, self.26, self.27, self.28, self.29, self.30))
2947    }
2948}
2949impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy25 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
2950    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24), (T25, T26, T27, T28, T29, T30, T31));
2951    fn split_to_tuple_by_25(self) -> Self::OutTuple {
2952        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24), (self.25, self.26, self.27, self.28, self.29, self.30, self.31))
2953    }
2954}
2955#[doc = "Split to tuple by 26"]
2956pub trait TupleSplitToTupleBy26 {
2957    type OutTuple;
2958    #[doc = "Split to tuple by 26"]
2959    fn split_to_tuple_by_26(self) -> Self::OutTuple;
2960}
2961impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25> TupleSplitToTupleBy26 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25) {
2962    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25),);
2963    fn split_to_tuple_by_26(self) -> Self::OutTuple {
2964        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25),)
2965    }
2966}
2967impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy26 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
2968    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25), (T26,));
2969    fn split_to_tuple_by_26(self) -> Self::OutTuple {
2970        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25), (self.26,))
2971    }
2972}
2973impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy26 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
2974    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25), (T26, T27));
2975    fn split_to_tuple_by_26(self) -> Self::OutTuple {
2976        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25), (self.26, self.27))
2977    }
2978}
2979impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy26 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
2980    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25), (T26, T27, T28));
2981    fn split_to_tuple_by_26(self) -> Self::OutTuple {
2982        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25), (self.26, self.27, self.28))
2983    }
2984}
2985impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy26 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
2986    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25), (T26, T27, T28, T29));
2987    fn split_to_tuple_by_26(self) -> Self::OutTuple {
2988        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25), (self.26, self.27, self.28, self.29))
2989    }
2990}
2991impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy26 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
2992    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25), (T26, T27, T28, T29, T30));
2993    fn split_to_tuple_by_26(self) -> Self::OutTuple {
2994        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25), (self.26, self.27, self.28, self.29, self.30))
2995    }
2996}
2997impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy26 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
2998    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25), (T26, T27, T28, T29, T30, T31));
2999    fn split_to_tuple_by_26(self) -> Self::OutTuple {
3000        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25), (self.26, self.27, self.28, self.29, self.30, self.31))
3001    }
3002}
3003#[doc = "Split to tuple by 27"]
3004pub trait TupleSplitToTupleBy27 {
3005    type OutTuple;
3006    #[doc = "Split to tuple by 27"]
3007    fn split_to_tuple_by_27(self) -> Self::OutTuple;
3008}
3009impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26> TupleSplitToTupleBy27 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26) {
3010    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26),);
3011    fn split_to_tuple_by_27(self) -> Self::OutTuple {
3012        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26),)
3013    }
3014}
3015impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy27 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
3016    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26), (T27,));
3017    fn split_to_tuple_by_27(self) -> Self::OutTuple {
3018        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26), (self.27,))
3019    }
3020}
3021impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy27 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
3022    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26), (T27, T28));
3023    fn split_to_tuple_by_27(self) -> Self::OutTuple {
3024        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26), (self.27, self.28))
3025    }
3026}
3027impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy27 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
3028    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26), (T27, T28, T29));
3029    fn split_to_tuple_by_27(self) -> Self::OutTuple {
3030        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26), (self.27, self.28, self.29))
3031    }
3032}
3033impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy27 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
3034    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26), (T27, T28, T29, T30));
3035    fn split_to_tuple_by_27(self) -> Self::OutTuple {
3036        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26), (self.27, self.28, self.29, self.30))
3037    }
3038}
3039impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy27 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
3040    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26), (T27, T28, T29, T30, T31));
3041    fn split_to_tuple_by_27(self) -> Self::OutTuple {
3042        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26), (self.27, self.28, self.29, self.30, self.31))
3043    }
3044}
3045#[doc = "Split to tuple by 28"]
3046pub trait TupleSplitToTupleBy28 {
3047    type OutTuple;
3048    #[doc = "Split to tuple by 28"]
3049    fn split_to_tuple_by_28(self) -> Self::OutTuple;
3050}
3051impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27> TupleSplitToTupleBy28 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27) {
3052    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27),);
3053    fn split_to_tuple_by_28(self) -> Self::OutTuple {
3054        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27),)
3055    }
3056}
3057impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy28 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
3058    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27), (T28,));
3059    fn split_to_tuple_by_28(self) -> Self::OutTuple {
3060        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27), (self.28,))
3061    }
3062}
3063impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy28 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
3064    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27), (T28, T29));
3065    fn split_to_tuple_by_28(self) -> Self::OutTuple {
3066        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27), (self.28, self.29))
3067    }
3068}
3069impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy28 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
3070    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27), (T28, T29, T30));
3071    fn split_to_tuple_by_28(self) -> Self::OutTuple {
3072        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27), (self.28, self.29, self.30))
3073    }
3074}
3075impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy28 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
3076    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27), (T28, T29, T30, T31));
3077    fn split_to_tuple_by_28(self) -> Self::OutTuple {
3078        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27), (self.28, self.29, self.30, self.31))
3079    }
3080}
3081#[doc = "Split to tuple by 29"]
3082pub trait TupleSplitToTupleBy29 {
3083    type OutTuple;
3084    #[doc = "Split to tuple by 29"]
3085    fn split_to_tuple_by_29(self) -> Self::OutTuple;
3086}
3087impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28> TupleSplitToTupleBy29 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28) {
3088    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28),);
3089    fn split_to_tuple_by_29(self) -> Self::OutTuple {
3090        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28),)
3091    }
3092}
3093impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy29 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
3094    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28), (T29,));
3095    fn split_to_tuple_by_29(self) -> Self::OutTuple {
3096        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28), (self.29,))
3097    }
3098}
3099impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy29 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
3100    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28), (T29, T30));
3101    fn split_to_tuple_by_29(self) -> Self::OutTuple {
3102        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28), (self.29, self.30))
3103    }
3104}
3105impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy29 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
3106    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28), (T29, T30, T31));
3107    fn split_to_tuple_by_29(self) -> Self::OutTuple {
3108        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28), (self.29, self.30, self.31))
3109    }
3110}
3111#[doc = "Split to tuple by 30"]
3112pub trait TupleSplitToTupleBy30 {
3113    type OutTuple;
3114    #[doc = "Split to tuple by 30"]
3115    fn split_to_tuple_by_30(self) -> Self::OutTuple;
3116}
3117impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29> TupleSplitToTupleBy30 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29) {
3118    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29),);
3119    fn split_to_tuple_by_30(self) -> Self::OutTuple {
3120        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29),)
3121    }
3122}
3123impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy30 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
3124    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29), (T30,));
3125    fn split_to_tuple_by_30(self) -> Self::OutTuple {
3126        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29), (self.30,))
3127    }
3128}
3129impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy30 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
3130    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29), (T30, T31));
3131    fn split_to_tuple_by_30(self) -> Self::OutTuple {
3132        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29), (self.30, self.31))
3133    }
3134}
3135#[doc = "Split to tuple by 31"]
3136pub trait TupleSplitToTupleBy31 {
3137    type OutTuple;
3138    #[doc = "Split to tuple by 31"]
3139    fn split_to_tuple_by_31(self) -> Self::OutTuple;
3140}
3141impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30> TupleSplitToTupleBy31 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30) {
3142    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30),);
3143    fn split_to_tuple_by_31(self) -> Self::OutTuple {
3144        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29, self.30),)
3145    }
3146}
3147impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31> TupleSplitToTupleBy31 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31) {
3148    type OutTuple = ((T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30), (T31,));
3149    fn split_to_tuple_by_31(self) -> Self::OutTuple {
3150        ((self.0, self.1, self.2, self.3, self.4, self.5, self.6, self.7, self.8, self.9, self.10, self.11, self.12, self.13, self.14, self.15, self.16, self.17, self.18, self.19, self.20, self.21, self.22, self.23, self.24, self.25, self.26, self.27, self.28, self.29, self.30), (self.31,))
3151    }
3152}