public void Decrement <T2>() where T2 : IncrDecr, new() { T2 cnter = (T2)(IncrDecr)counter; cnter.Decr(100); counter = (T)(IncrDecr)cnter; }