anchor.diff:                                          value
                                   let newValue, newSuggestions =
                                       if value.IsNone && suggestions.Length > 0 then
  -                                        variableValues <- variableValues |> Map.add var.Name suggestions.[0]
  +                                        variableValues <- variableValues |> Map.add var.Name (suggestions.[0], false) // I chose this one.
                                           suggestions.[0], suggestions
                                       else if value.IsSome then
                                           // Put the current value at the front.
  
positive.code:                                 }
                              else
                                  let attributeValuesByIndex = attributeValues |> Map.toSeq |> Seq.choose (fun (n,v) -> n |> attributeNameToIndex |> Option.map (fun i -> (i,v))) |> Map.ofSeq
                                  let variableValuesByIndex = variableValues |> Map.toSeq |> Seq.choose (fun (n,v) -> n |> variableNameToIndex |> Option.map (fun i -> (i,v))) |> Map.ofSeq
                                  let value = variableValuesByIndex |> Map.tryFind var.Index
                                  let suggestions =
                                      if haveSeenEmpty then
                                          [||]
  
negative.code:         }
      member __.SetValue ty name value =
          if ty = "Variable" then
              variableValues <- variableValues |> Map.add name (value, true) // The user chose this one.
          else
              attributeValues <- attributeValues |> Map.add name value
      member __.Generate (config:GeneratorConfiguration) =
  