golang.zx2c4.com/wireguard/windows@v0.5.4-0.20230123132234-dcc0eb72a04b/locales/en/messages.gotext.json (about)

     1  {
     2      "language": "en",
     3      "messages": [
     4          {
     5              "id": "Error",
     6              "message": "Error",
     7              "translation": "Error",
     8              "translatorComment": "Copied from source.",
     9              "fuzzy": true
    10          },
    11          {
    12              "id": "(no argument): elevate and install manager service",
    13              "message": "(no argument): elevate and install manager service",
    14              "translation": "(no argument): elevate and install manager service",
    15              "translatorComment": "Copied from source.",
    16              "fuzzy": true
    17          },
    18          {
    19              "id": "Usage: {Args0} [\n{String}]",
    20              "message": "Usage: {Args0} [\n{String}]",
    21              "translation": "Usage: {Args0} [\n{String}]",
    22              "translatorComment": "Copied from source.",
    23              "placeholders": [
    24                  {
    25                      "id": "Args0",
    26                      "string": "%[1]s",
    27                      "type": "string",
    28                      "underlyingType": "string",
    29                      "argNum": 1,
    30                      "expr": "os.Args[0]"
    31                  },
    32                  {
    33                      "id": "String",
    34                      "string": "%[2]s",
    35                      "type": "string",
    36                      "underlyingType": "string",
    37                      "argNum": 2,
    38                      "expr": "builder.String()"
    39                  }
    40              ],
    41              "fuzzy": true
    42          },
    43          {
    44              "id": "Command Line Options",
    45              "message": "Command Line Options",
    46              "translation": "Command Line Options",
    47              "translatorComment": "Copied from source.",
    48              "fuzzy": true
    49          },
    50          {
    51              "id": "Unable to determine whether the process is running under WOW64: {Err}",
    52              "message": "Unable to determine whether the process is running under WOW64: {Err}",
    53              "translation": "Unable to determine whether the process is running under WOW64: {Err}",
    54              "translatorComment": "Copied from source.",
    55              "placeholders": [
    56                  {
    57                      "id": "Err",
    58                      "string": "%[1]v",
    59                      "type": "error",
    60                      "underlyingType": "interface{Error() string}",
    61                      "argNum": 1,
    62                      "expr": "err"
    63                  }
    64              ],
    65              "fuzzy": true
    66          },
    67          {
    68              "id": "You must use the 64-bit version of WireGuard on this computer.",
    69              "message": "You must use the 64-bit version of WireGuard on this computer.",
    70              "translation": "You must use the 64-bit version of WireGuard on this computer.",
    71              "translatorComment": "Copied from source.",
    72              "fuzzy": true
    73          },
    74          {
    75              "id": "Unable to open current process token: {Err}",
    76              "message": "Unable to open current process token: {Err}",
    77              "translation": "Unable to open current process token: {Err}",
    78              "translatorComment": "Copied from source.",
    79              "placeholders": [
    80                  {
    81                      "id": "Err",
    82                      "string": "%[1]v",
    83                      "type": "error",
    84                      "underlyingType": "interface{Error() string}",
    85                      "argNum": 1,
    86                      "expr": "err"
    87                  }
    88              ],
    89              "fuzzy": true
    90          },
    91          {
    92              "id": "WireGuard may only be used by users who are a member of the Builtin {AdminGroupName} group.",
    93              "message": "WireGuard may only be used by users who are a member of the Builtin {AdminGroupName} group.",
    94              "translation": "WireGuard may only be used by users who are a member of the Builtin {AdminGroupName} group.",
    95              "translatorComment": "Copied from source.",
    96              "placeholders": [
    97                  {
    98                      "id": "AdminGroupName",
    99                      "string": "%[1]s",
   100                      "type": "string",
   101                      "underlyingType": "string",
   102                      "argNum": 1,
   103                      "expr": "elevate.AdminGroupName()"
   104                  }
   105              ],
   106              "fuzzy": true
   107          },
   108          {
   109              "id": "WireGuard is running, but the UI is only accessible from desktops of the Builtin {AdminGroupName} group.",
   110              "message": "WireGuard is running, but the UI is only accessible from desktops of the Builtin {AdminGroupName} group.",
   111              "translation": "WireGuard is running, but the UI is only accessible from desktops of the Builtin {AdminGroupName} group.",
   112              "translatorComment": "Copied from source.",
   113              "placeholders": [
   114                  {
   115                      "id": "AdminGroupName",
   116                      "string": "%[1]s",
   117                      "type": "string",
   118                      "underlyingType": "string",
   119                      "argNum": 1,
   120                      "expr": "elevate.AdminGroupName()"
   121                  }
   122              ],
   123              "fuzzy": true
   124          },
   125          {
   126              "id": "WireGuard system tray icon did not appear after 30 seconds.",
   127              "message": "WireGuard system tray icon did not appear after 30 seconds.",
   128              "translation": "WireGuard system tray icon did not appear after 30 seconds.",
   129              "translatorComment": "Copied from source.",
   130              "fuzzy": true
   131          },
   132          {
   133              "id": "Now",
   134              "message": "Now",
   135              "translation": "Now",
   136              "translatorComment": "Copied from source.",
   137              "fuzzy": true
   138          },
   139          {
   140              "id": "System clock wound backward!",
   141              "message": "System clock wound backward!",
   142              "translation": "System clock wound backward!",
   143              "translatorComment": "Copied from source.",
   144              "fuzzy": true
   145          },
   146          {
   147              "id": "{Years} year(s)",
   148              "message": "{Years} year(s)",
   149              "translation": {
   150                  "select": {
   151                      "feature": "plural",
   152                      "arg": "Years",
   153                      "cases": {
   154                          "one": {
   155                              "msg": "{Years} year"
   156                          },
   157                          "other": {
   158                              "msg": "{Years} years"
   159                          }
   160                      }
   161                  }
   162              },
   163              "placeholders": [
   164                  {
   165                      "id": "Years",
   166                      "string": "%[1]d",
   167                      "type": "int64",
   168                      "underlyingType": "int64",
   169                      "argNum": 1,
   170                      "expr": "years"
   171                  }
   172              ]
   173          },
   174          {
   175              "id": "{Days} day(s)",
   176              "message": "{Days} day(s)",
   177              "translation": {
   178                  "select": {
   179                      "feature": "plural",
   180                      "arg": "Days",
   181                      "cases": {
   182                          "one": {
   183                              "msg": "{Days} day"
   184                          },
   185                          "other": {
   186                              "msg": "{Days} days"
   187                          }
   188                      }
   189                  }
   190              },
   191              "placeholders": [
   192                  {
   193                      "id": "Days",
   194                      "string": "%[1]d",
   195                      "type": "int64",
   196                      "underlyingType": "int64",
   197                      "argNum": 1,
   198                      "expr": "days"
   199                  }
   200              ]
   201          },
   202          {
   203              "id": "{Hours} hour(s)",
   204              "message": "{Hours} hour(s)",
   205              "translation": {
   206                  "select": {
   207                      "feature": "plural",
   208                      "arg": "Hours",
   209                      "cases": {
   210                          "one": {
   211                              "msg": "{Hours} hour"
   212                          },
   213                          "other": {
   214                              "msg": "{Hours} hours"
   215                          }
   216                      }
   217                  }
   218              },
   219              "placeholders": [
   220                  {
   221                      "id": "Hours",
   222                      "string": "%[1]d",
   223                      "type": "int64",
   224                      "underlyingType": "int64",
   225                      "argNum": 1,
   226                      "expr": "hours"
   227                  }
   228              ]
   229          },
   230          {
   231              "id": "{Minutes} minute(s)",
   232              "message": "{Minutes} minute(s)",
   233              "translation": {
   234                  "select": {
   235                      "feature": "plural",
   236                      "arg": "Minutes",
   237                      "cases": {
   238                          "one": {
   239                              "msg": "{Minutes} minute"
   240                          },
   241                          "other": {
   242                              "msg": "{Minutes} minutes"
   243                          }
   244                      }
   245                  }
   246              },
   247              "placeholders": [
   248                  {
   249                      "id": "Minutes",
   250                      "string": "%[1]d",
   251                      "type": "int64",
   252                      "underlyingType": "int64",
   253                      "argNum": 1,
   254                      "expr": "minutes"
   255                  }
   256              ]
   257          },
   258          {
   259              "id": "{Seconds} second(s)",
   260              "message": "{Seconds} second(s)",
   261              "translation": {
   262                  "select": {
   263                      "feature": "plural",
   264                      "arg": "Seconds",
   265                      "cases": {
   266                          "one": {
   267                              "msg": "{Seconds} second"
   268                          },
   269                          "other": {
   270                              "msg": "{Seconds} seconds"
   271                          }
   272                      }
   273                  }
   274              },
   275              "placeholders": [
   276                  {
   277                      "id": "Seconds",
   278                      "string": "%[1]d",
   279                      "type": "int64",
   280                      "underlyingType": "int64",
   281                      "argNum": 1,
   282                      "expr": "seconds"
   283                  }
   284              ]
   285          },
   286          {
   287              "id": "{Timestamp} ago",
   288              "message": "{Timestamp} ago",
   289              "translation": "{Timestamp} ago",
   290              "translatorComment": "Copied from source.",
   291              "placeholders": [
   292                  {
   293                      "id": "Timestamp",
   294                      "string": "%[1]s",
   295                      "type": "string",
   296                      "underlyingType": "string",
   297                      "argNum": 1,
   298                      "expr": "timestamp"
   299                  }
   300              ],
   301              "fuzzy": true
   302          },
   303          {
   304              "id": "{Bytes} B",
   305              "message": "{Bytes} B",
   306              "translation": "{Bytes} B",
   307              "translatorComment": "Copied from source.",
   308              "placeholders": [
   309                  {
   310                      "id": "Bytes",
   311                      "string": "%[1]d",
   312                      "type": "golang.zx2c4.com/wireguard/windows/conf.Bytes",
   313                      "underlyingType": "uint64",
   314                      "argNum": 1,
   315                      "expr": "b"
   316                  }
   317              ],
   318              "fuzzy": true
   319          },
   320          {
   321              "id": "{Float64b__1024} KiB",
   322              "message": "{Float64b__1024} KiB",
   323              "translation": "{Float64b__1024} KiB",
   324              "translatorComment": "Copied from source.",
   325              "placeholders": [
   326                  {
   327                      "id": "Float64b__1024",
   328                      "string": "%.2[1]f",
   329                      "type": "float64",
   330                      "underlyingType": "float64",
   331                      "argNum": 1,
   332                      "expr": "float64(b) / 1024"
   333                  }
   334              ],
   335              "fuzzy": true
   336          },
   337          {
   338              "id": "{Float64b__1024__1024} MiB",
   339              "message": "{Float64b__1024__1024} MiB",
   340              "translation": "{Float64b__1024__1024} MiB",
   341              "translatorComment": "Copied from source.",
   342              "placeholders": [
   343                  {
   344                      "id": "Float64b__1024__1024",
   345                      "string": "%.2[1]f",
   346                      "type": "float64",
   347                      "underlyingType": "float64",
   348                      "argNum": 1,
   349                      "expr": "float64(b) / (1024 * 1024)"
   350                  }
   351              ],
   352              "fuzzy": true
   353          },
   354          {
   355              "id": "{Float64b__1024__1024__1024} GiB",
   356              "message": "{Float64b__1024__1024__1024} GiB",
   357              "translation": "{Float64b__1024__1024__1024} GiB",
   358              "translatorComment": "Copied from source.",
   359              "placeholders": [
   360                  {
   361                      "id": "Float64b__1024__1024__1024",
   362                      "string": "%.2[1]f",
   363                      "type": "float64",
   364                      "underlyingType": "float64",
   365                      "argNum": 1,
   366                      "expr": "float64(b) / (1024 * 1024 * 1024)"
   367                  }
   368              ],
   369              "fuzzy": true
   370          },
   371          {
   372              "id": "{Float64b__1024__1024__1024__1024} TiB",
   373              "message": "{Float64b__1024__1024__1024__1024} TiB",
   374              "translation": "{Float64b__1024__1024__1024__1024} TiB",
   375              "translatorComment": "Copied from source.",
   376              "placeholders": [
   377                  {
   378                      "id": "Float64b__1024__1024__1024__1024",
   379                      "string": "%.2[1]f",
   380                      "type": "float64",
   381                      "underlyingType": "float64",
   382                      "argNum": 1,
   383                      "expr": "float64(b) / (1024 * 1024 * 1024) / 1024"
   384                  }
   385              ],
   386              "fuzzy": true
   387          },
   388          {
   389              "id": "{Why}: {Offender}",
   390              "message": "{Why}: {Offender}",
   391              "translation": "{Why}: {Offender}",
   392              "translatorComment": "Copied from source.",
   393              "placeholders": [
   394                  {
   395                      "id": "Why",
   396                      "string": "%[1]s",
   397                      "type": "string",
   398                      "underlyingType": "string",
   399                      "argNum": 1,
   400                      "expr": "e.why"
   401                  },
   402                  {
   403                      "id": "Offender",
   404                      "string": "%[2]q",
   405                      "type": "string",
   406                      "underlyingType": "string",
   407                      "argNum": 2,
   408                      "expr": "e.offender"
   409                  }
   410              ],
   411              "fuzzy": true
   412          },
   413          {
   414              "id": "Invalid IP address",
   415              "message": "Invalid IP address",
   416              "translation": "Invalid IP address",
   417              "translatorComment": "Copied from source.",
   418              "fuzzy": true
   419          },
   420          {
   421              "id": "Invalid network prefix length",
   422              "message": "Invalid network prefix length",
   423              "translation": "Invalid network prefix length",
   424              "translatorComment": "Copied from source.",
   425              "fuzzy": true
   426          },
   427          {
   428              "id": "Missing port from endpoint",
   429              "message": "Missing port from endpoint",
   430              "translation": "Missing port from endpoint",
   431              "translatorComment": "Copied from source.",
   432              "fuzzy": true
   433          },
   434          {
   435              "id": "Invalid endpoint host",
   436              "message": "Invalid endpoint host",
   437              "translation": "Invalid endpoint host",
   438              "translatorComment": "Copied from source.",
   439              "fuzzy": true
   440          },
   441          {
   442              "id": "Brackets must contain an IPv6 address",
   443              "message": "Brackets must contain an IPv6 address",
   444              "translation": "Brackets must contain an IPv6 address",
   445              "translatorComment": "Copied from source.",
   446              "fuzzy": true
   447          },
   448          {
   449              "id": "Invalid MTU",
   450              "message": "Invalid MTU",
   451              "translation": "Invalid MTU",
   452              "translatorComment": "Copied from source.",
   453              "fuzzy": true
   454          },
   455          {
   456              "id": "Invalid port",
   457              "message": "Invalid port",
   458              "translation": "Invalid port",
   459              "translatorComment": "Copied from source.",
   460              "fuzzy": true
   461          },
   462          {
   463              "id": "Invalid persistent keepalive",
   464              "message": "Invalid persistent keepalive",
   465              "translation": "Invalid persistent keepalive",
   466              "translatorComment": "Copied from source.",
   467              "fuzzy": true
   468          },
   469          {
   470              "id": "Invalid key: {Err}",
   471              "message": "Invalid key: {Err}",
   472              "translation": "Invalid key: {Err}",
   473              "translatorComment": "Copied from source.",
   474              "placeholders": [
   475                  {
   476                      "id": "Err",
   477                      "string": "%[1]v",
   478                      "type": "error",
   479                      "underlyingType": "interface{Error() string}",
   480                      "argNum": 1,
   481                      "expr": "err"
   482                  }
   483              ],
   484              "fuzzy": true
   485          },
   486          {
   487              "id": "Keys must decode to exactly 32 bytes",
   488              "message": "Keys must decode to exactly 32 bytes",
   489              "translation": "Keys must decode to exactly 32 bytes",
   490              "translatorComment": "Copied from source.",
   491              "fuzzy": true
   492          },
   493          {
   494              "id": "Number must be a number between 0 and 2^64-1: {Err}",
   495              "message": "Number must be a number between 0 and 2^64-1: {Err}",
   496              "translation": "Number must be a number between 0 and 2^64-1: {Err}",
   497              "translatorComment": "Copied from source.",
   498              "placeholders": [
   499                  {
   500                      "id": "Err",
   501                      "string": "%[1]v",
   502                      "type": "error",
   503                      "underlyingType": "interface{Error() string}",
   504                      "argNum": 1,
   505                      "expr": "err"
   506                  }
   507              ],
   508              "fuzzy": true
   509          },
   510          {
   511              "id": "Two commas in a row",
   512              "message": "Two commas in a row",
   513              "translation": "Two commas in a row",
   514              "translatorComment": "Copied from source.",
   515              "fuzzy": true
   516          },
   517          {
   518              "id": "Tunnel name is not valid",
   519              "message": "Tunnel name is not valid",
   520              "translation": "Tunnel name is not valid",
   521              "translatorComment": "Copied from source.",
   522              "fuzzy": true
   523          },
   524          {
   525              "id": "Line must occur in a section",
   526              "message": "Line must occur in a section",
   527              "translation": "Line must occur in a section",
   528              "translatorComment": "Copied from source.",
   529              "fuzzy": true
   530          },
   531          {
   532              "id": "Config key is missing an equals separator",
   533              "message": "Config key is missing an equals separator",
   534              "translation": "Config key is missing an equals separator",
   535              "translatorComment": "Copied from source.",
   536              "fuzzy": true
   537          },
   538          {
   539              "id": "Key must have a value",
   540              "message": "Key must have a value",
   541              "translation": "Key must have a value",
   542              "translatorComment": "Copied from source.",
   543              "fuzzy": true
   544          },
   545          {
   546              "id": "Invalid key for [Interface] section",
   547              "message": "Invalid key for [Interface] section",
   548              "translation": "Invalid key for [Interface] section",
   549              "translatorComment": "Copied from source.",
   550              "fuzzy": true
   551          },
   552          {
   553              "id": "Invalid key for [Peer] section",
   554              "message": "Invalid key for [Peer] section",
   555              "translation": "Invalid key for [Peer] section",
   556              "translatorComment": "Copied from source.",
   557              "fuzzy": true
   558          },
   559          {
   560              "id": "An interface must have a private key",
   561              "message": "An interface must have a private key",
   562              "translation": "An interface must have a private key",
   563              "translatorComment": "Copied from source.",
   564              "fuzzy": true
   565          },
   566          {
   567              "id": "[none specified]",
   568              "message": "[none specified]",
   569              "translation": "[none specified]",
   570              "translatorComment": "Copied from source.",
   571              "fuzzy": true
   572          },
   573          {
   574              "id": "All peers must have public keys",
   575              "message": "All peers must have public keys",
   576              "translation": "All peers must have public keys",
   577              "translatorComment": "Copied from source.",
   578              "fuzzy": true
   579          },
   580          {
   581              "id": "Error in getting configuration",
   582              "message": "Error in getting configuration",
   583              "translation": "Error in getting configuration",
   584              "translatorComment": "Copied from source.",
   585              "fuzzy": true
   586          },
   587          {
   588              "id": "Invalid key for interface section",
   589              "message": "Invalid key for interface section",
   590              "translation": "Invalid key for interface section",
   591              "translatorComment": "Copied from source.",
   592              "fuzzy": true
   593          },
   594          {
   595              "id": "Protocol version must be 1",
   596              "message": "Protocol version must be 1",
   597              "translation": "Protocol version must be 1",
   598              "translatorComment": "Copied from source.",
   599              "fuzzy": true
   600          },
   601          {
   602              "id": "Invalid key for peer section",
   603              "message": "Invalid key for peer section",
   604              "translation": "Invalid key for peer section",
   605              "translatorComment": "Copied from source.",
   606              "fuzzy": true
   607          },
   608          {
   609              "id": "[EnumerationSeparator]",
   610              "message": "[EnumerationSeparator]",
   611              "translation": ", ",
   612              "comment": "Text to insert between items when listing - most western languages will translate ‘[EnumerationSeparator]’ into ‘, ’ to produce lists like ‘apple, orange, strawberry’. Eastern languages might translate into ‘、’ to produce lists like ‘リンゴ、オレンジ、イチゴ’."
   613          },
   614          {
   615              "id": "[UnitSeparator]",
   616              "message": "[UnitSeparator]",
   617              "translation": ", ",
   618              "comment": "Text to insert when combining units of a measure - most languages will translate ‘[UnitSeparator]’ into ‘ ’ (space) to produce lists like ‘2 minuti 30 sekund’, or empty string ‘’ to produce ‘2分30秒’."
   619          },
   620          {
   621              "id": "About WireGuard",
   622              "message": "About WireGuard",
   623              "translation": "About WireGuard",
   624              "translatorComment": "Copied from source.",
   625              "fuzzy": true
   626          },
   627          {
   628              "id": "WireGuard logo image",
   629              "message": "WireGuard logo image",
   630              "translation": "WireGuard logo image",
   631              "translatorComment": "Copied from source.",
   632              "fuzzy": true
   633          },
   634          {
   635              "id": "App version: {Number}\nGo backend version: {WireGuardGoVersion}\nGo version: {Version_go}\nOperating system: {OsName}\nArchitecture: {GOARCH}",
   636              "message": "App version: {Number}\nGo backend version: {WireGuardGoVersion}\nGo version: {Version_go}\nOperating system: {OsName}\nArchitecture: {GOARCH}",
   637              "translation": "App version: {Number}\nGo backend version: {WireGuardGoVersion}\nGo version: {Version_go}\nOperating system: {OsName}\nArchitecture: {GOARCH}",
   638              "translatorComment": "Copied from source.",
   639              "placeholders": [
   640                  {
   641                      "id": "Number",
   642                      "string": "%[1]s",
   643                      "type": "string",
   644                      "underlyingType": "string",
   645                      "argNum": 1,
   646                      "expr": "version.Number"
   647                  },
   648                  {
   649                      "id": "WireGuardGoVersion",
   650                      "string": "%[2]s",
   651                      "type": "string",
   652                      "underlyingType": "string",
   653                      "argNum": 2,
   654                      "expr": "device.WireGuardGoVersion"
   655                  },
   656                  {
   657                      "id": "Version_go",
   658                      "string": "%[3]s",
   659                      "type": "string",
   660                      "underlyingType": "string",
   661                      "argNum": 3,
   662                      "expr": "strings.TrimPrefix(runtime.Version(), \"go\")"
   663                  },
   664                  {
   665                      "id": "OsName",
   666                      "string": "%[4]s",
   667                      "type": "string",
   668                      "underlyingType": "string",
   669                      "argNum": 4,
   670                      "expr": "version.OsName()"
   671                  },
   672                  {
   673                      "id": "GOARCH",
   674                      "string": "%[5]s",
   675                      "type": "string",
   676                      "underlyingType": "string",
   677                      "argNum": 5,
   678                      "expr": "runtime.GOARCH"
   679                  }
   680              ],
   681              "fuzzy": true
   682          },
   683          {
   684              "id": "Close",
   685              "message": "Close",
   686              "translation": "Close",
   687              "translatorComment": "Copied from source.",
   688              "fuzzy": true
   689          },
   690          {
   691              "id": "♥ \u0026Donate!",
   692              "message": "♥ \u0026Donate!",
   693              "translation": "♥ \u0026Donate!",
   694              "translatorComment": "Copied from source.",
   695              "fuzzy": true
   696          },
   697          {
   698              "id": "Status:",
   699              "message": "Status:",
   700              "translation": "Status:",
   701              "translatorComment": "Copied from source.",
   702              "fuzzy": true
   703          },
   704          {
   705              "id": "\u0026Deactivate",
   706              "message": "\u0026Deactivate",
   707              "translation": "\u0026Deactivate",
   708              "translatorComment": "Copied from source.",
   709              "fuzzy": true
   710          },
   711          {
   712              "id": "\u0026Activate",
   713              "message": "\u0026Activate",
   714              "translation": "\u0026Activate",
   715              "translatorComment": "Copied from source.",
   716              "fuzzy": true
   717          },
   718          {
   719              "id": "Public key:",
   720              "message": "Public key:",
   721              "translation": "Public key:",
   722              "translatorComment": "Copied from source.",
   723              "fuzzy": true
   724          },
   725          {
   726              "id": "Listen port:",
   727              "message": "Listen port:",
   728              "translation": "Listen port:",
   729              "translatorComment": "Copied from source.",
   730              "fuzzy": true
   731          },
   732          {
   733              "id": "MTU:",
   734              "message": "MTU:",
   735              "translation": "MTU:",
   736              "translatorComment": "Copied from source.",
   737              "fuzzy": true
   738          },
   739          {
   740              "id": "Addresses:",
   741              "message": "Addresses:",
   742              "translation": "Addresses:",
   743              "translatorComment": "Copied from source.",
   744              "fuzzy": true
   745          },
   746          {
   747              "id": "DNS servers:",
   748              "message": "DNS servers:",
   749              "translation": "DNS servers:",
   750              "translatorComment": "Copied from source.",
   751              "fuzzy": true
   752          },
   753          {
   754              "id": "Preshared key:",
   755              "message": "Preshared key:",
   756              "translation": "Preshared key:",
   757              "translatorComment": "Copied from source.",
   758              "fuzzy": true
   759          },
   760          {
   761              "id": "Allowed IPs:",
   762              "message": "Allowed IPs:",
   763              "translation": "Allowed IPs:",
   764              "translatorComment": "Copied from source.",
   765              "fuzzy": true
   766          },
   767          {
   768              "id": "Endpoint:",
   769              "message": "Endpoint:",
   770              "translation": "Endpoint:",
   771              "translatorComment": "Copied from source.",
   772              "fuzzy": true
   773          },
   774          {
   775              "id": "Persistent keepalive:",
   776              "message": "Persistent keepalive:",
   777              "translation": "Persistent keepalive:",
   778              "translatorComment": "Copied from source.",
   779              "fuzzy": true
   780          },
   781          {
   782              "id": "Latest handshake:",
   783              "message": "Latest handshake:",
   784              "translation": "Latest handshake:",
   785              "translatorComment": "Copied from source.",
   786              "fuzzy": true
   787          },
   788          {
   789              "id": "Transfer:",
   790              "message": "Transfer:",
   791              "translation": "Transfer:",
   792              "translatorComment": "Copied from source.",
   793              "fuzzy": true
   794          },
   795          {
   796              "id": "enabled",
   797              "message": "enabled",
   798              "translation": "enabled",
   799              "translatorComment": "Copied from source.",
   800              "fuzzy": true
   801          },
   802          {
   803              "id": "{String} received, {String_1} sent",
   804              "message": "{String} received, {String_1} sent",
   805              "translation": "{String} received, {String_1} sent",
   806              "translatorComment": "Copied from source.",
   807              "placeholders": [
   808                  {
   809                      "id": "String",
   810                      "string": "%[1]s",
   811                      "type": "string",
   812                      "underlyingType": "string",
   813                      "argNum": 1,
   814                      "expr": "c.RxBytes.String()"
   815                  },
   816                  {
   817                      "id": "String_1",
   818                      "string": "%[2]s",
   819                      "type": "string",
   820                      "underlyingType": "string",
   821                      "argNum": 2,
   822                      "expr": "c.TxBytes.String()"
   823                  }
   824              ],
   825              "fuzzy": true
   826          },
   827          {
   828              "id": "Failed to determine tunnel state",
   829              "message": "Failed to determine tunnel state",
   830              "translation": "Failed to determine tunnel state",
   831              "translatorComment": "Copied from source.",
   832              "fuzzy": true
   833          },
   834          {
   835              "id": "Failed to activate tunnel",
   836              "message": "Failed to activate tunnel",
   837              "translation": "Failed to activate tunnel",
   838              "translatorComment": "Copied from source.",
   839              "fuzzy": true
   840          },
   841          {
   842              "id": "Failed to deactivate tunnel",
   843              "message": "Failed to deactivate tunnel",
   844              "translation": "Failed to deactivate tunnel",
   845              "translatorComment": "Copied from source.",
   846              "fuzzy": true
   847          },
   848          {
   849              "id": "Interface: {Name}",
   850              "message": "Interface: {Name}",
   851              "translation": "Interface: {Name}",
   852              "translatorComment": "Copied from source.",
   853              "placeholders": [
   854                  {
   855                      "id": "Name",
   856                      "string": "%[1]s",
   857                      "type": "string",
   858                      "underlyingType": "string",
   859                      "argNum": 1,
   860                      "expr": "config.Name"
   861                  }
   862              ],
   863              "fuzzy": true
   864          },
   865          {
   866              "id": "Peer",
   867              "message": "Peer",
   868              "translation": "Peer",
   869              "translatorComment": "Copied from source.",
   870              "fuzzy": true
   871          },
   872          {
   873              "id": "Create new tunnel",
   874              "message": "Create new tunnel",
   875              "translation": "Create new tunnel",
   876              "translatorComment": "Copied from source.",
   877              "fuzzy": true
   878          },
   879          {
   880              "id": "Edit tunnel",
   881              "message": "Edit tunnel",
   882              "translation": "Edit tunnel",
   883              "translatorComment": "Copied from source.",
   884              "fuzzy": true
   885          },
   886          {
   887              "id": "\u0026Name:",
   888              "message": "\u0026Name:",
   889              "translation": "\u0026Name:",
   890              "translatorComment": "Copied from source.",
   891              "fuzzy": true
   892          },
   893          {
   894              "id": "\u0026Public key:",
   895              "message": "\u0026Public key:",
   896              "translation": "\u0026Public key:",
   897              "translatorComment": "Copied from source.",
   898              "fuzzy": true
   899          },
   900          {
   901              "id": "(unknown)",
   902              "message": "(unknown)",
   903              "translation": "(unknown)",
   904              "translatorComment": "Copied from source.",
   905              "fuzzy": true
   906          },
   907          {
   908              "id": "\u0026Block untunneled traffic (kill-switch)",
   909              "message": "\u0026Block untunneled traffic (kill-switch)",
   910              "translation": "\u0026Block untunneled traffic (kill-switch)",
   911              "translatorComment": "Copied from source.",
   912              "fuzzy": true
   913          },
   914          {
   915              "id": "When a configuration has exactly one peer, and that peer has an allowed IPs containing at least one of 0.0.0.0/0 or ::/0, then the tunnel service engages a firewall ruleset to block all traffic that is neither to nor from the tunnel interface, with special exceptions for DHCP and NDP.",
   916              "message": "When a configuration has exactly one peer, and that peer has an allowed IPs containing at least one of 0.0.0.0/0 or ::/0, then the tunnel service engages a firewall ruleset to block all traffic that is neither to nor from the tunnel interface, with special exceptions for DHCP and NDP.",
   917              "translation": "When a configuration has exactly one peer, and that peer has an allowed IPs containing at least one of 0.0.0.0/0 or ::/0, then the tunnel service engages a firewall ruleset to block all traffic that is neither to nor from the tunnel interface, with special exceptions for DHCP and NDP.",
   918              "translatorComment": "Copied from source.",
   919              "fuzzy": true
   920          },
   921          {
   922              "id": "\u0026Save",
   923              "message": "\u0026Save",
   924              "translation": "\u0026Save",
   925              "translatorComment": "Copied from source.",
   926              "fuzzy": true
   927          },
   928          {
   929              "id": "Cancel",
   930              "message": "Cancel",
   931              "translation": "Cancel",
   932              "translatorComment": "Copied from source.",
   933              "fuzzy": true
   934          },
   935          {
   936              "id": "\u0026Configuration:",
   937              "message": "\u0026Configuration:",
   938              "translation": "\u0026Configuration:",
   939              "translatorComment": "Copied from source.",
   940              "fuzzy": true
   941          },
   942          {
   943              "id": "Invalid name",
   944              "message": "Invalid name",
   945              "translation": "Invalid name",
   946              "translatorComment": "Copied from source.",
   947              "fuzzy": true
   948          },
   949          {
   950              "id": "A name is required.",
   951              "message": "A name is required.",
   952              "translation": "A name is required.",
   953              "translatorComment": "Copied from source.",
   954              "fuzzy": true
   955          },
   956          {
   957              "id": "Tunnel name ‘{NewName}’ is invalid.",
   958              "message": "Tunnel name ‘{NewName}’ is invalid.",
   959              "translation": "Tunnel name ‘{NewName}’ is invalid.",
   960              "translatorComment": "Copied from source.",
   961              "placeholders": [
   962                  {
   963                      "id": "NewName",
   964                      "string": "%[1]s",
   965                      "type": "string",
   966                      "underlyingType": "string",
   967                      "argNum": 1,
   968                      "expr": "newName"
   969                  }
   970              ],
   971              "fuzzy": true
   972          },
   973          {
   974              "id": "Unable to list existing tunnels",
   975              "message": "Unable to list existing tunnels",
   976              "translation": "Unable to list existing tunnels",
   977              "translatorComment": "Copied from source.",
   978              "fuzzy": true
   979          },
   980          {
   981              "id": "Tunnel already exists",
   982              "message": "Tunnel already exists",
   983              "translation": "Tunnel already exists",
   984              "translatorComment": "Copied from source.",
   985              "fuzzy": true
   986          },
   987          {
   988              "id": "Another tunnel already exists with the name ‘{NewName}’.",
   989              "message": "Another tunnel already exists with the name ‘{NewName}’.",
   990              "translation": "Another tunnel already exists with the name ‘{NewName}’.",
   991              "translatorComment": "Copied from source.",
   992              "placeholders": [
   993                  {
   994                      "id": "NewName",
   995                      "string": "%[1]s",
   996                      "type": "string",
   997                      "underlyingType": "string",
   998                      "argNum": 1,
   999                      "expr": "newName"
  1000                  }
  1001              ],
  1002              "fuzzy": true
  1003          },
  1004          {
  1005              "id": "Unable to create new configuration",
  1006              "message": "Unable to create new configuration",
  1007              "translation": "Unable to create new configuration",
  1008              "translatorComment": "Copied from source.",
  1009              "fuzzy": true
  1010          },
  1011          {
  1012              "id": "Writing file failed",
  1013              "message": "Writing file failed",
  1014              "translation": "Writing file failed",
  1015              "translatorComment": "Copied from source.",
  1016              "fuzzy": true
  1017          },
  1018          {
  1019              "id": "File ‘{FilePath}’ already exists.\n\nDo you want to overwrite it?",
  1020              "message": "File ‘{FilePath}’ already exists.\n\nDo you want to overwrite it?",
  1021              "translation": "File ‘{FilePath}’ already exists.\n\nDo you want to overwrite it?",
  1022              "translatorComment": "Copied from source.",
  1023              "placeholders": [
  1024                  {
  1025                      "id": "FilePath",
  1026                      "string": "%[1]s",
  1027                      "type": "string",
  1028                      "underlyingType": "string",
  1029                      "argNum": 1,
  1030                      "expr": "filePath"
  1031                  }
  1032              ],
  1033              "fuzzy": true
  1034          },
  1035          {
  1036              "id": "Active",
  1037              "message": "Active",
  1038              "translation": "Active",
  1039              "translatorComment": "Copied from source.",
  1040              "fuzzy": true
  1041          },
  1042          {
  1043              "id": "Activating",
  1044              "message": "Activating",
  1045              "translation": "Activating",
  1046              "translatorComment": "Copied from source.",
  1047              "fuzzy": true
  1048          },
  1049          {
  1050              "id": "Inactive",
  1051              "message": "Inactive",
  1052              "translation": "Inactive",
  1053              "translatorComment": "Copied from source.",
  1054              "fuzzy": true
  1055          },
  1056          {
  1057              "id": "Deactivating",
  1058              "message": "Deactivating",
  1059              "translation": "Deactivating",
  1060              "translatorComment": "Copied from source.",
  1061              "fuzzy": true
  1062          },
  1063          {
  1064              "id": "Unknown state",
  1065              "message": "Unknown state",
  1066              "translation": "Unknown state",
  1067              "translatorComment": "Copied from source.",
  1068              "fuzzy": true
  1069          },
  1070          {
  1071              "id": "Log",
  1072              "message": "Log",
  1073              "translation": "Log",
  1074              "translatorComment": "Copied from source.",
  1075              "fuzzy": true
  1076          },
  1077          {
  1078              "id": "\u0026Copy",
  1079              "message": "\u0026Copy",
  1080              "translation": "\u0026Copy",
  1081              "translatorComment": "Copied from source.",
  1082              "fuzzy": true
  1083          },
  1084          {
  1085              "id": "Select \u0026all",
  1086              "message": "Select \u0026all",
  1087              "translation": "Select \u0026all",
  1088              "translatorComment": "Copied from source.",
  1089              "fuzzy": true
  1090          },
  1091          {
  1092              "id": "\u0026Save to file…",
  1093              "message": "\u0026Save to file…",
  1094              "translation": "\u0026Save to file…",
  1095              "translatorComment": "Copied from source.",
  1096              "fuzzy": true
  1097          },
  1098          {
  1099              "id": "Time",
  1100              "message": "Time",
  1101              "translation": "Time",
  1102              "translatorComment": "Copied from source.",
  1103              "fuzzy": true
  1104          },
  1105          {
  1106              "id": "Log message",
  1107              "message": "Log message",
  1108              "translation": "Log message",
  1109              "translatorComment": "Copied from source.",
  1110              "fuzzy": true
  1111          },
  1112          {
  1113              "id": "Text Files (*.txt)|*.txt|All Files (*.*)|*.*",
  1114              "message": "Text Files (*.txt)|*.txt|All Files (*.*)|*.*",
  1115              "translation": "Text Files (*.txt)|*.txt|All Files (*.*)|*.*",
  1116              "translatorComment": "Copied from source.",
  1117              "fuzzy": true
  1118          },
  1119          {
  1120              "id": "Export log to file",
  1121              "message": "Export log to file",
  1122              "translation": "Export log to file",
  1123              "translatorComment": "Copied from source.",
  1124              "fuzzy": true
  1125          },
  1126          {
  1127              "id": "\u0026About WireGuard…",
  1128              "message": "\u0026About WireGuard…",
  1129              "translation": "\u0026About WireGuard…",
  1130              "translatorComment": "Copied from source.",
  1131              "fuzzy": true
  1132          },
  1133          {
  1134              "id": "Tunnel Error",
  1135              "message": "Tunnel Error",
  1136              "translation": "Tunnel Error",
  1137              "translatorComment": "Copied from source.",
  1138              "fuzzy": true
  1139          },
  1140          {
  1141              "id": "{ErrMsg}\n\nPlease consult the log for more information.",
  1142              "message": "{ErrMsg}\n\nPlease consult the log for more information.",
  1143              "translation": "{ErrMsg}\n\nPlease consult the log for more information.",
  1144              "translatorComment": "Copied from source.",
  1145              "placeholders": [
  1146                  {
  1147                      "id": "ErrMsg",
  1148                      "string": "%[1]s",
  1149                      "type": "string",
  1150                      "underlyingType": "string",
  1151                      "argNum": 1,
  1152                      "expr": "errMsg"
  1153                  }
  1154              ],
  1155              "fuzzy": true
  1156          },
  1157          {
  1158              "id": "{Title} (out of date)",
  1159              "message": "{Title} (out of date)",
  1160              "translation": "{Title} (out of date)",
  1161              "translatorComment": "Copied from source.",
  1162              "placeholders": [
  1163                  {
  1164                      "id": "Title",
  1165                      "string": "%[1]s",
  1166                      "type": "string",
  1167                      "underlyingType": "string",
  1168                      "argNum": 1,
  1169                      "expr": "mtw.Title()"
  1170                  }
  1171              ],
  1172              "fuzzy": true
  1173          },
  1174          {
  1175              "id": "WireGuard Detection Error",
  1176              "message": "WireGuard Detection Error",
  1177              "translation": "WireGuard Detection Error",
  1178              "translatorComment": "Copied from source.",
  1179              "fuzzy": true
  1180          },
  1181          {
  1182              "id": "Unable to wait for WireGuard window to appear: {Err}",
  1183              "message": "Unable to wait for WireGuard window to appear: {Err}",
  1184              "translation": "Unable to wait for WireGuard window to appear: {Err}",
  1185              "translatorComment": "Copied from source.",
  1186              "placeholders": [
  1187                  {
  1188                      "id": "Err",
  1189                      "string": "%[1]v",
  1190                      "type": "error",
  1191                      "underlyingType": "interface{Error() string}",
  1192                      "argNum": 1,
  1193                      "expr": "err"
  1194                  }
  1195              ],
  1196              "fuzzy": true
  1197          },
  1198          {
  1199              "id": "WireGuard: Deactivated",
  1200              "message": "WireGuard: Deactivated",
  1201              "translation": "WireGuard: Deactivated",
  1202              "translatorComment": "Copied from source.",
  1203              "fuzzy": true
  1204          },
  1205          {
  1206              "id": "Status: Unknown",
  1207              "message": "Status: Unknown",
  1208              "translation": "Status: Unknown",
  1209              "translatorComment": "Copied from source.",
  1210              "fuzzy": true
  1211          },
  1212          {
  1213              "id": "Addresses: None",
  1214              "message": "Addresses: None",
  1215              "translation": "Addresses: None",
  1216              "translatorComment": "Copied from source.",
  1217              "fuzzy": true
  1218          },
  1219          {
  1220              "id": "\u0026Manage tunnels…",
  1221              "message": "\u0026Manage tunnels…",
  1222              "translation": "\u0026Manage tunnels…",
  1223              "translatorComment": "Copied from source.",
  1224              "fuzzy": true
  1225          },
  1226          {
  1227              "id": "\u0026Import tunnel(s) from file…",
  1228              "message": "\u0026Import tunnel(s) from file…",
  1229              "translation": "\u0026Import tunnel(s) from file…",
  1230              "translatorComment": "Copied from source.",
  1231              "fuzzy": true
  1232          },
  1233          {
  1234              "id": "E\u0026xit",
  1235              "message": "E\u0026xit",
  1236              "translation": "E\u0026xit",
  1237              "translatorComment": "Copied from source.",
  1238              "fuzzy": true
  1239          },
  1240          {
  1241              "id": "WireGuard Tunnel Error",
  1242              "message": "WireGuard Tunnel Error",
  1243              "translation": "WireGuard Tunnel Error",
  1244              "translatorComment": "Copied from source.",
  1245              "fuzzy": true
  1246          },
  1247          {
  1248              "id": "WireGuard: {TextForStateglobalState_true}",
  1249              "message": "WireGuard: {TextForStateglobalState_true}",
  1250              "translation": "WireGuard: {TextForStateglobalState_true}",
  1251              "translatorComment": "Copied from source.",
  1252              "placeholders": [
  1253                  {
  1254                      "id": "TextForStateglobalState_true",
  1255                      "string": "%[1]s",
  1256                      "type": "string",
  1257                      "underlyingType": "string",
  1258                      "argNum": 1,
  1259                      "expr": "textForState(globalState, true)"
  1260                  }
  1261              ],
  1262              "fuzzy": true
  1263          },
  1264          {
  1265              "id": "Status: {StateText}",
  1266              "message": "Status: {StateText}",
  1267              "translation": "Status: {StateText}",
  1268              "translatorComment": "Copied from source.",
  1269              "placeholders": [
  1270                  {
  1271                      "id": "StateText",
  1272                      "string": "%[1]s",
  1273                      "type": "string",
  1274                      "underlyingType": "string",
  1275                      "argNum": 1,
  1276                      "expr": "stateText"
  1277                  }
  1278              ],
  1279              "fuzzy": true
  1280          },
  1281          {
  1282              "id": "Addresses: {String}",
  1283              "message": "Addresses: {String}",
  1284              "translation": "Addresses: {String}",
  1285              "translatorComment": "Copied from source.",
  1286              "placeholders": [
  1287                  {
  1288                      "id": "String",
  1289                      "string": "%[1]s",
  1290                      "type": "string",
  1291                      "underlyingType": "string",
  1292                      "argNum": 1,
  1293                      "expr": "sb.String()"
  1294                  }
  1295              ],
  1296              "fuzzy": true
  1297          },
  1298          {
  1299              "id": "WireGuard Activated",
  1300              "message": "WireGuard Activated",
  1301              "translation": "WireGuard Activated",
  1302              "translatorComment": "Copied from source.",
  1303              "fuzzy": true
  1304          },
  1305          {
  1306              "id": "The {Name} tunnel has been activated.",
  1307              "message": "The {Name} tunnel has been activated.",
  1308              "translation": "The {Name} tunnel has been activated.",
  1309              "translatorComment": "Copied from source.",
  1310              "placeholders": [
  1311                  {
  1312                      "id": "Name",
  1313                      "string": "%[1]s",
  1314                      "type": "string",
  1315                      "underlyingType": "string",
  1316                      "argNum": 1,
  1317                      "expr": "tunnel.Name"
  1318                  }
  1319              ],
  1320              "fuzzy": true
  1321          },
  1322          {
  1323              "id": "WireGuard Deactivated",
  1324              "message": "WireGuard Deactivated",
  1325              "translation": "WireGuard Deactivated",
  1326              "translatorComment": "Copied from source.",
  1327              "fuzzy": true
  1328          },
  1329          {
  1330              "id": "The {Name} tunnel has been deactivated.",
  1331              "message": "The {Name} tunnel has been deactivated.",
  1332              "translation": "The {Name} tunnel has been deactivated.",
  1333              "translatorComment": "Copied from source.",
  1334              "placeholders": [
  1335                  {
  1336                      "id": "Name",
  1337                      "string": "%[1]s",
  1338                      "type": "string",
  1339                      "underlyingType": "string",
  1340                      "argNum": 1,
  1341                      "expr": "tunnel.Name"
  1342                  }
  1343              ],
  1344              "fuzzy": true
  1345          },
  1346          {
  1347              "id": "An Update is Available!",
  1348              "message": "An Update is Available!",
  1349              "translation": "An Update is Available!",
  1350              "translatorComment": "Copied from source.",
  1351              "fuzzy": true
  1352          },
  1353          {
  1354              "id": "WireGuard Update Available",
  1355              "message": "WireGuard Update Available",
  1356              "translation": "WireGuard Update Available",
  1357              "translatorComment": "Copied from source.",
  1358              "fuzzy": true
  1359          },
  1360          {
  1361              "id": "An update to WireGuard is now available. You are advised to update as soon as possible.",
  1362              "message": "An update to WireGuard is now available. You are advised to update as soon as possible.",
  1363              "translation": "An update to WireGuard is now available. You are advised to update as soon as possible.",
  1364              "translatorComment": "Copied from source.",
  1365              "fuzzy": true
  1366          },
  1367          {
  1368              "id": "Tunnels",
  1369              "message": "Tunnels",
  1370              "translation": "Tunnels",
  1371              "translatorComment": "Copied from source.",
  1372              "fuzzy": true
  1373          },
  1374          {
  1375              "id": "\u0026Edit",
  1376              "message": "\u0026Edit",
  1377              "translation": "\u0026Edit",
  1378              "translatorComment": "Copied from source.",
  1379              "fuzzy": true
  1380          },
  1381          {
  1382              "id": "Add \u0026empty tunnel…",
  1383              "message": "Add \u0026empty tunnel…",
  1384              "translation": "Add \u0026empty tunnel…",
  1385              "translatorComment": "Copied from source.",
  1386              "fuzzy": true
  1387          },
  1388          {
  1389              "id": "Add Tunnel",
  1390              "message": "Add Tunnel",
  1391              "translation": "Add Tunnel",
  1392              "translatorComment": "Copied from source.",
  1393              "fuzzy": true
  1394          },
  1395          {
  1396              "id": "Remove selected tunnel(s)",
  1397              "message": "Remove selected tunnel(s)",
  1398              "translation": "Remove selected tunnel(s)",
  1399              "translatorComment": "Copied from source.",
  1400              "fuzzy": true
  1401          },
  1402          {
  1403              "id": "Export all tunnels to zip",
  1404              "message": "Export all tunnels to zip",
  1405              "translation": "Export all tunnels to zip",
  1406              "translatorComment": "Copied from source.",
  1407              "fuzzy": true
  1408          },
  1409          {
  1410              "id": "\u0026Toggle",
  1411              "message": "\u0026Toggle",
  1412              "translation": "\u0026Toggle",
  1413              "translatorComment": "Copied from source.",
  1414              "fuzzy": true
  1415          },
  1416          {
  1417              "id": "Export all tunnels to \u0026zip…",
  1418              "message": "Export all tunnels to \u0026zip…",
  1419              "translation": "Export all tunnels to \u0026zip…",
  1420              "translatorComment": "Copied from source.",
  1421              "fuzzy": true
  1422          },
  1423          {
  1424              "id": "Edit \u0026selected tunnel…",
  1425              "message": "Edit \u0026selected tunnel…",
  1426              "translation": "Edit \u0026selected tunnel…",
  1427              "translatorComment": "Copied from source.",
  1428              "fuzzy": true
  1429          },
  1430          {
  1431              "id": "\u0026Remove selected tunnel(s)",
  1432              "message": "\u0026Remove selected tunnel(s)",
  1433              "translation": "\u0026Remove selected tunnel(s)",
  1434              "translatorComment": "Copied from source.",
  1435              "fuzzy": true
  1436          },
  1437          {
  1438              "id": "Could not import selected configuration: {LastErr}",
  1439              "message": "Could not import selected configuration: {LastErr}",
  1440              "translation": "Could not import selected configuration: {LastErr}",
  1441              "translatorComment": "Copied from source.",
  1442              "placeholders": [
  1443                  {
  1444                      "id": "LastErr",
  1445                      "string": "%[1]v",
  1446                      "type": "error",
  1447                      "underlyingType": "interface{Error() string}",
  1448                      "argNum": 1,
  1449                      "expr": "lastErr"
  1450                  }
  1451              ],
  1452              "fuzzy": true
  1453          },
  1454          {
  1455              "id": "Could not enumerate existing tunnels: {LastErr}",
  1456              "message": "Could not enumerate existing tunnels: {LastErr}",
  1457              "translation": "Could not enumerate existing tunnels: {LastErr}",
  1458              "translatorComment": "Copied from source.",
  1459              "placeholders": [
  1460                  {
  1461                      "id": "LastErr",
  1462                      "string": "%[1]v",
  1463                      "type": "error",
  1464                      "underlyingType": "interface{Error() string}",
  1465                      "argNum": 1,
  1466                      "expr": "lastErr"
  1467                  }
  1468              ],
  1469              "fuzzy": true
  1470          },
  1471          {
  1472              "id": "Another tunnel already exists with the name ‘{Name}’",
  1473              "message": "Another tunnel already exists with the name ‘{Name}’",
  1474              "translation": "Another tunnel already exists with the name ‘{Name}’",
  1475              "translatorComment": "Copied from source.",
  1476              "placeholders": [
  1477                  {
  1478                      "id": "Name",
  1479                      "string": "%[1]s",
  1480                      "type": "string",
  1481                      "underlyingType": "string",
  1482                      "argNum": 1,
  1483                      "expr": "unparsedConfig.Name"
  1484                  }
  1485              ],
  1486              "fuzzy": true
  1487          },
  1488          {
  1489              "id": "Unable to import configuration: {LastErr}",
  1490              "message": "Unable to import configuration: {LastErr}",
  1491              "translation": "Unable to import configuration: {LastErr}",
  1492              "translatorComment": "Copied from source.",
  1493              "placeholders": [
  1494                  {
  1495                      "id": "LastErr",
  1496                      "string": "%[1]v",
  1497                      "type": "error",
  1498                      "underlyingType": "interface{Error() string}",
  1499                      "argNum": 1,
  1500                      "expr": "lastErr"
  1501                  }
  1502              ],
  1503              "fuzzy": true
  1504          },
  1505          {
  1506              "id": "Imported tunnels",
  1507              "message": "Imported tunnels",
  1508              "translation": "Imported tunnels",
  1509              "translatorComment": "Copied from source.",
  1510              "fuzzy": true
  1511          },
  1512          {
  1513              "id": "Imported {M} tunnels",
  1514              "message": "Imported {M} tunnels",
  1515              "translation": {
  1516                  "select": {
  1517                      "feature": "plural",
  1518                      "arg": "M",
  1519                      "cases": {
  1520                          "one": {
  1521                              "msg": "Imported {M} tunnel"
  1522                          },
  1523                          "other": {
  1524                              "msg": "Imported {M} tunnels"
  1525                          }
  1526                      }
  1527                  }
  1528              },
  1529              "placeholders": [
  1530                  {
  1531                      "id": "M",
  1532                      "string": "%[1]d",
  1533                      "type": "int",
  1534                      "underlyingType": "int",
  1535                      "argNum": 1,
  1536                      "expr": "m"
  1537                  }
  1538              ]
  1539          },
  1540          {
  1541              "id": "Imported {M} of {N} tunnels",
  1542              "message": "Imported {M} of {N} tunnels",
  1543              "translation": {
  1544                  "select": {
  1545                      "feature": "plural",
  1546                      "arg": "N",
  1547                      "cases": {
  1548                          "one": {
  1549                              "msg": "Imported {M} of {N} tunnel"
  1550                          },
  1551                          "other": {
  1552                              "msg": "Imported {M} of {N} tunnels"
  1553                          }
  1554                      }
  1555                  }
  1556              },
  1557              "placeholders": [
  1558                  {
  1559                      "id": "M",
  1560                      "string": "%[1]d",
  1561                      "type": "int",
  1562                      "underlyingType": "int",
  1563                      "argNum": 1,
  1564                      "expr": "m"
  1565                  },
  1566                  {
  1567                      "id": "N",
  1568                      "string": "%[2]d",
  1569                      "type": "int",
  1570                      "underlyingType": "int",
  1571                      "argNum": 2,
  1572                      "expr": "n"
  1573                  }
  1574              ]
  1575          },
  1576          {
  1577              "id": "Unable to create tunnel",
  1578              "message": "Unable to create tunnel",
  1579              "translation": "Unable to create tunnel",
  1580              "translatorComment": "Copied from source.",
  1581              "fuzzy": true
  1582          },
  1583          {
  1584              "id": "Delete {TunnelCount} tunnels",
  1585              "message": "Delete {TunnelCount} tunnels",
  1586              "translation": {
  1587                  "select": {
  1588                      "feature": "plural",
  1589                      "arg": "TunnelCount",
  1590                      "cases": {
  1591                          "one": {
  1592                              "msg": "Delete {TunnelCount} tunnel"
  1593                          },
  1594                          "other": {
  1595                              "msg": "Delete {TunnelCount} tunnels"
  1596                          }
  1597                      }
  1598                  }
  1599              },
  1600              "placeholders": [
  1601                  {
  1602                      "id": "TunnelCount",
  1603                      "string": "%[1]d",
  1604                      "type": "int",
  1605                      "underlyingType": "int",
  1606                      "argNum": 1,
  1607                      "expr": "tunnelCount"
  1608                  }
  1609              ]
  1610          },
  1611          {
  1612              "id": "Are you sure you would like to delete {TunnelCount} tunnels?",
  1613              "message": "Are you sure you would like to delete {TunnelCount} tunnels?",
  1614              "translation": {
  1615                  "select": {
  1616                      "feature": "plural",
  1617                      "arg": "TunnelCount",
  1618                      "cases": {
  1619                          "one": {
  1620                              "msg": "Are you sure you would like to delete {TunnelCount} tunnel?"
  1621                          },
  1622                          "other": {
  1623                              "msg": "Are you sure you would like to delete {TunnelCount} tunnels?"
  1624                          }
  1625                      }
  1626                  }
  1627              },
  1628              "placeholders": [
  1629                  {
  1630                      "id": "TunnelCount",
  1631                      "string": "%[1]d",
  1632                      "type": "int",
  1633                      "underlyingType": "int",
  1634                      "argNum": 1,
  1635                      "expr": "tunnelCount"
  1636                  }
  1637              ]
  1638          },
  1639          {
  1640              "id": "Delete tunnel ‘{TunnelName}’",
  1641              "message": "Delete tunnel ‘{TunnelName}’",
  1642              "translation": "Delete tunnel ‘{TunnelName}’",
  1643              "translatorComment": "Copied from source.",
  1644              "placeholders": [
  1645                  {
  1646                      "id": "TunnelName",
  1647                      "string": "%[1]s",
  1648                      "type": "string",
  1649                      "underlyingType": "string",
  1650                      "argNum": 1,
  1651                      "expr": "tunnelName"
  1652                  }
  1653              ],
  1654              "fuzzy": true
  1655          },
  1656          {
  1657              "id": "Are you sure you would like to delete tunnel ‘{TunnelName}’?",
  1658              "message": "Are you sure you would like to delete tunnel ‘{TunnelName}’?",
  1659              "translation": "Are you sure you would like to delete tunnel ‘{TunnelName}’?",
  1660              "translatorComment": "Copied from source.",
  1661              "placeholders": [
  1662                  {
  1663                      "id": "TunnelName",
  1664                      "string": "%[1]s",
  1665                      "type": "string",
  1666                      "underlyingType": "string",
  1667                      "argNum": 1,
  1668                      "expr": "tunnelName"
  1669                  }
  1670              ],
  1671              "fuzzy": true
  1672          },
  1673          {
  1674              "id": "{Question} You cannot undo this action.",
  1675              "message": "{Question} You cannot undo this action.",
  1676              "translation": "{Question} You cannot undo this action.",
  1677              "translatorComment": "Copied from source.",
  1678              "placeholders": [
  1679                  {
  1680                      "id": "Question",
  1681                      "string": "%[1]s",
  1682                      "type": "string",
  1683                      "underlyingType": "string",
  1684                      "argNum": 1,
  1685                      "expr": "question"
  1686                  }
  1687              ],
  1688              "fuzzy": true
  1689          },
  1690          {
  1691              "id": "Unable to delete tunnel",
  1692              "message": "Unable to delete tunnel",
  1693              "translation": "Unable to delete tunnel",
  1694              "translatorComment": "Copied from source.",
  1695              "fuzzy": true
  1696          },
  1697          {
  1698              "id": "A tunnel was unable to be removed: {Error}",
  1699              "message": "A tunnel was unable to be removed: {Error}",
  1700              "translation": "A tunnel was unable to be removed: {Error}",
  1701              "translatorComment": "Copied from source.",
  1702              "placeholders": [
  1703                  {
  1704                      "id": "Error",
  1705                      "string": "%[1]s",
  1706                      "type": "string",
  1707                      "underlyingType": "string",
  1708                      "argNum": 1,
  1709                      "expr": "errors[0].Error()"
  1710                  }
  1711              ],
  1712              "fuzzy": true
  1713          },
  1714          {
  1715              "id": "Unable to delete tunnels",
  1716              "message": "Unable to delete tunnels",
  1717              "translation": "Unable to delete tunnels",
  1718              "translatorComment": "Copied from source.",
  1719              "fuzzy": true
  1720          },
  1721          {
  1722              "id": "{Lenerrors} tunnels were unable to be removed.",
  1723              "message": "{Lenerrors} tunnels were unable to be removed.",
  1724              "translation": {
  1725                  "select": {
  1726                      "feature": "plural",
  1727                      "arg": "Lenerrors",
  1728                      "cases": {
  1729                          "one": {
  1730                              "msg": "{Lenerrors} tunnel was unable to be removed."
  1731                          },
  1732                          "other": {
  1733                              "msg": "{Lenerrors} tunnels were unable to be removed."
  1734                          }
  1735                      }
  1736                  }
  1737              },
  1738              "placeholders": [
  1739                  {
  1740                      "id": "Lenerrors",
  1741                      "string": "%[1]d",
  1742                      "type": "int",
  1743                      "underlyingType": "int",
  1744                      "argNum": 1,
  1745                      "expr": "len(errors)"
  1746                  }
  1747              ]
  1748          },
  1749          {
  1750              "id": "Configuration Files (*.zip, *.conf)|*.zip;*.conf|All Files (*.*)|*.*",
  1751              "message": "Configuration Files (*.zip, *.conf)|*.zip;*.conf|All Files (*.*)|*.*",
  1752              "translation": "Configuration Files (*.zip, *.conf)|*.zip;*.conf|All Files (*.*)|*.*",
  1753              "translatorComment": "Copied from source.",
  1754              "fuzzy": true
  1755          },
  1756          {
  1757              "id": "Import tunnel(s) from file",
  1758              "message": "Import tunnel(s) from file",
  1759              "translation": "Import tunnel(s) from file",
  1760              "translatorComment": "Copied from source.",
  1761              "fuzzy": true
  1762          },
  1763          {
  1764              "id": "Configuration ZIP Files (*.zip)|*.zip",
  1765              "message": "Configuration ZIP Files (*.zip)|*.zip",
  1766              "translation": "Configuration ZIP Files (*.zip)|*.zip",
  1767              "translatorComment": "Copied from source.",
  1768              "fuzzy": true
  1769          },
  1770          {
  1771              "id": "Export tunnels to zip",
  1772              "message": "Export tunnels to zip",
  1773              "translation": "Export tunnels to zip",
  1774              "translatorComment": "Copied from source.",
  1775              "fuzzy": true
  1776          },
  1777          {
  1778              "id": "{Title} (unsigned build, no updates)",
  1779              "message": "{Title} (unsigned build, no updates)",
  1780              "translation": "{Title} (unsigned build, no updates)",
  1781              "translatorComment": "Copied from source.",
  1782              "placeholders": [
  1783                  {
  1784                      "id": "Title",
  1785                      "string": "%[1]s",
  1786                      "type": "string",
  1787                      "underlyingType": "string",
  1788                      "argNum": 1,
  1789                      "expr": "mtw.Title()"
  1790                  }
  1791              ],
  1792              "fuzzy": true
  1793          },
  1794          {
  1795              "id": "Error Exiting WireGuard",
  1796              "message": "Error Exiting WireGuard",
  1797              "translation": "Error Exiting WireGuard",
  1798              "translatorComment": "Copied from source.",
  1799              "fuzzy": true
  1800          },
  1801          {
  1802              "id": "Unable to exit service due to: {Err}. You may want to stop WireGuard from the service manager.",
  1803              "message": "Unable to exit service due to: {Err}. You may want to stop WireGuard from the service manager.",
  1804              "translation": "Unable to exit service due to: {Err}. You may want to stop WireGuard from the service manager.",
  1805              "translatorComment": "Copied from source.",
  1806              "placeholders": [
  1807                  {
  1808                      "id": "Err",
  1809                      "string": "%[1]v",
  1810                      "type": "error",
  1811                      "underlyingType": "interface{Error() string}",
  1812                      "argNum": 1,
  1813                      "expr": "err"
  1814                  }
  1815              ],
  1816              "fuzzy": true
  1817          },
  1818          {
  1819              "id": "An update to WireGuard is available. It is highly advisable to update without delay.",
  1820              "message": "An update to WireGuard is available. It is highly advisable to update without delay.",
  1821              "translation": "An update to WireGuard is available. It is highly advisable to update without delay.",
  1822              "translatorComment": "Copied from source.",
  1823              "fuzzy": true
  1824          },
  1825          {
  1826              "id": "Status: Waiting for user",
  1827              "message": "Status: Waiting for user",
  1828              "translation": "Status: Waiting for user",
  1829              "translatorComment": "Copied from source.",
  1830              "fuzzy": true
  1831          },
  1832          {
  1833              "id": "Update Now",
  1834              "message": "Update Now",
  1835              "translation": "Update Now",
  1836              "translatorComment": "Copied from source.",
  1837              "fuzzy": true
  1838          },
  1839          {
  1840              "id": "Status: Waiting for updater service",
  1841              "message": "Status: Waiting for updater service",
  1842              "translation": "Status: Waiting for updater service",
  1843              "translatorComment": "Copied from source.",
  1844              "fuzzy": true
  1845          },
  1846          {
  1847              "id": "Error: {Err}. Please try again.",
  1848              "message": "Error: {Err}. Please try again.",
  1849              "translation": "Error: {Err}. Please try again.",
  1850              "translatorComment": "Copied from source.",
  1851              "placeholders": [
  1852                  {
  1853                      "id": "Err",
  1854                      "string": "%[1]v",
  1855                      "type": "error",
  1856                      "underlyingType": "interface{Error() string}",
  1857                      "argNum": 1,
  1858                      "expr": "err"
  1859                  }
  1860              ],
  1861              "fuzzy": true
  1862          },
  1863          {
  1864              "id": "Status: Complete!",
  1865              "message": "Status: Complete!",
  1866              "translation": "Status: Complete!",
  1867              "translatorComment": "Copied from source.",
  1868              "fuzzy": true
  1869          },
  1870          {
  1871              "id": "http2: Framer {F}: failed to decode just-written frame",
  1872              "message": "http2: Framer {F}: failed to decode just-written frame",
  1873              "translation": "http2: Framer {F}: failed to decode just-written frame",
  1874              "translatorComment": "Copied from source.",
  1875              "placeholders": [
  1876                  {
  1877                      "id": "F",
  1878                      "string": "%[1]p",
  1879                      "type": "*net/http.http2Framer",
  1880                      "underlyingType": "*net/http.http2Framer",
  1881                      "argNum": 1,
  1882                      "expr": "f"
  1883                  }
  1884              ],
  1885              "fuzzy": true
  1886          },
  1887          {
  1888              "id": "http2: Framer {F}: wrote {Http2summarizeFramefr}",
  1889              "message": "http2: Framer {F}: wrote {Http2summarizeFramefr}",
  1890              "translation": "http2: Framer {F}: wrote {Http2summarizeFramefr}",
  1891              "translatorComment": "Copied from source.",
  1892              "placeholders": [
  1893                  {
  1894                      "id": "F",
  1895                      "string": "%[1]p",
  1896                      "type": "*net/http.http2Framer",
  1897                      "underlyingType": "*net/http.http2Framer",
  1898                      "argNum": 1,
  1899                      "expr": "f"
  1900                  },
  1901                  {
  1902                      "id": "Http2summarizeFramefr",
  1903                      "string": "%[2]v",
  1904                      "type": "string",
  1905                      "underlyingType": "string",
  1906                      "argNum": 2,
  1907                      "expr": "http2summarizeFrame(fr)"
  1908                  }
  1909              ],
  1910              "fuzzy": true
  1911          },
  1912          {
  1913              "id": "http2: Framer {Fr}: read {Http2summarizeFramef}",
  1914              "message": "http2: Framer {Fr}: read {Http2summarizeFramef}",
  1915              "translation": "http2: Framer {Fr}: read {Http2summarizeFramef}",
  1916              "translatorComment": "Copied from source.",
  1917              "placeholders": [
  1918                  {
  1919                      "id": "Fr",
  1920                      "string": "%[1]p",
  1921                      "type": "*net/http.http2Framer",
  1922                      "underlyingType": "*net/http.http2Framer",
  1923                      "argNum": 1,
  1924                      "expr": "fr"
  1925                  },
  1926                  {
  1927                      "id": "Http2summarizeFramef",
  1928                      "string": "%[2]v",
  1929                      "type": "string",
  1930                      "underlyingType": "string",
  1931                      "argNum": 2,
  1932                      "expr": "http2summarizeFrame(f)"
  1933                  }
  1934              ],
  1935              "fuzzy": true
  1936          },
  1937          {
  1938              "id": "http2: decoded hpack field {HeaderField}",
  1939              "message": "http2: decoded hpack field {HeaderField}",
  1940              "translation": "http2: decoded hpack field {HeaderField}",
  1941              "translatorComment": "Copied from source.",
  1942              "placeholders": [
  1943                  {
  1944                      "id": "HeaderField",
  1945                      "string": "%+[1]v",
  1946                      "type": "vendor/golang.org/x/net/http2/hpack.HeaderField",
  1947                      "underlyingType": "struct{Name string; Value string; Sensitive bool}",
  1948                      "argNum": 1,
  1949                      "expr": "hf"
  1950                  }
  1951              ],
  1952              "fuzzy": true
  1953          }
  1954      ]
  1955  }