title: Is this a valid use of the new keyword in my interface?
body: <p>In the below code, is the use of <code>new</code> valid? The objective is to allow users of <code>IPropertyChange</code> to expect the correctly typed <code>Origin</code> property. Any caution when using this pattern?</p>
  <pre><code>public interface IChangeSource { }
  public interface IProperty:IChangeSource { }
  public interface ISpecialProperty:IProperty { }
  
  
  public interface IChange
  {
      IChangeSource Origin { get; }
  }
  
  public interface IPropertyChange: IChange
  {
      new IProperty Origin { get; }
  }
  
  public interface ISpecialPropertyChange:IPropertyChange
  {
      new ISpecialProperty Origin { get; }
  }
  </code></pre>