boost::proto::functional::deep_copy::result<This(Expr)>
template<typename This, typename Expr> struct result<This(Expr)> : result_of::deep_copy<Expr> { };