using System;
using System.Threading.Tasks;
public class Test
{
public static void Main()
{
new Test().Entry().Wait();
}
async Task Entry()
{
for (int i = 0; i < 5; ++i) {
try {
var result = Func(i);
Console.WriteLine($"{i} result {result}");
} catch (Exception e) {
await Nothing();
Console.WriteLine($"{i} caught");
}
}
}
bool Func(int i)
{
if (i == 0) {
throw new Exception();
} else {
return true;
}
}
async Task Nothing()
{
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwoKcHVibGljIGNsYXNzIFRlc3QKewoJcHVibGljIHN0YXRpYyB2b2lkIE1haW4oKQoJewoJCW5ldyBUZXN0KCkuRW50cnkoKS5XYWl0KCk7Cgl9CgoJYXN5bmMgVGFzayBFbnRyeSgpCgl7CgkJZm9yIChpbnQgaSA9IDA7IGkgPCA1OyArK2kpIHsKCQkJdHJ5IHsKCQkJCXZhciByZXN1bHQgPSBGdW5jKGkpOwoJCQkJQ29uc29sZS5Xcml0ZUxpbmUoJCJ7aX0gcmVzdWx0IHtyZXN1bHR9Iik7CgkJCX0gY2F0Y2ggKEV4Y2VwdGlvbiBlKSB7CgkJCQlhd2FpdCBOb3RoaW5nKCk7CgkJCQlDb25zb2xlLldyaXRlTGluZSgkIntpfSBjYXVnaHQiKTsKCQkJfQoJCX0KCX0KCglib29sIEZ1bmMoaW50IGkpCgl7CgkJaWYgKGkgPT0gMCkgewoJCQl0aHJvdyBuZXcgRXhjZXB0aW9uKCk7CgkJfSBlbHNlIHsKCQkJcmV0dXJuIHRydWU7CgkJfQoJfQoKCWFzeW5jIFRhc2sgTm90aGluZygpCgl7Cgl9Cn0K