+ template<typename S, typename T>
+ void *prepare_transfer(const void *, bool, std::size_t, S &&, T &&);
+
+ template<typename S, typename T>
+ void prepare_transfer(const void *o, bool r, S &&s, T &&t)
+ { prepare_transfer(o, r, 0, std::forward<S>(s), std::forward<T>(t)); }
+
+ void finalize_transfer(void *);