<?xml version="1.0" encoding="UTF-8"?>
<!-- 
/*
**
** Copyright 2013, 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="label_go_key" msgid="3122611885957309462">"പോകുക"</string>
    <string name="label_next_key" msgid="6928583184397561625">"അടുത്തത്"</string>
    <string name="label_previous_key" msgid="4577844656911214877">"മുമ്പത്തെ"</string>
    <string name="label_done_key" msgid="1681854263629409301">"പൂർത്തിയായി"</string>
    <string name="label_send_key" msgid="1326090749003557962">"അയയ്‌ക്കുക"</string>
    <string name="label_search_key" msgid="1862446085742754093">"തിരയുക"</string>
    <string name="label_pause_key" msgid="1679062123519160171">"താൽക്കാലികമായി നിർത്തുക"</string>
    <string name="label_wait_key" msgid="6039179696350776268">"കാത്തിരിക്കുക"</string>
</resources>
