<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2009 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="ringtone_default" msgid="798836092118824500">"Zadana melodija zvona"</string>
    <string name="notification_sound_default" msgid="8133121186242636840">"Zadani zvuk obavijesti"</string>
    <string name="alarm_sound_default" msgid="4787646764557462649">"Zadani zvuk alarma"</string>
    <string name="add_ringtone_text" msgid="6642389991738337529">"Dodaj melodiju zvona"</string>
    <string name="add_alarm_text" msgid="3545497316166999225">"Dodaj alarm"</string>
    <string name="add_notification_text" msgid="4431129543300614788">"Dodaj obavijest"</string>
    <string name="delete_ringtone_text" msgid="201443984070732499">"Izbriši"</string>
    <string name="unable_to_add_ringtone" msgid="4583511263449467326">"Dodavanje prilagođene melodije zvona nije moguće"</string>
    <string name="unable_to_delete_ringtone" msgid="6792301380142859496">"Brisanje prilagođene melodije zvona nije moguće"</string>
    <string name="app_label" msgid="3091611356093417332">"Zvukovi"</string>
</resources>
