code: protected final void fireIndexedPropertyChange(String propertyName, int index,
                        Object oldValue, Object newValue) {
      pcs.fireIndexedPropertyChange(propertyName, index, oldValue, newValue);
      }
docs: Report a bound indexed property update to any registered
  listeners.
  <p>
  No event is fired if old and new values are equal
  and non-null.
  
  <p>
  This is merely a convenience wrapper around the more general
  firePropertyChange method that takes {@code PropertyChangeEvent} value.
  
  @param propertyName The programmatic name of the property that
  was changed.
  @param index        index of the property element that was changed.
  @param oldValue     The old value of the property.
  @param newValue     The new value of the property.