anchor.diff:      member this.PickupCount =
           this.PickupSpaces.Count
       
  -    
  -    
  -    static member updateFieldSpaces updater chessboard =
  -        { chessboard with FieldSpaces = updater chessboard.FieldSpaces }
  -    
  -    static member characterExists index chessboard =
  -        Map.exists (fun _ v -> FieldSpace.containsSpecifiedCharacter index v) chessboard.FieldSpaces
  -    
  -    static member pickupAtCoordinates coordinates chessboard =
  -        chessboard.FieldSpaces.[coordinates].ContainsPickup
  -    
  -    static member updateByCoordinatesInternal coordinates updater (fieldSpaces : Map<Vector2i, FieldSpace>) =
  -        Map.add coordinates (updater fieldSpaces.[coordinates]) fieldSpaces
  -
  -    static member updateByPredicateInternal predicate updater (fieldSpaces : Map<Vector2i, FieldSpace>) =
  -        Map.map (fun _ v -> if predicate v then updater v else v) fieldSpaces
  -    
  -    static member updateByCoordinates coordinates updater chessboard =
  -        Chessboard.updateFieldSpaces (Chessboard.updateByCoordinatesInternal coordinates updater) chessboard
  -    
  -    static member updateByPredicate predicate updater chessboard =
  -        Chessboard.updateFieldSpaces (Chessboard.updateByPredicateInternal predicate updater) chessboard
  -    
  -    static member addHealth _ coordinates chessboard =
  -        Chessboard.updateByCoordinates coordinates (FieldSpace.addPickup Health) chessboard
  -
  -    static member removePickup _ coordinates chessboard =
  -        Chessboard.updateByCoordinates coordinates FieldSpace.removePickup chessboard
  -    
  -    static member clearPickups _ _ chessboard =
  -        Chessboard.updateByPredicate FieldSpace.containsPickup FieldSpace.removePickup chessboard
  -    
       static member getCharacterCoordinates index chessboard =
           Map.findKey (fun _ v -> FieldSpace.containsSpecifiedCharacter index v) chessboard.FieldSpaces
   
  
positive.code:         Gameplay.updateCharacterTurn index (Turn.updateTurnStatus (constant status)) gameplay
      
      static member updateCharacter index updater gameplay =
          Gameplay.updateChessboardBy Chessboard.updateCharacter index updater gameplay
  
      static member relocateCharacter index coordinates gameplay =
          Gameplay.updateChessboardBy Chessboard.relocateCharacter index coordinates gameplay
      
      static member addHealth coordinates gameplay =
          Gameplay.updateChessboardBy Chessboard.addHealth () coordinates gameplay
  
      static member removeHealth coordinates gameplay =
          Gameplay.updateChessboardBy Chessboard.removePickup () coordinates gameplay
      
      static member clearPickups gameplay =
          Gameplay.updateChessboardBy Chessboard.clearPickups () () gameplay
      
      static member removeEnemy index gameplay =
          let coordinates = Gameplay.getCoordinates index gameplay
          let gameplay = Gameplay.addHealth coordinates gameplay
          Gameplay.updateChessboardBy Chessboard.removeCharacter index () gameplay
  
      static member clearEnemies gameplay =
          Gameplay.updateChessboardBy Chessboard.clearEnemies () () gameplay
  
      static member finishMove index gameplay =
          let gameplay = Gameplay.updateCharacterTurns (fun turns -> List.filter (fun x -> x.Actor <> index) turns) gameplay
  
negative.code:     static member updateField updater gameplay =
          { gameplay with Field = updater gameplay.Field }
      
      static member updateChessboard updater gameplay =
          { gameplay with Chessboard = updater gameplay.Chessboard }
      
      static member updateCharacterMoves updater gameplay =
          { gameplay with CharacterMoves = updater gameplay.CharacterMoves }
  