friend inline void print(O& o, derivation_type const& d, self_type const& s) {
   s.print_projection(o, d);
 }