<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2010 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="photoeditor_name" msgid="4738587346771969697">"Studio ya Picha"</string>
    <string name="loading_failure" msgid="7890360277163832130">"Haikuweza kupakia picha"</string>
    <string name="saving_failure" msgid="8229491575433743974">"Haikuweza kuhifadhi picha iliyohaririwa"</string>
    <string name="photo_saved" msgid="6163006724627682202">"Picha iliyohaririwa imehifadhiwa kwa <xliff:g id="FOLDER_NAME">%s</xliff:g>"</string>
    <string name="discard_unsaved_photo" msgid="2353274490633681946">"Tupa mabadiliko yasiyohifadhiwa?"</string>
    <string name="yes" msgid="5402582493291792293">"Ndio"</string>
    <string name="save" msgid="5516670392524294967">"HIFADHI"</string>
    <string name="autofix" msgid="1663414996270538748">"Weka kiotomatiki"</string>
    <string name="crop" msgid="7598378507763334041">"Kata"</string>
    <string name="crossprocess" msgid="4173724489001742342">"Mchakato wa kati"</string>
    <string name="documentary" msgid="50396326708699797">"Ya hali halisi"</string>
    <string name="doodle" msgid="1686409894518940990">"Doodle"</string>
    <string name="duotone" msgid="8145893940788467106">"Duo-toni"</string>
    <string name="facelift" msgid="6205748523156172637">"Face Glow"</string>
    <string name="facetan" msgid="4412831806626044111">"Uso Tan"</string>
    <string name="filllight" msgid="2644989991700022526">"Jaza Mwangaza"</string>
    <string name="fisheye" msgid="6037488646928998921">"Fisheye"</string>
    <string name="flip" msgid="2357692401826287480">"Flipu"</string>
    <string name="grain" msgid="7487585304579789098">"Nafaka ya Filamu"</string>
    <string name="grayscale" msgid="7641563843060945228">"B &amp; W"</string>
    <string name="highlight" msgid="3902653944386623972">"Angazisho"</string>
    <string name="lomoish" msgid="1270032154357186736">"Lomo"</string>
    <string name="negative" msgid="1985508917342811252">"Negativu"</string>
    <string name="posterize" msgid="4139212359561383385">"Weka kwenye bango"</string>
    <string name="redeye" msgid="4958448806369928239">"Jicho Jekundu"</string>
    <string name="rotate" msgid="6607597269792373083">"Zungusha"</string>
    <string name="saturation" msgid="8621322012271169931">"Yenye maji"</string>
    <string name="sepia" msgid="7978093531824705601">"Rangi ya Ngisi"</string>
    <string name="shadow" msgid="8235188588101973090">"Vivuli"</string>
    <string name="sharpen" msgid="8449662378104403230">"Punguza"</string>
    <string name="straighten" msgid="5217801513491493491">"Tiririsha"</string>
    <string name="temperature" msgid="1607987938521534517">"Joto"</string>
    <string name="tint" msgid="154435943863418434">"Tinti"</string>
    <string name="vignette" msgid="7648125924662648282">"Vignette"</string>
    <string name="crop_tooltip" msgid="8794037869706891710">"Kokota viweka alama ili kupuna picha"</string>
    <string name="doodle_tooltip" msgid="2902117272374362915">"Chora kwenye picha ku doodle"</string>
    <string name="flip_tooltip" msgid="2700943256714731737">"Kokota picha ili kuiflipu"</string>
    <string name="redeye_tooltip" msgid="4183695928490874014">"Gonga kwenye macho mekundu ili kuyaondoa"</string>
    <string name="rotate_tooltip" msgid="7008602969130734229">"kokota picha ili kuizungusha"</string>
    <string name="straighten_tooltip" msgid="4846317027139212339">"Kokota picha ili kuizungusha"</string>
</resources>
