inline void swap(coroutine & one, coroutine & other) noexcept { one.swap(other); }
friend void swap(coroutine& lhs, coroutine& rhs) { lhs.swap(rhs); }
inline void swap(coroutine & one, coroutine & other) noexcept { one.swap(other); }
friend void swap(coroutine& lhs, coroutine& rhs) { lhs.swap(rhs); }