{
    int index = indexOf(object);
    if (index != -1)
    {
      if (isNotificationRequired())
      {
        boolean oldIsSet = isSet();
        Object oldObject = doRemove(index);
        NotificationImpl notification = createNotification(Notification.REMOVE, oldObject, null, index, oldIsSet);
        if (notifications == null) 
        {
          notifications = notification;
        }
        else
        {
          notifications.add(notification);
        }
      }
      else
      {
        doRemove(index);
      }
    }
    return notifications;
  }