if (boundStore.evict(target.getObjectKey(), target)) {
eventService.notifyElementEvicted(target, false);
}
} else {
try {
ElementSubstitute substitute = secondary.create(target.getObjectKey(), target);
boundStore.tryFault(target.getObjectKey(), target, substitute);
} catch (IllegalArgumentException e) {
if (boundStore.evict(target.getObjectKey(), target)) {
eventService.notifyElementEvicted(target, false);
}