public static IfEqual Instance(int key, int value, Behavior result, Behavior no = null) { var k = new Tuple<int, int, Behavior, Behavior>(key, value, result, no); IfEqual ret; if (!instances.TryGetValue(k, out ret)) ret = instances[k] = new IfEqual(key, value, result, no); return ret; }
new RunBehaviors( IfEqual.Instance(-1, 1,