My point is, i want this strange rules to be removed. And I want the override keyword not to be a useless thing. I propose: 1.) make an overload not hide base implementations 2.) make the override keyword required, to make it useful. 3.) remove the interface reimplementation rule. What do you think?