<?xml version="1.0" encoding="UTF-8"?>
<!--

    Licensed to the Apache Software Foundation (ASF) under one
    or more contributor license agreements.  See the NOTICE file
    distributed with this work for additional information
    regarding copyright ownership.  The ASF licenses this file
    to you 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.
-->
<resource xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <property key="ContactListType.description.ANNOUNCEMENT">
        <value xml:lang="en">Announcement</value>
        <value xml:lang="es">Anuncio</value>
        <value xml:lang="fr">Annonce</value>
        <value xml:lang="it">Annunci</value>
        <value xml:lang="ja">告知</value>
        <value xml:lang="nl">Aankondiging</value>
        <value xml:lang="pt_BR">Anúncio</value>
        <value xml:lang="ro">Anunturi</value>
        <value xml:lang="th">การประกาศ</value>
        <value xml:lang="vi">Quảng bá</value>
        <value xml:lang="zh">声明</value>
        <value xml:lang="zh_TW">聲明</value>
    </property>
    <property key="ContactListType.description.MARKETING">
        <value xml:lang="en">Marketing</value>
        <value xml:lang="es">Marketing</value>
        <value xml:lang="fr">Marketing</value>
        <value xml:lang="it">Vendite</value>
        <value xml:lang="ja">マーケティング</value>
        <value xml:lang="nl">Marketing</value>
        <value xml:lang="pt_BR">Marketing</value>
        <value xml:lang="ro">Vanzari</value>
        <value xml:lang="th">การตลาด</value>
        <value xml:lang="vi">Tiếp thị</value>
        <value xml:lang="zh">市场宣传</value>
        <value xml:lang="zh_TW">行銷</value>
    </property>
    <property key="ContactListType.description.NEWSLETTER">
        <value xml:lang="en">Newsletter</value>
        <value xml:lang="es">Carta de información</value>
        <value xml:lang="fr">Lettre d'information</value>
        <value xml:lang="it">Newsletter</value>
        <value xml:lang="ja">ニュースレター</value>
        <value xml:lang="nl">Nieuwsbrief</value>
        <value xml:lang="pt_BR">Mala direta</value>
        <value xml:lang="ro">Noutati</value>
        <value xml:lang="th">จดหมายข่าว</value>
        <value xml:lang="vi">Nhận tin mới</value>
        <value xml:lang="zh">新闻</value>
        <value xml:lang="zh_TW">新聞</value>
    </property>
    <property key="SegmentGroupType.description.MARKET_SEGMENT">
        <value xml:lang="en">Market Segment</value>
        <value xml:lang="es">Segmento de marketing</value>
        <value xml:lang="fr">Segment de marché</value>
        <value xml:lang="it">Segmento di Mercato</value>
        <value xml:lang="ja">市場セグメント</value>
        <value xml:lang="nl">Marktsegment</value>
        <value xml:lang="pt_BR">Segmento de marketing</value>
        <value xml:lang="ro">Segment de Piata</value>
        <value xml:lang="th">ส่วนของการตลาด</value>
        <value xml:lang="vi">Phân khúc thị trường</value>
        <value xml:lang="zh">市场分区</value>
        <value xml:lang="zh_TW">行銷分區</value>
    </property>
    <property key="SegmentGroupType.description.SALES_SEGMENT">
        <value xml:lang="en">Sales Segment</value>
        <value xml:lang="es">Segmento de ventas</value>
        <value xml:lang="fr">Segment de vente</value>
        <value xml:lang="it">Segmento di Vendita</value>
        <value xml:lang="ja">販売セグメント</value>
        <value xml:lang="nl">Salessegment</value>
        <value xml:lang="pt_BR">Segmento de vendas</value>
        <value xml:lang="ro">Segment de Vanzare</value>
        <value xml:lang="th">ส่วนของการขาย</value>
        <value xml:lang="vi">Phân khúc kinh doanh</value>
        <value xml:lang="zh">销售分区</value>
        <value xml:lang="zh_TW">銷售分區</value>
    </property>
    <property key="TrackingCodeType.description.ACCESS">
        <value xml:lang="en">Access Code</value>
        <value xml:lang="fr">Code d'accès</value>
        <value xml:lang="it">Codice di accesso</value>
        <value xml:lang="ja">アクセスコード</value>
        <value xml:lang="pt_BR">Código de acesso</value>
        <value xml:lang="vi">Mã truy nhập</value>
        <value xml:lang="zh">访问码</value>
        <value xml:lang="zh_TW">存取碼</value>
    </property>
    <property key="TrackingCodeType.description.EXTERNAL">
        <value xml:lang="en">External</value>
        <value xml:lang="es">Externo</value>
        <value xml:lang="fr">Externe</value>
        <value xml:lang="it">Esterno</value>
        <value xml:lang="ja">外部</value>
        <value xml:lang="nl">Extern</value>
        <value xml:lang="pt_BR">Externo</value>
        <value xml:lang="ro">Extern</value>
        <value xml:lang="th">ภายนอก</value>
        <value xml:lang="vi">Hệ thống ngoài</value>
        <value xml:lang="zh">外部</value>
        <value xml:lang="zh_TW">外部</value>
    </property>
    <property key="TrackingCodeType.description.INTERNAL">
        <value xml:lang="en">Internal</value>
        <value xml:lang="es">Interno</value>
        <value xml:lang="fr">Interne</value>
        <value xml:lang="it">Interno</value>
        <value xml:lang="ja">内部</value>
        <value xml:lang="nl">Intern</value>
        <value xml:lang="pt_BR">Interno</value>
        <value xml:lang="ro">Intern</value>
        <value xml:lang="th">ภายใน</value>
        <value xml:lang="vi">Nội bộ</value>
        <value xml:lang="zh">内部</value>
        <value xml:lang="zh_TW">內部</value>
    </property>
    <property key="TrackingCodeType.description.PARTNER_MGD">
        <value xml:lang="en">Partner Managed</value>
        <value xml:lang="es">Partner</value>
        <value xml:lang="fr">Géré par un tiers</value>
        <value xml:lang="it">Gestito da un Partner</value>
        <value xml:lang="ja">パートナー</value>
        <value xml:lang="nl">Partner</value>
        <value xml:lang="pt_BR">Parceiro</value>
        <value xml:lang="ro">Gestit de un Partener</value>
        <value xml:lang="th">หุ้นส่วนการควบคุม</value>
        <value xml:lang="vi">Đối tác</value>
        <value xml:lang="zh">已管理的伙伴</value>
        <value xml:lang="zh_TW">夥伴</value>
    </property>
</resource>
