#if __has_include(<coroutine>)
#include <coroutine>
#elif defined (__clang__) && __has_include (<experimental/coroutine>)
#include <experimental/coroutine>
namespace std { using namespace experimental; }
#endif
#include <utility>
struct task {
    struct promise_type {
        task get_return_object();
        void return_void();
        void unhandled_exception();
        std::suspend_always initial_suspend() noexcept;
        std::suspend_always final_suspend() noexcept;
    };
};
struct wrapper {
    using promise_type = task::promise_type;
    wrapper(task&&);
};
wrapper f() {
    co_return;
}