if (isNotificationRequired())
{
NotificationChain notifications = null;
boolean oldIsSet = isSet();
E oldObject;
Notification notification = createNotification(Notification.SET, oldObject = doSetUnique(index, object), object, index, oldIsSet);
if (hasInverse() && !equalObjects(oldObject, object))
{
if (oldObject != null)
{
notifications = inverseRemove(oldObject, notifications);