using System;
namespace ConsoleApp1
{
class Program
{
public delegate void CompleteHandler(int number);
public static CompleteHandler _delegate;
public static event CompleteHandler _event;
static void Main(string[] args)
{
_delegate = new CompleteHandler(Done);
_event = new CompleteHandler(Done);
_event += Done;
DoWork();
}
private static void DoWork()
{
_delegate(4);
_event(6);
}
private static void Done(int number)
{
Console.WriteLine($"complete {number}");
}
}
}
dXNpbmcgU3lzdGVtOwoKbmFtZXNwYWNlIENvbnNvbGVBcHAxCnsKICAgIGNsYXNzIFByb2dyYW0KICAgIHsKICAgICAgICBwdWJsaWMgZGVsZWdhdGUgdm9pZCBDb21wbGV0ZUhhbmRsZXIoaW50IG51bWJlcik7CiAgICAgICAgcHVibGljIHN0YXRpYyBDb21wbGV0ZUhhbmRsZXIgX2RlbGVnYXRlOwogICAgICAgIHB1YmxpYyBzdGF0aWMgZXZlbnQgQ29tcGxldGVIYW5kbGVyIF9ldmVudDsKCiAgICAgICAgc3RhdGljIHZvaWQgTWFpbihzdHJpbmdbXSBhcmdzKQogICAgICAgIHsKICAgICAgICAgICAgX2RlbGVnYXRlID0gbmV3IENvbXBsZXRlSGFuZGxlcihEb25lKTsKICAgICAgICAgICAgX2V2ZW50ID0gbmV3IENvbXBsZXRlSGFuZGxlcihEb25lKTsKICAgICAgICAgICAgX2V2ZW50ICs9IERvbmU7CgogICAgICAgICAgICBEb1dvcmsoKTsKICAgICAgICB9CgogICAgICAgIHByaXZhdGUgc3RhdGljIHZvaWQgRG9Xb3JrKCkKICAgICAgICB7CiAgICAgICAgICAgIF9kZWxlZ2F0ZSg0KTsKICAgICAgICAgICAgX2V2ZW50KDYpOwogICAgICAgIH0KCiAgICAgICAgcHJpdmF0ZSBzdGF0aWMgdm9pZCBEb25lKGludCBudW1iZXIpCiAgICAgICAgewogICAgICAgICAgICBDb25zb2xlLldyaXRlTGluZSgkImNvbXBsZXRlIHtudW1iZXJ9Iik7CiAgICAgICAgfQogICAgfQp9Cg==