anchor.diff:      // Bind variable names to their type
       for i := 0 to paramList.Count - 1 do
       begin
  -      inList := False;
  -      for varType in VAR_TYPES do
  -        if paramList[i] = varType then
  +      isType := False;
  +      for varTypeName in VAR_TYPES do
  +        if paramList[i] = varTypeName then
           begin
             typeList.Add(paramList[i]);
  -          Inc(j);
  -          inList := True;
  +          Inc(varTypeInt);
  +          isType := True;
           end;
  -      if not inList then
  +      if not isType then
         begin
           SetLength(paramHolder, Length(paramHolder) + 1);
           paramHolder[High(paramHolder)].Name := paramList[i];
  -        paramHolder[High(paramHolder)].varType := J;
  +        paramHolder[High(paramHolder)].varType := varTypeInt;
         end;
       end;
   
  
positive.code:     end;
      Result := resultStr;
    finally
      FreeAndNil(paramList);
      FreeAndNil(convertList);
      FreeAndNil(typeList);
      FreeAndNil(splitList);
    end;
  end;
  
  
negative.code: }
  function TForm1.paramParser(aString: String): String;
  var
    i, varTypeInt, nextType: Integer;
    isType: Boolean;
    splitList, paramList, typeList: TStringList;
    resultStr, varTypeName: String;
    paramHolder: Array of tParamHolder;
  begin
    try
      splitList   := TStringList.Create;
      paramList   := TStringList.Create;
      typeList    := TStringList.Create;
      resultStr   := '';
      varTypeInt  := 0;
  
      splitList.AddStrings(aString.Split([' ']));
  
  