de.caff.generics.tuple

## Interface ITuple7<T1,T2,T3,T4,T5,T6,T7>

- Type Parameters:
    `T1` - type of first element
    `T2` - type of second element
    `T3` - type of third element
    `T4` - type of fourth element
    `T5` - type of fifth element
    `T6` - type of sixth element
    `T7` - type of seventh element
  All Known Implementing Classes:
    ITuple7.Base, NTuple7, Tuple7

      public interface ITuple7<T1,T2,T3,T4,T5,T6,T7>

  General interface for immutable 7-tuples.

  This is sometimes useful to access either `Tuple7` or `NTuple7` in a general way, although in most cases the concrete implementations are usually preferable.

  If you want to iterate over a tuple or access its elements by index (note that both is only possible for a common super type of the tuple's types) `Indexable.viewTuple(ITuple7)` will come to help.

  Note that this class is automatically created by `tools.TupleClassCreator` (not yet public).

  Since:
    November 17, 2021
  Author:
    Rammi
  See Also:
    `Tuple7`, `NTuple7`

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface and Description
    --- | ---
    `static class` | `ITuple7.Base<T1,T2,T3,T4,T5,T6,T7>` Abstract base implementation of a 7-tuple.

  - ### Method Summary

    All Methods Static Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `T1` | `_1()` Get the first element.
    `default ITuple2<T1,T2>` | `_12()` Create a new 2-tuple from this one where the elements are ordered: 1st, 2nd.
    `default ITuple3<T1,T2,T3>` | `_123()` Create a new 3-tuple from this one where the elements are ordered: 1st, 2nd, 3rd.
    `default ITuple4<T1,T2,T3,T4>` | `_1234()` Create a new 4-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 4th.
    `default ITuple5<T1,T2,T3,T4,T5>` | `_12345()` Create a new 5-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 4th, 5th.
    `default ITuple6<T1,T2,T3,T4,T5,T6>` | `_123456()` Create a new 6-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 4th, 5th, 6th.
    `default ITuple6<T1,T2,T3,T4,T5,T7>` | `_123457()` Create a new 6-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 4th, 5th, 7th.
    `default ITuple5<T1,T2,T3,T4,T6>` | `_12346()` Create a new 5-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 4th, 6th.
    `default ITuple6<T1,T2,T3,T4,T6,T7>` | `_123467()` Create a new 6-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 4th, 6th, 7th.
    `default ITuple5<T1,T2,T3,T4,T7>` | `_12347()` Create a new 5-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 4th, 7th.
    `default ITuple4<T1,T2,T3,T5>` | `_1235()` Create a new 4-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 5th.
    `default ITuple5<T1,T2,T3,T5,T6>` | `_12356()` Create a new 5-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 5th, 6th.
    `default ITuple6<T1,T2,T3,T5,T6,T7>` | `_123567()` Create a new 6-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 5th, 6th, 7th.
    `default ITuple5<T1,T2,T3,T5,T7>` | `_12357()` Create a new 5-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 5th, 7th.
    `default ITuple4<T1,T2,T3,T6>` | `_1236()` Create a new 4-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 6th.
    `default ITuple5<T1,T2,T3,T6,T7>` | `_12367()` Create a new 5-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 6th, 7th.
    `default ITuple4<T1,T2,T3,T7>` | `_1237()` Create a new 4-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 7th.
    `default ITuple3<T1,T2,T4>` | `_124()` Create a new 3-tuple from this one where the elements are ordered: 1st, 2nd, 4th.
    `default ITuple4<T1,T2,T4,T5>` | `_1245()` Create a new 4-tuple from this one where the elements are ordered: 1st, 2nd, 4th, 5th.
    `default ITuple5<T1,T2,T4,T5,T6>` | `_12456()` Create a new 5-tuple from this one where the elements are ordered: 1st, 2nd, 4th, 5th, 6th.
    `default ITuple6<T1,T2,T4,T5,T6,T7>` | `_124567()` Create a new 6-tuple from this one where the elements are ordered: 1st, 2nd, 4th, 5th, 6th, 7th.
    `default ITuple5<T1,T2,T4,T5,T7>` | `_12457()` Create a new 5-tuple from this one where the elements are ordered: 1st, 2nd, 4th, 5th, 7th.
    `default ITuple4<T1,T2,T4,T6>` | `_1246()` Create a new 4-tuple from this one where the elements are ordered: 1st, 2nd, 4th, 6th.
    `default ITuple5<T1,T2,T4,T6,T7>` | `_12467()` Create a new 5-tuple from this one where the elements are ordered: 1st, 2nd, 4th, 6th, 7th.
    `default ITuple4<T1,T2,T4,T7>` | `_1247()` Create a new 4-tuple from this one where the elements are ordered: 1st, 2nd, 4th, 7th.
    `default ITuple3<T1,T2,T5>` | `_125()` Create a new 3-tuple from this one where the elements are ordered: 1st, 2nd, 5th.
    `default ITuple4<T1,T2,T5,T6>` | `_1256()` Create a new 4-tuple from this one where the elements are ordered: 1st, 2nd, 5th, 6th.
    `default ITuple5<T1,T2,T5,T6,T7>` | `_12567()` Create a new 5-tuple from this one where the elements are ordered: 1st, 2nd, 5th, 6th, 7th.
    `default ITuple4<T1,T2,T5,T7>` | `_1257()` Create a new 4-tuple from this one where the elements are ordered: 1st, 2nd, 5th, 7th.
    `default ITuple3<T1,T2,T6>` | `_126()` Create a new 3-tuple from this one where the elements are ordered: 1st, 2nd, 6th.
    `default ITuple4<T1,T2,T6,T7>` | `_1267()` Create a new 4-tuple from this one where the elements are ordered: 1st, 2nd, 6th, 7th.
    `default ITuple3<T1,T2,T7>` | `_127()` Create a new 3-tuple from this one where the elements are ordered: 1st, 2nd, 7th.
    `default ITuple2<T1,T3>` | `_13()` Create a new 2-tuple from this one where the elements are ordered: 1st, 3rd.
    `default ITuple3<T1,T3,T2>` | `_132()` Create a new 3-tuple from this one where the elements are ordered: 1st, 3rd, 2nd.
    `default ITuple3<T1,T3,T4>` | `_134()` Create a new 3-tuple from this one where the elements are ordered: 1st, 3rd, 4th.
    `default ITuple4<T1,T3,T4,T5>` | `_1345()` Create a new 4-tuple from this one where the elements are ordered: 1st, 3rd, 4th, 5th.
    `default ITuple5<T1,T3,T4,T5,T6>` | `_13456()` Create a new 5-tuple from this one where the elements are ordered: 1st, 3rd, 4th, 5th, 6th.
    `default ITuple6<T1,T3,T4,T5,T6,T7>` | `_134567()` Create a new 6-tuple from this one where the elements are ordered: 1st, 3rd, 4th, 5th, 6th, 7th.
    `default ITuple5<T1,T3,T4,T5,T7>` | `_13457()` Create a new 5-tuple from this one where the elements are ordered: 1st, 3rd, 4th, 5th, 7th.
    `default ITuple4<T1,T3,T4,T6>` | `_1346()` Create a new 4-tuple from this one where the elements are ordered: 1st, 3rd, 4th, 6th.
    `default ITuple5<T1,T3,T4,T6,T7>` | `_13467()` Create a new 5-tuple from this one where the elements are ordered: 1st, 3rd, 4th, 6th, 7th.
    `default ITuple4<T1,T3,T4,T7>` | `_1347()` Create a new 4-tuple from this one where the elements are ordered: 1st, 3rd, 4th, 7th.
    `default ITuple3<T1,T3,T5>` | `_135()` Create a new 3-tuple from this one where the elements are ordered: 1st, 3rd, 5th.
    `default ITuple4<T1,T3,T5,T6>` | `_1356()` Create a new 4-tuple from this one where the elements are ordered: 1st, 3rd, 5th, 6th.
    `default ITuple5<T1,T3,T5,T6,T7>` | `_13567()` Create a new 5-tuple from this one where the elements are ordered: 1st, 3rd, 5th, 6th, 7th.
    `default ITuple4<T1,T3,T5,T7>` | `_1357()` Create a new 4-tuple from this one where the elements are ordered: 1st, 3rd, 5th, 7th.
    `default ITuple3<T1,T3,T6>` | `_136()` Create a new 3-tuple from this one where the elements are ordered: 1st, 3rd, 6th.
    `default ITuple4<T1,T3,T6,T7>` | `_1367()` Create a new 4-tuple from this one where the elements are ordered: 1st, 3rd, 6th, 7th.
    `default ITuple3<T1,T3,T7>` | `_137()` Create a new 3-tuple from this one where the elements are ordered: 1st, 3rd, 7th.
    `default ITuple2<T1,T4>` | `_14()` Create a new 2-tuple from this one where the elements are ordered: 1st, 4th.
    `default ITuple3<T1,T4,T2>` | `_142()` Create a new 3-tuple from this one where the elements are ordered: 1st, 4th, 2nd.
    `default ITuple3<T1,T4,T3>` | `_143()` Create a new 3-tuple from this one where the elements are ordered: 1st, 4th, 3rd.
    `default ITuple3<T1,T4,T5>` | `_145()` Create a new 3-tuple from this one where the elements are ordered: 1st, 4th, 5th.
    `default ITuple4<T1,T4,T5,T6>` | `_1456()` Create a new 4-tuple from this one where the elements are ordered: 1st, 4th, 5th, 6th.
    `default ITuple5<T1,T4,T5,T6,T7>` | `_14567()` Create a new 5-tuple from this one where the elements are ordered: 1st, 4th, 5th, 6th, 7th.
    `default ITuple4<T1,T4,T5,T7>` | `_1457()` Create a new 4-tuple from this one where the elements are ordered: 1st, 4th, 5th, 7th.
    `default ITuple3<T1,T4,T6>` | `_146()` Create a new 3-tuple from this one where the elements are ordered: 1st, 4th, 6th.
    `default ITuple4<T1,T4,T6,T7>` | `_1467()` Create a new 4-tuple from this one where the elements are ordered: 1st, 4th, 6th, 7th.
    `default ITuple3<T1,T4,T7>` | `_147()` Create a new 3-tuple from this one where the elements are ordered: 1st, 4th, 7th.
    `default ITuple2<T1,T5>` | `_15()` Create a new 2-tuple from this one where the elements are ordered: 1st, 5th.
    `default ITuple3<T1,T5,T2>` | `_152()` Create a new 3-tuple from this one where the elements are ordered: 1st, 5th, 2nd.
    `default ITuple3<T1,T5,T3>` | `_153()` Create a new 3-tuple from this one where the elements are ordered: 1st, 5th, 3rd.
    `default ITuple3<T1,T5,T4>` | `_154()` Create a new 3-tuple from this one where the elements are ordered: 1st, 5th, 4th.
    `default ITuple3<T1,T5,T6>` | `_156()` Create a new 3-tuple from this one where the elements are ordered: 1st, 5th, 6th.
    `default ITuple4<T1,T5,T6,T7>` | `_1567()` Create a new 4-tuple from this one where the elements are ordered: 1st, 5th, 6th, 7th.
    `default ITuple3<T1,T5,T7>` | `_157()` Create a new 3-tuple from this one where the elements are ordered: 1st, 5th, 7th.
    `default ITuple2<T1,T6>` | `_16()` Create a new 2-tuple from this one where the elements are ordered: 1st, 6th.
    `default ITuple3<T1,T6,T2>` | `_162()` Create a new 3-tuple from this one where the elements are ordered: 1st, 6th, 2nd.
    `default ITuple3<T1,T6,T3>` | `_163()` Create a new 3-tuple from this one where the elements are ordered: 1st, 6th, 3rd.
    `default ITuple3<T1,T6,T4>` | `_164()` Create a new 3-tuple from this one where the elements are ordered: 1st, 6th, 4th.
    `default ITuple3<T1,T6,T5>` | `_165()` Create a new 3-tuple from this one where the elements are ordered: 1st, 6th, 5th.
    `default ITuple3<T1,T6,T7>` | `_167()` Create a new 3-tuple from this one where the elements are ordered: 1st, 6th, 7th.
    `default ITuple2<T1,T7>` | `_17()` Create a new 2-tuple from this one where the elements are ordered: 1st, 7th.
    `default ITuple3<T1,T7,T2>` | `_172()` Create a new 3-tuple from this one where the elements are ordered: 1st, 7th, 2nd.
    `default ITuple3<T1,T7,T3>` | `_173()` Create a new 3-tuple from this one where the elements are ordered: 1st, 7th, 3rd.
    `default ITuple3<T1,T7,T4>` | `_174()` Create a new 3-tuple from this one where the elements are ordered: 1st, 7th, 4th.
    `default ITuple3<T1,T7,T5>` | `_175()` Create a new 3-tuple from this one where the elements are ordered: 1st, 7th, 5th.
    `default ITuple3<T1,T7,T6>` | `_176()` Create a new 3-tuple from this one where the elements are ordered: 1st, 7th, 6th.
    `T2` | `_2()` Get the second element.
    `default ITuple2<T2,T1>` | `_21()` Create a new 2-tuple from this one where the elements are ordered: 2nd, 1st.
    `default ITuple3<T2,T1,T3>` | `_213()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 1st, 3rd.
    `default ITuple3<T2,T1,T4>` | `_214()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 1st, 4th.
    `default ITuple3<T2,T1,T5>` | `_215()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 1st, 5th.
    `default ITuple3<T2,T1,T6>` | `_216()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 1st, 6th.
    `default ITuple3<T2,T1,T7>` | `_217()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 1st, 7th.
    `default ITuple2<T2,T3>` | `_23()` Create a new 2-tuple from this one where the elements are ordered: 2nd, 3rd.
    `default ITuple3<T2,T3,T1>` | `_231()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 3rd, 1st.
    `default ITuple3<T2,T3,T4>` | `_234()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 3rd, 4th.
    `default ITuple4<T2,T3,T4,T5>` | `_2345()` Create a new 4-tuple from this one where the elements are ordered: 2nd, 3rd, 4th, 5th.
    `default ITuple5<T2,T3,T4,T5,T6>` | `_23456()` Create a new 5-tuple from this one where the elements are ordered: 2nd, 3rd, 4th, 5th, 6th.
    `default ITuple6<T2,T3,T4,T5,T6,T7>` | `_234567()` Create a new 6-tuple from this one where the elements are ordered: 2nd, 3rd, 4th, 5th, 6th, 7th.
    `default ITuple5<T2,T3,T4,T5,T7>` | `_23457()` Create a new 5-tuple from this one where the elements are ordered: 2nd, 3rd, 4th, 5th, 7th.
    `default ITuple4<T2,T3,T4,T6>` | `_2346()` Create a new 4-tuple from this one where the elements are ordered: 2nd, 3rd, 4th, 6th.
    `default ITuple5<T2,T3,T4,T6,T7>` | `_23467()` Create a new 5-tuple from this one where the elements are ordered: 2nd, 3rd, 4th, 6th, 7th.
    `default ITuple4<T2,T3,T4,T7>` | `_2347()` Create a new 4-tuple from this one where the elements are ordered: 2nd, 3rd, 4th, 7th.
    `default ITuple3<T2,T3,T5>` | `_235()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 3rd, 5th.
    `default ITuple4<T2,T3,T5,T6>` | `_2356()` Create a new 4-tuple from this one where the elements are ordered: 2nd, 3rd, 5th, 6th.
    `default ITuple5<T2,T3,T5,T6,T7>` | `_23567()` Create a new 5-tuple from this one where the elements are ordered: 2nd, 3rd, 5th, 6th, 7th.
    `default ITuple4<T2,T3,T5,T7>` | `_2357()` Create a new 4-tuple from this one where the elements are ordered: 2nd, 3rd, 5th, 7th.
    `default ITuple3<T2,T3,T6>` | `_236()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 3rd, 6th.
    `default ITuple4<T2,T3,T6,T7>` | `_2367()` Create a new 4-tuple from this one where the elements are ordered: 2nd, 3rd, 6th, 7th.
    `default ITuple3<T2,T3,T7>` | `_237()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 3rd, 7th.
    `default ITuple2<T2,T4>` | `_24()` Create a new 2-tuple from this one where the elements are ordered: 2nd, 4th.
    `default ITuple3<T2,T4,T1>` | `_241()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 4th, 1st.
    `default ITuple3<T2,T4,T3>` | `_243()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 4th, 3rd.
    `default ITuple3<T2,T4,T5>` | `_245()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 4th, 5th.
    `default ITuple4<T2,T4,T5,T6>` | `_2456()` Create a new 4-tuple from this one where the elements are ordered: 2nd, 4th, 5th, 6th.
    `default ITuple5<T2,T4,T5,T6,T7>` | `_24567()` Create a new 5-tuple from this one where the elements are ordered: 2nd, 4th, 5th, 6th, 7th.
    `default ITuple4<T2,T4,T5,T7>` | `_2457()` Create a new 4-tuple from this one where the elements are ordered: 2nd, 4th, 5th, 7th.
    `default ITuple3<T2,T4,T6>` | `_246()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 4th, 6th.
    `default ITuple4<T2,T4,T6,T7>` | `_2467()` Create a new 4-tuple from this one where the elements are ordered: 2nd, 4th, 6th, 7th.
    `default ITuple3<T2,T4,T7>` | `_247()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 4th, 7th.
    `default ITuple2<T2,T5>` | `_25()` Create a new 2-tuple from this one where the elements are ordered: 2nd, 5th.
    `default ITuple3<T2,T5,T1>` | `_251()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 5th, 1st.
    `default ITuple3<T2,T5,T3>` | `_253()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 5th, 3rd.
    `default ITuple3<T2,T5,T4>` | `_254()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 5th, 4th.
    `default ITuple3<T2,T5,T6>` | `_256()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 5th, 6th.
    `default ITuple4<T2,T5,T6,T7>` | `_2567()` Create a new 4-tuple from this one where the elements are ordered: 2nd, 5th, 6th, 7th.
    `default ITuple3<T2,T5,T7>` | `_257()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 5th, 7th.
    `default ITuple2<T2,T6>` | `_26()` Create a new 2-tuple from this one where the elements are ordered: 2nd, 6th.
    `default ITuple3<T2,T6,T1>` | `_261()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 6th, 1st.
    `default ITuple3<T2,T6,T3>` | `_263()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 6th, 3rd.
    `default ITuple3<T2,T6,T4>` | `_264()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 6th, 4th.
    `default ITuple3<T2,T6,T5>` | `_265()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 6th, 5th.
    `default ITuple3<T2,T6,T7>` | `_267()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 6th, 7th.
    `default ITuple2<T2,T7>` | `_27()` Create a new 2-tuple from this one where the elements are ordered: 2nd, 7th.
    `default ITuple3<T2,T7,T1>` | `_271()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 7th, 1st.
    `default ITuple3<T2,T7,T3>` | `_273()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 7th, 3rd.
    `default ITuple3<T2,T7,T4>` | `_274()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 7th, 4th.
    `default ITuple3<T2,T7,T5>` | `_275()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 7th, 5th.
    `default ITuple3<T2,T7,T6>` | `_276()` Create a new 3-tuple from this one where the elements are ordered: 2nd, 7th, 6th.
    `T3` | `_3()` Get the third element.
    `default ITuple2<T3,T1>` | `_31()` Create a new 2-tuple from this one where the elements are ordered: 3rd, 1st.
    `default ITuple3<T3,T1,T2>` | `_312()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 1st, 2nd.
    `default ITuple3<T3,T1,T4>` | `_314()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 1st, 4th.
    `default ITuple3<T3,T1,T5>` | `_315()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 1st, 5th.
    `default ITuple3<T3,T1,T6>` | `_316()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 1st, 6th.
    `default ITuple3<T3,T1,T7>` | `_317()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 1st, 7th.
    `default ITuple2<T3,T2>` | `_32()` Create a new 2-tuple from this one where the elements are ordered: 3rd, 2nd.
    `default ITuple3<T3,T2,T1>` | `_321()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 2nd, 1st.
    `default ITuple3<T3,T2,T4>` | `_324()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 2nd, 4th.
    `default ITuple3<T3,T2,T5>` | `_325()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 2nd, 5th.
    `default ITuple3<T3,T2,T6>` | `_326()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 2nd, 6th.
    `default ITuple3<T3,T2,T7>` | `_327()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 2nd, 7th.
    `default ITuple2<T3,T4>` | `_34()` Create a new 2-tuple from this one where the elements are ordered: 3rd, 4th.
    `default ITuple3<T3,T4,T1>` | `_341()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 4th, 1st.
    `default ITuple3<T3,T4,T2>` | `_342()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 4th, 2nd.
    `default ITuple3<T3,T4,T5>` | `_345()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 4th, 5th.
    `default ITuple4<T3,T4,T5,T6>` | `_3456()` Create a new 4-tuple from this one where the elements are ordered: 3rd, 4th, 5th, 6th.
    `default ITuple5<T3,T4,T5,T6,T7>` | `_34567()` Create a new 5-tuple from this one where the elements are ordered: 3rd, 4th, 5th, 6th, 7th.
    `default ITuple4<T3,T4,T5,T7>` | `_3457()` Create a new 4-tuple from this one where the elements are ordered: 3rd, 4th, 5th, 7th.
    `default ITuple3<T3,T4,T6>` | `_346()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 4th, 6th.
    `default ITuple4<T3,T4,T6,T7>` | `_3467()` Create a new 4-tuple from this one where the elements are ordered: 3rd, 4th, 6th, 7th.
    `default ITuple3<T3,T4,T7>` | `_347()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 4th, 7th.
    `default ITuple2<T3,T5>` | `_35()` Create a new 2-tuple from this one where the elements are ordered: 3rd, 5th.
    `default ITuple3<T3,T5,T1>` | `_351()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 5th, 1st.
    `default ITuple3<T3,T5,T2>` | `_352()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 5th, 2nd.
    `default ITuple3<T3,T5,T4>` | `_354()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 5th, 4th.
    `default ITuple3<T3,T5,T6>` | `_356()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 5th, 6th.
    `default ITuple4<T3,T5,T6,T7>` | `_3567()` Create a new 4-tuple from this one where the elements are ordered: 3rd, 5th, 6th, 7th.
    `default ITuple3<T3,T5,T7>` | `_357()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 5th, 7th.
    `default ITuple2<T3,T6>` | `_36()` Create a new 2-tuple from this one where the elements are ordered: 3rd, 6th.
    `default ITuple3<T3,T6,T1>` | `_361()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 6th, 1st.
    `default ITuple3<T3,T6,T2>` | `_362()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 6th, 2nd.
    `default ITuple3<T3,T6,T4>` | `_364()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 6th, 4th.
    `default ITuple3<T3,T6,T5>` | `_365()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 6th, 5th.
    `default ITuple3<T3,T6,T7>` | `_367()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 6th, 7th.
    `default ITuple2<T3,T7>` | `_37()` Create a new 2-tuple from this one where the elements are ordered: 3rd, 7th.
    `default ITuple3<T3,T7,T1>` | `_371()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 7th, 1st.
    `default ITuple3<T3,T7,T2>` | `_372()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 7th, 2nd.
    `default ITuple3<T3,T7,T4>` | `_374()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 7th, 4th.
    `default ITuple3<T3,T7,T5>` | `_375()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 7th, 5th.
    `default ITuple3<T3,T7,T6>` | `_376()` Create a new 3-tuple from this one where the elements are ordered: 3rd, 7th, 6th.
    `T4` | `_4()` Get the fourth element.
    `default ITuple2<T4,T1>` | `_41()` Create a new 2-tuple from this one where the elements are ordered: 4th, 1st.
    `default ITuple3<T4,T1,T2>` | `_412()` Create a new 3-tuple from this one where the elements are ordered: 4th, 1st, 2nd.
    `default ITuple3<T4,T1,T3>` | `_413()` Create a new 3-tuple from this one where the elements are ordered: 4th, 1st, 3rd.
    `default ITuple3<T4,T1,T5>` | `_415()` Create a new 3-tuple from this one where the elements are ordered: 4th, 1st, 5th.
    `default ITuple3<T4,T1,T6>` | `_416()` Create a new 3-tuple from this one where the elements are ordered: 4th, 1st, 6th.
    `default ITuple3<T4,T1,T7>` | `_417()` Create a new 3-tuple from this one where the elements are ordered: 4th, 1st, 7th.
    `default ITuple2<T4,T2>` | `_42()` Create a new 2-tuple from this one where the elements are ordered: 4th, 2nd.
    `default ITuple3<T4,T2,T1>` | `_421()` Create a new 3-tuple from this one where the elements are ordered: 4th, 2nd, 1st.
    `default ITuple3<T4,T2,T3>` | `_423()` Create a new 3-tuple from this one where the elements are ordered: 4th, 2nd, 3rd.
    `default ITuple3<T4,T2,T5>` | `_425()` Create a new 3-tuple from this one where the elements are ordered: 4th, 2nd, 5th.
    `default ITuple3<T4,T2,T6>` | `_426()` Create a new 3-tuple from this one where the elements are ordered: 4th, 2nd, 6th.
    `default ITuple3<T4,T2,T7>` | `_427()` Create a new 3-tuple from this one where the elements are ordered: 4th, 2nd, 7th.
    `default ITuple2<T4,T3>` | `_43()` Create a new 2-tuple from this one where the elements are ordered: 4th, 3rd.
    `default ITuple3<T4,T3,T1>` | `_431()` Create a new 3-tuple from this one where the elements are ordered: 4th, 3rd, 1st.
    `default ITuple3<T4,T3,T2>` | `_432()` Create a new 3-tuple from this one where the elements are ordered: 4th, 3rd, 2nd.
    `default ITuple3<T4,T3,T5>` | `_435()` Create a new 3-tuple from this one where the elements are ordered: 4th, 3rd, 5th.
    `default ITuple3<T4,T3,T6>` | `_436()` Create a new 3-tuple from this one where the elements are ordered: 4th, 3rd, 6th.
    `default ITuple3<T4,T3,T7>` | `_437()` Create a new 3-tuple from this one where the elements are ordered: 4th, 3rd, 7th.
    `default ITuple2<T4,T5>` | `_45()` Create a new 2-tuple from this one where the elements are ordered: 4th, 5th.
    `default ITuple3<T4,T5,T1>` | `_451()` Create a new 3-tuple from this one where the elements are ordered: 4th, 5th, 1st.
    `default ITuple3<T4,T5,T2>` | `_452()` Create a new 3-tuple from this one where the elements are ordered: 4th, 5th, 2nd.
    `default ITuple3<T4,T5,T3>` | `_453()` Create a new 3-tuple from this one where the elements are ordered: 4th, 5th, 3rd.
    `default ITuple3<T4,T5,T6>` | `_456()` Create a new 3-tuple from this one where the elements are ordered: 4th, 5th, 6th.
    `default ITuple4<T4,T5,T6,T7>` | `_4567()` Create a new 4-tuple from this one where the elements are ordered: 4th, 5th, 6th, 7th.
    `default ITuple3<T4,T5,T7>` | `_457()` Create a new 3-tuple from this one where the elements are ordered: 4th, 5th, 7th.
    `default ITuple2<T4,T6>` | `_46()` Create a new 2-tuple from this one where the elements are ordered: 4th, 6th.
    `default ITuple3<T4,T6,T1>` | `_461()` Create a new 3-tuple from this one where the elements are ordered: 4th, 6th, 1st.
    `default ITuple3<T4,T6,T2>` | `_462()` Create a new 3-tuple from this one where the elements are ordered: 4th, 6th, 2nd.
    `default ITuple3<T4,T6,T3>` | `_463()` Create a new 3-tuple from this one where the elements are ordered: 4th, 6th, 3rd.
    `default ITuple3<T4,T6,T5>` | `_465()` Create a new 3-tuple from this one where the elements are ordered: 4th, 6th, 5th.
    `default ITuple3<T4,T6,T7>` | `_467()` Create a new 3-tuple from this one where the elements are ordered: 4th, 6th, 7th.
    `default ITuple2<T4,T7>` | `_47()` Create a new 2-tuple from this one where the elements are ordered: 4th, 7th.
    `default ITuple3<T4,T7,T1>` | `_471()` Create a new 3-tuple from this one where the elements are ordered: 4th, 7th, 1st.
    `default ITuple3<T4,T7,T2>` | `_472()` Create a new 3-tuple from this one where the elements are ordered: 4th, 7th, 2nd.
    `default ITuple3<T4,T7,T3>` | `_473()` Create a new 3-tuple from this one where the elements are ordered: 4th, 7th, 3rd.
    `default ITuple3<T4,T7,T5>` | `_475()` Create a new 3-tuple from this one where the elements are ordered: 4th, 7th, 5th.
    `default ITuple3<T4,T7,T6>` | `_476()` Create a new 3-tuple from this one where the elements are ordered: 4th, 7th, 6th.
    `T5` | `_5()` Get the fifth element.
    `default ITuple2<T5,T1>` | `_51()` Create a new 2-tuple from this one where the elements are ordered: 5th, 1st.
    `default ITuple3<T5,T1,T2>` | `_512()` Create a new 3-tuple from this one where the elements are ordered: 5th, 1st, 2nd.
    `default ITuple3<T5,T1,T3>` | `_513()` Create a new 3-tuple from this one where the elements are ordered: 5th, 1st, 3rd.
    `default ITuple3<T5,T1,T4>` | `_514()` Create a new 3-tuple from this one where the elements are ordered: 5th, 1st, 4th.
    `default ITuple3<T5,T1,T6>` | `_516()` Create a new 3-tuple from this one where the elements are ordered: 5th, 1st, 6th.
    `default ITuple3<T5,T1,T7>` | `_517()` Create a new 3-tuple from this one where the elements are ordered: 5th, 1st, 7th.
    `default ITuple2<T5,T2>` | `_52()` Create a new 2-tuple from this one where the elements are ordered: 5th, 2nd.
    `default ITuple3<T5,T2,T1>` | `_521()` Create a new 3-tuple from this one where the elements are ordered: 5th, 2nd, 1st.
    `default ITuple3<T5,T2,T3>` | `_523()` Create a new 3-tuple from this one where the elements are ordered: 5th, 2nd, 3rd.
    `default ITuple3<T5,T2,T4>` | `_524()` Create a new 3-tuple from this one where the elements are ordered: 5th, 2nd, 4th.
    `default ITuple3<T5,T2,T6>` | `_526()` Create a new 3-tuple from this one where the elements are ordered: 5th, 2nd, 6th.
    `default ITuple3<T5,T2,T7>` | `_527()` Create a new 3-tuple from this one where the elements are ordered: 5th, 2nd, 7th.
    `default ITuple2<T5,T3>` | `_53()` Create a new 2-tuple from this one where the elements are ordered: 5th, 3rd.
    `default ITuple3<T5,T3,T1>` | `_531()` Create a new 3-tuple from this one where the elements are ordered: 5th, 3rd, 1st.
    `default ITuple3<T5,T3,T2>` | `_532()` Create a new 3-tuple from this one where the elements are ordered: 5th, 3rd, 2nd.
    `default ITuple3<T5,T3,T4>` | `_534()` Create a new 3-tuple from this one where the elements are ordered: 5th, 3rd, 4th.
    `default ITuple3<T5,T3,T6>` | `_536()` Create a new 3-tuple from this one where the elements are ordered: 5th, 3rd, 6th.
    `default ITuple3<T5,T3,T7>` | `_537()` Create a new 3-tuple from this one where the elements are ordered: 5th, 3rd, 7th.
    `default ITuple2<T5,T4>` | `_54()` Create a new 2-tuple from this one where the elements are ordered: 5th, 4th.
    `default ITuple3<T5,T4,T1>` | `_541()` Create a new 3-tuple from this one where the elements are ordered: 5th, 4th, 1st.
    `default ITuple3<T5,T4,T2>` | `_542()` Create a new 3-tuple from this one where the elements are ordered: 5th, 4th, 2nd.
    `default ITuple3<T5,T4,T3>` | `_543()` Create a new 3-tuple from this one where the elements are ordered: 5th, 4th, 3rd.
    `default ITuple3<T5,T4,T6>` | `_546()` Create a new 3-tuple from this one where the elements are ordered: 5th, 4th, 6th.
    `default ITuple3<T5,T4,T7>` | `_547()` Create a new 3-tuple from this one where the elements are ordered: 5th, 4th, 7th.
    `default ITuple2<T5,T6>` | `_56()` Create a new 2-tuple from this one where the elements are ordered: 5th, 6th.
    `default ITuple3<T5,T6,T1>` | `_561()` Create a new 3-tuple from this one where the elements are ordered: 5th, 6th, 1st.
    `default ITuple3<T5,T6,T2>` | `_562()` Create a new 3-tuple from this one where the elements are ordered: 5th, 6th, 2nd.
    `default ITuple3<T5,T6,T3>` | `_563()` Create a new 3-tuple from this one where the elements are ordered: 5th, 6th, 3rd.
    `default ITuple3<T5,T6,T4>` | `_564()` Create a new 3-tuple from this one where the elements are ordered: 5th, 6th, 4th.
    `default ITuple3<T5,T6,T7>` | `_567()` Create a new 3-tuple from this one where the elements are ordered: 5th, 6th, 7th.
    `default ITuple2<T5,T7>` | `_57()` Create a new 2-tuple from this one where the elements are ordered: 5th, 7th.
    `default ITuple3<T5,T7,T1>` | `_571()` Create a new 3-tuple from this one where the elements are ordered: 5th, 7th, 1st.
    `default ITuple3<T5,T7,T2>` | `_572()` Create a new 3-tuple from this one where the elements are ordered: 5th, 7th, 2nd.
    `default ITuple3<T5,T7,T3>` | `_573()` Create a new 3-tuple from this one where the elements are ordered: 5th, 7th, 3rd.
    `default ITuple3<T5,T7,T4>` | `_574()` Create a new 3-tuple from this one where the elements are ordered: 5th, 7th, 4th.
    `default ITuple3<T5,T7,T6>` | `_576()` Create a new 3-tuple from this one where the elements are ordered: 5th, 7th, 6th.
    `T6` | `_6()` Get the sixth element.
    `default ITuple2<T6,T1>` | `_61()` Create a new 2-tuple from this one where the elements are ordered: 6th, 1st.
    `default ITuple3<T6,T1,T2>` | `_612()` Create a new 3-tuple from this one where the elements are ordered: 6th, 1st, 2nd.
    `default ITuple3<T6,T1,T3>` | `_613()` Create a new 3-tuple from this one where the elements are ordered: 6th, 1st, 3rd.
    `default ITuple3<T6,T1,T4>` | `_614()` Create a new 3-tuple from this one where the elements are ordered: 6th, 1st, 4th.
    `default ITuple3<T6,T1,T5>` | `_615()` Create a new 3-tuple from this one where the elements are ordered: 6th, 1st, 5th.
    `default ITuple3<T6,T1,T7>` | `_617()` Create a new 3-tuple from this one where the elements are ordered: 6th, 1st, 7th.
    `default ITuple2<T6,T2>` | `_62()` Create a new 2-tuple from this one where the elements are ordered: 6th, 2nd.
    `default ITuple3<T6,T2,T1>` | `_621()` Create a new 3-tuple from this one where the elements are ordered: 6th, 2nd, 1st.
    `default ITuple3<T6,T2,T3>` | `_623()` Create a new 3-tuple from this one where the elements are ordered: 6th, 2nd, 3rd.
    `default ITuple3<T6,T2,T4>` | `_624()` Create a new 3-tuple from this one where the elements are ordered: 6th, 2nd, 4th.
    `default ITuple3<T6,T2,T5>` | `_625()` Create a new 3-tuple from this one where the elements are ordered: 6th, 2nd, 5th.
    `default ITuple3<T6,T2,T7>` | `_627()` Create a new 3-tuple from this one where the elements are ordered: 6th, 2nd, 7th.
    `default ITuple2<T6,T3>` | `_63()` Create a new 2-tuple from this one where the elements are ordered: 6th, 3rd.
    `default ITuple3<T6,T3,T1>` | `_631()` Create a new 3-tuple from this one where the elements are ordered: 6th, 3rd, 1st.
    `default ITuple3<T6,T3,T2>` | `_632()` Create a new 3-tuple from this one where the elements are ordered: 6th, 3rd, 2nd.
    `default ITuple3<T6,T3,T4>` | `_634()` Create a new 3-tuple from this one where the elements are ordered: 6th, 3rd, 4th.
    `default ITuple3<T6,T3,T5>` | `_635()` Create a new 3-tuple from this one where the elements are ordered: 6th, 3rd, 5th.
    `default ITuple3<T6,T3,T7>` | `_637()` Create a new 3-tuple from this one where the elements are ordered: 6th, 3rd, 7th.
    `default ITuple2<T6,T4>` | `_64()` Create a new 2-tuple from this one where the elements are ordered: 6th, 4th.
    `default ITuple3<T6,T4,T1>` | `_641()` Create a new 3-tuple from this one where the elements are ordered: 6th, 4th, 1st.
    `default ITuple3<T6,T4,T2>` | `_642()` Create a new 3-tuple from this one where the elements are ordered: 6th, 4th, 2nd.
    `default ITuple3<T6,T4,T3>` | `_643()` Create a new 3-tuple from this one where the elements are ordered: 6th, 4th, 3rd.
    `default ITuple3<T6,T4,T5>` | `_645()` Create a new 3-tuple from this one where the elements are ordered: 6th, 4th, 5th.
    `default ITuple3<T6,T4,T7>` | `_647()` Create a new 3-tuple from this one where the elements are ordered: 6th, 4th, 7th.
    `default ITuple2<T6,T5>` | `_65()` Create a new 2-tuple from this one where the elements are ordered: 6th, 5th.
    `default ITuple3<T6,T5,T1>` | `_651()` Create a new 3-tuple from this one where the elements are ordered: 6th, 5th, 1st.
    `default ITuple3<T6,T5,T2>` | `_652()` Create a new 3-tuple from this one where the elements are ordered: 6th, 5th, 2nd.
    `default ITuple3<T6,T5,T3>` | `_653()` Create a new 3-tuple from this one where the elements are ordered: 6th, 5th, 3rd.
    `default ITuple3<T6,T5,T4>` | `_654()` Create a new 3-tuple from this one where the elements are ordered: 6th, 5th, 4th.
    `default ITuple3<T6,T5,T7>` | `_657()` Create a new 3-tuple from this one where the elements are ordered: 6th, 5th, 7th.
    `default ITuple2<T6,T7>` | `_67()` Create a new 2-tuple from this one where the elements are ordered: 6th, 7th.
    `default ITuple3<T6,T7,T1>` | `_671()` Create a new 3-tuple from this one where the elements are ordered: 6th, 7th, 1st.
    `default ITuple3<T6,T7,T2>` | `_672()` Create a new 3-tuple from this one where the elements are ordered: 6th, 7th, 2nd.
    `default ITuple3<T6,T7,T3>` | `_673()` Create a new 3-tuple from this one where the elements are ordered: 6th, 7th, 3rd.
    `default ITuple3<T6,T7,T4>` | `_674()` Create a new 3-tuple from this one where the elements are ordered: 6th, 7th, 4th.
    `default ITuple3<T6,T7,T5>` | `_675()` Create a new 3-tuple from this one where the elements are ordered: 6th, 7th, 5th.
    `T7` | `_7()` Get the seventh element.
    `default ITuple2<T7,T1>` | `_71()` Create a new 2-tuple from this one where the elements are ordered: 7th, 1st.
    `default ITuple3<T7,T1,T2>` | `_712()` Create a new 3-tuple from this one where the elements are ordered: 7th, 1st, 2nd.
    `default ITuple3<T7,T1,T3>` | `_713()` Create a new 3-tuple from this one where the elements are ordered: 7th, 1st, 3rd.
    `default ITuple3<T7,T1,T4>` | `_714()` Create a new 3-tuple from this one where the elements are ordered: 7th, 1st, 4th.
    `default ITuple3<T7,T1,T5>` | `_715()` Create a new 3-tuple from this one where the elements are ordered: 7th, 1st, 5th.
    `default ITuple3<T7,T1,T6>` | `_716()` Create a new 3-tuple from this one where the elements are ordered: 7th, 1st, 6th.
    `default ITuple2<T7,T2>` | `_72()` Create a new 2-tuple from this one where the elements are ordered: 7th, 2nd.
    `default ITuple3<T7,T2,T1>` | `_721()` Create a new 3-tuple from this one where the elements are ordered: 7th, 2nd, 1st.
    `default ITuple3<T7,T2,T3>` | `_723()` Create a new 3-tuple from this one where the elements are ordered: 7th, 2nd, 3rd.
    `default ITuple3<T7,T2,T4>` | `_724()` Create a new 3-tuple from this one where the elements are ordered: 7th, 2nd, 4th.
    `default ITuple3<T7,T2,T5>` | `_725()` Create a new 3-tuple from this one where the elements are ordered: 7th, 2nd, 5th.
    `default ITuple3<T7,T2,T6>` | `_726()` Create a new 3-tuple from this one where the elements are ordered: 7th, 2nd, 6th.
    `default ITuple2<T7,T3>` | `_73()` Create a new 2-tuple from this one where the elements are ordered: 7th, 3rd.
    `default ITuple3<T7,T3,T1>` | `_731()` Create a new 3-tuple from this one where the elements are ordered: 7th, 3rd, 1st.
    `default ITuple3<T7,T3,T2>` | `_732()` Create a new 3-tuple from this one where the elements are ordered: 7th, 3rd, 2nd.
    `default ITuple3<T7,T3,T4>` | `_734()` Create a new 3-tuple from this one where the elements are ordered: 7th, 3rd, 4th.
    `default ITuple3<T7,T3,T5>` | `_735()` Create a new 3-tuple from this one where the elements are ordered: 7th, 3rd, 5th.
    `default ITuple3<T7,T3,T6>` | `_736()` Create a new 3-tuple from this one where the elements are ordered: 7th, 3rd, 6th.
    `default ITuple2<T7,T4>` | `_74()` Create a new 2-tuple from this one where the elements are ordered: 7th, 4th.
    `default ITuple3<T7,T4,T1>` | `_741()` Create a new 3-tuple from this one where the elements are ordered: 7th, 4th, 1st.
    `default ITuple3<T7,T4,T2>` | `_742()` Create a new 3-tuple from this one where the elements are ordered: 7th, 4th, 2nd.
    `default ITuple3<T7,T4,T3>` | `_743()` Create a new 3-tuple from this one where the elements are ordered: 7th, 4th, 3rd.
    `default ITuple3<T7,T4,T5>` | `_745()` Create a new 3-tuple from this one where the elements are ordered: 7th, 4th, 5th.
    `default ITuple3<T7,T4,T6>` | `_746()` Create a new 3-tuple from this one where the elements are ordered: 7th, 4th, 6th.
    `default ITuple2<T7,T5>` | `_75()` Create a new 2-tuple from this one where the elements are ordered: 7th, 5th.
    `default ITuple3<T7,T5,T1>` | `_751()` Create a new 3-tuple from this one where the elements are ordered: 7th, 5th, 1st.
    `default ITuple3<T7,T5,T2>` | `_752()` Create a new 3-tuple from this one where the elements are ordered: 7th, 5th, 2nd.
    `default ITuple3<T7,T5,T3>` | `_753()` Create a new 3-tuple from this one where the elements are ordered: 7th, 5th, 3rd.
    `default ITuple3<T7,T5,T4>` | `_754()` Create a new 3-tuple from this one where the elements are ordered: 7th, 5th, 4th.
    `default ITuple3<T7,T5,T6>` | `_756()` Create a new 3-tuple from this one where the elements are ordered: 7th, 5th, 6th.
    `default ITuple2<T7,T6>` | `_76()` Create a new 2-tuple from this one where the elements are ordered: 7th, 6th.
    `default ITuple3<T7,T6,T1>` | `_761()` Create a new 3-tuple from this one where the elements are ordered: 7th, 6th, 1st.
    `default ITuple3<T7,T6,T2>` | `_762()` Create a new 3-tuple from this one where the elements are ordered: 7th, 6th, 2nd.
    `default ITuple3<T7,T6,T3>` | `_763()` Create a new 3-tuple from this one where the elements are ordered: 7th, 6th, 3rd.
    `default ITuple3<T7,T6,T4>` | `_764()` Create a new 3-tuple from this one where the elements are ordered: 7th, 6th, 4th.
    `default ITuple3<T7,T6,T5>` | `_765()` Create a new 3-tuple from this one where the elements are ordered: 7th, 6th, 5th.
    `default ITuple7.Base<T1,T2,T3,T4,T5,T6,T7>` | `asBase()` Convert this 7-tuple into a `base tuple` which provides useful implementations for standard methods.
    `static <S1,E1,E2,E3,E4,E5,E6,E7,R> java.util.function.Function<S1,R>` | `concat1(java.util.function.Function<S1,? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>> fn1, Function7<R,? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> fn2)` Combine a 1-argument function returning a 7-tuple with a 7-parameter function returning another result value into one 1-argument function.
    `static <S1,S2,E1,E2,E3,E4,E5,E6,E7,R> java.util.function.BiFunction<S1,S2,R>` | `concat2(java.util.function.BiFunction<S1,S2,? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>> fn1, Function7<R,? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> fn2)` Combine a 2-argument function returning a 7-tuple with a 7-parameter function returning another result value into one 2-argument function.
    `static <S1,S2,S3,E1,E2,E3,E4,E5,E6,E7,R> Function3<R,S1,S2,S3>` | `concat3(Function3<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3> fn1, Function7<R,? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> fn2)` Combine a 3-argument function returning a 7-tuple with a 7-parameter function returning another result value into one 3-argument function.
    `static <S1,S2,S3,S4,E1,E2,E3,E4,E5,E6,E7,R> Function4<R,S1,S2,S3,S4>` | `concat4(Function4<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4> fn1, Function7<R,? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> fn2)` Combine a 4-argument function returning a 7-tuple with a 7-parameter function returning another result value into one 4-argument function.
    `static <S1,S2,S3,S4,S5,E1,E2,E3,E4,E5,E6,E7,R> Function5<R,S1,S2,S3,S4,S5>` | `concat5(Function5<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4,S5> fn1, Function7<R,? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> fn2)` Combine a 5-argument function returning a 7-tuple with a 7-parameter function returning another result value into one 5-argument function.
    `static <S1,S2,S3,S4,S5,S6,E1,E2,E3,E4,E5,E6,E7,R> Function6<R,S1,S2,S3,S4,S5,S6>` | `concat6(Function6<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4,S5,S6> fn1, Function7<R,? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> fn2)` Combine a 6-argument function returning a 7-tuple with a 7-parameter function returning another result value into one 6-argument function.
    `static <S1,S2,S3,S4,S5,S6,S7,E1,E2,E3,E4,E5,E6,E7,R> Function7<R,S1,S2,S3,S4,S5,S6,S7>` | `concat7(Function7<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4,S5,S6,S7> fn1, Function7<R,? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> fn2)` Combine a 7-argument function returning a 7-tuple with a 7-parameter function returning another result value into one 7-argument function.
    `static <S1,S2,S3,S4,S5,S6,S7,S8,E1,E2,E3,E4,E5,E6,E7,R> Function8<R,S1,S2,S3,S4,S5,S6,S7,S8>` | `concat8(Function8<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4,S5,S6,S7,S8> fn1, Function7<R,? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> fn2)` Combine a 8-argument function returning a 7-tuple with a 7-parameter function returning another result value into one 8-argument function.
    `static <S1,E1,E2,E3,E4,E5,E6,E7> java.util.function.Predicate<S1>` | `concatPred1(java.util.function.Function<S1,? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>> fn1, Predicate7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> pred2)` Combine a 1-argument function returning a 7-tuple with a 7-parameter predicate into a 1-argument predicate.
    `static <S1,S2,E1,E2,E3,E4,E5,E6,E7> java.util.function.BiPredicate<S1,S2>` | `concatPred2(java.util.function.BiFunction<S1,S2,? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>> fn1, Predicate7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> pred2)` Combine a 2-argument function returning a 7-tuple with a 7-parameter predicate into a 2-argument predicate.
    `static <S1,S2,S3,E1,E2,E3,E4,E5,E6,E7> Predicate3<S1,S2,S3>` | `concatPred3(Function3<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3> fn1, Predicate7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> pred2)` Combine a 3-argument function returning a 7-tuple with a 7-parameter predicate into a 3-argument predicate.
    `static <S1,S2,S3,S4,E1,E2,E3,E4,E5,E6,E7> Predicate4<S1,S2,S3,S4>` | `concatPred4(Function4<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4> fn1, Predicate7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> pred2)` Combine a 4-argument function returning a 7-tuple with a 7-parameter predicate into a 4-argument predicate.
    `static <S1,S2,S3,S4,S5,E1,E2,E3,E4,E5,E6,E7> Predicate5<S1,S2,S3,S4,S5>` | `concatPred5(Function5<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4,S5> fn1, Predicate7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> pred2)` Combine a 5-argument function returning a 7-tuple with a 7-parameter predicate into a 5-argument predicate.
    `static <S1,S2,S3,S4,S5,S6,E1,E2,E3,E4,E5,E6,E7> Predicate6<S1,S2,S3,S4,S5,S6>` | `concatPred6(Function6<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4,S5,S6> fn1, Predicate7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> pred2)` Combine a 6-argument function returning a 7-tuple with a 7-parameter predicate into a 6-argument predicate.
    `static <S1,S2,S3,S4,S5,S6,S7,E1,E2,E3,E4,E5,E6,E7> Predicate7<S1,S2,S3,S4,S5,S6,S7>` | `concatPred7(Function7<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4,S5,S6,S7> fn1, Predicate7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> pred2)` Combine a 7-argument function returning a 7-tuple with a 7-parameter predicate into a 7-argument predicate.
    `static <S1,S2,S3,S4,S5,S6,S7,S8,E1,E2,E3,E4,E5,E6,E7> Predicate8<S1,S2,S3,S4,S5,S6,S7,S8>` | `concatPred8(Function8<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4,S5,S6,S7,S8> fn1, Predicate7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> pred2)` Combine a 8-argument function returning a 7-tuple with a 7-parameter predicate into a 8-argument predicate.
    `static <S1,E1,E2,E3,E4,E5,E6,E7> java.util.function.Consumer<S1>` | `concatProc1(java.util.function.Function<S1,? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>> fn1, Procedure7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> proc2)` Combine a 1-argument function returning a 7-tuple with a 7-parameter consumer/procedure into a 1-argument consumer/procedure.
    `static <S1,S2,E1,E2,E3,E4,E5,E6,E7> java.util.function.BiConsumer<S1,S2>` | `concatProc2(java.util.function.BiFunction<S1,S2,? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>> fn1, Procedure7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> proc2)` Combine a 2-argument function returning a 7-tuple with a 7-parameter consumer/procedure into a 2-argument consumer/procedure.
    `static <S1,S2,S3,E1,E2,E3,E4,E5,E6,E7> Procedure3<S1,S2,S3>` | `concatProc3(Function3<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3> fn1, Procedure7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> proc2)` Combine a 3-argument function returning a 7-tuple with a 7-parameter consumer/procedure into a 3-argument consumer/procedure.
    `static <S1,S2,S3,S4,E1,E2,E3,E4,E5,E6,E7> Procedure4<S1,S2,S3,S4>` | `concatProc4(Function4<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4> fn1, Procedure7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> proc2)` Combine a 4-argument function returning a 7-tuple with a 7-parameter consumer/procedure into a 4-argument consumer/procedure.
    `static <S1,S2,S3,S4,S5,E1,E2,E3,E4,E5,E6,E7> Procedure5<S1,S2,S3,S4,S5>` | `concatProc5(Function5<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4,S5> fn1, Procedure7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> proc2)` Combine a 5-argument function returning a 7-tuple with a 7-parameter consumer/procedure into a 5-argument consumer/procedure.
    `static <S1,S2,S3,S4,S5,S6,E1,E2,E3,E4,E5,E6,E7> Procedure6<S1,S2,S3,S4,S5,S6>` | `concatProc6(Function6<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4,S5,S6> fn1, Procedure7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> proc2)` Combine a 6-argument function returning a 7-tuple with a 7-parameter consumer/procedure into a 6-argument consumer/procedure.
    `static <S1,S2,S3,S4,S5,S6,S7,E1,E2,E3,E4,E5,E6,E7> Procedure7<S1,S2,S3,S4,S5,S6,S7>` | `concatProc7(Function7<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4,S5,S6,S7> fn1, Procedure7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> proc2)` Combine a 7-argument function returning a 7-tuple with a 7-parameter consumer/procedure into a 7-argument consumer/procedure.
    `static <S1,S2,S3,S4,S5,S6,S7,S8,E1,E2,E3,E4,E5,E6,E7> Procedure8<S1,S2,S3,S4,S5,S6,S7,S8>` | `concatProc8(Function8<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4,S5,S6,S7,S8> fn1, Procedure7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> proc2)` Combine a 8-argument function returning a 7-tuple with a 7-parameter consumer/procedure into a 8-argument consumer/procedure.
    `static boolean` | `equals(ITuple7<?,?,?,?,?,?,?> tuple, java.lang.Object o)` Basic implementation of equals for 7-tuples.
    `default NTuple7<T1,T2,T3,T4,T5,T6,T7>` | `frozen()` Convert this into an object of a concrete tuple implementation.
    `default Tuple7<T1,T2,T3,T4,T5,T6,T7>` | `frozenNotNull()` Convert this into an object of a concrete tuple implementation.
    `static int` | `hash(ITuple7<?,?,?,?,?,?,?> tuple)` Basic implementation for calculating a hash code of a 7-tuple.
    `default <T> T` | `invoke(Function7<T,? super T1,? super T2,? super T3,? super T4,? super T5,? super T6,? super T7> function)` Invoke a %d-argument function on this tuple.
    `default void` | `sendTo(Procedure7<? super T1,? super T2,? super T3,? super T4,? super T5,? super T6,? super T7> procedure)` Send this tuple unpacked to a 7-argument procedure.
    `default boolean` | `testBy(Predicate7<? super T1,? super T2,? super T3,? super T4,? super T5,? super T6,? super T7> predicate)` Test a 7-argument predicate with this tuple unpacked.
    `static java.lang.String` | `toString(ITuple7<?,?,?,?,?,?,?> tuple)` Basic implementation for creating a string from a 7-tuple.
    `static java.lang.String` | `toString(java.lang.String prefix, ITuple7<?,?,?,?,?,?,?> tuple)` Basic implementation for creating a string from a 7-tuple.
    `static <E1,E2,E3,E4,E5,E6,E7> ITuple7<E1,E2,E3,E4,E5,E6,E7>` | `view(E1 elem1, E2 elem2, E3 elem3, E4 elem4, E5 elem5, E6 elem6, E7 elem7)` Create a new 7-tuple on the fly.

- - ### Method Detail

    - #### _1

          T1 _1()

      Get the first element.
      Returns:
        first element

    - #### _2

          T2 _2()

      Get the second element.
      Returns:
        second element

    - #### _3

          T3 _3()

      Get the third element.
      Returns:
        third element

    - #### _4

          T4 _4()

      Get the fourth element.
      Returns:
        fourth element

    - #### _5

          T5 _5()

      Get the fifth element.
      Returns:
        fifth element

    - #### _6

          T6 _6()

      Get the sixth element.
      Returns:
        sixth element

    - #### _7

          T7 _7()

      Get the seventh element.
      Returns:
        seventh element

    - #### _123456

          @NotNull
          default ITuple6<T1,T2,T3,T4,T5,T6> _123456()

      Create a new 6-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 4th, 5th, 6th.
      Returns:
        reordered tuple

    - #### _123457

          @NotNull
          default ITuple6<T1,T2,T3,T4,T5,T7> _123457()

      Create a new 6-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 4th, 5th, 7th.
      Returns:
        reordered tuple

    - #### _123467

          @NotNull
          default ITuple6<T1,T2,T3,T4,T6,T7> _123467()

      Create a new 6-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 4th, 6th, 7th.
      Returns:
        reordered tuple

    - #### _123567

          @NotNull
          default ITuple6<T1,T2,T3,T5,T6,T7> _123567()

      Create a new 6-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 5th, 6th, 7th.
      Returns:
        reordered tuple

    - #### _124567

          @NotNull
          default ITuple6<T1,T2,T4,T5,T6,T7> _124567()

      Create a new 6-tuple from this one where the elements are ordered: 1st, 2nd, 4th, 5th, 6th, 7th.
      Returns:
        reordered tuple

    - #### _134567

          @NotNull
          default ITuple6<T1,T3,T4,T5,T6,T7> _134567()

      Create a new 6-tuple from this one where the elements are ordered: 1st, 3rd, 4th, 5th, 6th, 7th.
      Returns:
        reordered tuple

    - #### _234567

          @NotNull
          default ITuple6<T2,T3,T4,T5,T6,T7> _234567()

      Create a new 6-tuple from this one where the elements are ordered: 2nd, 3rd, 4th, 5th, 6th, 7th.
      Returns:
        reordered tuple

    - #### _12345

          @NotNull
          default ITuple5<T1,T2,T3,T4,T5> _12345()

      Create a new 5-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 4th, 5th.
      Returns:
        reordered tuple

    - #### _12346

          @NotNull
          default ITuple5<T1,T2,T3,T4,T6> _12346()

      Create a new 5-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 4th, 6th.
      Returns:
        reordered tuple

    - #### _12356

          @NotNull
          default ITuple5<T1,T2,T3,T5,T6> _12356()

      Create a new 5-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 5th, 6th.
      Returns:
        reordered tuple

    - #### _12456

          @NotNull
          default ITuple5<T1,T2,T4,T5,T6> _12456()

      Create a new 5-tuple from this one where the elements are ordered: 1st, 2nd, 4th, 5th, 6th.
      Returns:
        reordered tuple

    - #### _13456

          @NotNull
          default ITuple5<T1,T3,T4,T5,T6> _13456()

      Create a new 5-tuple from this one where the elements are ordered: 1st, 3rd, 4th, 5th, 6th.
      Returns:
        reordered tuple

    - #### _23456

          @NotNull
          default ITuple5<T2,T3,T4,T5,T6> _23456()

      Create a new 5-tuple from this one where the elements are ordered: 2nd, 3rd, 4th, 5th, 6th.
      Returns:
        reordered tuple

    - #### _12347

          @NotNull
          default ITuple5<T1,T2,T3,T4,T7> _12347()

      Create a new 5-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 4th, 7th.
      Returns:
        reordered tuple

    - #### _12357

          @NotNull
          default ITuple5<T1,T2,T3,T5,T7> _12357()

      Create a new 5-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 5th, 7th.
      Returns:
        reordered tuple

    - #### _12457

          @NotNull
          default ITuple5<T1,T2,T4,T5,T7> _12457()

      Create a new 5-tuple from this one where the elements are ordered: 1st, 2nd, 4th, 5th, 7th.
      Returns:
        reordered tuple

    - #### _13457

          @NotNull
          default ITuple5<T1,T3,T4,T5,T7> _13457()

      Create a new 5-tuple from this one where the elements are ordered: 1st, 3rd, 4th, 5th, 7th.
      Returns:
        reordered tuple

    - #### _23457

          @NotNull
          default ITuple5<T2,T3,T4,T5,T7> _23457()

      Create a new 5-tuple from this one where the elements are ordered: 2nd, 3rd, 4th, 5th, 7th.
      Returns:
        reordered tuple

    - #### _12367

          @NotNull
          default ITuple5<T1,T2,T3,T6,T7> _12367()

      Create a new 5-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 6th, 7th.
      Returns:
        reordered tuple

    - #### _12467

          @NotNull
          default ITuple5<T1,T2,T4,T6,T7> _12467()

      Create a new 5-tuple from this one where the elements are ordered: 1st, 2nd, 4th, 6th, 7th.
      Returns:
        reordered tuple

    - #### _13467

          @NotNull
          default ITuple5<T1,T3,T4,T6,T7> _13467()

      Create a new 5-tuple from this one where the elements are ordered: 1st, 3rd, 4th, 6th, 7th.
      Returns:
        reordered tuple

    - #### _23467

          @NotNull
          default ITuple5<T2,T3,T4,T6,T7> _23467()

      Create a new 5-tuple from this one where the elements are ordered: 2nd, 3rd, 4th, 6th, 7th.
      Returns:
        reordered tuple

    - #### _12567

          @NotNull
          default ITuple5<T1,T2,T5,T6,T7> _12567()

      Create a new 5-tuple from this one where the elements are ordered: 1st, 2nd, 5th, 6th, 7th.
      Returns:
        reordered tuple

    - #### _13567

          @NotNull
          default ITuple5<T1,T3,T5,T6,T7> _13567()

      Create a new 5-tuple from this one where the elements are ordered: 1st, 3rd, 5th, 6th, 7th.
      Returns:
        reordered tuple

    - #### _23567

          @NotNull
          default ITuple5<T2,T3,T5,T6,T7> _23567()

      Create a new 5-tuple from this one where the elements are ordered: 2nd, 3rd, 5th, 6th, 7th.
      Returns:
        reordered tuple

    - #### _14567

          @NotNull
          default ITuple5<T1,T4,T5,T6,T7> _14567()

      Create a new 5-tuple from this one where the elements are ordered: 1st, 4th, 5th, 6th, 7th.
      Returns:
        reordered tuple

    - #### _24567

          @NotNull
          default ITuple5<T2,T4,T5,T6,T7> _24567()

      Create a new 5-tuple from this one where the elements are ordered: 2nd, 4th, 5th, 6th, 7th.
      Returns:
        reordered tuple

    - #### _34567

          @NotNull
          default ITuple5<T3,T4,T5,T6,T7> _34567()

      Create a new 5-tuple from this one where the elements are ordered: 3rd, 4th, 5th, 6th, 7th.
      Returns:
        reordered tuple

    - #### _1234

          @NotNull
          default ITuple4<T1,T2,T3,T4> _1234()

      Create a new 4-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 4th.
      Returns:
        reordered tuple

    - #### _1235

          @NotNull
          default ITuple4<T1,T2,T3,T5> _1235()

      Create a new 4-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 5th.
      Returns:
        reordered tuple

    - #### _1245

          @NotNull
          default ITuple4<T1,T2,T4,T5> _1245()

      Create a new 4-tuple from this one where the elements are ordered: 1st, 2nd, 4th, 5th.
      Returns:
        reordered tuple

    - #### _1345

          @NotNull
          default ITuple4<T1,T3,T4,T5> _1345()

      Create a new 4-tuple from this one where the elements are ordered: 1st, 3rd, 4th, 5th.
      Returns:
        reordered tuple

    - #### _2345

          @NotNull
          default ITuple4<T2,T3,T4,T5> _2345()

      Create a new 4-tuple from this one where the elements are ordered: 2nd, 3rd, 4th, 5th.
      Returns:
        reordered tuple

    - #### _1236

          @NotNull
          default ITuple4<T1,T2,T3,T6> _1236()

      Create a new 4-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 6th.
      Returns:
        reordered tuple

    - #### _1246

          @NotNull
          default ITuple4<T1,T2,T4,T6> _1246()

      Create a new 4-tuple from this one where the elements are ordered: 1st, 2nd, 4th, 6th.
      Returns:
        reordered tuple

    - #### _1346

          @NotNull
          default ITuple4<T1,T3,T4,T6> _1346()

      Create a new 4-tuple from this one where the elements are ordered: 1st, 3rd, 4th, 6th.
      Returns:
        reordered tuple

    - #### _2346

          @NotNull
          default ITuple4<T2,T3,T4,T6> _2346()

      Create a new 4-tuple from this one where the elements are ordered: 2nd, 3rd, 4th, 6th.
      Returns:
        reordered tuple

    - #### _1256

          @NotNull
          default ITuple4<T1,T2,T5,T6> _1256()

      Create a new 4-tuple from this one where the elements are ordered: 1st, 2nd, 5th, 6th.
      Returns:
        reordered tuple

    - #### _1356

          @NotNull
          default ITuple4<T1,T3,T5,T6> _1356()

      Create a new 4-tuple from this one where the elements are ordered: 1st, 3rd, 5th, 6th.
      Returns:
        reordered tuple

    - #### _2356

          @NotNull
          default ITuple4<T2,T3,T5,T6> _2356()

      Create a new 4-tuple from this one where the elements are ordered: 2nd, 3rd, 5th, 6th.
      Returns:
        reordered tuple

    - #### _1456

          @NotNull
          default ITuple4<T1,T4,T5,T6> _1456()

      Create a new 4-tuple from this one where the elements are ordered: 1st, 4th, 5th, 6th.
      Returns:
        reordered tuple

    - #### _2456

          @NotNull
          default ITuple4<T2,T4,T5,T6> _2456()

      Create a new 4-tuple from this one where the elements are ordered: 2nd, 4th, 5th, 6th.
      Returns:
        reordered tuple

    - #### _3456

          @NotNull
          default ITuple4<T3,T4,T5,T6> _3456()

      Create a new 4-tuple from this one where the elements are ordered: 3rd, 4th, 5th, 6th.
      Returns:
        reordered tuple

    - #### _1237

          @NotNull
          default ITuple4<T1,T2,T3,T7> _1237()

      Create a new 4-tuple from this one where the elements are ordered: 1st, 2nd, 3rd, 7th.
      Returns:
        reordered tuple

    - #### _1247

          @NotNull
          default ITuple4<T1,T2,T4,T7> _1247()

      Create a new 4-tuple from this one where the elements are ordered: 1st, 2nd, 4th, 7th.
      Returns:
        reordered tuple

    - #### _1347

          @NotNull
          default ITuple4<T1,T3,T4,T7> _1347()

      Create a new 4-tuple from this one where the elements are ordered: 1st, 3rd, 4th, 7th.
      Returns:
        reordered tuple

    - #### _2347

          @NotNull
          default ITuple4<T2,T3,T4,T7> _2347()

      Create a new 4-tuple from this one where the elements are ordered: 2nd, 3rd, 4th, 7th.
      Returns:
        reordered tuple

    - #### _1257

          @NotNull
          default ITuple4<T1,T2,T5,T7> _1257()

      Create a new 4-tuple from this one where the elements are ordered: 1st, 2nd, 5th, 7th.
      Returns:
        reordered tuple

    - #### _1357

          @NotNull
          default ITuple4<T1,T3,T5,T7> _1357()

      Create a new 4-tuple from this one where the elements are ordered: 1st, 3rd, 5th, 7th.
      Returns:
        reordered tuple

    - #### _2357

          @NotNull
          default ITuple4<T2,T3,T5,T7> _2357()

      Create a new 4-tuple from this one where the elements are ordered: 2nd, 3rd, 5th, 7th.
      Returns:
        reordered tuple

    - #### _1457

          @NotNull
          default ITuple4<T1,T4,T5,T7> _1457()

      Create a new 4-tuple from this one where the elements are ordered: 1st, 4th, 5th, 7th.
      Returns:
        reordered tuple

    - #### _2457

          @NotNull
          default ITuple4<T2,T4,T5,T7> _2457()

      Create a new 4-tuple from this one where the elements are ordered: 2nd, 4th, 5th, 7th.
      Returns:
        reordered tuple

    - #### _3457

          @NotNull
          default ITuple4<T3,T4,T5,T7> _3457()

      Create a new 4-tuple from this one where the elements are ordered: 3rd, 4th, 5th, 7th.
      Returns:
        reordered tuple

    - #### _1267

          @NotNull
          default ITuple4<T1,T2,T6,T7> _1267()

      Create a new 4-tuple from this one where the elements are ordered: 1st, 2nd, 6th, 7th.
      Returns:
        reordered tuple

    - #### _1367

          @NotNull
          default ITuple4<T1,T3,T6,T7> _1367()

      Create a new 4-tuple from this one where the elements are ordered: 1st, 3rd, 6th, 7th.
      Returns:
        reordered tuple

    - #### _2367

          @NotNull
          default ITuple4<T2,T3,T6,T7> _2367()

      Create a new 4-tuple from this one where the elements are ordered: 2nd, 3rd, 6th, 7th.
      Returns:
        reordered tuple

    - #### _1467

          @NotNull
          default ITuple4<T1,T4,T6,T7> _1467()

      Create a new 4-tuple from this one where the elements are ordered: 1st, 4th, 6th, 7th.
      Returns:
        reordered tuple

    - #### _2467

          @NotNull
          default ITuple4<T2,T4,T6,T7> _2467()

      Create a new 4-tuple from this one where the elements are ordered: 2nd, 4th, 6th, 7th.
      Returns:
        reordered tuple

    - #### _3467

          @NotNull
          default ITuple4<T3,T4,T6,T7> _3467()

      Create a new 4-tuple from this one where the elements are ordered: 3rd, 4th, 6th, 7th.
      Returns:
        reordered tuple

    - #### _1567

          @NotNull
          default ITuple4<T1,T5,T6,T7> _1567()

      Create a new 4-tuple from this one where the elements are ordered: 1st, 5th, 6th, 7th.
      Returns:
        reordered tuple

    - #### _2567

          @NotNull
          default ITuple4<T2,T5,T6,T7> _2567()

      Create a new 4-tuple from this one where the elements are ordered: 2nd, 5th, 6th, 7th.
      Returns:
        reordered tuple

    - #### _3567

          @NotNull
          default ITuple4<T3,T5,T6,T7> _3567()

      Create a new 4-tuple from this one where the elements are ordered: 3rd, 5th, 6th, 7th.
      Returns:
        reordered tuple

    - #### _4567

          @NotNull
          default ITuple4<T4,T5,T6,T7> _4567()

      Create a new 4-tuple from this one where the elements are ordered: 4th, 5th, 6th, 7th.
      Returns:
        reordered tuple

    - #### _123

          @NotNull
          default ITuple3<T1,T2,T3> _123()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 2nd, 3rd.
      Returns:
        reordered tuple

    - #### _132

          @NotNull
          default ITuple3<T1,T3,T2> _132()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 3rd, 2nd.
      Returns:
        reordered tuple

    - #### _312

          @NotNull
          default ITuple3<T3,T1,T2> _312()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 1st, 2nd.
      Returns:
        reordered tuple

    - #### _321

          @NotNull
          default ITuple3<T3,T2,T1> _321()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 2nd, 1st.
      Returns:
        reordered tuple

    - #### _231

          @NotNull
          default ITuple3<T2,T3,T1> _231()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 3rd, 1st.
      Returns:
        reordered tuple

    - #### _213

          @NotNull
          default ITuple3<T2,T1,T3> _213()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 1st, 3rd.
      Returns:
        reordered tuple

    - #### _124

          @NotNull
          default ITuple3<T1,T2,T4> _124()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 2nd, 4th.
      Returns:
        reordered tuple

    - #### _142

          @NotNull
          default ITuple3<T1,T4,T2> _142()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 4th, 2nd.
      Returns:
        reordered tuple

    - #### _412

          @NotNull
          default ITuple3<T4,T1,T2> _412()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 1st, 2nd.
      Returns:
        reordered tuple

    - #### _421

          @NotNull
          default ITuple3<T4,T2,T1> _421()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 2nd, 1st.
      Returns:
        reordered tuple

    - #### _241

          @NotNull
          default ITuple3<T2,T4,T1> _241()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 4th, 1st.
      Returns:
        reordered tuple

    - #### _214

          @NotNull
          default ITuple3<T2,T1,T4> _214()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 1st, 4th.
      Returns:
        reordered tuple

    - #### _134

          @NotNull
          default ITuple3<T1,T3,T4> _134()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 3rd, 4th.
      Returns:
        reordered tuple

    - #### _143

          @NotNull
          default ITuple3<T1,T4,T3> _143()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 4th, 3rd.
      Returns:
        reordered tuple

    - #### _413

          @NotNull
          default ITuple3<T4,T1,T3> _413()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 1st, 3rd.
      Returns:
        reordered tuple

    - #### _431

          @NotNull
          default ITuple3<T4,T3,T1> _431()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 3rd, 1st.
      Returns:
        reordered tuple

    - #### _341

          @NotNull
          default ITuple3<T3,T4,T1> _341()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 4th, 1st.
      Returns:
        reordered tuple

    - #### _314

          @NotNull
          default ITuple3<T3,T1,T4> _314()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 1st, 4th.
      Returns:
        reordered tuple

    - #### _234

          @NotNull
          default ITuple3<T2,T3,T4> _234()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 3rd, 4th.
      Returns:
        reordered tuple

    - #### _243

          @NotNull
          default ITuple3<T2,T4,T3> _243()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 4th, 3rd.
      Returns:
        reordered tuple

    - #### _423

          @NotNull
          default ITuple3<T4,T2,T3> _423()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 2nd, 3rd.
      Returns:
        reordered tuple

    - #### _432

          @NotNull
          default ITuple3<T4,T3,T2> _432()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 3rd, 2nd.
      Returns:
        reordered tuple

    - #### _342

          @NotNull
          default ITuple3<T3,T4,T2> _342()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 4th, 2nd.
      Returns:
        reordered tuple

    - #### _324

          @NotNull
          default ITuple3<T3,T2,T4> _324()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 2nd, 4th.
      Returns:
        reordered tuple

    - #### _125

          @NotNull
          default ITuple3<T1,T2,T5> _125()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 2nd, 5th.
      Returns:
        reordered tuple

    - #### _152

          @NotNull
          default ITuple3<T1,T5,T2> _152()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 5th, 2nd.
      Returns:
        reordered tuple

    - #### _512

          @NotNull
          default ITuple3<T5,T1,T2> _512()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 1st, 2nd.
      Returns:
        reordered tuple

    - #### _521

          @NotNull
          default ITuple3<T5,T2,T1> _521()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 2nd, 1st.
      Returns:
        reordered tuple

    - #### _251

          @NotNull
          default ITuple3<T2,T5,T1> _251()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 5th, 1st.
      Returns:
        reordered tuple

    - #### _215

          @NotNull
          default ITuple3<T2,T1,T5> _215()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 1st, 5th.
      Returns:
        reordered tuple

    - #### _135

          @NotNull
          default ITuple3<T1,T3,T5> _135()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 3rd, 5th.
      Returns:
        reordered tuple

    - #### _153

          @NotNull
          default ITuple3<T1,T5,T3> _153()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 5th, 3rd.
      Returns:
        reordered tuple

    - #### _513

          @NotNull
          default ITuple3<T5,T1,T3> _513()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 1st, 3rd.
      Returns:
        reordered tuple

    - #### _531

          @NotNull
          default ITuple3<T5,T3,T1> _531()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 3rd, 1st.
      Returns:
        reordered tuple

    - #### _351

          @NotNull
          default ITuple3<T3,T5,T1> _351()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 5th, 1st.
      Returns:
        reordered tuple

    - #### _315

          @NotNull
          default ITuple3<T3,T1,T5> _315()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 1st, 5th.
      Returns:
        reordered tuple

    - #### _235

          @NotNull
          default ITuple3<T2,T3,T5> _235()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 3rd, 5th.
      Returns:
        reordered tuple

    - #### _253

          @NotNull
          default ITuple3<T2,T5,T3> _253()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 5th, 3rd.
      Returns:
        reordered tuple

    - #### _523

          @NotNull
          default ITuple3<T5,T2,T3> _523()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 2nd, 3rd.
      Returns:
        reordered tuple

    - #### _532

          @NotNull
          default ITuple3<T5,T3,T2> _532()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 3rd, 2nd.
      Returns:
        reordered tuple

    - #### _352

          @NotNull
          default ITuple3<T3,T5,T2> _352()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 5th, 2nd.
      Returns:
        reordered tuple

    - #### _325

          @NotNull
          default ITuple3<T3,T2,T5> _325()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 2nd, 5th.
      Returns:
        reordered tuple

    - #### _145

          @NotNull
          default ITuple3<T1,T4,T5> _145()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 4th, 5th.
      Returns:
        reordered tuple

    - #### _154

          @NotNull
          default ITuple3<T1,T5,T4> _154()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 5th, 4th.
      Returns:
        reordered tuple

    - #### _514

          @NotNull
          default ITuple3<T5,T1,T4> _514()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 1st, 4th.
      Returns:
        reordered tuple

    - #### _541

          @NotNull
          default ITuple3<T5,T4,T1> _541()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 4th, 1st.
      Returns:
        reordered tuple

    - #### _451

          @NotNull
          default ITuple3<T4,T5,T1> _451()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 5th, 1st.
      Returns:
        reordered tuple

    - #### _415

          @NotNull
          default ITuple3<T4,T1,T5> _415()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 1st, 5th.
      Returns:
        reordered tuple

    - #### _245

          @NotNull
          default ITuple3<T2,T4,T5> _245()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 4th, 5th.
      Returns:
        reordered tuple

    - #### _254

          @NotNull
          default ITuple3<T2,T5,T4> _254()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 5th, 4th.
      Returns:
        reordered tuple

    - #### _524

          @NotNull
          default ITuple3<T5,T2,T4> _524()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 2nd, 4th.
      Returns:
        reordered tuple

    - #### _542

          @NotNull
          default ITuple3<T5,T4,T2> _542()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 4th, 2nd.
      Returns:
        reordered tuple

    - #### _452

          @NotNull
          default ITuple3<T4,T5,T2> _452()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 5th, 2nd.
      Returns:
        reordered tuple

    - #### _425

          @NotNull
          default ITuple3<T4,T2,T5> _425()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 2nd, 5th.
      Returns:
        reordered tuple

    - #### _345

          @NotNull
          default ITuple3<T3,T4,T5> _345()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 4th, 5th.
      Returns:
        reordered tuple

    - #### _354

          @NotNull
          default ITuple3<T3,T5,T4> _354()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 5th, 4th.
      Returns:
        reordered tuple

    - #### _534

          @NotNull
          default ITuple3<T5,T3,T4> _534()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 3rd, 4th.
      Returns:
        reordered tuple

    - #### _543

          @NotNull
          default ITuple3<T5,T4,T3> _543()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 4th, 3rd.
      Returns:
        reordered tuple

    - #### _453

          @NotNull
          default ITuple3<T4,T5,T3> _453()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 5th, 3rd.
      Returns:
        reordered tuple

    - #### _435

          @NotNull
          default ITuple3<T4,T3,T5> _435()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 3rd, 5th.
      Returns:
        reordered tuple

    - #### _126

          @NotNull
          default ITuple3<T1,T2,T6> _126()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 2nd, 6th.
      Returns:
        reordered tuple

    - #### _162

          @NotNull
          default ITuple3<T1,T6,T2> _162()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 6th, 2nd.
      Returns:
        reordered tuple

    - #### _612

          @NotNull
          default ITuple3<T6,T1,T2> _612()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 1st, 2nd.
      Returns:
        reordered tuple

    - #### _621

          @NotNull
          default ITuple3<T6,T2,T1> _621()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 2nd, 1st.
      Returns:
        reordered tuple

    - #### _261

          @NotNull
          default ITuple3<T2,T6,T1> _261()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 6th, 1st.
      Returns:
        reordered tuple

    - #### _216

          @NotNull
          default ITuple3<T2,T1,T6> _216()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 1st, 6th.
      Returns:
        reordered tuple

    - #### _136

          @NotNull
          default ITuple3<T1,T3,T6> _136()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 3rd, 6th.
      Returns:
        reordered tuple

    - #### _163

          @NotNull
          default ITuple3<T1,T6,T3> _163()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 6th, 3rd.
      Returns:
        reordered tuple

    - #### _613

          @NotNull
          default ITuple3<T6,T1,T3> _613()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 1st, 3rd.
      Returns:
        reordered tuple

    - #### _631

          @NotNull
          default ITuple3<T6,T3,T1> _631()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 3rd, 1st.
      Returns:
        reordered tuple

    - #### _361

          @NotNull
          default ITuple3<T3,T6,T1> _361()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 6th, 1st.
      Returns:
        reordered tuple

    - #### _316

          @NotNull
          default ITuple3<T3,T1,T6> _316()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 1st, 6th.
      Returns:
        reordered tuple

    - #### _236

          @NotNull
          default ITuple3<T2,T3,T6> _236()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 3rd, 6th.
      Returns:
        reordered tuple

    - #### _263

          @NotNull
          default ITuple3<T2,T6,T3> _263()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 6th, 3rd.
      Returns:
        reordered tuple

    - #### _623

          @NotNull
          default ITuple3<T6,T2,T3> _623()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 2nd, 3rd.
      Returns:
        reordered tuple

    - #### _632

          @NotNull
          default ITuple3<T6,T3,T2> _632()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 3rd, 2nd.
      Returns:
        reordered tuple

    - #### _362

          @NotNull
          default ITuple3<T3,T6,T2> _362()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 6th, 2nd.
      Returns:
        reordered tuple

    - #### _326

          @NotNull
          default ITuple3<T3,T2,T6> _326()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 2nd, 6th.
      Returns:
        reordered tuple

    - #### _146

          @NotNull
          default ITuple3<T1,T4,T6> _146()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 4th, 6th.
      Returns:
        reordered tuple

    - #### _164

          @NotNull
          default ITuple3<T1,T6,T4> _164()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 6th, 4th.
      Returns:
        reordered tuple

    - #### _614

          @NotNull
          default ITuple3<T6,T1,T4> _614()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 1st, 4th.
      Returns:
        reordered tuple

    - #### _641

          @NotNull
          default ITuple3<T6,T4,T1> _641()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 4th, 1st.
      Returns:
        reordered tuple

    - #### _461

          @NotNull
          default ITuple3<T4,T6,T1> _461()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 6th, 1st.
      Returns:
        reordered tuple

    - #### _416

          @NotNull
          default ITuple3<T4,T1,T6> _416()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 1st, 6th.
      Returns:
        reordered tuple

    - #### _246

          @NotNull
          default ITuple3<T2,T4,T6> _246()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 4th, 6th.
      Returns:
        reordered tuple

    - #### _264

          @NotNull
          default ITuple3<T2,T6,T4> _264()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 6th, 4th.
      Returns:
        reordered tuple

    - #### _624

          @NotNull
          default ITuple3<T6,T2,T4> _624()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 2nd, 4th.
      Returns:
        reordered tuple

    - #### _642

          @NotNull
          default ITuple3<T6,T4,T2> _642()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 4th, 2nd.
      Returns:
        reordered tuple

    - #### _462

          @NotNull
          default ITuple3<T4,T6,T2> _462()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 6th, 2nd.
      Returns:
        reordered tuple

    - #### _426

          @NotNull
          default ITuple3<T4,T2,T6> _426()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 2nd, 6th.
      Returns:
        reordered tuple

    - #### _346

          @NotNull
          default ITuple3<T3,T4,T6> _346()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 4th, 6th.
      Returns:
        reordered tuple

    - #### _364

          @NotNull
          default ITuple3<T3,T6,T4> _364()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 6th, 4th.
      Returns:
        reordered tuple

    - #### _634

          @NotNull
          default ITuple3<T6,T3,T4> _634()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 3rd, 4th.
      Returns:
        reordered tuple

    - #### _643

          @NotNull
          default ITuple3<T6,T4,T3> _643()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 4th, 3rd.
      Returns:
        reordered tuple

    - #### _463

          @NotNull
          default ITuple3<T4,T6,T3> _463()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 6th, 3rd.
      Returns:
        reordered tuple

    - #### _436

          @NotNull
          default ITuple3<T4,T3,T6> _436()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 3rd, 6th.
      Returns:
        reordered tuple

    - #### _156

          @NotNull
          default ITuple3<T1,T5,T6> _156()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 5th, 6th.
      Returns:
        reordered tuple

    - #### _165

          @NotNull
          default ITuple3<T1,T6,T5> _165()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 6th, 5th.
      Returns:
        reordered tuple

    - #### _615

          @NotNull
          default ITuple3<T6,T1,T5> _615()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 1st, 5th.
      Returns:
        reordered tuple

    - #### _651

          @NotNull
          default ITuple3<T6,T5,T1> _651()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 5th, 1st.
      Returns:
        reordered tuple

    - #### _561

          @NotNull
          default ITuple3<T5,T6,T1> _561()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 6th, 1st.
      Returns:
        reordered tuple

    - #### _516

          @NotNull
          default ITuple3<T5,T1,T6> _516()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 1st, 6th.
      Returns:
        reordered tuple

    - #### _256

          @NotNull
          default ITuple3<T2,T5,T6> _256()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 5th, 6th.
      Returns:
        reordered tuple

    - #### _265

          @NotNull
          default ITuple3<T2,T6,T5> _265()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 6th, 5th.
      Returns:
        reordered tuple

    - #### _625

          @NotNull
          default ITuple3<T6,T2,T5> _625()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 2nd, 5th.
      Returns:
        reordered tuple

    - #### _652

          @NotNull
          default ITuple3<T6,T5,T2> _652()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 5th, 2nd.
      Returns:
        reordered tuple

    - #### _562

          @NotNull
          default ITuple3<T5,T6,T2> _562()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 6th, 2nd.
      Returns:
        reordered tuple

    - #### _526

          @NotNull
          default ITuple3<T5,T2,T6> _526()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 2nd, 6th.
      Returns:
        reordered tuple

    - #### _356

          @NotNull
          default ITuple3<T3,T5,T6> _356()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 5th, 6th.
      Returns:
        reordered tuple

    - #### _365

          @NotNull
          default ITuple3<T3,T6,T5> _365()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 6th, 5th.
      Returns:
        reordered tuple

    - #### _635

          @NotNull
          default ITuple3<T6,T3,T5> _635()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 3rd, 5th.
      Returns:
        reordered tuple

    - #### _653

          @NotNull
          default ITuple3<T6,T5,T3> _653()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 5th, 3rd.
      Returns:
        reordered tuple

    - #### _563

          @NotNull
          default ITuple3<T5,T6,T3> _563()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 6th, 3rd.
      Returns:
        reordered tuple

    - #### _536

          @NotNull
          default ITuple3<T5,T3,T6> _536()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 3rd, 6th.
      Returns:
        reordered tuple

    - #### _456

          @NotNull
          default ITuple3<T4,T5,T6> _456()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 5th, 6th.
      Returns:
        reordered tuple

    - #### _465

          @NotNull
          default ITuple3<T4,T6,T5> _465()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 6th, 5th.
      Returns:
        reordered tuple

    - #### _645

          @NotNull
          default ITuple3<T6,T4,T5> _645()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 4th, 5th.
      Returns:
        reordered tuple

    - #### _654

          @NotNull
          default ITuple3<T6,T5,T4> _654()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 5th, 4th.
      Returns:
        reordered tuple

    - #### _564

          @NotNull
          default ITuple3<T5,T6,T4> _564()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 6th, 4th.
      Returns:
        reordered tuple

    - #### _546

          @NotNull
          default ITuple3<T5,T4,T6> _546()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 4th, 6th.
      Returns:
        reordered tuple

    - #### _127

          @NotNull
          default ITuple3<T1,T2,T7> _127()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 2nd, 7th.
      Returns:
        reordered tuple

    - #### _172

          @NotNull
          default ITuple3<T1,T7,T2> _172()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 7th, 2nd.
      Returns:
        reordered tuple

    - #### _712

          @NotNull
          default ITuple3<T7,T1,T2> _712()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 1st, 2nd.
      Returns:
        reordered tuple

    - #### _721

          @NotNull
          default ITuple3<T7,T2,T1> _721()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 2nd, 1st.
      Returns:
        reordered tuple

    - #### _271

          @NotNull
          default ITuple3<T2,T7,T1> _271()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 7th, 1st.
      Returns:
        reordered tuple

    - #### _217

          @NotNull
          default ITuple3<T2,T1,T7> _217()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 1st, 7th.
      Returns:
        reordered tuple

    - #### _137

          @NotNull
          default ITuple3<T1,T3,T7> _137()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 3rd, 7th.
      Returns:
        reordered tuple

    - #### _173

          @NotNull
          default ITuple3<T1,T7,T3> _173()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 7th, 3rd.
      Returns:
        reordered tuple

    - #### _713

          @NotNull
          default ITuple3<T7,T1,T3> _713()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 1st, 3rd.
      Returns:
        reordered tuple

    - #### _731

          @NotNull
          default ITuple3<T7,T3,T1> _731()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 3rd, 1st.
      Returns:
        reordered tuple

    - #### _371

          @NotNull
          default ITuple3<T3,T7,T1> _371()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 7th, 1st.
      Returns:
        reordered tuple

    - #### _317

          @NotNull
          default ITuple3<T3,T1,T7> _317()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 1st, 7th.
      Returns:
        reordered tuple

    - #### _237

          @NotNull
          default ITuple3<T2,T3,T7> _237()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 3rd, 7th.
      Returns:
        reordered tuple

    - #### _273

          @NotNull
          default ITuple3<T2,T7,T3> _273()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 7th, 3rd.
      Returns:
        reordered tuple

    - #### _723

          @NotNull
          default ITuple3<T7,T2,T3> _723()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 2nd, 3rd.
      Returns:
        reordered tuple

    - #### _732

          @NotNull
          default ITuple3<T7,T3,T2> _732()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 3rd, 2nd.
      Returns:
        reordered tuple

    - #### _372

          @NotNull
          default ITuple3<T3,T7,T2> _372()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 7th, 2nd.
      Returns:
        reordered tuple

    - #### _327

          @NotNull
          default ITuple3<T3,T2,T7> _327()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 2nd, 7th.
      Returns:
        reordered tuple

    - #### _147

          @NotNull
          default ITuple3<T1,T4,T7> _147()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 4th, 7th.
      Returns:
        reordered tuple

    - #### _174

          @NotNull
          default ITuple3<T1,T7,T4> _174()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 7th, 4th.
      Returns:
        reordered tuple

    - #### _714

          @NotNull
          default ITuple3<T7,T1,T4> _714()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 1st, 4th.
      Returns:
        reordered tuple

    - #### _741

          @NotNull
          default ITuple3<T7,T4,T1> _741()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 4th, 1st.
      Returns:
        reordered tuple

    - #### _471

          @NotNull
          default ITuple3<T4,T7,T1> _471()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 7th, 1st.
      Returns:
        reordered tuple

    - #### _417

          @NotNull
          default ITuple3<T4,T1,T7> _417()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 1st, 7th.
      Returns:
        reordered tuple

    - #### _247

          @NotNull
          default ITuple3<T2,T4,T7> _247()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 4th, 7th.
      Returns:
        reordered tuple

    - #### _274

          @NotNull
          default ITuple3<T2,T7,T4> _274()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 7th, 4th.
      Returns:
        reordered tuple

    - #### _724

          @NotNull
          default ITuple3<T7,T2,T4> _724()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 2nd, 4th.
      Returns:
        reordered tuple

    - #### _742

          @NotNull
          default ITuple3<T7,T4,T2> _742()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 4th, 2nd.
      Returns:
        reordered tuple

    - #### _472

          @NotNull
          default ITuple3<T4,T7,T2> _472()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 7th, 2nd.
      Returns:
        reordered tuple

    - #### _427

          @NotNull
          default ITuple3<T4,T2,T7> _427()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 2nd, 7th.
      Returns:
        reordered tuple

    - #### _347

          @NotNull
          default ITuple3<T3,T4,T7> _347()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 4th, 7th.
      Returns:
        reordered tuple

    - #### _374

          @NotNull
          default ITuple3<T3,T7,T4> _374()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 7th, 4th.
      Returns:
        reordered tuple

    - #### _734

          @NotNull
          default ITuple3<T7,T3,T4> _734()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 3rd, 4th.
      Returns:
        reordered tuple

    - #### _743

          @NotNull
          default ITuple3<T7,T4,T3> _743()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 4th, 3rd.
      Returns:
        reordered tuple

    - #### _473

          @NotNull
          default ITuple3<T4,T7,T3> _473()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 7th, 3rd.
      Returns:
        reordered tuple

    - #### _437

          @NotNull
          default ITuple3<T4,T3,T7> _437()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 3rd, 7th.
      Returns:
        reordered tuple

    - #### _157

          @NotNull
          default ITuple3<T1,T5,T7> _157()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 5th, 7th.
      Returns:
        reordered tuple

    - #### _175

          @NotNull
          default ITuple3<T1,T7,T5> _175()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 7th, 5th.
      Returns:
        reordered tuple

    - #### _715

          @NotNull
          default ITuple3<T7,T1,T5> _715()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 1st, 5th.
      Returns:
        reordered tuple

    - #### _751

          @NotNull
          default ITuple3<T7,T5,T1> _751()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 5th, 1st.
      Returns:
        reordered tuple

    - #### _571

          @NotNull
          default ITuple3<T5,T7,T1> _571()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 7th, 1st.
      Returns:
        reordered tuple

    - #### _517

          @NotNull
          default ITuple3<T5,T1,T7> _517()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 1st, 7th.
      Returns:
        reordered tuple

    - #### _257

          @NotNull
          default ITuple3<T2,T5,T7> _257()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 5th, 7th.
      Returns:
        reordered tuple

    - #### _275

          @NotNull
          default ITuple3<T2,T7,T5> _275()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 7th, 5th.
      Returns:
        reordered tuple

    - #### _725

          @NotNull
          default ITuple3<T7,T2,T5> _725()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 2nd, 5th.
      Returns:
        reordered tuple

    - #### _752

          @NotNull
          default ITuple3<T7,T5,T2> _752()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 5th, 2nd.
      Returns:
        reordered tuple

    - #### _572

          @NotNull
          default ITuple3<T5,T7,T2> _572()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 7th, 2nd.
      Returns:
        reordered tuple

    - #### _527

          @NotNull
          default ITuple3<T5,T2,T7> _527()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 2nd, 7th.
      Returns:
        reordered tuple

    - #### _357

          @NotNull
          default ITuple3<T3,T5,T7> _357()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 5th, 7th.
      Returns:
        reordered tuple

    - #### _375

          @NotNull
          default ITuple3<T3,T7,T5> _375()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 7th, 5th.
      Returns:
        reordered tuple

    - #### _735

          @NotNull
          default ITuple3<T7,T3,T5> _735()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 3rd, 5th.
      Returns:
        reordered tuple

    - #### _753

          @NotNull
          default ITuple3<T7,T5,T3> _753()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 5th, 3rd.
      Returns:
        reordered tuple

    - #### _573

          @NotNull
          default ITuple3<T5,T7,T3> _573()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 7th, 3rd.
      Returns:
        reordered tuple

    - #### _537

          @NotNull
          default ITuple3<T5,T3,T7> _537()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 3rd, 7th.
      Returns:
        reordered tuple

    - #### _457

          @NotNull
          default ITuple3<T4,T5,T7> _457()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 5th, 7th.
      Returns:
        reordered tuple

    - #### _475

          @NotNull
          default ITuple3<T4,T7,T5> _475()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 7th, 5th.
      Returns:
        reordered tuple

    - #### _745

          @NotNull
          default ITuple3<T7,T4,T5> _745()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 4th, 5th.
      Returns:
        reordered tuple

    - #### _754

          @NotNull
          default ITuple3<T7,T5,T4> _754()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 5th, 4th.
      Returns:
        reordered tuple

    - #### _574

          @NotNull
          default ITuple3<T5,T7,T4> _574()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 7th, 4th.
      Returns:
        reordered tuple

    - #### _547

          @NotNull
          default ITuple3<T5,T4,T7> _547()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 4th, 7th.
      Returns:
        reordered tuple

    - #### _167

          @NotNull
          default ITuple3<T1,T6,T7> _167()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 6th, 7th.
      Returns:
        reordered tuple

    - #### _176

          @NotNull
          default ITuple3<T1,T7,T6> _176()

      Create a new 3-tuple from this one where the elements are ordered: 1st, 7th, 6th.
      Returns:
        reordered tuple

    - #### _716

          @NotNull
          default ITuple3<T7,T1,T6> _716()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 1st, 6th.
      Returns:
        reordered tuple

    - #### _761

          @NotNull
          default ITuple3<T7,T6,T1> _761()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 6th, 1st.
      Returns:
        reordered tuple

    - #### _671

          @NotNull
          default ITuple3<T6,T7,T1> _671()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 7th, 1st.
      Returns:
        reordered tuple

    - #### _617

          @NotNull
          default ITuple3<T6,T1,T7> _617()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 1st, 7th.
      Returns:
        reordered tuple

    - #### _267

          @NotNull
          default ITuple3<T2,T6,T7> _267()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 6th, 7th.
      Returns:
        reordered tuple

    - #### _276

          @NotNull
          default ITuple3<T2,T7,T6> _276()

      Create a new 3-tuple from this one where the elements are ordered: 2nd, 7th, 6th.
      Returns:
        reordered tuple

    - #### _726

          @NotNull
          default ITuple3<T7,T2,T6> _726()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 2nd, 6th.
      Returns:
        reordered tuple

    - #### _762

          @NotNull
          default ITuple3<T7,T6,T2> _762()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 6th, 2nd.
      Returns:
        reordered tuple

    - #### _672

          @NotNull
          default ITuple3<T6,T7,T2> _672()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 7th, 2nd.
      Returns:
        reordered tuple

    - #### _627

          @NotNull
          default ITuple3<T6,T2,T7> _627()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 2nd, 7th.
      Returns:
        reordered tuple

    - #### _367

          @NotNull
          default ITuple3<T3,T6,T7> _367()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 6th, 7th.
      Returns:
        reordered tuple

    - #### _376

          @NotNull
          default ITuple3<T3,T7,T6> _376()

      Create a new 3-tuple from this one where the elements are ordered: 3rd, 7th, 6th.
      Returns:
        reordered tuple

    - #### _736

          @NotNull
          default ITuple3<T7,T3,T6> _736()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 3rd, 6th.
      Returns:
        reordered tuple

    - #### _763

          @NotNull
          default ITuple3<T7,T6,T3> _763()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 6th, 3rd.
      Returns:
        reordered tuple

    - #### _673

          @NotNull
          default ITuple3<T6,T7,T3> _673()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 7th, 3rd.
      Returns:
        reordered tuple

    - #### _637

          @NotNull
          default ITuple3<T6,T3,T7> _637()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 3rd, 7th.
      Returns:
        reordered tuple

    - #### _467

          @NotNull
          default ITuple3<T4,T6,T7> _467()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 6th, 7th.
      Returns:
        reordered tuple

    - #### _476

          @NotNull
          default ITuple3<T4,T7,T6> _476()

      Create a new 3-tuple from this one where the elements are ordered: 4th, 7th, 6th.
      Returns:
        reordered tuple

    - #### _746

          @NotNull
          default ITuple3<T7,T4,T6> _746()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 4th, 6th.
      Returns:
        reordered tuple

    - #### _764

          @NotNull
          default ITuple3<T7,T6,T4> _764()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 6th, 4th.
      Returns:
        reordered tuple

    - #### _674

          @NotNull
          default ITuple3<T6,T7,T4> _674()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 7th, 4th.
      Returns:
        reordered tuple

    - #### _647

          @NotNull
          default ITuple3<T6,T4,T7> _647()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 4th, 7th.
      Returns:
        reordered tuple

    - #### _567

          @NotNull
          default ITuple3<T5,T6,T7> _567()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 6th, 7th.
      Returns:
        reordered tuple

    - #### _576

          @NotNull
          default ITuple3<T5,T7,T6> _576()

      Create a new 3-tuple from this one where the elements are ordered: 5th, 7th, 6th.
      Returns:
        reordered tuple

    - #### _756

          @NotNull
          default ITuple3<T7,T5,T6> _756()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 5th, 6th.
      Returns:
        reordered tuple

    - #### _765

          @NotNull
          default ITuple3<T7,T6,T5> _765()

      Create a new 3-tuple from this one where the elements are ordered: 7th, 6th, 5th.
      Returns:
        reordered tuple

    - #### _675

          @NotNull
          default ITuple3<T6,T7,T5> _675()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 7th, 5th.
      Returns:
        reordered tuple

    - #### _657

          @NotNull
          default ITuple3<T6,T5,T7> _657()

      Create a new 3-tuple from this one where the elements are ordered: 6th, 5th, 7th.
      Returns:
        reordered tuple

    - #### _12

          @NotNull
          default ITuple2<T1,T2> _12()

      Create a new 2-tuple from this one where the elements are ordered: 1st, 2nd.
      Returns:
        reordered tuple

    - #### _21

          @NotNull
          default ITuple2<T2,T1> _21()

      Create a new 2-tuple from this one where the elements are ordered: 2nd, 1st.
      Returns:
        reordered tuple

    - #### _13

          @NotNull
          default ITuple2<T1,T3> _13()

      Create a new 2-tuple from this one where the elements are ordered: 1st, 3rd.
      Returns:
        reordered tuple

    - #### _31

          @NotNull
          default ITuple2<T3,T1> _31()

      Create a new 2-tuple from this one where the elements are ordered: 3rd, 1st.
      Returns:
        reordered tuple

    - #### _23

          @NotNull
          default ITuple2<T2,T3> _23()

      Create a new 2-tuple from this one where the elements are ordered: 2nd, 3rd.
      Returns:
        reordered tuple

    - #### _32

          @NotNull
          default ITuple2<T3,T2> _32()

      Create a new 2-tuple from this one where the elements are ordered: 3rd, 2nd.
      Returns:
        reordered tuple

    - #### _14

          @NotNull
          default ITuple2<T1,T4> _14()

      Create a new 2-tuple from this one where the elements are ordered: 1st, 4th.
      Returns:
        reordered tuple

    - #### _41

          @NotNull
          default ITuple2<T4,T1> _41()

      Create a new 2-tuple from this one where the elements are ordered: 4th, 1st.
      Returns:
        reordered tuple

    - #### _24

          @NotNull
          default ITuple2<T2,T4> _24()

      Create a new 2-tuple from this one where the elements are ordered: 2nd, 4th.
      Returns:
        reordered tuple

    - #### _42

          @NotNull
          default ITuple2<T4,T2> _42()

      Create a new 2-tuple from this one where the elements are ordered: 4th, 2nd.
      Returns:
        reordered tuple

    - #### _34

          @NotNull
          default ITuple2<T3,T4> _34()

      Create a new 2-tuple from this one where the elements are ordered: 3rd, 4th.
      Returns:
        reordered tuple

    - #### _43

          @NotNull
          default ITuple2<T4,T3> _43()

      Create a new 2-tuple from this one where the elements are ordered: 4th, 3rd.
      Returns:
        reordered tuple

    - #### _15

          @NotNull
          default ITuple2<T1,T5> _15()

      Create a new 2-tuple from this one where the elements are ordered: 1st, 5th.
      Returns:
        reordered tuple

    - #### _51

          @NotNull
          default ITuple2<T5,T1> _51()

      Create a new 2-tuple from this one where the elements are ordered: 5th, 1st.
      Returns:
        reordered tuple

    - #### _25

          @NotNull
          default ITuple2<T2,T5> _25()

      Create a new 2-tuple from this one where the elements are ordered: 2nd, 5th.
      Returns:
        reordered tuple

    - #### _52

          @NotNull
          default ITuple2<T5,T2> _52()

      Create a new 2-tuple from this one where the elements are ordered: 5th, 2nd.
      Returns:
        reordered tuple

    - #### _35

          @NotNull
          default ITuple2<T3,T5> _35()

      Create a new 2-tuple from this one where the elements are ordered: 3rd, 5th.
      Returns:
        reordered tuple

    - #### _53

          @NotNull
          default ITuple2<T5,T3> _53()

      Create a new 2-tuple from this one where the elements are ordered: 5th, 3rd.
      Returns:
        reordered tuple

    - #### _45

          @NotNull
          default ITuple2<T4,T5> _45()

      Create a new 2-tuple from this one where the elements are ordered: 4th, 5th.
      Returns:
        reordered tuple

    - #### _54

          @NotNull
          default ITuple2<T5,T4> _54()

      Create a new 2-tuple from this one where the elements are ordered: 5th, 4th.
      Returns:
        reordered tuple

    - #### _16

          @NotNull
          default ITuple2<T1,T6> _16()

      Create a new 2-tuple from this one where the elements are ordered: 1st, 6th.
      Returns:
        reordered tuple

    - #### _61

          @NotNull
          default ITuple2<T6,T1> _61()

      Create a new 2-tuple from this one where the elements are ordered: 6th, 1st.
      Returns:
        reordered tuple

    - #### _26

          @NotNull
          default ITuple2<T2,T6> _26()

      Create a new 2-tuple from this one where the elements are ordered: 2nd, 6th.
      Returns:
        reordered tuple

    - #### _62

          @NotNull
          default ITuple2<T6,T2> _62()

      Create a new 2-tuple from this one where the elements are ordered: 6th, 2nd.
      Returns:
        reordered tuple

    - #### _36

          @NotNull
          default ITuple2<T3,T6> _36()

      Create a new 2-tuple from this one where the elements are ordered: 3rd, 6th.
      Returns:
        reordered tuple

    - #### _63

          @NotNull
          default ITuple2<T6,T3> _63()

      Create a new 2-tuple from this one where the elements are ordered: 6th, 3rd.
      Returns:
        reordered tuple

    - #### _46

          @NotNull
          default ITuple2<T4,T6> _46()

      Create a new 2-tuple from this one where the elements are ordered: 4th, 6th.
      Returns:
        reordered tuple

    - #### _64

          @NotNull
          default ITuple2<T6,T4> _64()

      Create a new 2-tuple from this one where the elements are ordered: 6th, 4th.
      Returns:
        reordered tuple

    - #### _56

          @NotNull
          default ITuple2<T5,T6> _56()

      Create a new 2-tuple from this one where the elements are ordered: 5th, 6th.
      Returns:
        reordered tuple

    - #### _65

          @NotNull
          default ITuple2<T6,T5> _65()

      Create a new 2-tuple from this one where the elements are ordered: 6th, 5th.
      Returns:
        reordered tuple

    - #### _17

          @NotNull
          default ITuple2<T1,T7> _17()

      Create a new 2-tuple from this one where the elements are ordered: 1st, 7th.
      Returns:
        reordered tuple

    - #### _71

          @NotNull
          default ITuple2<T7,T1> _71()

      Create a new 2-tuple from this one where the elements are ordered: 7th, 1st.
      Returns:
        reordered tuple

    - #### _27

          @NotNull
          default ITuple2<T2,T7> _27()

      Create a new 2-tuple from this one where the elements are ordered: 2nd, 7th.
      Returns:
        reordered tuple

    - #### _72

          @NotNull
          default ITuple2<T7,T2> _72()

      Create a new 2-tuple from this one where the elements are ordered: 7th, 2nd.
      Returns:
        reordered tuple

    - #### _37

          @NotNull
          default ITuple2<T3,T7> _37()

      Create a new 2-tuple from this one where the elements are ordered: 3rd, 7th.
      Returns:
        reordered tuple

    - #### _73

          @NotNull
          default ITuple2<T7,T3> _73()

      Create a new 2-tuple from this one where the elements are ordered: 7th, 3rd.
      Returns:
        reordered tuple

    - #### _47

          @NotNull
          default ITuple2<T4,T7> _47()

      Create a new 2-tuple from this one where the elements are ordered: 4th, 7th.
      Returns:
        reordered tuple

    - #### _74

          @NotNull
          default ITuple2<T7,T4> _74()

      Create a new 2-tuple from this one where the elements are ordered: 7th, 4th.
      Returns:
        reordered tuple

    - #### _57

          @NotNull
          default ITuple2<T5,T7> _57()

      Create a new 2-tuple from this one where the elements are ordered: 5th, 7th.
      Returns:
        reordered tuple

    - #### _75

          @NotNull
          default ITuple2<T7,T5> _75()

      Create a new 2-tuple from this one where the elements are ordered: 7th, 5th.
      Returns:
        reordered tuple

    - #### _67

          @NotNull
          default ITuple2<T6,T7> _67()

      Create a new 2-tuple from this one where the elements are ordered: 6th, 7th.
      Returns:
        reordered tuple

    - #### _76

          @NotNull
          default ITuple2<T7,T6> _76()

      Create a new 2-tuple from this one where the elements are ordered: 7th, 6th.
      Returns:
        reordered tuple

    - #### asBase

          @NotNull
          default ITuple7.Base<T1,T2,T3,T4,T5,T6,T7> asBase()

      Convert this 7-tuple into a `base tuple` which provides useful implementations for standard methods.
      Returns:
        base view of this tuple

    - #### frozen

          @NotNull
          default NTuple7<T1,T2,T3,T4,T5,T6,T7> frozen()

      Convert this into an object of a concrete tuple implementation. This is useful because implementations may just be a view of something else. This method makes sure to decouple the tuple from the viewed object. The resulting tuple may contain `null` elements, see `frozenNotNull()` for a method which returns tuples which don't have nullable elements.
      Returns:
        standalone tuple object

    - #### frozenNotNull

          @NotNull
          default Tuple7<T1,T2,T3,T4,T5,T6,T7> frozenNotNull()

      Convert this into an object of a concrete tuple implementation. This is useful because implementations may just be a view of something else. This method makes sure to decouple the tuple from the viewed object. The resulting tuple is guaranteed not to have `null` elements, but if this interface has `null` elements this method will throw a `NullPointerException`.

      See `frozen()` for a method which will not throw exceptions.

      Returns:
        standalone tuple object
      Throws:
        `java.lang.NullPointerException` - if any element of this tuple is `null`

    - #### invoke

          default <T> T invoke(@NotNull
                               Function7<T,? super T1,? super T2,? super T3,? super T4,? super T5,? super T6,? super T7> function)

      Invoke a %d-argument function on this tuple.
      Type Parameters:
        `T` - function return type
      Parameters:
        `function` - function called with the unpacked elements of this tuple
      Returns:
        result of calling the function

    - #### sendTo

          default void sendTo(@NotNull
                              Procedure7<? super T1,? super T2,? super T3,? super T4,? super T5,? super T6,? super T7> procedure)

      Send this tuple unpacked to a 7-argument procedure.
      Parameters:
        `procedure` - procedure called with the unpacked elements of this tuple

    - #### testBy

          default boolean testBy(@NotNull
                                 Predicate7<? super T1,? super T2,? super T3,? super T4,? super T5,? super T6,? super T7> predicate)

      Test a 7-argument predicate with this tuple unpacked.
      Parameters:
        `predicate` - predicate called with the unpacked elements of this tuple
      Returns:
        the predicate's result

    - #### view

          @NotNull
          static <E1,E2,E3,E4,E5,E6,E7> ITuple7<E1,E2,E3,E4,E5,E6,E7> view(E1 elem1,
                                                                                    E2 elem2,
                                                                                    E3 elem3,
                                                                                    E4 elem4,
                                                                                    E5 elem5,
                                                                                    E6 elem6,
                                                                                    E7 elem7)

      Create a new 7-tuple on the fly. This is especially useful for temporary usage, you might want to create a `Tuple7` instead as that gives guarantees of the non-nullness of its elements, or a `NTuple7` as that at least is serializable (as is `Tuple7`).
      Type Parameters:
        `E1` - type of first element
        `E2` - type of second element
        `E3` - type of third element
        `E4` - type of fourth element
        `E5` - type of fifth element
        `E6` - type of sixth element
        `E7` - type of seventh element
      Parameters:
        `elem1` - first element of returned tuple
        `elem2` - second element of returned tuple
        `elem3` - third element of returned tuple
        `elem4` - fourth element of returned tuple
        `elem5` - fifth element of returned tuple
        `elem6` - sixth element of returned tuple
        `elem7` - seventh element of returned tuple
      Returns:
        7-tuple view of the given elements

    - #### equals

          static boolean equals(@NotNull
                                ITuple7<?,?,?,?,?,?,?> tuple,
                                @Nullable
                                java.lang.Object o)

      Basic implementation of equals for 7-tuples. This can be used in implementations to implement `Object.equals(Object)`. Don't forget hashing: `hash(ITuple7)`
      Parameters:
        `tuple` - tuple to compare
        `o` - other object to compare
      Returns:
        `false` if `o` is `null`, not a `ITuple7`, or its members differ
        `true` otherwise

    - #### hash

          static int hash(@NotNull
                          ITuple7<?,?,?,?,?,?,?> tuple)

      Basic implementation for calculating a hash code of a 7-tuple. This can be used in implementations to implement `Object.hashCode()`. Don't forget equals: `equals(ITuple7, Object)`.
      Parameters:
        `tuple` - tuple to hash
      Returns:
        hash code

    - #### toString

          @NotNull
          static java.lang.String toString(@NotNull
                                                    ITuple7<?,?,?,?,?,?,?> tuple)

      Basic implementation for creating a string from a 7-tuple. This one uses `"ITuple7"` as prefix. This can be used im implementations to implement `Object.toString()`.
      Parameters:
        `tuple` - tuple to convert
      Returns:
        text form
      See Also:
        `toString(String, ITuple7)`

    - #### toString

          @NotNull
          static java.lang.String toString(@NotNull
                                                    java.lang.String prefix,
                                                    @NotNull
                                                    ITuple7<?,?,?,?,?,?,?> tuple)

      Basic implementation for creating a string from a 7-tuple. This can be used im implementations to implement `Object.toString()`.
      Parameters:
        `prefix` - prefix for the output
        `tuple` - tuple to convert
      Returns:
        text form
      See Also:
        `toString(ITuple7)`

    - #### concat1

          @NotNull
          static <S1,E1,E2,E3,E4,E5,E6,E7,R> java.util.function.Function<S1,R> concat1(@NotNull
                                                                                                java.util.function.Function<S1,? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>> fn1,
                                                                                                @NotNull
                                                                                                Function7<R,? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> fn2)

      Combine a 1-argument function returning a 7-tuple with a 7-parameter function returning another result value into one 1-argument function.
      Type Parameters:
        `S1` - first argument of incoming function `fn1` and returned function
        `E1` - type of first element of intermediate tuple
        `E2` - type of second element of intermediate tuple
        `E3` - type of third element of intermediate tuple
        `E4` - type of fourth element of intermediate tuple
        `E5` - type of fifth element of intermediate tuple
        `E6` - type of sixth element of intermediate tuple
        `E7` - type of seventh element of intermediate tuple
        `R` - result type
      Parameters:
        `fn1` - 1-argument function returning a 7-tuple
        `fn2` - 7-argument function which can use the expanded tuple elements as arguments and returns the result value
      Returns:
        1-argument function which returns the result value

    - #### concatProc1

          @NotNull
          static <S1,E1,E2,E3,E4,E5,E6,E7> java.util.function.Consumer<S1> concatProc1(@NotNull
                                                                                                java.util.function.Function<S1,? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>> fn1,
                                                                                                @NotNull
                                                                                                Procedure7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> proc2)

      Combine a 1-argument function returning a 7-tuple with a 7-parameter consumer/procedure into a 1-argument consumer/procedure.
      Type Parameters:
        `S1` - first argument of function and returned consumer/procedure
        `E1` - type of first element of intermediate tuple
        `E2` - type of second element of intermediate tuple
        `E3` - type of third element of intermediate tuple
        `E4` - type of fourth element of intermediate tuple
        `E5` - type of fifth element of intermediate tuple
        `E6` - type of sixth element of intermediate tuple
        `E7` - type of seventh element of intermediate tuple
      Parameters:
        `fn1` - 1-argument function returning a 7-tuple
        `proc2` - 7-argument consumer/procedure which can use the expanded tuple elements as arguments
      Returns:
        1-argument consumer/procedure which returns the result value

    - #### concatPred1

          @NotNull
          static <S1,E1,E2,E3,E4,E5,E6,E7> java.util.function.Predicate<S1> concatPred1(@NotNull
                                                                                                 java.util.function.Function<S1,? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>> fn1,
                                                                                                 @NotNull
                                                                                                 Predicate7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> pred2)

      Combine a 1-argument function returning a 7-tuple with a 7-parameter predicate into a 1-argument predicate.
      Type Parameters:
        `S1` - first argument of function and returned consumer/procedure
        `E1` - type of first element of intermediate tuple
        `E2` - type of second element of intermediate tuple
        `E3` - type of third element of intermediate tuple
        `E4` - type of fourth element of intermediate tuple
        `E5` - type of fifth element of intermediate tuple
        `E6` - type of sixth element of intermediate tuple
        `E7` - type of seventh element of intermediate tuple
      Parameters:
        `fn1` - 1-argument function returning a 7-tuple
        `pred2` - 7-argument predicate which can use the expanded tuple elements as arguments
      Returns:
        1-argument predicate which returns the test result of the tuple returned by `fn1`

    - #### concat2

          @NotNull
          static <S1,S2,E1,E2,E3,E4,E5,E6,E7,R> java.util.function.BiFunction<S1,S2,R> concat2(@NotNull
                                                                                                        java.util.function.BiFunction<S1,S2,? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>> fn1,
                                                                                                        @NotNull
                                                                                                        Function7<R,? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> fn2)

      Combine a 2-argument function returning a 7-tuple with a 7-parameter function returning another result value into one 2-argument function.
      Type Parameters:
        `S1` - first argument of incoming function `fn1` and returned function
        `S2` - second argument of incoming function `fn1` and returned function
        `E1` - type of first element of intermediate tuple
        `E2` - type of second element of intermediate tuple
        `E3` - type of third element of intermediate tuple
        `E4` - type of fourth element of intermediate tuple
        `E5` - type of fifth element of intermediate tuple
        `E6` - type of sixth element of intermediate tuple
        `E7` - type of seventh element of intermediate tuple
        `R` - result type
      Parameters:
        `fn1` - 2-argument function returning a 7-tuple
        `fn2` - 7-argument function which can use the expanded tuple elements as arguments and returns the result value
      Returns:
        2-argument function which returns the result value

    - #### concatProc2

          @NotNull
          static <S1,S2,E1,E2,E3,E4,E5,E6,E7> java.util.function.BiConsumer<S1,S2> concatProc2(@NotNull
                                                                                                        java.util.function.BiFunction<S1,S2,? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>> fn1,
                                                                                                        @NotNull
                                                                                                        Procedure7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> proc2)

      Combine a 2-argument function returning a 7-tuple with a 7-parameter consumer/procedure into a 2-argument consumer/procedure.
      Type Parameters:
        `S1` - first argument of function and returned consumer/procedure
        `S2` - second argument of function and returned consumer/procedure
        `E1` - type of first element of intermediate tuple
        `E2` - type of second element of intermediate tuple
        `E3` - type of third element of intermediate tuple
        `E4` - type of fourth element of intermediate tuple
        `E5` - type of fifth element of intermediate tuple
        `E6` - type of sixth element of intermediate tuple
        `E7` - type of seventh element of intermediate tuple
      Parameters:
        `fn1` - 2-argument function returning a 7-tuple
        `proc2` - 7-argument consumer/procedure which can use the expanded tuple elements as arguments
      Returns:
        2-argument consumer/procedure which returns the result value

    - #### concatPred2

          @NotNull
          static <S1,S2,E1,E2,E3,E4,E5,E6,E7> java.util.function.BiPredicate<S1,S2> concatPred2(@NotNull
                                                                                                         java.util.function.BiFunction<S1,S2,? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>> fn1,
                                                                                                         @NotNull
                                                                                                         Predicate7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> pred2)

      Combine a 2-argument function returning a 7-tuple with a 7-parameter predicate into a 2-argument predicate.
      Type Parameters:
        `S1` - first argument of function and returned consumer/procedure
        `S2` - second argument of function and returned consumer/procedure
        `E1` - type of first element of intermediate tuple
        `E2` - type of second element of intermediate tuple
        `E3` - type of third element of intermediate tuple
        `E4` - type of fourth element of intermediate tuple
        `E5` - type of fifth element of intermediate tuple
        `E6` - type of sixth element of intermediate tuple
        `E7` - type of seventh element of intermediate tuple
      Parameters:
        `fn1` - 2-argument function returning a 7-tuple
        `pred2` - 7-argument predicate which can use the expanded tuple elements as arguments
      Returns:
        2-argument predicate which returns the test result of the tuple returned by `fn1`

    - #### concat3

          @NotNull
          static <S1,S2,S3,E1,E2,E3,E4,E5,E6,E7,R> Function3<R,S1,S2,S3> concat3(@NotNull
                                                                                          Function3<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3> fn1,
                                                                                          @NotNull
                                                                                          Function7<R,? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> fn2)

      Combine a 3-argument function returning a 7-tuple with a 7-parameter function returning another result value into one 3-argument function.
      Type Parameters:
        `S1` - first argument of incoming function `fn1` and returned function
        `S2` - second argument of incoming function `fn1` and returned function
        `S3` - third argument of incoming function `fn1` and returned function
        `E1` - type of first element of intermediate tuple
        `E2` - type of second element of intermediate tuple
        `E3` - type of third element of intermediate tuple
        `E4` - type of fourth element of intermediate tuple
        `E5` - type of fifth element of intermediate tuple
        `E6` - type of sixth element of intermediate tuple
        `E7` - type of seventh element of intermediate tuple
        `R` - result type
      Parameters:
        `fn1` - 3-argument function returning a 7-tuple
        `fn2` - 7-argument function which can use the expanded tuple elements as arguments and returns the result value
      Returns:
        3-argument function which returns the result value

    - #### concatProc3

          @NotNull
          static <S1,S2,S3,E1,E2,E3,E4,E5,E6,E7> Procedure3<S1,S2,S3> concatProc3(@NotNull
                                                                                           Function3<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3> fn1,
                                                                                           @NotNull
                                                                                           Procedure7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> proc2)

      Combine a 3-argument function returning a 7-tuple with a 7-parameter consumer/procedure into a 3-argument consumer/procedure.
      Type Parameters:
        `S1` - first argument of function and returned consumer/procedure
        `S2` - second argument of function and returned consumer/procedure
        `S3` - third argument of function and returned consumer/procedure
        `E1` - type of first element of intermediate tuple
        `E2` - type of second element of intermediate tuple
        `E3` - type of third element of intermediate tuple
        `E4` - type of fourth element of intermediate tuple
        `E5` - type of fifth element of intermediate tuple
        `E6` - type of sixth element of intermediate tuple
        `E7` - type of seventh element of intermediate tuple
      Parameters:
        `fn1` - 3-argument function returning a 7-tuple
        `proc2` - 7-argument consumer/procedure which can use the expanded tuple elements as arguments
      Returns:
        3-argument consumer/procedure which returns the result value

    - #### concatPred3

          @NotNull
          static <S1,S2,S3,E1,E2,E3,E4,E5,E6,E7> Predicate3<S1,S2,S3> concatPred3(@NotNull
                                                                                           Function3<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3> fn1,
                                                                                           @NotNull
                                                                                           Predicate7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> pred2)

      Combine a 3-argument function returning a 7-tuple with a 7-parameter predicate into a 3-argument predicate.
      Type Parameters:
        `S1` - first argument of function and returned consumer/procedure
        `S2` - second argument of function and returned consumer/procedure
        `S3` - third argument of function and returned consumer/procedure
        `E1` - type of first element of intermediate tuple
        `E2` - type of second element of intermediate tuple
        `E3` - type of third element of intermediate tuple
        `E4` - type of fourth element of intermediate tuple
        `E5` - type of fifth element of intermediate tuple
        `E6` - type of sixth element of intermediate tuple
        `E7` - type of seventh element of intermediate tuple
      Parameters:
        `fn1` - 3-argument function returning a 7-tuple
        `pred2` - 7-argument predicate which can use the expanded tuple elements as arguments
      Returns:
        3-argument predicate which returns the test result of the tuple returned by `fn1`

    - #### concat4

          @NotNull
          static <S1,S2,S3,S4,E1,E2,E3,E4,E5,E6,E7,R> Function4<R,S1,S2,S3,S4> concat4(@NotNull
                                                                                                Function4<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4> fn1,
                                                                                                @NotNull
                                                                                                Function7<R,? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> fn2)

      Combine a 4-argument function returning a 7-tuple with a 7-parameter function returning another result value into one 4-argument function.
      Type Parameters:
        `S1` - first argument of incoming function `fn1` and returned function
        `S2` - second argument of incoming function `fn1` and returned function
        `S3` - third argument of incoming function `fn1` and returned function
        `S4` - fourth argument of incoming function `fn1` and returned function
        `E1` - type of first element of intermediate tuple
        `E2` - type of second element of intermediate tuple
        `E3` - type of third element of intermediate tuple
        `E4` - type of fourth element of intermediate tuple
        `E5` - type of fifth element of intermediate tuple
        `E6` - type of sixth element of intermediate tuple
        `E7` - type of seventh element of intermediate tuple
        `R` - result type
      Parameters:
        `fn1` - 4-argument function returning a 7-tuple
        `fn2` - 7-argument function which can use the expanded tuple elements as arguments and returns the result value
      Returns:
        4-argument function which returns the result value

    - #### concatProc4

          @NotNull
          static <S1,S2,S3,S4,E1,E2,E3,E4,E5,E6,E7> Procedure4<S1,S2,S3,S4> concatProc4(@NotNull
                                                                                                 Function4<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4> fn1,
                                                                                                 @NotNull
                                                                                                 Procedure7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> proc2)

      Combine a 4-argument function returning a 7-tuple with a 7-parameter consumer/procedure into a 4-argument consumer/procedure.
      Type Parameters:
        `S1` - first argument of function and returned consumer/procedure
        `S2` - second argument of function and returned consumer/procedure
        `S3` - third argument of function and returned consumer/procedure
        `S4` - fourth argument of function and returned consumer/procedure
        `E1` - type of first element of intermediate tuple
        `E2` - type of second element of intermediate tuple
        `E3` - type of third element of intermediate tuple
        `E4` - type of fourth element of intermediate tuple
        `E5` - type of fifth element of intermediate tuple
        `E6` - type of sixth element of intermediate tuple
        `E7` - type of seventh element of intermediate tuple
      Parameters:
        `fn1` - 4-argument function returning a 7-tuple
        `proc2` - 7-argument consumer/procedure which can use the expanded tuple elements as arguments
      Returns:
        4-argument consumer/procedure which returns the result value

    - #### concatPred4

          @NotNull
          static <S1,S2,S3,S4,E1,E2,E3,E4,E5,E6,E7> Predicate4<S1,S2,S3,S4> concatPred4(@NotNull
                                                                                                 Function4<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4> fn1,
                                                                                                 @NotNull
                                                                                                 Predicate7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> pred2)

      Combine a 4-argument function returning a 7-tuple with a 7-parameter predicate into a 4-argument predicate.
      Type Parameters:
        `S1` - first argument of function and returned consumer/procedure
        `S2` - second argument of function and returned consumer/procedure
        `S3` - third argument of function and returned consumer/procedure
        `S4` - fourth argument of function and returned consumer/procedure
        `E1` - type of first element of intermediate tuple
        `E2` - type of second element of intermediate tuple
        `E3` - type of third element of intermediate tuple
        `E4` - type of fourth element of intermediate tuple
        `E5` - type of fifth element of intermediate tuple
        `E6` - type of sixth element of intermediate tuple
        `E7` - type of seventh element of intermediate tuple
      Parameters:
        `fn1` - 4-argument function returning a 7-tuple
        `pred2` - 7-argument predicate which can use the expanded tuple elements as arguments
      Returns:
        4-argument predicate which returns the test result of the tuple returned by `fn1`

    - #### concat5

          @NotNull
          static <S1,S2,S3,S4,S5,E1,E2,E3,E4,E5,E6,E7,R> Function5<R,S1,S2,S3,S4,S5> concat5(@NotNull
                                                                                                      Function5<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4,S5> fn1,
                                                                                                      @NotNull
                                                                                                      Function7<R,? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> fn2)

      Combine a 5-argument function returning a 7-tuple with a 7-parameter function returning another result value into one 5-argument function.
      Type Parameters:
        `S1` - first argument of incoming function `fn1` and returned function
        `S2` - second argument of incoming function `fn1` and returned function
        `S3` - third argument of incoming function `fn1` and returned function
        `S4` - fourth argument of incoming function `fn1` and returned function
        `S5` - fifth argument of incoming function `fn1` and returned function
        `E1` - type of first element of intermediate tuple
        `E2` - type of second element of intermediate tuple
        `E3` - type of third element of intermediate tuple
        `E4` - type of fourth element of intermediate tuple
        `E5` - type of fifth element of intermediate tuple
        `E6` - type of sixth element of intermediate tuple
        `E7` - type of seventh element of intermediate tuple
        `R` - result type
      Parameters:
        `fn1` - 5-argument function returning a 7-tuple
        `fn2` - 7-argument function which can use the expanded tuple elements as arguments and returns the result value
      Returns:
        5-argument function which returns the result value

    - #### concatProc5

          @NotNull
          static <S1,S2,S3,S4,S5,E1,E2,E3,E4,E5,E6,E7> Procedure5<S1,S2,S3,S4,S5> concatProc5(@NotNull
                                                                                                       Function5<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4,S5> fn1,
                                                                                                       @NotNull
                                                                                                       Procedure7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> proc2)

      Combine a 5-argument function returning a 7-tuple with a 7-parameter consumer/procedure into a 5-argument consumer/procedure.
      Type Parameters:
        `S1` - first argument of function and returned consumer/procedure
        `S2` - second argument of function and returned consumer/procedure
        `S3` - third argument of function and returned consumer/procedure
        `S4` - fourth argument of function and returned consumer/procedure
        `S5` - fifth argument of function and returned consumer/procedure
        `E1` - type of first element of intermediate tuple
        `E2` - type of second element of intermediate tuple
        `E3` - type of third element of intermediate tuple
        `E4` - type of fourth element of intermediate tuple
        `E5` - type of fifth element of intermediate tuple
        `E6` - type of sixth element of intermediate tuple
        `E7` - type of seventh element of intermediate tuple
      Parameters:
        `fn1` - 5-argument function returning a 7-tuple
        `proc2` - 7-argument consumer/procedure which can use the expanded tuple elements as arguments
      Returns:
        5-argument consumer/procedure which returns the result value

    - #### concatPred5

          @NotNull
          static <S1,S2,S3,S4,S5,E1,E2,E3,E4,E5,E6,E7> Predicate5<S1,S2,S3,S4,S5> concatPred5(@NotNull
                                                                                                       Function5<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4,S5> fn1,
                                                                                                       @NotNull
                                                                                                       Predicate7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> pred2)

      Combine a 5-argument function returning a 7-tuple with a 7-parameter predicate into a 5-argument predicate.
      Type Parameters:
        `S1` - first argument of function and returned consumer/procedure
        `S2` - second argument of function and returned consumer/procedure
        `S3` - third argument of function and returned consumer/procedure
        `S4` - fourth argument of function and returned consumer/procedure
        `S5` - fifth argument of function and returned consumer/procedure
        `E1` - type of first element of intermediate tuple
        `E2` - type of second element of intermediate tuple
        `E3` - type of third element of intermediate tuple
        `E4` - type of fourth element of intermediate tuple
        `E5` - type of fifth element of intermediate tuple
        `E6` - type of sixth element of intermediate tuple
        `E7` - type of seventh element of intermediate tuple
      Parameters:
        `fn1` - 5-argument function returning a 7-tuple
        `pred2` - 7-argument predicate which can use the expanded tuple elements as arguments
      Returns:
        5-argument predicate which returns the test result of the tuple returned by `fn1`

    - #### concat6

          @NotNull
          static <S1,S2,S3,S4,S5,S6,E1,E2,E3,E4,E5,E6,E7,R> Function6<R,S1,S2,S3,S4,S5,S6> concat6(@NotNull
                                                                                                            Function6<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4,S5,S6> fn1,
                                                                                                            @NotNull
                                                                                                            Function7<R,? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> fn2)

      Combine a 6-argument function returning a 7-tuple with a 7-parameter function returning another result value into one 6-argument function.
      Type Parameters:
        `S1` - first argument of incoming function `fn1` and returned function
        `S2` - second argument of incoming function `fn1` and returned function
        `S3` - third argument of incoming function `fn1` and returned function
        `S4` - fourth argument of incoming function `fn1` and returned function
        `S5` - fifth argument of incoming function `fn1` and returned function
        `S6` - sixth argument of incoming function `fn1` and returned function
        `E1` - type of first element of intermediate tuple
        `E2` - type of second element of intermediate tuple
        `E3` - type of third element of intermediate tuple
        `E4` - type of fourth element of intermediate tuple
        `E5` - type of fifth element of intermediate tuple
        `E6` - type of sixth element of intermediate tuple
        `E7` - type of seventh element of intermediate tuple
        `R` - result type
      Parameters:
        `fn1` - 6-argument function returning a 7-tuple
        `fn2` - 7-argument function which can use the expanded tuple elements as arguments and returns the result value
      Returns:
        6-argument function which returns the result value

    - #### concatProc6

          @NotNull
          static <S1,S2,S3,S4,S5,S6,E1,E2,E3,E4,E5,E6,E7> Procedure6<S1,S2,S3,S4,S5,S6> concatProc6(@NotNull
                                                                                                             Function6<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4,S5,S6> fn1,
                                                                                                             @NotNull
                                                                                                             Procedure7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> proc2)

      Combine a 6-argument function returning a 7-tuple with a 7-parameter consumer/procedure into a 6-argument consumer/procedure.
      Type Parameters:
        `S1` - first argument of function and returned consumer/procedure
        `S2` - second argument of function and returned consumer/procedure
        `S3` - third argument of function and returned consumer/procedure
        `S4` - fourth argument of function and returned consumer/procedure
        `S5` - fifth argument of function and returned consumer/procedure
        `S6` - sixth argument of function and returned consumer/procedure
        `E1` - type of first element of intermediate tuple
        `E2` - type of second element of intermediate tuple
        `E3` - type of third element of intermediate tuple
        `E4` - type of fourth element of intermediate tuple
        `E5` - type of fifth element of intermediate tuple
        `E6` - type of sixth element of intermediate tuple
        `E7` - type of seventh element of intermediate tuple
      Parameters:
        `fn1` - 6-argument function returning a 7-tuple
        `proc2` - 7-argument consumer/procedure which can use the expanded tuple elements as arguments
      Returns:
        6-argument consumer/procedure which returns the result value

    - #### concatPred6

          @NotNull
          static <S1,S2,S3,S4,S5,S6,E1,E2,E3,E4,E5,E6,E7> Predicate6<S1,S2,S3,S4,S5,S6> concatPred6(@NotNull
                                                                                                             Function6<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4,S5,S6> fn1,
                                                                                                             @NotNull
                                                                                                             Predicate7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> pred2)

      Combine a 6-argument function returning a 7-tuple with a 7-parameter predicate into a 6-argument predicate.
      Type Parameters:
        `S1` - first argument of function and returned consumer/procedure
        `S2` - second argument of function and returned consumer/procedure
        `S3` - third argument of function and returned consumer/procedure
        `S4` - fourth argument of function and returned consumer/procedure
        `S5` - fifth argument of function and returned consumer/procedure
        `S6` - sixth argument of function and returned consumer/procedure
        `E1` - type of first element of intermediate tuple
        `E2` - type of second element of intermediate tuple
        `E3` - type of third element of intermediate tuple
        `E4` - type of fourth element of intermediate tuple
        `E5` - type of fifth element of intermediate tuple
        `E6` - type of sixth element of intermediate tuple
        `E7` - type of seventh element of intermediate tuple
      Parameters:
        `fn1` - 6-argument function returning a 7-tuple
        `pred2` - 7-argument predicate which can use the expanded tuple elements as arguments
      Returns:
        6-argument predicate which returns the test result of the tuple returned by `fn1`

    - #### concat7

          @NotNull
          static <S1,S2,S3,S4,S5,S6,S7,E1,E2,E3,E4,E5,E6,E7,R> Function7<R,S1,S2,S3,S4,S5,S6,S7> concat7(@NotNull
                                                                                                                  Function7<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4,S5,S6,S7> fn1,
                                                                                                                  @NotNull
                                                                                                                  Function7<R,? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> fn2)

      Combine a 7-argument function returning a 7-tuple with a 7-parameter function returning another result value into one 7-argument function.
      Type Parameters:
        `S1` - first argument of incoming function `fn1` and returned function
        `S2` - second argument of incoming function `fn1` and returned function
        `S3` - third argument of incoming function `fn1` and returned function
        `S4` - fourth argument of incoming function `fn1` and returned function
        `S5` - fifth argument of incoming function `fn1` and returned function
        `S6` - sixth argument of incoming function `fn1` and returned function
        `S7` - seventh argument of incoming function `fn1` and returned function
        `E1` - type of first element of intermediate tuple
        `E2` - type of second element of intermediate tuple
        `E3` - type of third element of intermediate tuple
        `E4` - type of fourth element of intermediate tuple
        `E5` - type of fifth element of intermediate tuple
        `E6` - type of sixth element of intermediate tuple
        `E7` - type of seventh element of intermediate tuple
        `R` - result type
      Parameters:
        `fn1` - 7-argument function returning a 7-tuple
        `fn2` - 7-argument function which can use the expanded tuple elements as arguments and returns the result value
      Returns:
        7-argument function which returns the result value

    - #### concatProc7

          @NotNull
          static <S1,S2,S3,S4,S5,S6,S7,E1,E2,E3,E4,E5,E6,E7> Procedure7<S1,S2,S3,S4,S5,S6,S7> concatProc7(@NotNull
                                                                                                                   Function7<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4,S5,S6,S7> fn1,
                                                                                                                   @NotNull
                                                                                                                   Procedure7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> proc2)

      Combine a 7-argument function returning a 7-tuple with a 7-parameter consumer/procedure into a 7-argument consumer/procedure.
      Type Parameters:
        `S1` - first argument of function and returned consumer/procedure
        `S2` - second argument of function and returned consumer/procedure
        `S3` - third argument of function and returned consumer/procedure
        `S4` - fourth argument of function and returned consumer/procedure
        `S5` - fifth argument of function and returned consumer/procedure
        `S6` - sixth argument of function and returned consumer/procedure
        `S7` - seventh argument of function and returned consumer/procedure
        `E1` - type of first element of intermediate tuple
        `E2` - type of second element of intermediate tuple
        `E3` - type of third element of intermediate tuple
        `E4` - type of fourth element of intermediate tuple
        `E5` - type of fifth element of intermediate tuple
        `E6` - type of sixth element of intermediate tuple
        `E7` - type of seventh element of intermediate tuple
      Parameters:
        `fn1` - 7-argument function returning a 7-tuple
        `proc2` - 7-argument consumer/procedure which can use the expanded tuple elements as arguments
      Returns:
        7-argument consumer/procedure which returns the result value

    - #### concatPred7

          @NotNull
          static <S1,S2,S3,S4,S5,S6,S7,E1,E2,E3,E4,E5,E6,E7> Predicate7<S1,S2,S3,S4,S5,S6,S7> concatPred7(@NotNull
                                                                                                                   Function7<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4,S5,S6,S7> fn1,
                                                                                                                   @NotNull
                                                                                                                   Predicate7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> pred2)

      Combine a 7-argument function returning a 7-tuple with a 7-parameter predicate into a 7-argument predicate.
      Type Parameters:
        `S1` - first argument of function and returned consumer/procedure
        `S2` - second argument of function and returned consumer/procedure
        `S3` - third argument of function and returned consumer/procedure
        `S4` - fourth argument of function and returned consumer/procedure
        `S5` - fifth argument of function and returned consumer/procedure
        `S6` - sixth argument of function and returned consumer/procedure
        `S7` - seventh argument of function and returned consumer/procedure
        `E1` - type of first element of intermediate tuple
        `E2` - type of second element of intermediate tuple
        `E3` - type of third element of intermediate tuple
        `E4` - type of fourth element of intermediate tuple
        `E5` - type of fifth element of intermediate tuple
        `E6` - type of sixth element of intermediate tuple
        `E7` - type of seventh element of intermediate tuple
      Parameters:
        `fn1` - 7-argument function returning a 7-tuple
        `pred2` - 7-argument predicate which can use the expanded tuple elements as arguments
      Returns:
        7-argument predicate which returns the test result of the tuple returned by `fn1`

    - #### concat8

          @NotNull
          static <S1,S2,S3,S4,S5,S6,S7,S8,E1,E2,E3,E4,E5,E6,E7,R> Function8<R,S1,S2,S3,S4,S5,S6,S7,S8> concat8(@NotNull
                                                                                                                        Function8<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4,S5,S6,S7,S8> fn1,
                                                                                                                        @NotNull
                                                                                                                        Function7<R,? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> fn2)

      Combine a 8-argument function returning a 7-tuple with a 7-parameter function returning another result value into one 8-argument function.
      Type Parameters:
        `S1` - first argument of incoming function `fn1` and returned function
        `S2` - second argument of incoming function `fn1` and returned function
        `S3` - third argument of incoming function `fn1` and returned function
        `S4` - fourth argument of incoming function `fn1` and returned function
        `S5` - fifth argument of incoming function `fn1` and returned function
        `S6` - sixth argument of incoming function `fn1` and returned function
        `S7` - seventh argument of incoming function `fn1` and returned function
        `S8` - eighth argument of incoming function `fn1` and returned function
        `E1` - type of first element of intermediate tuple
        `E2` - type of second element of intermediate tuple
        `E3` - type of third element of intermediate tuple
        `E4` - type of fourth element of intermediate tuple
        `E5` - type of fifth element of intermediate tuple
        `E6` - type of sixth element of intermediate tuple
        `E7` - type of seventh element of intermediate tuple
        `R` - result type
      Parameters:
        `fn1` - 8-argument function returning a 7-tuple
        `fn2` - 7-argument function which can use the expanded tuple elements as arguments and returns the result value
      Returns:
        8-argument function which returns the result value

    - #### concatProc8

          @NotNull
          static <S1,S2,S3,S4,S5,S6,S7,S8,E1,E2,E3,E4,E5,E6,E7> Procedure8<S1,S2,S3,S4,S5,S6,S7,S8> concatProc8(@NotNull
                                                                                                                         Function8<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4,S5,S6,S7,S8> fn1,
                                                                                                                         @NotNull
                                                                                                                         Procedure7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> proc2)

      Combine a 8-argument function returning a 7-tuple with a 7-parameter consumer/procedure into a 8-argument consumer/procedure.
      Type Parameters:
        `S1` - first argument of function and returned consumer/procedure
        `S2` - second argument of function and returned consumer/procedure
        `S3` - third argument of function and returned consumer/procedure
        `S4` - fourth argument of function and returned consumer/procedure
        `S5` - fifth argument of function and returned consumer/procedure
        `S6` - sixth argument of function and returned consumer/procedure
        `S7` - seventh argument of function and returned consumer/procedure
        `S8` - eighth argument of function and returned consumer/procedure
        `E1` - type of first element of intermediate tuple
        `E2` - type of second element of intermediate tuple
        `E3` - type of third element of intermediate tuple
        `E4` - type of fourth element of intermediate tuple
        `E5` - type of fifth element of intermediate tuple
        `E6` - type of sixth element of intermediate tuple
        `E7` - type of seventh element of intermediate tuple
      Parameters:
        `fn1` - 8-argument function returning a 7-tuple
        `proc2` - 7-argument consumer/procedure which can use the expanded tuple elements as arguments
      Returns:
        8-argument consumer/procedure which returns the result value

    - #### concatPred8

          @NotNull
          static <S1,S2,S3,S4,S5,S6,S7,S8,E1,E2,E3,E4,E5,E6,E7> Predicate8<S1,S2,S3,S4,S5,S6,S7,S8> concatPred8(@NotNull
                                                                                                                         Function8<? extends ITuple7<? extends E1,? extends E2,? extends E3,? extends E4,? extends E5,? extends E6,? extends E7>,S1,S2,S3,S4,S5,S6,S7,S8> fn1,
                                                                                                                         @NotNull
                                                                                                                         Predicate7<? super E1,? super E2,? super E3,? super E4,? super E5,? super E6,? super E7> pred2)

      Combine a 8-argument function returning a 7-tuple with a 7-parameter predicate into a 8-argument predicate.
      Type Parameters:
        `S1` - first argument of function and returned consumer/procedure
        `S2` - second argument of function and returned consumer/procedure
        `S3` - third argument of function and returned consumer/procedure
        `S4` - fourth argument of function and returned consumer/procedure
        `S5` - fifth argument of function and returned consumer/procedure
        `S6` - sixth argument of function and returned consumer/procedure
        `S7` - seventh argument of function and returned consumer/procedure
        `S8` - eighth argument of function and returned consumer/procedure
        `E1` - type of first element of intermediate tuple
        `E2` - type of second element of intermediate tuple
        `E3` - type of third element of intermediate tuple
        `E4` - type of fourth element of intermediate tuple
        `E5` - type of fifth element of intermediate tuple
        `E6` - type of sixth element of intermediate tuple
        `E7` - type of seventh element of intermediate tuple
      Parameters:
        `fn1` - 8-argument function returning a 7-tuple
        `pred2` - 7-argument predicate which can use the expanded tuple elements as arguments
      Returns:
        8-argument predicate which returns the test result of the tuple returned by `fn1`