using System;
using System.Collections.Generic;
using System.Linq;
public class Test
{
class Bagor {
public int i=0;
public static Bagor operator ++(Bagor a)
{
a.i += 1;
return a;
}
public override string ToString()
{
return "" + i;
}
}
public static void Main()
{
var actions = new List<Action>();
for (var it = new Bagor(); it.i<3; it++ )
{
actions.Add(() => Console.WriteLine(it));
}
foreach (var action in actions)
{
action();
}
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLkxpbnE7CgpwdWJsaWMgY2xhc3MgVGVzdAp7CgljbGFzcyBCYWdvciB7CgkJcHVibGljIGludCBpPTA7CgkJcHVibGljIHN0YXRpYyBCYWdvciBvcGVyYXRvciArKyhCYWdvciBhKQoJCXsKCQkgICAgYS5pICs9IDE7CgkJICAgIHJldHVybiBhOwoJCX0JCQoJICAgIHB1YmxpYyBvdmVycmlkZSBzdHJpbmcgVG9TdHJpbmcoKQoJICAgIHsKCSAgICAgICAgcmV0dXJuICIiICsgaTsKCSAgICB9CQkKCX0KCQoJcHVibGljIHN0YXRpYyB2b2lkIE1haW4oKQoJewoJCXZhciBhY3Rpb25zID0gbmV3IExpc3Q8QWN0aW9uPigpOwoJCQoJCWZvciAodmFyIGl0ID0gbmV3IEJhZ29yKCk7IGl0Lmk8MzsgaXQrKyApCgkJewoJCSAgICBhY3Rpb25zLkFkZCgoKSA9PiBDb25zb2xlLldyaXRlTGluZShpdCkpOwoJCX0KCQkgCgkJZm9yZWFjaCAodmFyIGFjdGlvbiBpbiBhY3Rpb25zKQoJCXsKCQkgICAgYWN0aW9uKCk7CgkJfQoJfQp9