<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2011 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="prompt" msgid="3183836924226407828">"Konektatzeko eskaera"</string>
    <string name="warning" msgid="809658604548412033">"<xliff:g id="APP">%s</xliff:g> aplikazioak VPN bidezko konexioa ezarri nahi du sareko trafikoa kontrolatzeko. Iturburua fidagarria bada bakarrik baimendu. &lt;br /&gt; &lt;br /&gt; VPN konexioa aktibo dagoenean, &lt;img src=vpn_icon /&gt; agertuko da pantailaren goialdean."</string>
    <string name="legacy_title" msgid="192936250066580964">"VPN sarera konektatuta dago"</string>
    <string name="session" msgid="6470628549473641030">"Saioa:"</string>
    <string name="duration" msgid="3584782459928719435">"Iraupena:"</string>
    <string name="data_transmitted" msgid="7988167672982199061">"Bidalita:"</string>
    <string name="data_received" msgid="4062776929376067820">"Jasota:"</string>
    <string name="data_value_format" msgid="2192466557826897580">"<xliff:g id="NUMBER_0">%1$s</xliff:g> byte / <xliff:g id="NUMBER_1">%2$s</xliff:g> pakete"</string>
    <!-- no translation found for always_on_disconnected_title (1906740176262776166) -->
    <skip />
    <!-- no translation found for always_on_disconnected_message (555634519845992917) -->
    <skip />
    <!-- no translation found for always_on_disconnected_message_lockdown (4232225539869452120) -->
    <skip />
    <!-- no translation found for always_on_disconnected_message_separator (3310614409322581371) -->
    <skip />
    <!-- no translation found for always_on_disconnected_message_settings_link (6172280302829992412) -->
    <skip />
    <string name="configure" msgid="4905518375574791375">"Konfiguratu"</string>
    <string name="disconnect" msgid="971412338304200056">"Deskonektatu"</string>
    <!-- no translation found for open_app (3717639178595958667) -->
    <skip />
    <!-- no translation found for dismiss (6192859333764711227) -->
    <skip />
</resources>
