anchor.diff:  
   
   [[planningEntitiesOfASolution]]
  -==== Planning Entities of a Solution (@PlanningEntityCollectionProperty)
  +==== Planning Entities of a Solution (``@PlanningEntityCollectionProperty``)
   
   Planner needs to extract the entity instances from the solution instance.
   It gets those collection(s) by calling every getter (or field) that is annotated with ``@PlanningEntityCollectionProperty``:
  
positive.code: ----
  
  Where a score constraint needs to check that no two exams with a topic that shares a student are scheduled close together (depending on the constraint: at the same time, in a row, or in the same day), the `TopicConflict` instance can be used as a problem fact, rather than having to combine every two `Student` instances.
  
  
  [[cloningASolution]]
  
negative.code: 
  [NOTE]
  ====
  A `@PlanningEntityCollectionProperty annotation needs to be on a member in a class with a @PlanningSolution annotation.
  It is ignored on parent classes or subclasses without that annotation.
  ====
  
  In rare cases, a planning entity might be a singleton: use `@PlanningEntityProperty` on its getter (or field) instead.
  
  Both annotations can also be <<autoDiscoverSolutionProperties, auto discovered>> if enabled.
  
  
  [[scoreOfASolution]]
  ==== `Score` of a Solution (``@PlanningScore``)
  
  A `Solution` requires a score property (or field), which is annotated with a `@PlanningScore` annotation.
  The score property is `null` if the the score hasn't been calculated yet.
  The `score` property is typed to the specific `Score` implementation of your use case.
  For example, `NQueens` uses a <<simpleScore,SimpleScore>>:
  