<?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">"Lokalno ažuriranje sustava"</string>
    <string name="invalid_file_type" msgid="5363346679377832590">"Ovo nije valjana datoteka za ažuriranje"</string>
    <string name="unknown_file" msgid="4460330045071455406">"Nepoznata datoteka"</string>
    <string name="cannot_access_storage" msgid="692801523959625901">"Pristup uređaju za pohranu nije moguć"</string>
    <string name="update_in_progress" msgid="7657197919645064655">"Primjena ažuriranja sustava"</string>
    <string name="update_file_name" msgid="3034222525060204549">"Datoteka: %s"</string>
    <string name="update_file_size" msgid="4816394194716640579">"Veličina: "</string>
    <string name="install_now" msgid="1526380165774958831">"Instaliraj sad"</string>
    <string name="update_failed" msgid="6878694841476888954">"Ažuriranje nije uspjelo"</string>
    <string name="verify_in_progress" msgid="8125900023523483860">"Potvrda ažuriranja…"</string>
    <string name="verify_failure" msgid="5077656735909871291">"Odaberite važeću datoteku za ažuriranje."</string>
    <string name="install_ready" msgid="5831701403889581045">"Ažuriranje je spremno za instaliranje."</string>
    <string name="install_in_progress" msgid="1447531401625704953">"Instalacija u tijeku…"</string>
    <string name="install_success" msgid="7607370228817982339">"Ažuriranje je uspjelo."</string>
    <string name="install_failed" msgid="6019321590904856934">"Ažuriranje sustava nije instalirano."</string>
    <string name="rebooting" msgid="2147644401685874548">"Ažurirano. Ponovno pokretanje…"</string>
    <string name="volumes" msgid="9062088000979584509">"Uređaji (%d)"</string>
    <string name="path" msgid="7133964085947968274">"Put: %s"</string>
</resources>
