code: public void removePositionUpdateListener(@NonNull PositionUpdateListener listener) {
          if (iteratingListeners) {
              listenersToRemove.add(listener);
          } else {
              listeners.remove(listener);
          }
      }
docs: Removes position state changes listener as added by
  {@link #addPositionUpdateListener(PositionUpdateListener)}.
  <p>
  Note, this method may be called inside listener's callback without throwing
  {@link IndexOutOfBoundsException}.
  
  @param listener Position listener to be removed