<?xml version="1.0" encoding="UTF-8"?>
<!-- 
  Copyright (c) 2016, The Android Open Source Project

  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
 -->

<resources xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <string name="title" msgid="9099755437807065998">"Plaaslike stelselopdatering"</string>
    <string name="invalid_file_type" msgid="5363346679377832590">"Dis nie \'n geldige lêer vir opdatering nie"</string>
    <string name="unknown_file" msgid="4460330045071455406">"Onbekende lêer"</string>
    <string name="cannot_access_storage" msgid="692801523959625901">"Kry nie toegang tot bergingtoestel nie"</string>
    <string name="update_in_progress" msgid="7657197919645064655">"Pas tans stelselopdatering toe"</string>
    <string name="update_file_name" msgid="3034222525060204549">"Lêer: %s"</string>
    <string name="update_file_size" msgid="4816394194716640579">"Grootte: "</string>
    <string name="install_now" msgid="1526380165774958831">"Installeer nou"</string>
    <string name="update_failed" msgid="6878694841476888954">"Kon nie opdateer nie"</string>
    <string name="verify_in_progress" msgid="8125900023523483860">"Verifieer tans opdatering …"</string>
    <string name="verify_failure" msgid="5077656735909871291">"Kies asseblief \'n geldige opdateringlêer."</string>
    <string name="install_ready" msgid="5831701403889581045">"Die opdatering is gereed vir installering."</string>
    <string name="install_in_progress" msgid="1447531401625704953">"Installering is tans aan die gang …"</string>
    <string name="install_success" msgid="7607370228817982339">"Die opdatering is suksesvol."</string>
    <string name="install_failed" msgid="6019321590904856934">"Kon nie stelselopdatering installeer nie."</string>
    <string name="rebooting" msgid="2147644401685874548">"Opdatering is suksesvol. Herselflaai nou …"</string>
    <string name="volumes" msgid="9062088000979584509">"Volumes (%d)"</string>
    <string name="path" msgid="7133964085947968274">"Pad: %s"</string>
</resources>
