class C1[T] where T : C1[T], new() { public Prop : int { get; protected set } public static StM() : void { def a = T(); a.Prop = 666; } }