.Current);                     }                      break;                 }                  case ListChangeReason.Remove:                 {                     var change = item.Item;                     bool hasIndex = change.CurrentIndex >= 0;                     if (hasIndex)                     {                         source.RemoveAt(change.CurrentIndex);                     }                     else                     {                          if