public override ICommonInterface GetCommonInterface(SpecificProductA productA)
 {
     /* This guy will deal with ParamA of SpecificProductA */
     return(new ImplACommonInterface(productA));
 }
 public virtual ICommonInterface GetCommonInterface(SpecificProductA productA)
 {
     throw new NotImplementedException();
 }