<?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:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <!-- Don't use roaming icon for considered operators -->
    <string-array translatable="false" name="config_operatorConsideredNonRoaming">
        <item>302</item>
    </string-array>

    <!-- Values for GPS configuration (Bell) -->
    <string-array translatable="false" name="config_gpsParameters">
        <item>SUPL_HOST=supl.google.com</item>
        <item>SUPL_PORT=7275</item>
        <item>XTRA_SERVER_1=http://xtrapath1.izatcloud.net/xtra3grc.bin</item>
        <item>XTRA_SERVER_2=http://xtrapath2.izatcloud.net/xtra3grc.bin</item>
        <item>XTRA_SERVER_3=http://xtrapath3.izatcloud.net/xtra3grc.bin</item>
        <item>NTP_SERVER=north-america.pool.ntp.org</item>
        <item>SUPL_MODE=1</item>
        <item>SUPL_VER=0x20000</item>
        <item>LPP_PROFILE=2</item>
        <item>NMEA_PROVIDER=0</item>
        <item>A_GLONASS_POS_PROTOCOL_SELECT=0</item>
        <item>ERR_ESTIMATE=0</item>
        <item>INTERMEDIATE_POS=0</item>
        <item>GPS_LOCK=0</item>
        <item>SUPL_ES=0</item>
    </string-array>
</resources>
