if (cascadeAcross.isCollection()) { final R collectionOfMergeTargets = ((ErraiPluralAttribute<X, R, ?>) cascadeAcross).createEmptyCollection(); for (final Object element : (Iterable<?>) sourceRelatedEntity) { final R resolvedTargetRelatedEntity = cascadeAcross.get(targetEntity); boolean relatedEntitiesAreManaged = true; if (cascadeAcross.isCollection()) { final Collection<?> children = (Collection<?>) resolvedTargetRelatedEntity; for (final Object child : children) {