anchor.diff:  
   /// Base [ControlValueAccessor] for material dropdown select for common logic
   /// between single, and multiple selection dropdowns.
  -abstract class BaseDropdownSelectValueAccessor
  +abstract class BaseDropdownSelectValueAccessor<T>
       implements ControlValueAccessor, OnDestroy {
  -  final MaterialDropdownSelectComponent _select;
  +  final MaterialDropdownSelectComponent<T> _select;
     @protected
  -  final SelectionModel selectionModel;
  +  final SelectionModel<T> selectionModel;
     StreamSubscription _visibileSub;
     bool initialized = false;
   
  
positive.code:         ngValueAccessor, MultiDropdownSelectValueAccessor),
    ],
  )
  class MultiDropdownSelectValueAccessor extends BaseDropdownSelectValueAccessor
      implements ControlValueAccessor, OnDestroy {
    var selectionChangesSub;
  
    MultiDropdownSelectValueAccessor(MaterialDropdownSelectComponent select)
        : super(select, MultiSelectionModel());
  
    @override
    void registerOnChange(callback) {
  
negative.code:     ExistingProvider.forToken(ngValueAccessor, DropdownSelectValueAccessor),
    ],
  )
  class DropdownSelectValueAccessor<T> extends BaseDropdownSelectValueAccessor<T>
      implements ControlValueAccessor, OnDestroy {
    StreamSubscription _selectionChangesSub;
    DropdownSelectValueAccessor(MaterialDropdownSelectComponent select)
  