<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2007 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="app_name" msgid="8095131950334945205">"Calculatur"</string>
    <string name="error" msgid="9197457880925804499">"Errur"</string>
    <string name="digit0" msgid="8069590963464434135">"0"</string>
    <string name="digit1" msgid="8535041374797804029">"1"</string>
    <string name="digit2" msgid="8977354203154316247">"2"</string>
    <string name="digit3" msgid="148544090755132760">"3"</string>
    <string name="digit4" msgid="2199490603838247678">"4"</string>
    <string name="digit5" msgid="7568514524384173087">"5"</string>
    <string name="digit6" msgid="6705952561049362551">"6"</string>
    <string name="digit7" msgid="658125644218958447">"7"</string>
    <string name="digit8" msgid="3134686906411558886">"8"</string>
    <string name="digit9" msgid="765379157698748031">"9"</string>
    <string name="del" msgid="6248896117422989693">"C"</string>
    <!-- outdated translation 895929542545793094 -->     <string name="clear" msgid="8103610981407459768">"AC"</string>
    <string name="sin" msgid="6793866152659175277">"sin"</string>
    <string name="cos" msgid="6901841853098114414">"cos"</string>
    <string name="tan" msgid="7957459816738554960">"tan"</string>
    <string name="e" msgid="1377847800971731483">"e"</string>
    <string name="ln" msgid="6888500680285403344">"ln"</string>
    <string name="lg" msgid="873623857385418182">"log"</string>
    <string name="leftParen" msgid="4850643713953092099">"("</string>
    <string name="rightParen" msgid="3177971166159324016">")"</string>
    <string name="basic" msgid="7691469861698059753">"Funcziuns da basa"</string>
    <string name="advanced" msgid="7122495413742976492">"Funcziuns avanzadas"</string>
    <string name="clear_history" msgid="8458043980601165012">"Stizzar la cronologia"</string>
    <!-- no translation found for text_copied_toast (5801480710472541833) -->
    <skip />
    <!-- no translation found for leftParenDesc (8446428211982811379) -->
    <skip />
    <!-- no translation found for rightParenDesc (9133691645148976523) -->
    <skip />
    <!-- no translation found for factorialDesc (9217024218012761574) -->
    <skip />
    <!-- no translation found for lnDesc (1052579286300842270) -->
    <skip />
    <!-- no translation found for lgDesc (6490920451513731160) -->
    <skip />
    <!-- no translation found for sqrtDesc (2247252128762219267) -->
    <skip />
    <!-- no translation found for divDesc (7442623079124315427) -->
    <skip />
    <!-- no translation found for mulDesc (9003016819648670694) -->
    <skip />
    <!-- no translation found for plusDesc (3145322700823848264) -->
    <skip />
    <!-- no translation found for minusDesc (5033462008907390900) -->
    <skip />
    <!-- no translation found for dotDesc (5253752241630161722) -->
    <skip />
    <!-- no translation found for powerDesc (9034898318444176910) -->
    <skip />
    <!-- no translation found for delDesc (8211175878012032240) -->
    <skip />
    <!-- no translation found for clearDesc (8015748901120751476) -->
    <skip />
    <!-- no translation found for tanDesc (2055554933130702423) -->
    <skip />
    <!-- no translation found for sinDesc (6563285042235077204) -->
    <skip />
    <!-- no translation found for cosDesc (4048942450207926538) -->
    <skip />
    <!-- no translation found for eDesc (6709583372168924068) -->
    <skip />
    <!-- no translation found for piDesc (8838151606775021517) -->
    <skip />
    <!-- no translation found for equalDesc (4164435100263313101) -->
    <skip />
    <!-- no translation found for operatorDescs:0 (7903565108986789641) -->
    <!-- no translation found for operatorDescs:1 (1688156211934459752) -->
    <!-- no translation found for operatorDescs:2 (6664829080840305856) -->
    <!-- no translation found for operatorDescs:3 (2880199289575144121) -->
    <!-- no translation found for operatorDescs:4 (4398774906998694599) -->
    <!-- no translation found for operatorDescs:5 (1791869359785943266) -->
    <!-- no translation found for operatorDescs:6 (6833720171974254459) -->
    <!-- no translation found for operatorDescs:7 (2646574635189709515) -->
    <!-- no translation found for operatorDescs:8 (3487936384379753697) -->
    <!-- no translation found for operatorDescs:9 (8608534484562258856) -->
    <!-- no translation found for operatorDescs:10 (8243291093478001971) -->
    <!-- no translation found for operatorDescs:11 (4528629783180278651) -->
    <!-- no translation found for operatorDescs:12 (4050948027333760159) -->
    <!-- no translation found for operatorDescs:13 (8716478860618683850) -->
    <!-- no translation found for operatorDescs:14 (3203211483560707480) -->
    <!-- no translation found for operatorDescs:15 (8587490959348493065) -->
    <!-- no translation found for operatorDescs:16 (8134315487552198394) -->
</resources>
