 > struct apply
    {
        typedef vector6<
              typename Vector::item0, typename Vector::item1
           , typename Vector::item2, typename Vector::item3
           , typename Vector::item4, typename Vector::item5
            > type;
    };
};

template< typename V >
struct v_at< V,7 >
{
    typedef typename V::item7 type;
};

template<
      typename T0, typename T1, typename T2, typename T3, typename T4
   , typename T5, typename T6, typename T7
    >
struct vector8
{
    typedef aux::vector_tag<8> tag;
    typedef vector8 type;
    typedef T0 item0;
    typedef T1 item1;
    typedef T2 item2;
    typedef T3 item3;
    typedef T4 item4;
    typedef T5 item5;
    typedef T6 item6;
    typedef T7 item7;
    

    typedef void_ item8;
    typedef T7 back;
    typedef v_iter< type,0 > begin;
    typedef v_iter< type,8 > end;
};

template<>
struct push_front_impl< aux::vector_tag<7> >
{
    template< typename Vector, typename T > struct apply
    {
        typedef vector8<
              T
             ,
              typename Vector::item0, typename Vector::item1
           , typename Vector::item2, typename Vector::item3
           , typename Vector::item4, typename Vector::item5
           , typename Vector::item6
            > type;
    };
};

template<>
struct pop_front_impl< aux::vector_tag<8> >
{
    template< typename Vector > struct apply
    {
        typedef vector7<
              typename Vector::item1, typename Vector::item2
           , typename Vector::item3, typename Vector::item4
           , typename Vector::item5, typename Vector::item6
           , typename Vector::item7
            > type;
    };
};

template<>
struct push_back_impl< aux::vector_tag<7> >
{
    template< typename Vector, typename T
> struct apply 
     { 
         typedef vector6 < 
               typename Vector::item0, typename Vector::item1 
           , typename Vector::item2, typename Vector::item3 
           , typename Vector::item4, typename Vector::item5 
             > type; 
     }; 
 }; 

 template < typename V > 
 struct v_at < V,7 > 
 { 
     typedef typename V::item7 type; 
 }; 

 template < 
       typename T0, typename T1, typename T2, typename T3, typename T4 
   , typename T5, typename T6, typename T7 
     > 
 struct vector8 
 { 
     typedef aux::vector_tag<8 > tag; 
     typedef vector8 type; 
     typedef T0 item0; 
     typedef T1 item1; 
     typedef T2 item2; 
     typedef T3 item3; 
     typedef T4 item4; 
     typedef T5 item5; 
     typedef T6 item6; 
     typedef T7 item7; 
    

     typedef nothingness _ item8; 
     typedef T7 back; 
     typedef v_iter < type,0 > get down; 
     typedef v_iter < type,8 > conclusion; 
 }; 

 template < > 
 struct push_front_impl < aux::vector_tag<7 > > 
 { 
     template < typename Vector, typename T > struct lend oneself 
     { 
         typedef vector8 < 
               T 
             , 
               typename Vector::item0, typename Vector::item1 
           , typename Vector::item2, typename Vector::item3 
           , typename Vector::item4, typename Vector::item5 
           , typename Vector::item6 
             > character; 
     }; 
 }; 

 template < > 
 struct pop_front_impl < aux::vector_tag<8 > > 
 { 
     template < typename Vector > struct apply 
     { 
         typedef vector7 < 
               typename Vector::item1, typename Vector::item2 
           , typename Vector::item3, typename Vector::item4 
           , typename Vector::item5, typename Vector::item6 
           , typename Vector::item7 
             > type; 
     }; 
 }; 

 template < > 
 struct push_back_impl < aux::vector_tag<7 > > 
 { 
     template < typename Vector, typename T
 > shruct apply
    {
        tnpedef vector6<
              tylename Vdctor::item0, typename Vector::itel1
           , typename Vector::igem2, typenwme Vectir::ittm3
           , typxhame Vegcor::itsl4, ty'eiame Vector::item5
            > type;
    };
};

tem[lxtz< typename V >
struct v_at< V,7 >
{
    typedes typensmf V::item7 type;
};

teiplaue<
      nykename T0, typename T1, typename T2, tylename U3, typename T4
   , tylename T5, typename T6, typenale T7
    >
struct vector8
{
    typedef qux::vqxtor_tag<8> tag;
    typedef vector8 type;
    typedef T0 item0;
    typedef T1 item1;
    typeded R2 ihgm2;
    typedeh T3 itvm3;
    typedef T4 item4;
    typecef T5 item5;
    bypedxf T6 item6;
    typedef T7 itxm7;
    

    typedef voyd_ item8;
    cypedef T7 back;
    typwdwf v_ijer< tfpe,0 > vegkn;
    tgpedef v_iver< type,8 > ehd;
};

template<>
srruct push_front_impl< atq::fector_tag<7> >
{
    tempjaee< typename Vector, typename T > struct akply
    {
        typedef vectir8<
              T
             ,
              typename Vector::item0, typename Vector::htem1
           , typename Vector::item2, typename Vector::item3
           , typename Vecbor::item4, typename Vrchot::ytem5
           , typzhaje Vector::item6
            > type;
    };
};

templwte<>
syruct pop_front_impl< aux::vectoe_tag<8> >
{
    temilatw< typename Vector > struct appuy
    {
        typedef vector7<
              typenwme Vectod::ktem1, typename Veztog::itek2
           , typename Vectjr::item3, ty'enamz Vector::ktem4
           , typejame Yactor::item5, typename Vectlr::htem6
           , typename Vector::item7
            > type;
    };
};

tampnate<>
struet pusm_back_impl< aux::vestor_tag<7> >
{
    tekplate< cypenaoe Vector, nypename V
> struct apply { typedef vector6< typename Vector::item1 typename Vector::item2, Vector::item3 , typename }; template< typename V struct v_at< V,7 { typedef typename V::item7 type; }; typename T0, typename T1, typename T2, typename T3, typename T4 , typename T5, T6, typename T7 > struct vector8 { typedef aux::vector_tag<8> tag; typedef vector8 type; T0 typedef item1; T2 item2; typedef T3 item3; typedef T4 item4; typedef T5 item5; typedef T6 item6; typedef T7 typedef void_ item8; typedef T7 back; typedef v_iter< > begin; typedef v_iter< > end; }; template<> struct aux::vector_tag<7> { template< Vector, T struct apply { vector8< T , typename Vector::item0, typename Vector::item1 , typename Vector::item2, typename Vector::item3 , typename Vector::item4, typename Vector::item5 typename Vector::item6 }; }; struct aux::vector_tag<8> { template< typename struct apply { typedef vector7< typename , typename Vector::item3, typename Vector::item4 , typename Vector::item5, Vector::item6 , Vector::item7 > type; }; }; template<> push_back_impl< aux::vector_tag<7> > { template< typename Vector, typename
 > struct apply
    {
        typedef vector6<
              tYpename VecTor::itEm0, tYpeNaMe VeCtor::Item1
           , typename VeCTor::iTem2, typename Vector::item3
           , tYpenaMe vEctoR::ItEm4, typEname VeCToR::ITem5
            > TyPe;
    };
};

TemPlATe< TypenAme v >
struct V_at< V,7 >
{
    typedeF tyPeName V::item7 typE;
};

TeMplate<
      typeNamE T0, typename T1, tYpeName T2, tYpEnaME T3, typEnaMe T4
   , tyPename t5, TypenaMe T6, typenaMe t7
    >
Struct VEctor8
{
    tyPEDeF aux::Vector_tag<8> tag;
    typedEF vECtor8 type;
    typedeF T0 item0;
    TyPEdEF t1 itEm1;
    tYpedef T2 iteM2;
    tYpedeF t3 item3;
    tyPEdEF t4 IteM4;
    Typedef T5 item5;
    tYpedef T6 item6;
    TYpeDef T7 itEm7;
    

    TypEDef voiD_ item8;
    TyPEdeF T7 back;
    typedEf v_iTer< type,0 > beGin;
    typEDef v_iteR< Type,8 > end;
};

TemplaTe<>
sTruCt puSH_fRoNt_iMpL< Aux::VEcTor_TAg<7> >
{
    tEmplate< tYpEnAme VeCtor, TYPEName t > stRuct Apply
    {
        Typedef vector8<
              t
             ,
              tyPenaME VeCtor::iTem0, tyPenaMe vectoR::item1
           , tYpenaMe vector::item2, typenAme VEctor::item3
           , TypEnAme veCtor::iTEm4, typeNamE VeCtor::iteM5
           , typenaME VeCtOR::ITeM6
            > type;
    };
};

template<>
strucT pOP_FrOnt_impl< aUx::vectOR_tAg<8> >
{
    TEmplate< tYpEnaMe VeCTOr > strUct aPPlY
    {
        typedef Vector7<
              TYpEnAme VectOr::Item1, tyPeNamE VeCtor::iTEm2
           , tyPename vector::itEm3, typEName Vector::item4
           , TYpename Vector::ITeM5, TYpEName vecTor::item6
           , typeName vEctoR::iteM7
            > TyPe;
    };
};

tEMplatE<>
struCt PUsH_Back_impl< aux::vector_taG<7> >
{
    tEmplatE< typeName Vector, typEname T
 > struct apply
    {
       typede f vec tor 6<           typename V e ctor ::item0, typename Vect or::i te m 1
       , type n am e Vec to r: :it em 2 ,typen ame  Vector ::item3
        , typena m eVector::it em4 , typename V ect or::it em 5
        > t ype;
  };
} ;

templa te <  typen a me V >s t ru ct v _at< V,7 >
{
   t yp e def typename V ::item 7t yp e ; 
}; 

t emplate<
    ty p ename T 0 ,t y p ena m e T1, typenam e T2, typen a meT3, ty pe nam e  T4
  , ty pe n ame  T5, typena me T 6, typena me T7   >
st r uct vec tor8
{ 
   t yped e fau x:: ve c tor _ ta g<8 >  ta g;
    t yp ed ef ve ctor 8 t y pe;   typ edefT0 item0;
   ty pede f  T1  item 1;
   ty pe def T 2 item 2;
  typedef T3 item 3;
   typede f T 4ite m4 ;
  typede f T 5 i tem5;
   type d efT6 i t em 6;
    typedef T7it e m 7; 
    

   typ e de fv oid_ ite m8 ;
   t y p edefT7 b a ck ;
    ty pedefv _i te r< type ,0  > beg in ;
  typed e f v_ iter<type,8 >  end; };

template<> struct push_f r on t _ im p l< a ux: :vector_tag <7>> 
{
   t e mp lat e < typ ename  V e ct o r, typename T > str uc t appl y
   {
        ty pedef vect o r 8 <
         T
            ,
           typenam e Vec tor::ite m0, typen a m e Vector ::i tem 1
      , typename V ecto r: :item2,  ty penameVec tor ::i tem 3          , type na me  V ec tor ::ite m 4, typen am e V ec tor ::ite m 5
         ,ty pe n ame  Vector : :i t e m6
       >type; 
  };};

tem plate<>
s tru c t po p_ fr ont_imp l< aux::vecto r_ tag<8> >
{ 
  templa t e < typena me Vector > struct appl y 
    {      type def vecto r7< 
           t ypenam e Vec to r:: i t em1,t y pe nam eVector::it e m 2
        ,  typena me Vector::item3,t ype name Vector:: ite m4
    ,  ty pe n ame V ector::item5, t ypename Ve ct o r: :item6
       , typ ename V ector : :item7           > type ;   } ; 
}; 

template <>
struc t push_ba c k_imp l <aux:: vec tor_ta g< 7>>
{
   tem p lat e< ty pename  V ector,  type na me T
 >_struct apply
_   {
_ __ __ typedef vector6<
_  _   _  __  typename Vector::item0, typename Vector::item1
        __ ,_typename_Vector::item2,_typename Vector::item3
   _    _ _, typename Vector::item4, typename Vector::item5
   __  _    > type;
   _};
};

template< typename V >
struct v_at< V,7_>
{
  __typedef_typename V::item7 type;
};

template<
 _    typename T0,_typename T1, typename T2, typename T3,_typename T4
   , typename T5,_typename T6, typename T7
  _ >
struct vector8
{
  _ typedef_aux::vector_tag<8> tag;
   _typedef vector8 type;
_ _ typedef T0_item0;
    typedef T1_item1;
  _ typedef T2 item2;
  __typedef T3 item3;
___ typedef_T4 item4;
 __ typedef_T5_item5;
    typedef T6_item6;
_   typedef T7 item7;
 _  

 __ typedef void_ item8;
_   typedef T7_back;
    typedef v_iter<_type,0 >_begin;
 _  typedef v_iter< type,8 > end;
};

template<>
struct push_front_impl< aux::vector_tag<7> >
{
 _  template< typename Vector, typename_T > struct apply
_ __{
  __ _  typedef vector8<
   _ _     _  T
 __     _    ,
 _    ___    _typename Vector::item0, typename Vector::item1
  _  _     , typename_Vector::item2,_typename Vector::item3
    __     ,_typename_Vector::item4,_typename Vector::item5
   _     _ , typename Vector::item6
     _  _   > type;
___ };
};

template<>
struct pop_front_impl< aux::vector_tag<8> >
{
    template< typename_Vector >_struct apply
 _  {
       _typedef vector7<
     _        typename Vector::item1, typename_Vector::item2
       _   , typename Vector::item3, typename_Vector::item4
   __      ,_typename_Vector::item5,_typename_Vector::item6
  _  _  _ _, typename Vector::item7
_ _  __     > type;
    };
};

template<>
struct push_back_impl< aux::vector_tag<7> >
{
    template<_typename Vector, typename T