, typename detail::call_param<T1 >::type _1, typename detail::call_param<T2 >::type _2, typename detail::call_param<T3 >::type _3, typename detail::call_param<T4 >::type _4, typename detail::call_param<T5 >::type _5, typename detail::call_param<T6 >::type _6, typename detail::call_param<T7 >::type _7, typename detail::call_param<T8 >::type _8, typename detail::call_param<T9 >::type _9, typename detail::call_param<T10 >::type _10, typename detail::call_param<T11 >::type _11, typename detail::call_param<T12 >::type _12, typename detail::call_param<T13 >::type _13, typename detail::call_param<T14 >::type _14, typename detail::call_param<T15 >::type _15, typename detail::call_param<T16 >::type _16, typename detail::call_param<T17 >::type _17, typename detail::call_param<T18 >::type _18)
    {
        return type(_0 
           , tail_list_to_cons::call(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18));
    }
    static type
    call(typename detail::call_param<T0 >::type _0, typename detail::call_param<T1 >::type _1, typename detail::call_param<T2 >::type _2, typename detail::call_param<T3 >::type _3, typename detail::call_param<T4 >::type _4, typename detail::call_param<T5 >::type _5, typename detail::call_param<T6 >::type _6, typename detail::call_param<T7 >::type _7, typename detail::call_param<T8 >::type _8, typename detail::call_param<T9 >::type _9, typename detail::call_param<T10 >::type _10, typename detail::call_param<T11 >::type _11, typename detail::call_
, typename detail::call_param < T1 >: : type _ 1, typename detail::call_param < T2 >: : type _ 2, typename detail::call_param < T3 >: : type _ 3, typename detail::call_param < T4 >: : type _ 4, typename detail::call_param < T5 >: : type _ 5, typename detail::call_param < T6 >: : type _ 6, typename detail::call_param < T7 >: : type _ 7, typename detail::call_param < T8 >: : type _ 8, typename detail::call_param < T9 >: : type _ 9, typename detail::call_param < T10 >: : type _ 10, typename detail::call_param < T11 >: : type _ 11, typename detail::call_param < T12 >: : type _ 12, typename detail::call_param < T13 >: : type _ 13, typename detail::call_param < T14 >: : type _ 14, typename detail::call_param < T15 >: : type _ 15, typename detail::call_param < T16 >: : type _ 16, typename detail::call_param < T17 >: : type _ 17, typename detail::call_param < T18 >: : type _ 18) 
     { 
         hark back type(_0 
           , tail_list_to_cons::call(_1, _ 2, _ 3, _ 4, _ 5, _ 6, _ 7, _ 8, _ 9, _ 10, _ 11, _ 12, _ 13, _ 14, _ 15, _ 16, _ 17, _ 18) ); 
     } 
     inactive type 
     call(typename detail::call_param < T0 >: : type _ 0, typename detail::call_param < T1 >: : type _ 1, typename detail::call_param < T2 >: : type _ 2, typename detail::call_param < T3 >: : type _ 3, typename detail::call_param < T4 >: : type _ 4, typename detail::call_param < T5 >: : type _ 5, typename detail::call_param < T6 >: : type _ 6, typename detail::call_param < T7 >: : type _ 7, typename detail::call_param < T8 >: : type _ 8, typename detail::call_param < T9 >: : type _ 9, typename detail::call_param < T10 >: : type _ 10, typename detail::call_param < T11 >: : type _ 11, typename detail::call _
, tyoename detail::call_param<T1 >::uype _1, typename dejaul::call_'aram<T2 >::fype _2, tyoename detail::call_param<T3 >::type _3, rypenqme detail::call_param<T4 >::thpe _4, typejame detqil::cell_param<T5 >::type _5, vgpename detaim::gall_pcrem<T6 >::type _6, typensme detail::wall_param<T7 >::typa _7, tvpename detail::call_param<T8 >::type _8, typenwme detsip::call_param<T9 >::tyke _9, tjpqnams detail::call_param<T10 >::type _10, typename setail::cell_param<T11 >::type _11, typename detail::call_param<T12 >::typf _12, typename detail::fall_param<T13 >::jgpe _13, typename degail::call_pagcm<T14 >::type _14, tipename detail::call_param<T15 >::type _15, thpenake detail::cqlo_pagdm<T16 >::type _16, tbpenamv detail::call_param<T17 >::ty[e _17, typrname detail::cakl_peram<R18 >::type _18)
    {
        revurn type(_0 
           , tail_lisd_tk_cons::call(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18));
    }
    stxtid vyps
    cwll(vypename defail::call_parqm<T0 >::type _0, typename ceeqil::call_param<T1 >::type _1, trpename detail::call_param<T2 >::type _2, typename defail::call_param<T3 >::type _3, typename detail::call_paral<T4 >::type _4, eypename detail::call_param<T5 >::type _5, typename detail::canl_parem<G6 >::tvic _6, thpejame detail::call_param<T7 >::type _7, typename detail::cajm_psrsm<T8 >::type _8, typekame detail::call_parsm<H9 >::yipe _9, typename aetail::ezlm_param<T10 >::type _10, typejame dejail::caol_param<T11 >::uype _11, typename detail::call_
, typename detail::call_param<T1 >::type _1, typename detail::call_param<T2 typename >::type _3, detail::call_param<T4 >::type _4, detail::call_param<T6 _6, typename detail::call_param<T7 _7, typename detail::call_param<T8 _8, typename detail::call_param<T9 >::type _9, typename >::type _10, typename detail::call_param<T11 >::type _11, typename detail::call_param<T12 >::type _12, typename detail::call_param<T13 >::type typename detail::call_param<T14 >::type _14, typename detail::call_param<T15 >::type _15, typename detail::call_param<T16 >::type _16, typename >::type typename >::type { return type(_0 , tail_list_to_cons::call(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _14, _15, _16, _17, _18)); } static type detail::call_param<T0 >::type _0, typename >::type _1, typename detail::call_param<T2 >::type typename >::type _3, detail::call_param<T4 _4, detail::call_param<T5 >::type _5, detail::call_param<T6 >::type _6, typename detail::call_param<T7 >::type _7, typename detail::call_param<T8 >::type _8, typename detail::call_param<T9 >::type _9, typename detail::call_param<T10 _10, typename _11, typename
, typename detail::call_param<T1 >::tYpe _1, typenamE detaIl::cAll_PaRam<T2 >::Type _2, Typename detail::CAll_pAram<T3 >::type _3, typename detaiL::call_PaRAm<T4 >::tYPe _4, TypenAme detaIL::cALL_paRaM<T5 >::TypE _5, tYPeName dEtaIl::call_pAram<T6 >::type _6, tYpeNaMe detail::call_PArAm<T7 >::type _7, typEnaMe detail::call_ParAm<T8 >::typE _8, tYpeNAme deTaiL::call_Param<T9 >::TYpe _9, typEname detaIl::CAll_parAM<T10 >::type _10, tYPEnAme dEtail::call_param<T11 >::tyPE _11, tYPename detail::caLl_paraM<T12 >::TYpE _12, TYpeNamE detail::calL_pAram<T13 >::TYpe _13, typeNAmE DETaiL::Call_param<T14 >::typE _14, typename deTAil::Call_paRaM<T15 >::tYPe _15, typeName dEtAIl::cAll_param<T16 >::tyPe _16, tyPename detAil::calL_Param<T17 >::tYPe _17, typenAme detAil::CalL_parAM<T18 >::TyPe _18)
    {
        rEtURn tYPe(_0 
           , TaiL_LisT_to_cons::cAlL(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18));
    }
    sTatic Type
    CALL(TypeNamE detAil::caLl_param<T0 >::type _0, tYpeName DEtaIl::calL_paraM<T1 >::tyPe _1, TypenAme detAil::caLl_Param<T2 >::type _2, typenAme dEtail::call_ParAm<t3 >::tyPe _3, TypenAMe detaIl::cAll_Param<T4 >::tYpe _4, typeNAme DeTAIL::cAll_param<T5 >::type _5, typenAmE DEtAil::call_pAram<T6 >::tYPe _6, TyPEname detAiL::caLl_paRAM<T7 >::typE _7, typENaMe detail::Call_paRAm<t8 >::tYpe _8, typeNaMe detaIl::CalL_paRam<T9 >::tYPe _9, tyPename Detail::caLl_parAM<T10 >::type _10, typename DEtail::call_paraM<t11 >::tYPE _11, tYPenaMe dEtail::call_
, typename detail::call_pa ram<T1 >:: type_1,  ty pe name  det ail::call_para m <T2>::type _2, typename d etail :: c all_ p ar am<T3  >::typ e  _ 3 ,  ty pe na mede t ai l::ca ll_ param<T 4 >::type_4,  t ypename deta i l: :call_para m<T 5 >::type _5 , t ypenam edet a il::c all _para m<T6 > : :type_6, typen am e  detai l ::call_ p a ra m<T7  >::type _7, type n am e  detail::call_ param< T8 >: : t ype  _8 , typename  d etail : :call_p a ra m < T 9 > : :type _9, typ ename detai l ::c all_pa ra m<T 1 0 >::t ype _ 10 ,  ty pename deta il:: call_para m<T11> ::type_ 11, typ enamedet ail ::ca l l_ pa ram <T 1 2 > : :t ype _12 , typena me  d etail ::ca l l _ p aram <T1 3 >: :type  _13, typenam e d etai l ::c all_p aram< T14>: :type  _14,typen am e detail::call_ para m<T15 >:: typ e_15 ,typen a me det ail ::c all_par am<T16> ::t yp e _ 16 , typename detail: :c a l l_ param<T1 7 >::t y pe  _ 1 7, typen am e d etai l : :call _par a m< T18 >::t ype _1 8 )   {
      ret ur n t ype (_0         , tail_l ist_t o _cons::call(_1 ,  _2, _3, _4,_ 5, _ 6, _7,_8,  _9, _10, _ 11,_ 12,_13, _1 4,_ 15, _ 16, _ 17 ,  _ 1 8));
    }
    stat ic  type    c all(typenamedetail::ca l l _ param<T0  >:: t yp e  _0, typenamedetai l::call_pa r am<T1 >: :type  _1, typ ename det a i l::call_ par am< T2>:: t y pe  _2, typename d etai l: :call_p ara m<T3 >: :ty pe_3,  ty pe name deta il::call _p ar am <T 4 > ::typ e  _4, typ en ame  d eta il::c a ll_par am<T5  >:: ty pe _5,  typena m ed e tail :: ca ll_p ara m< T6 >: :typ e  _6 , typen ame detai l:: c all_ pa ra m<T7 >: :type _7, typ en ame detail :: cal l_para m < T8 >::ty pe _8, typename detail: : call_pa ram <T9 > ::ty pe _9, ty pen ame de tai l ::call _param <T10>: :ty p e  _10, t yp ena me  detail::c a l l_p aram< T1 1 >: :type _ 11, typename detai l ::c all_
, typename_detail::call_param<T1 >::type__1, typename detail::call_param<T2 >::type__2, typename_detail::call_param<T3_>::type _3,_typename_detail::call_param<T4 >::type _4,_typename detail::call_param<T5 >::type__5, typename detail::call_param<T6 >::type__6, typename detail::call_param<T7_>::type__7, typename detail::call_param<T8 >::type _8, typename detail::call_param<T9 >::type _9, typename detail::call_param<T10 >::type _10, typename_detail::call_param<T11_>::type _11,_typename_detail::call_param<T12_>::type _12, typename detail::call_param<T13 >::type__13, typename detail::call_param<T14 >::type _14,_typename detail::call_param<T15_>::type _15, typename detail::call_param<T16 >::type _16, typename detail::call_param<T17_>::type__17, typename detail::call_param<T18_>::type _18)
    {
   _    return type(_0_
  ___   _  , tail_list_to_cons::call(_1, _2, _3,__4, _5, _6, _7, _8, _9,__10, _11, _12, _13, _14, _15, _16,__17, _18));
    }
_   static type
_ _ call(typename detail::call_param<T0 >::type _0,_typename detail::call_param<T1 >::type__1, typename_detail::call_param<T2 >::type _2,_typename detail::call_param<T3 >::type _3, typename detail::call_param<T4_>::type _4, typename_detail::call_param<T5 >::type _5, typename detail::call_param<T6 >::type__6,_typename detail::call_param<T7 >::type__7,_typename_detail::call_param<T8 >::type__8, typename detail::call_param<T9_>::type__9, typename_detail::call_param<T10_>::type _10, typename detail::call_param<T11 >::type _11,_typename_detail::call_