anchor.diff:  
     Keyman.System.RegExGroupHelperRSP19902,
   
  +  BCP47Tag,
     JsonUtil,
     Keyman.System.KeyboardInfoFile,
  +  Keyman.System.LanguageCodeUtils,
     utilfiletypes,
     VersionInfo;
   
  
positive.code:     json.AddPair('id', FID);
  end;
  
  function TMergeKeyboardInfo.CheckOrMigrateLanguages: Boolean;
  var
    v: TJSONValue;
    alangs: TJSONArray;
    langs, lang: TJSONValue;
    olangs, olang: TJSONObject;
    nameAdded: Boolean;
    i: Integer;
    msg: string;
  begin
    v := json.GetValue(TKeyboardInfoFile.SLanguages);
  
    // Migrate languages[] array to Object
  
negative.code:     end;
    end;
  
    {
    // Populate subtag names if needed
    nameAdded := False;
    v := json.GetValue(TKeyboardInfoFile.SLanguages);
    
    if v is TJSONObject then
    begin
      olang := lang as TJsonObject;
  