private IEntity ResolveAmbiguousReferenceByAccessibility(Ambiguous candidates)
{
var newEntities = new List<IEntity>();
foreach (IEntity entity in candidates.Entities)
if (!IsInaccessible(entity))
newEntities.Add(entity);
return Entities.EntityFromList(newEntities);
}