#include <bits/stdc++.h>
using namespace std;
vector<future<void>> a;
void f() {
cout << "started\n";
a.push_back(std::async(std::launch::async,
[]() { std::this_thread::sleep_for(std::chrono::seconds(1)); }));
cout << "finished\n";
}
int main() {
future<int> x = async([](){this_thread::sleep_for(chrono::seconds(1)); return 0;});
future<int> y = async([](){this_thread::sleep_for(chrono::seconds(1)); return 1;});
cout << x.get() << ' ' << y.get() << '\n';
f();
f();
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgp2ZWN0b3I8ZnV0dXJlPHZvaWQ+PiBhOwoKdm9pZCBmKCkgewoJY291dCA8PCAic3RhcnRlZFxuIjsKCWEucHVzaF9iYWNrKHN0ZDo6YXN5bmMoc3RkOjpsYXVuY2g6OmFzeW5jLCAKICAgIAlbXSgpIHsgc3RkOjp0aGlzX3RocmVhZDo6c2xlZXBfZm9yKHN0ZDo6Y2hyb25vOjpzZWNvbmRzKDEpKTsgfSkpOwoJY291dCA8PCAiZmluaXNoZWRcbiI7Cn0KCmludCBtYWluKCkgewoJZnV0dXJlPGludD4geCA9IGFzeW5jKFtdKCl7dGhpc190aHJlYWQ6OnNsZWVwX2ZvcihjaHJvbm86OnNlY29uZHMoMSkpOyByZXR1cm4gMDt9KTsKCWZ1dHVyZTxpbnQ+IHkgPSBhc3luYyhbXSgpe3RoaXNfdGhyZWFkOjpzbGVlcF9mb3IoY2hyb25vOjpzZWNvbmRzKDEpKTsgcmV0dXJuIDE7fSk7Cgljb3V0IDw8IHguZ2V0KCkgPDwgJyAnIDw8IHkuZ2V0KCkgPDwgJ1xuJzsKCWYoKTsKCWYoKTsKfQo=