     > struct bind0 {     template<           typename U0 = na, typename U0 = na, typename U0 = na         , typename U0 = na, typename U0 = na         >     struct apply     {      private:         typedef typename aux::resolve_bind_arg< F,U0,U0,U0,U0,U0 >::type f_;       public:         typedef typename apply_wrap0<               f_             >::type type;      }; };  namespace aux {  template<       typename F