text: "use strict"
  
  /**
   * When adding new locales, please maintain alphabetic ordering.
   * "en" must remain in the first position.
   * Tests will fail otherwise.
   */
  
  module.exports = {
    // supported locales
    _locales: [
      "en",
      "ar",
      "ca",
      "cs",
      "de",
      "es",
      "fr",
      "hu",
      "id",
      "it",
      "ja",
      "ko",
      "nb",
      "nl",
      "pl",
      "pt-BR",
      "ru",
      "sk",
      "sv",
      "th",
      "zh",
      "zh-TW",
    ],
  
    // shared defines
    _defs: {
      n: "{{var n = e.params.limit;}}",
      mPlural: {
        // plural for the words item (element) and character
        en: "{{? n!=1 }}s{{?}}",
        ar: "{{? n!=1 }}عناصر{{?}}",
        ca: "{{? n!=1 }}s{{?}}",
        cs: "{{? n>=2 && n<=4 }}ky{{?? n!=1 }}ek{{??}}ků{{?}}",
        de: "{{? n!=1 }}e{{?}}",
        es: "{{? n!=1 }}s{{?}}", //only item (element)
        fr: "{{? n!=1 }}s{{?}}",
        it: "{{? n==1 }}o{{??}}i{{?}}",
        nb: "{{? n!=1 }}er{{?}}",
        nl: "{{? n!=1 }}s{{?}}",
        pl: "{{? n==1 }}u{{??}}ów{{?}}",
        "pt-BR": "{{? n!=1 }}s{{?}}",
        ru: "{{? n>=2 && n<=4 }}а{{?? n!=1 }}ов{{?}}",
        sk: "{{? n==1 }}ok{{??}}kov{{?}}",
        sv: "{{? n!=1 }}er{{?}}",
      },
      propPlural: {
        // plural for the word property (attribute)
        en: "{{? n==1 }}y{{??}}ies{{?}}",
        ar: "{{? n!=1 }}خصائص{{?}}",
        ca: "{{? n!=1 }}s{{?}}",
        cs: "{{? n>=2 && n<=4 }}ky{{?? n!=1 }}ek{{??}}ka{{?}}",
        de: "{{? n!=1 }}e{{?}}",
        es: "{{? n!=1 }}es{{?}}",
        fr: "{{? n!=1 }}s{{?}}",
        hu: "{{? n!=1 }}i{{?}}",
        it: "{{? n==1 }}o{{??}}i{{?}}",
        nb: "{{? n==1 }}en{{??}}er{{?}}",
        nl: "{{? n!=1 }}pen{{?}}",
        pl: "{{? n==1 }}e{{??}}a{{?}}",
        "pt-BR": "{{? n!=1 }}s{{?}}",
        ru: "{{? n==1 }}е{{?? n>=2 && n<=4 }}я{{??}}ей{{?}}",
        sk: "{{? n>=2 && n<=4 }}ky{{?? n!=1 }}iek{{??}}ka{{?}}",
        sv: "{{? n!=1 }}er{{?}}",
      },
    },
  
    // error messages
    _defaultMessage: {
      en: 'must pass "{{=e.keyword}}" keyword validation',
      ar: 'يجب أن تمرر كلمة التحقق المفتاحية "{{=e.keyword}}"',
      ca: 'ha de passar la validació de la clau "{{=e.keyword}}"',
      cs: 'musí vyhovět "{{=e.keyword}}" validaci',
      de: 'muss die Validierung "{{=e.keyword}}" bestehen',
      es: 'debe pasar la validación de palabra clave "{{=e.keyword}}"',
      fr: 'doit être valide selon le critère "{{=e.keyword}}"',
      id: 'harus lulus validasi kata kunci "{{=e.keyword}}"',
      it: 'deve essere valido secondo il criterio "{{=e.keyword}}"',
      ko: '"{{=e.keyword}}"키워드 검사를 통과해야 합니다',
      nb: "må samsvare med valideringen for {{=e.keyword}}",
      nl: 'moet sleutelwoord validatie "{{=e.keyword}}" doorstaan',
      pl: 'powinien przejść walidację "{{=e.keyword}}"',
      "pt-BR": 'deve passar a validação da keyword "{{=e.keyword}}"',
      ru: 'должно соответствовать правилу "{{=e.keyword}}"',
      sk: 'musí splniť "{{=e.keyword}}" validáciu',
      sv: 'bör passera "{{=e.keyword}}" nyckelord validering',
      th: 'ต้องผ่านคีย์เวิร์ด "{{=e.keyword}}"',
      zh: '应当通过 "{{=e.keyword}} 关键词校验"',
      "zh-TW": '應該通過 "{{=e.keyword}} 關鍵詞檢驗"',
    },
  
    "false schema": {
      en: "boolean schema is false",
      ar: "المخطط المنطقي غير صحيح",
      ca: "l’esquema és fals",
      cs: "schéma je false",
      de: "boolesches Schema ist falsch",
      es: "el esquema és falso",
      fr: 'le schema est "false"',
      id: "skema boolean salah",
      it: "lo schema booleano è falso",
      ko: "boolean 스키마는 올바르지 않습니다",
      nb: "boolsk schema er usannt",
      nl: "boolean schema is fout",
      "pt-BR": 'o schema booleano é "false"',
      ru: "схема равна false",
      sk: "schéma je false",
      sv: "boolean schema är falskt",
      th: "schema เป็น false",
      zh: "布尔模式出错",
      "zh-TW": "布林模式不正確",
    },
    additionalItems: {
      _keywords: ["items"], // for JSON Schema draft-2020-12
      en: "{{#def.n}}must NOT have more than {{=n}} item{{#def.mPlural}}",
      ar: "{{#def.n}} يجب أن لا يحوي أكثر من {{=n}} عنصر",
      ca: "{{#def.n}}no ha de tenir més de {{=n}} element{{#def.mPlural}}",
      cs: "{{#def.n}}nemůže mít víc, než {{=n}} prv{{#def.mPlural}}",
      de: "{{#def.n}}darf nicht mehr als {{=n}} Element{{#def.mPlural}} enthalten",
      es: "{{#def.n}}no debe tener más de {{=n}} elemento{{#def.mPlural}}",
      fr: "{{#def.n}}ne doit pas contenir plus de {{=n}} élémént{{#def.mPlural}}",
      hu: "{{#def.n}}nem lehet több, mint {{=n}} eleme",
      id: "{{#def.n}} tidak boleh memiliki lebih dari {{=n}} item",
      it: "{{#def.n}}non dovrebbe avere più di {{=n}} element{{#def.mPlural}}",
      ja: "{{#def.n}}は{{=n}}以上あってはいけない",
      ko: "{{#def.n}} 항목은 아이템을 {{=n}}개 이상 가질 수 없습니다",
      nb: "{{#def.n}}kan ikke ha mer enn {{=n}} element{{#def.mPlural}}",
      nl: "{{#def.n}}mag niet meer dan {{=n}} item{{#def.mPlural}} bevatten",
      pl: "{{#def.n}}nie powinien mieć więcej niż {{=n}} element{{#def.mPlural}}",
      "pt-BR": "não são permitidos itens adicionais (mais do que {{=n}})",
      ru: "{{#def.n}}должно иметь не более, чем {{=n}} элемент{{#def.mPlural}}",
      sk: "{{#def.n}}nemôže obsahovať viac, než {{=n}} prv{{#def.mPlural}}",
      sv: "{{#def.n}}borde ha fler än {{=n}} sak{{#def.mPlural}}",
      th: "{{#def.n}}ต้องมีสมาชิกไม่เกิน {{=n}} ตัว",
      zh: "{{#def.n}}不允许超过{{=n}}个元素",
      "zh-TW": "{{#def.n}}不可以超過{{=n}}個元素",
    },
    additionalProperties: {
      en: "must NOT have additional properties",
      ar: "يجب أن لا يحوي خصائص إضافية",
      ca: "no ha de tenir propietats addicionals",
      cs: "nemůže mít další položky",
      de: "darf keine zusätzlichen Attribute haben",
      es: "no debe tener propiedades adicionales",
      fr: "ne doit pas contenir de propriétés additionnelles",
      hu: "nem lehetnek további elemei",
      id: "tidak boleh memiliki properti tambahan",
      it: "non deve avere attributi aggiuntivi",
      ja: "追加してはいけない",
      ko: "추가적인 속성은 허용되지 않습니다",
      nb: "kan ikke ha flere egenskaper",
      nl: "mag geen extra eigenschappen bevatten",
      pl: "nie powinien zawierać dodatkowych pól",
      "pt-BR": "não são permitidas propriedades adicionais",
      ru: "не должно иметь дополнительных полей",
      sk: "nemôže obsahovať ďalšie položky",
      sv: "borde inte ha fler egenskaper",
      th: "ต้องไม่มี property อื่นๆ นอกเหนีอจากที่กำหนดไว้",
      zh: "不允许有额外的属性",
      "zh-TW": "不可以有額外的屬性",
    },
    anyOf: {
      en: 'must match a schema in "anyOf"',
      ar: 'يجب أن يوافق أحد المخططات الموجودة في "anyOf"',
      ca: 'ha de coincidir amb algun esquema definit a "anyOf"',
      cs: 'musí vyhovět alespoň jednomu schématu v "anyOf"',
      de: 'muss einem der Schemata in "anyOf" entsprechen',
      es: 'debe coincidir con algún esquema en "anyOf"',
      fr: 'doit correspondre à un schéma de "anyOf"',
      hu: 'meg kell feleljen legalább egy "anyOf" alaknak',
      id: 'harus cocok dengan beberapa skema pada "anyOf"',
      it: 'deve corrispondere ad uno degli schema in "anyOf"',
      ja: '"anyOf"のスキーマとマッチしなくてはいけない',
      ko: '"anyOf"의 스키마와 일치해야 합니다',
      nb: 'må samsvare med et schema i "anyOf"',
      nl: 'moet overeenkomen met een schema in "anyOf"',
      pl: 'powinien pasować do wzoru z sekcji "anyOf"',
      "pt-BR": 'os dados não correspondem a nenhum schema de "anyOf"',
      ru: 'должно соответствовать одной их схем в "anyOf"',
      sk: 'musí splňovať aspoň jednu zo schém v "anyOf"',
      sv: 'borde matcha något schema i "anyOf"',
      th: 'ต้องตรงกับหนึ่งใน schema ที่กำหนดไว้ใน "anyOf"',
      zh: "数据应为 anyOf 所指定的其中一个",
      "zh-TW": "不符合 anyOf 指定的模式",
    },
    dependencies: {
      _keywords: ["dependentRequired"],
      _defs: {
        n: "{{var n = e.params.depsCount;}}",
      },
      en:
        "{{#def.n}}must have propert{{#def.propPlural}} {{=e.params.deps}} when property {{=e.params.property}} is present",
      ar:
        "{{#def.n}} يجب أن يحوي الخصائص {{=e.params.deps}} عندما تكون الخاصية {{=e.params.property}} موجودة",
      ca:
        "{{#def.n}}ha de contenir la propietat{{#def.propPlural}} {{=e.params.deps}} quan la propietat {{=e.params.property}} és present",
      cs:
        "{{#def.n}}musí mít polož{{#def.propPlural}}: {{=e.params.deps}}, pokud obsahuje {{=e.params.property}}",
      de:
        "{{#def.n}}muss Attribut{{#def.propPlural}} {{=e.params.deps}} aufweisen, wenn Attribut {{=e.params.property}} gesetzt ist",
      es:
        "{{#def.n}}debe contener la{{#def.mPlural}} propiedad{{#def.propPlural}} {{=e.params.deps}} cuando la propiedad {{=e.params.property}} se encuentra presente",
      fr:
        "{{#def.n}}doit avoir la propriété {{=e.params.deps}} quand la propriété {{=e.params.property}} est présente",
      hu:
        "{{#def.n}}-nak kell legyen{{? n>1 }}ek{{?}} a következő tulajdonsága{{#def.propPlural}}: {{=e.params.deps}}, ha van {{=e.params.property}} tulajdonsága",
      id:
        "{{#def.n}} harus memiliki properti {{=e.params.deps}} ketika properti {{=e.params.property}} hadir",
      it:
        "{{#def.n}}dovrebbe avere {{? n==1 }}l'{{??}}gli {{?}}attribut{{#def.propPlural}} {{=e.params.deps}} quando l'attributo {{=e.params.property}} è presente",
      ja: "{{=e.params.property}}がある場合、{{#def.n}}は{{=e.params.deps}}をつけなければいけない",
      ko: "{{#def.n}}{{=e.params.property}}속성이 있는 경우, {{=e.params.deps}} 속성이 있어야합니다",
      nb:
        "{{#def.n}}må ha egenskapen{{? n != 1}}e{{?}} {{=e.params.deps}} når egenskapen {{=e.params.property}} er angitt",
      nl:
        "{{#def.n}}moet de eigenschap{{#def.propPlural}} {{=e.params.deps}} bevatten als {{=e.params.property}} is gedefinieerd",
      pl:
        "{{#def.n}}powinien zawierać pol{{#def.propPlural}} {{=e.params.deps}} kiedy pole {{=e.params.property}} jest obecne",
      "pt-BR":
        "{{#def.n}} deve ter propriedade{{#def.propPlural}} {{=e.params.deps}} quando a propriedade {{=e.params.property}} estiver presente",
      ru:
        "{{#def.n}}должно иметь пол{{? n==1 }}е{{??}}я{{?}} {{=e.params.deps}}, когда присутствует поле {{=e.params.property}}",
      sk:
        "{{#def.n}} musí obsahovať polož{{#def.propPlural}}: {{=e.params.deps}}, ak obsahuje {{=e.params.property}}",
      sv:
        "{{#def.n}}borde ha egenskap{{#def.propPlural}} {{=e.params.deps}} när egenskap {{=e.params.property}} finns tillgängligt",
      th:
        "{{#def.n}}เมื่อมี property {{=e.params.property}} แล้วจะต้องมี property {{=e.params.deps}} ด้วย",
      zh: "{{#def.n}}应当拥有属性{{=e.params.property}}的依赖属性{{=e.params.deps}}",
      "zh-TW": "{{#def.n}}應該要有屬性{{=e.params.property}}的依賴屬性{{=e.params.deps}}",
    },
    enum: {
      en: "must be equal to one of the allowed values",
      ar: "قيمة هذا الحقل يجب أن تكون مساوية لأحد القيم المعرفة مسبقاً",
      ca: "ha de ser igual a un dels valors predefinits",
      cs: "musí být rovno jedné hodnotě z výčtu",
      de: "muss einem der vorgegebenen Werte entsprechen",
      es: "deber ser igual a uno de los valores predefinidos",
      fr: "doit être égal à une des valeurs prédéfinies",
      hu: "egyenlő kell legyen valamely előre meghatározott értékkel",
      id: "harus sama dengan salah satu dari nilai yang telah ditentukan",
      it: "deve essere uguale ad uno dei valori consentiti",
      ja: "事前に定義された値のいずれかに等しくなければいけない",
      ko: "미리 정의된 값중 하나여야 합니다",
      nb: "må være lik en av de forhåndsdefinerte verdiene",
      nl: "moet overeenkomen met één van de voorgedefinieerde waarden",
      pl: "powinien być równy jednej z predefiniowanych wartości",
      "pt-BR": "deve ser igual a um dos valores permitidos",
      ru: "должно быть равно одному из разрешенных значений",
      sk: "musí byť jedna z definovaných hodnôt",
      sv: "borde vara ekvivalent med en av dess fördefinierade värden",
      th: "ต้องตรงกับหนึ่งในค่าที่กำหนดไว้",
      zh: "应当是预设定的枚举值之一",
      "zh-TW": "應該要在預設的值之中",
    },
    format: {
      en: 'must match format "{{=e.params.format}}"',
      ar: 'يجب أن يوافق الصيغة "{{=e.params.format}}"',
      ca: 'ha de coincidir amb el format "{{=e.params.format}}"',
      cs: 'musí být ve formátu "{{=e.params.format}}"',
      de: 'muss diesem Format entsprechen: "{{=e.params.format}}"',
      es: 'debe coincidir con el formato "{{=e.params.format}}"',
      fr: 'doit correspondre au format "{{=e.params.format}}"',
      hu: 'meg kell feleljen a következő formátumnak: "{{=e.params.format}}"',
      id: 'harus cocok dengan format "{{=e.params.format}}"',
      it: 'deve corrispondere al formato "{{=e.params.format}}"',
      ja: '"{{=e.params.format}}"形式に揃えなければいけない',
      ko: '"{{=e.params.format}}" 포맷과 일치해야 합니다',
      nb: 'må stemme overens med formatet "{{=e.params.format}}"',
      nl: 'moet overeenkomen met het volgende formaat: "{{=e.params.format}}"',
      pl: 'powinien zgadzać się z formatem "{{=e.params.format}}"',
      "pt-BR": 'deve corresponder ao formato "{{=e.params.format}}"',
      ru: 'должно соответствовать формату "{{=e.params.format}}"',
      sk: 'musí obsahovať formát "{{=e.params.format}}"',
      sv: 'borde matcha formatet "{{=e.params.format}}"',
      th: 'ต้องเป็นรูปแบบ "{{=e.params.format}}"',
      zh: '应当匹配格式 "{{=e.params.format}}"',
      "zh-TW": "應該要符合{{=e.params.format}}格式",
    },
    maximum: {
      _keywords: ["exclusiveMaximum"],
      _defs: {
        c: '{{var cond = e.params.comparison + " " + e.params.limit;}}',
      },
      en: "{{#def.c}}must be {{=cond}}",
      ar: "{{#def.c}} يجب أن يكون {{=cond}}",
      ca: "{{#def.c}}ha de ser {{=cond}}",
      cs: "{{#def.c}}musí být {{=cond}}",
      de: "{{#def.c}}muss {{=cond}} sein",
      es: "{{#def.c}}debe ser {{=cond}}",
      fr: "{{#def.c}}doit être {{=cond}}",
      hu: "{{#def.c}}kell legyen {{=cond}}",
      id: "{{#def.c}}harus {{=cond}}",
      it: "{{#def.c}}deve essere {{=cond}}",
      ja: "{{#def.c}}{{=cond}}でなければいけない",
      ko: "{{#def.c}} {{=cond}} 이여야 합니다",
      nb: "{{#def.c}}må være {{=cond}}",
      nl: "{{#def.c}}moet {{=cond}} zijn",
      pl: "{{#def.c}}powinien być {{=cond}}",
      "pt-BR": "{{#def.c}}deve ser {{=cond}}",
      ru: "{{#def.c}}должно быть {{=cond}}",
      sk: "{{#def.c}}musí byť {{=cond}}",
      sv: "{{#def.c}}borde vara {{=cond}}",
      th: "{{#def.c}}ต้อง {{=cond}}",
      zh: "{{#def.c}}应当为 {{=cond}}",
      "zh-TW": "{{#def.c}}應該要 {{=cond}}",
    },
    minimum: {
      _keywords: ["exclusiveMinimum"],
      _defs: {
        c: '{{var cond = e.params.comparison + " " + e.params.limit;}}',
      },
      en: "{{#def.c}}must be {{=cond}}",
      ar: "{{#def.c}} يجب أن يكون {{=cond}}",
      ca: "{{#def.c}}ha de ser {{=cond}}",
      cs: "{{#def.c}}musí být {{=cond}}",
      de: "{{#def.c}}muss {{=cond}} sein",
      es: "{{#def.c}}debe ser {{=cond}}",
      fr: "{{#def.c}}doit être {{=cond}}",
      hu: "{{#def.c}}kell legyen {{=cond}}",
      id: "{{#def.c}}harus {{=cond}}",
      it: "{{#def.c}}deve essere {{=cond}}",
      ja: "{{#def.c}}{{=cond}}でなければいけない",
      ko: "{{#def.c}} {{=cond}} 이여야 합니다",
      nb: "{{#def.c}}må være {{=cond}}",
      nl: "{{#def.c}}moet {{=cond}} zijn",
      pl: "{{#def.c}}powinien być {{=cond}}",
      "pt-BR": "{{#def.c}}deve ser {{=cond}}",
      ru: "{{#def.c}}должно быть {{=cond}}",
      sk: "{{#def.c}}musí byť {{=cond}}",
      sv: "{{#def.c}}borde vara {{=cond}}",
      th: "{{#def.c}}ต้อง {{=cond}}",
      zh: "{{#def.c}}应当为 {{=cond}}",
      "zh-TW": "{{#def.c}}應該要 {{=cond}}",
    },
    maxItems: {
      en: "{{#def.n}}must NOT have more than {{=n}} item{{#def.mPlural}}",
      ar: "{{#def.n}} يجب أن لا يحوي أكثر من {{=n}} عنصر",
      ca: "{{#def.n}}no ha de tenir més de {{=n}} ítem{{#def.mPlural}}",
      cs: "{{#def.n}}nesmí obsahovat víc než {{=n}} prv{{#def.mPlural}}",
      de: "{{#def.n}}darf nicht mehr als {{=n}} Element{{#def.mPlural}} haben",
      es: "{{#def.n}}no debe contener más de {{=n}} elemento{{#def.mPlural}}",
      fr: "{{#def.n}}ne doit pas contenir plus de {{=n}} élément{{#def.mPlural}}",
      hu: "{{#def.n}}nem lehet több, mint {{=n}} eleme",
      id: "{{#def.n}} tidak boleh memiliki lebih dari {{=n}} item",
      it: "{{#def.n}}non deve avere più di {{=n}} element{{#def.mPlural}}",
      ja: "{{#def.n}}は{{=n}}個以上であってはいけない",
      ko: "{{#def.n}}아이템이 최대 {{=n}}개이여야 합니다",
      nb: "{{#def.n}}kan ikke ha fler enn {{=n}} element{{#def.mPlural}}",
      nl: "{{#def.n}}mag niet meer dan {{=n}} item{{#def.mPlural}} bevatten",
      pl: "{{#def.n}}nie powinien mieć więcej niż {{=n}} element{{#def.mPlural}}",
      "pt-BR": "{{#def.n}}não deve ter mais que {{=n}} elemento{{#def.mPlural}}",
      ru: "{{#def.n}}должно иметь не более, чем {{=n}} элемент{{#def.mPlural}}",
      sk: "{{#def.n}}nesmie obsahovať viac než {{=n}} prv{{#def.mPlural}}",
      sv: "{{#def.n}}borde inte ha fler än {{=n}} sak{{#def.mPlural}}",
      th: "{{#def.n}}ต้องมีสมาชิกไม่เกิน {{=n}}",
      zh: "{{#def.n}}不应多于 {{=n}} 个项",
      "zh-TW": "{{#def.n}}不應該多於 {{=n}} 個",
    },
    minItems: {
      en: "{{#def.n}}must NOT have less than {{=n}} item{{#def.mPlural}}",
      ar: "{{#def.n}} يجب أن لا يحوي أقل من {{=n}} عنصر",
      ca: "{{#def.n}}no ha de tenir menys de {{=n}} ítem{{#def.mPlural}}",
      cs: "{{#def.n}}nesmí obsahovat méně než {{=n}} prv{{#def.mPlural}}",
      de: "{{#def.n}}darf nicht weniger als {{=n}} Element{{#def.mPlural}} haben",
      es: "{{#def.n}}no debe contener menos de {{=n}} elemento{{#def.mPlural}}",
      fr: "{{#def.n}}ne doit pas contenir moins de {{=n}} élément{{#def.mPlural}}",
      hu: "{{#def.n}}nem lehet kevesebb, mint {{=n}} eleme",
      id: "{{#def.n}} tidak boleh kurang dari {{=n}} item",
      it: "{{#def.n}}non deve avere meno di {{=n}} element{{#def.mPlural}}",
      ja: "{{#def.n}}は{{=n}}個以下であってはいけない",
      ko: "{{#def.n}}아이템이 최소 {{=n}}개이여야 합니다",
      nb: "{{#def.n}}kan ikke ha færre enn {{=n}} element{{#def.mPlural}}",
      nl: "{{#def.n}}mag niet minder dan {{=n}} item{{#def.mPlural}} bevatten",
      pl: "{{#def.n}}nie powinien mieć mniej niż {{=n}} element{{#def.mPlural}}",
      "pt-BR": "{{#def.n}}não deve ter menos que {{=n}} elemento{{#def.mPlural}}",
      ru: "{{#def.n}}должно иметь не менее, чем {{=n}} элемент{{#def.mPlural}}",
      sk: "{{#def.n}}nesmie obsahovať menej než {{=n}} prv{{#def.mPlural}}",
      sv: "{{#def.n}}borde inte ha färre än {{=n}} sak{{#def.mPlural}}",
      th: "{{#def.n}}ควรมีสมาชิกไม่น้อยกว่า {{=n}}",
      zh: "{{#def.n}}不应少于 {{=n}} 个项",
      "zh-TW": "{{#def.n}}不應該少於 {{=n}} 個",
    },
    maxLength: {
      en: "{{#def.n}}must NOT be longer than {{=n}} character{{#def.mPlural}}",
      ar: "{{#def.n}} يجب أن لا يحوي أكثر من {{=n}} محرف",
      ca: "{{#def.n}}no pot contenir més de {{=n}} caràcter{{#def.mPlural}}",
      cs: "{{#def.n}}nesmí být delší než {{=n}} zna{{? n>=2 && n<=4 }}ky{{?? n!=1 }}k{{??}}ků{{?}}",
      de: "{{#def.n}}darf nicht länger als {{=n}} Zeichen sein",
      es: "{{#def.n}}no debe contener más de {{=n}} caracter{{? n!=1 }}es{{?}}",
      fr: "{{#def.n}}ne doit pas dépasser {{=n}} caractère{{#def.mPlural}}",
      hu: "{{#def.n}}nem lehet hosszabb, mint {{=n}} szimbólum",
      id: "{{#def.n}} tidak boleh lebih dari {{=n}} karakter",
      it: "{{#def.n}}non deve essere più lungo di {{=n}} caratter{{? n==1 }}e{{??}}i{{?}}",
      ja: "{{#def.n}}は{{=n}}文字以上であってはいけない",
      ko: "{{#def.n}}최대 {{=n}}글자여야 합니다",
      nb: "{{#def.n}}kan ikke være lengre enn {{=n}} tegn",
      nl: "{{#def.n}}mag niet langer dan {{=n}} karakter{{#def.mPlural}} zijn",
      pl: "{{#def.n}}nie powinien być dłuższy niż {{=n}} znak{{? n!=1 }}ów{{?}}",
      "pt-BR": "{{#def.n}}não deve ser maior que {{=n}} caracter{{? n!=1 }}es{{?}}",
      ru: "{{#def.n}}должно быть не длиннее, чем {{=n}} символ{{#def.mPlural}}",
      sk: "{{#def.n}}nesmie byť dlhší než {{=n}} znak{{? n!=1 }}ov{{?}}",
      sv: "{{#def.n}}borde inte vara längre än {{=n}} tecken",
      th: "{{#def.n}}ต้องยาวไม่เกิน {{=n}} ตัวอักษร",
      zh: "{{#def.n}}不应多于 {{=n}} 个字符",
      "zh-TW": "{{#def.n}}不應該多於 {{=n}} 個字元",
    },
    minLength: {
      en: "{{#def.n}}must NOT be shorter than {{=n}} character{{#def.mPlural}}",
      ar: "{{#def.n}} يجب أن لا يحوي أقل من {{=n}} محرف",
      ca: "{{#def.n}}no pot contenir menys de {{=n}} caràcter{{#def.mPlural}}",
      cs: "{{#def.n}}nesmí být kratší než {{=n}} zna{{? n>=2 && n<=4 }}ky{{?? n!=1 }}k{{??}}ků{{?}}",
      de: "{{#def.n}}darf nicht kürzer als {{=n}} Zeichen sein",
      es: "{{#def.n}}no debe contener menos de {{=n}} caracter{{? n!=1 }}es{{?}}",
      fr: "{{#def.n}}ne doit pas faire moins de {{=n}} caractère{{#def.mPlural}}",
      hu: "{{#def.n}}nem lehet rövidebb, mint {{=n}} szimbólum",
      id: "{{#def.n}} tidak boleh lebih pendek dari {{=n}} karakter",
      it: "{{#def.n}}non deve essere meno lungo di {{=n}} caratter{{? n==1 }}e{{??}}i{{?}}",
      ja: "{{#def.n}}は{{=n}}文字以下であってはいけない",
      ko: "{{#def.n}}최소 {{=n}}글자여야 합니다",
      nb: "{{#def.n}}kan ikke være kortere enn {{=n}} tegn",
      nl: "{{#def.n}}mag niet korter dan {{=n}} karakter{{#def.mPlural}} zijn",
      pl: "{{#def.n}}nie powinien być krótszy niż {{=n}} znak{{? n!=1 }}ów{{?}}",
      "pt-BR": "{{#def.n}}não deve ser mais curta que {{=n}} caracter{{? n!=1 }}es{{?}}",
      ru: "{{#def.n}}должно быть не короче, чем {{=n}} символ{{#def.mPlural}}",
      sk: "{{#def.n}}nesmie byť kratší než {{=n}} znak{{? n!=1 }}ov{{?}}",
      sv: "{{#def.n}}borde inte vara kortare än {{=n}} tecken",
      th: "{{#def.n}}ต้องมีอย่างน้อย {{=n}} ตัวอักษร",
      zh: "{{#def.n}}不应少于 {{=n}} 个字符",
      "zh-TW": "{{#def.n}}不應該少於 {{=n}} 個字元",
    },
    maxProperties: {
      en: "{{#def.n}}must NOT have more than {{=n}} propert{{#def.propPlural}}",
      ar: "{{#def.n}} يجب أن لا يحوي أكثر من {{=n}} خصائص",
      ca: "{{#def.n}}no pot contenir més de {{=n}} propietat{{#def.mPlural}}",
      cs: "{{#def.n}}nesmí mít víc než {{=n}} polož{{#def.propPlural}}",
      de: "{{#def.n}}darf nicht mehr als {{=n}} Attribut{{#def.propPlural}} haben",
      es: "{{#def.n}}no debe contener más de {{=n}} propiedad{{#def.propPlural}}",
      fr: "{{#def.n}}ne doit pas contenir plus de {{=n}} propriété{{#def.propPlural}}",
      hu: "{{#def.n}}nem lehet több, mint {{=n}} tulajdonsága",
      id: "{{#def.n}} tidak boleh memiliki lebih dari {{=n}} properti",
      it: "{{#def.n}}non deve avere più di {{=n}} attribut{{#def.propPlural}}",
      ja: "{{#def.n}}は{{=n}}個以上のプロパティを有してはいけない",
      ko: "{{#def.n}}속성은 최대 {{=n}}개 이내여야 합니다",
      nb: "{{#def.n}}kan ikke ha mer enn {{=n}} egenskap{{#def.mPlural}}",
      nl: "{{#def.n}}mag niet meer dan {{=n}} eigenschap{{#def.propPlural}} bevatten",
      pl: "{{#def.n}}nie powinien zawierać więcej niż {{=n}} {{? n==1 }}pole{{??}}pól{{?}}",
      "pt-BR": "{{#def.n}}não deve ter mais que {{=n}} propriedade{{#def.propPlural}}",
      ru: "{{#def.n}}должно иметь не более, чем {{=n}} пол{{#def.propPlural}}",
      sk: "{{#def.n}}nesmie obsahovať viac než {{=n}} polož{{#def.propPlural}}",
      sv: "{{#def.n}}borde inte ha fler än {{=n}} egenskap{{#def.propPlural}}",
      th: "{{#def.n}}ต้องมี property ไม่เกิน {{=n}} ตัว",
      zh: "{{#def.n}}不应有多于 {{=n}} 个属性",
      "zh-TW": "{{#def.n}}不應該多於 {{=n}} 個屬性",
    },
    minProperties: {
      en: "{{#def.n}}must NOT have less than {{=n}} propert{{#def.propPlural}}",
      ar: "{{#def.n}} يجب أن لا يحوي أقل من {{=n}} خصائص",
      ca: "{{#def.n}}no pot contenir menys de {{=n}} propietat{{#def.mPlural}}",
      cs: "{{#def.n}}nesmí mít méně než {{=n}} polož{{#def.propPlural}}",
      de: "{{#def.n}}darf nicht weniger als {{=n}} Attribut{{#def.propPlural}} haben",
      es: "{{#def.n}}no debe contener menos de {{=n}} propiedad{{#def.propPlural}}",
      fr: "{{#def.n}}ne doit pas contenir moins de {{=n}} propriété{{#def.propPlural}}",
      hu: "{{#def.n}}nem lehet kevesebb, mint {{=n}} tulajdonsága",
      id: "{{#def.n}} tidak boleh kurang dari {{=n}} properti",
      it: "{{#def.n}}non deve avere meno di {{=n}} attribut{{#def.propPlural}}",
      ja: "{{#def.n}}は{{=n}}個以下のプロパティを有してはいけない",
      ko: "{{#def.n}}속성은 최소 {{=n}}개 이상이여야 합니다",
      nb: "{{#def.n}}kan ikke ha mindre enn {{=n}} egenskap{{#def.mPlural}}",
      nl: "{{#def.n}}mag niet minder dan {{=n}} eigenschap{{#def.propPlural}} bevatten",
      pl: "{{#def.n}}nie powinien zawierać mniej niż {{=n}} {{? n==1 }}pole{{??}}pól{{?}}",
      "pt-BR": "{{#def.n}}não deve ter menos que {{=n}} propriedade{{#def.propPlural}}",
      ru: "{{#def.n}}должно иметь не менее, чем {{=n}} пол{{#def.propPlural}}",
      sk: "{{#def.n}}nesmie obsahovať menej než {{=n}} polož{{#def.propPlural}}",
      sv: "{{#def.n}}borde inte ha färre än {{=n}} egenskap{{#def.propPlural}}",
      th: "{{#def.n}}ต้องมี property อย่างน้อย {{=n}} ตัว",
      zh: "{{#def.n}}不应有少于 {{=n}} 个属性",
      "zh-TW": "{{#def.n}}不應該少於 {{=n}} 個屬性",
    },
    multipleOf: {
      en: "must be a multiple of {{=e.params.multipleOf}}",
      ar: " يجب أن يحوي أكثر من {{=e.params.multipleOf}}",
      ca: "ha de ser múltiple de {{=e.params.multipleOf}}",
      cs: "musí být násobkem {{=e.params.multipleOf}}",
      de: "muss ein Vielfaches von {{=e.params.multipleOf}} sein",
      es: "debe ser múltiplo de {{=e.params.multipleOf}}",
      fr: "doit être un multiple de {{=e.params.multipleOf}}",
      hu: "a többszöröse kell legyen a következő számnak: {{=e.params.multipleOf}}",
      id: "harus merupakan kelipatan dari {{=e.params.multipleOf}}",
      it: "deve essere un multiplo di {{=e.params.multipleOf}}",
      ja: "{{=e.params.multipleOf}}の倍数でなければいけない",
      ko: "{{=e.params.multipleOf}}의 배수여야 합니다",
      nb: "må være et multiplum av {{=e.params.multipleOf}}",
      nl: "moet een veelvoud van {{=e.params.multipleOf}} zijn",
      pl: "powinien być wielokrotnością {{=e.params.multipleOf}}",
      "pt-BR": "deve ser múltiplo de {{=e.params.multipleOf}}",
      ru: "должно быть кратным {{=e.params.multipleOf}}",
      sk: "musí byť násobkom {{=e.params.multipleOf}}",
      sv: "borde vara en multipel av {{=e.params.multipleOf}}",
      th: "ต้องเป็นเลขที่หาร {{=e.params.multipleOf}} ลงตัว",
      zh: "应当是 {{=e.params.multipleOf}} 的整数倍",
      "zh-TW": "應該是 {{=e.params.multipleOf}} 的整數倍",
    },
    not: {
      en: 'must NOT be valid according to schema in "not"',
      ar: 'يجب أن يكون غير صحيح وفقاً للمخطط "not"',
      ca: 'no ha de ser vàlid d’acord amb l’esquema definit a "not"',
      cs: 'nesmí vyhovět schématu v "not"',
      de: 'muss dem in "not" angegebenen Schema widersprechen',
      es: 'no debe ser válido según el esquema en "not"',
      fr: 'est invalide selon le schéma "not"',
      hu: 'nem lehet érvényes a "not" alaknak megfelelően',
      id: 'tidak boleh valid sesuai dengan skema pada "not"',
      it: 'non deve essere valido in base allo schema di "non"',
      ja: '"not"のスキーマに従って有効としてはいけない',
      ko: '"not"스키마에 따라 유효하지 않아야 합니다',
      nb: 'kan ikke samsvare med schema i "not"',
      nl: 'mag niet overeenkomen met een schema in "not"',
      pl: 'nie powinien pasować do wzoru z sekcji "not"',
      "pt-BR": 'não deve ser valido segundo o schema em "not"',
      ru: 'должно не соответствовать схеме в "not"',
      sk: 'nesmie splňovať schému v "not"',
      sv: 'borde inte vara giltigt enligt schema i "not"',
      th: 'ต้องไม่ผ่าน schema ที่กำหนดไว้ใน "not"',
      zh: '不应当匹配 "not" schema',
      "zh-TW": '不應該符合 "not" schema',
    },
    oneOf: {
      en: 'must match exactly one schema in "oneOf"',
      ar: 'يجب أن يوافق مخطط واحد فقط موجود في "oneOf"',
      ca: 'ha de coincidir només amb un esquema definit a "oneOf"',
      cs: 'musí vyhovět právě jednomu schématu v "oneOf"',
      de: 'muss genau einem der Schemata in "oneOf" entsprechen',
      es: 'debe coincidir con un solo esquema en "oneOf"',
      fr: 'doit correspondre à exactement un schéma de "oneOf"',
      hu: 'meg kell feleljen pontosan egy "oneOf" alaknak',
      id: 'harus sama persis dengan satu skema pada "oneOf"',
      it: 'deve corrispondere esattamente ad uno degli schema in "oneOf"',
      ja: '"oneOf"のスキーマと完全に一致しなくてはいけない',
      ko: '"oneOf" 스키마중 하나와 정확하게 일치해야 합니다',
      nb: 'må samsvare med nøyaktig ett schema i "oneOf"',
      nl: 'moet overeenkomen met één schema in "oneOf"',
      pl: 'powinien pasować do jednego wzoru z sekcji "oneOf"',
      "pt-BR": 'deve corresponder exatamente com um schema em "oneOf"',
      ru: 'должно соответствовать в точности одной схемe в "oneOf"',
      sk: 'musí splňovať práve jednu schému v "oneOf"',
      sv: 'borde matcha exakt ett schema i "oneOf"',
      th: 'ต้องตรงกับ schema ตัวเดียวใน "oneOf" เท่านั้น',
      zh: '只能匹配一个 "oneOf" 中的 schema',
      "zh-TW": '只能符合一個 "oneOf" 中的 schema',
    },
    pattern: {
      en: 'must match pattern "{{=e.params.pattern}}"',
      ar: 'يجب أن يوافق النمط "{{=e.params.pattern}}"',
      ca: 'ha de coincidir amb el patró "{{=e.params.pattern}}"',
      cs: 'musí vyhovět regulárnímu výrazu "{{=e.params.pattern}}"',
      de: 'muss diesem Muster entsprechen: "{{=e.params.pattern}}"',
      es: 'debe coincidir con el patron "{{=e.params.pattern}}"',
      fr: 'doit correspondre au format "{{=e.params.pattern}}"',
      hu: 'meg kell feleljen a következő mintának: "{{=e.params.pattern}}"',
      id: 'harus cocok dengan pola "{{=e.params.pattern}}"',
      it: 'deve corrispondere al formato "{{=e.params.pattern}}"',
      ja: '"{{=e.params.pattern}}"のパターンと一致しなければいけない',
      ko: '"{{=e.params.pattern}}"패턴과 일치해야 합니다',
      nb: 'må samsvare med mønsteret "{{=e.params.pattern}}"',
      nl: 'moet overeenkomen met het volgende patroon: "{{=e.params.pattern}}"',
      pl: 'powinien zgadzać się ze wzorem "{{=e.params.pattern}}"',
      "pt-BR": 'deve corresponder ao padrão "{{=e.params.pattern}}"',
      ru: 'должно соответствовать образцу "{{=e.params.pattern}}"',
      sk: 'musí splňovať regulárny výraz "{{=e.params.pattern}}"',
      sv: 'borde matcha mönstret "{{=e.params.pattern}}"',
      th: 'ต้องตรงตาม pattern "{{=e.params.pattern}}"',
      zh: '应当匹配模式 "{{=e.params.pattern}}"',
      "zh-TW": '應該符合模式 "{{=e.params.pattern}}"',
    },
    required: {
      en: "must have required property {{=e.params.missingProperty}}",
      ar: "هذا الحقل إلزامي",
      ca: "ha de tenir la propietat requerida {{=e.params.missingProperty}}",
      cs: "musí obsahovat požadovanou položku {{=e.params.missingProperty}}",
      de: "muss das erforderliche Attribut {{=e.params.missingProperty}} enthalten",
      es: "debe tener la propiedad requerida {{=e.params.missingProperty}}",
      fr: "requiert la propriété {{=e.params.missingProperty}}",
      hu: "kell legyen {{=e.params.missingProperty}} tulajdonsága",
      id: "harus memiliki properti {{=e.params.missingProperty}}",
      it: "deve avere l'attributo obbligatorio {{=e.params.missingProperty}}",
      ja: "必要なプロパティ{{=e.params.missingProperty}}がなければいけない",
      ko: "{{=e.params.missingProperty}} 속성은 필수입니다",
      nb: "må ha den påkrevde egenskapen {{=e.params.missingProperty}}",
      nl: "moet de eigenschap {{=e.params.missingProperty}} bevatten",
      pl: "powinien zawierać wymagane pole {{=e.params.missingProperty}}",
      "pt-BR": "deve ter a propriedade obrigatória {{=e.params.missingProperty}}",
      ru: "должно иметь обязательное поле {{=e.params.missingProperty}}",
      sk: "musí obsahovať požadovanú položku {{=e.params.missingProperty}}",
      sv: "borde ha den nödvändiga egenskapen {{=e.params.missingProperty}}",
      th: "ต้องมี property {{=e.params.missingProperty}} ด้วย",
      zh: "应当有必需属性 {{=e.params.missingProperty}}",
      "zh-TW": "應該有必須屬性 {{=e.params.missingProperty}}",
    },
    type: {
      _defs: {
        t: "{{var t = e.params.type;}}",
      },
      en: "must be {{=e.params.type}}",
      ar: "قيمة هذا الحقل غير صالحة",
      ca: "ha de ser del tipus {{=e.params.type}}",
      cs: "musí být {{=e.params.type}}",
      de: "muss sein: {{=e.params.type}}",
      es: "debe ser {{=e.params.type}}",
      fr: "doit être de type {{=e.params.type}}",
      hu: "{{=e.params.type}} kell legyen",
      id: "harus berupa {{=e.params.type}}",
      it: "deve essere di tipo {{=e.params.type}}",
      ja: "{{=e.params.type}}でなければいけない",
      ko: "{{=e.params.type}}이여야 합니다",
      nb:
        '{{#def.t}}må være {{? t == "number" }}et tall{{?? t == "integer"}}et heltall{{?? t == "string"}}en streng{{?? t == "boolean"}}ja eller nei{{??}}{{=t}}{{?}}',
      nl:
        '{{#def.t}}moet een {{? t == "number" }}nummer{{?? t == "integer"}}geheel getal{{?? t == "string"}}tekenreeks{{?? t == "boolean"}}ja of nee waarde{{?}} ({{=t}}) bevatten',
      pl: "powinien być {{=e.params.type}}",
      "pt-BR":
        '{{#def.t}}deve ser {{? t == "number" }}um número{{?? t == "integer"}}um número inteiro{{?? t == "string"}}um texto{{?? t == "boolean"}}um booleano{{??}}{{=t}}{{?}}',
      ru: "должно быть {{=e.params.type}}",
      sk: "musí byť {{=e.params.type}}",
      sv: "borde vara {{=e.params.type}}",
      th: "ต้องเป็น {{=e.params.type}}",
      zh: "应当是 {{=e.params.type}} 类型",
      "zh-TW": "應該是 {{=e.params.type}} 類型",
    },
    unevaluatedProperties: {
      en: "must NOT have unevaluated properties",
      de: "darf keine unausgewerteten Attribute haben",
      it: "non deve avere attributi non valutati",
      nl: "mag geen ongecontroleerde eigenschappen bevatten",
      "pt-BR": "não pode possuir propridades não avaliadas",
      ru: "не должно иметь непроверенных полей",
      th: "ต้องไม่มี property ที่ยังไม่ได้ผ่านการตรวจสอบเงื่อนไขใดๆ",
      zh: "不允许存在未求值的属性",
      "zh-TW": "不應該有未驗證的屬性",
    },
    unevaluatedItems: {
      _defs: {
        n: "{{var n = e.params.len;}}",
      },
      en: "{{#def.n}}must NOT have more than {{=n}} item{{#def.mPlural}}",
      de: "{{#def.n}}darf nicht mehr als {{=n}} Element{{#def.mPlural}} haben",
      it: "{{#def.n}}non deve avere più di {{=n}} elementi{{#def.mPlural}}",
      nl: "{{#def.n}}mag niet meer dan {{= n}} item{{#def.mPlural}} bevatten",
      "pt-BR": "{{#def.n}}não pode possuir mais que {{=n}} {{? n==1 }}item{{??}}itens{{?}}",
      ru: "{{#def.n}}должно иметь не более, чем {{=n}} элемент{{#def.mPlural}}",
      th: "{{#def.n}}ต้องมีไม่เกิน {{=n}} ตัว",
      zh: "{{#def.n}} 不允许有超过 {{=n}} 个元素",
      "zh-TW": "{{#def.n}} 的元素不可以超過 {{=n}} 個",
    },
    uniqueItems: {
      en:
        "must NOT have duplicate items (items ## {{=e.params.j}} and {{=e.params.i}} are identical)",
      ar: "يجب أن لا يحوي عناصر مكررة (العنصر ## {{=e.params.j}} و {{=e.params.i}} متطابقة)",
      ca:
        "no ha de tenir ítems duplicats (els ítems ## {{=e.params.j}} i {{=e.params.i}} són idèntics)",
      cs:
        "nesmí obsahovat duplicitní prvky (prvky ## {{=e.params.j}} a {{=e.params.i}} jsou identické)",
      de:
        "darf keine Duplikate enthalten (Elemente #{{=e.params.j}} und #{{=e.params.i}} sind gleich)",
      es:
        "no debe contener elementos duplicados, (los elementos ## {{=e.params.j}} y {{=e.params.i}} son idénticos)",
      fr:
        "ne doit pas contenir de doublons (les éléments ## {{=e.params.j}} et {{=e.params.i}} sont identiques)",
      hu: "nem lehetnek azonos elemei ({{=e.params.j}} és {{=e.params.i}} elemek azonosak)",
      id: "tidak boleh memiliki item duplikat (item ## {{=e.params.j}} dan {{=e.params.i}} identik)",
      it: "non deve avere duplicati (gli elementi ## {{=e.params.j}} e {{=e.params.i}} sono uguali)",
      ja: "重複するアイテムがあってはいけない（{{=e.params.j}}と{{=e.params.i}}は同じである）",
      ko: "중복 아이템이 없어야 합니다 (아이템{{=e.params.j}}과 아이템{{=e.params.i}}가 동일합니다)",
      nb:
        "kan ikke ha duplikate elemeneter (elementene ## {{=e.params.j}} og {{=e.params.i}} er identiske)",
      nl:
        "mag geen gedupliceerde items bevatten (items ## {{=e.params.j}} en {{=e.params.i}} zijn identiek)",
      pl:
        "nie powinien zawierać elementów które się powtarzają (elementy {{=e.params.j}} i {{=e.params.i}} są identyczne)",
      "pt-BR":
        "não deve ter itens duplicados (os itens ## {{=e.params.j}} e {{=e.params.i}} são idênticos)",
      ru:
        "не должно иметь повторяющихся элементов (элементы {{=e.params.j}} и {{=e.params.i}} идентичны)",
      sk: "nesmie obsahovať duplicitné prvky (prvky ## {{=e.params.j}} a {{=e.params.i}} sú rovnaké)",
      sv:
        "borde inte ha duplicerade saker (sakerna ## {{=e.params.j}} och {{=e.params.i}} är identiska)",
      th: "ต้องมีสมาชิกไม่ซ้ำักัน (ลำดับที่ {{=e.params.j}} กับ {{=e.params.i}} ซ้ำกัน)",
      zh: "不应当含有重复项 (第 {{=e.params.j}} 项与第 {{=e.params.i}} 项是重复的)",
      "zh-TW": "不應該有重複項目 (第 {{=e.params.j}} 項和第 {{=e.params.i}} 項是重複的)",
    },
    propertyNames: {
      en: "property name is invalid",
      ar: "اسم الخاصية غير صالح",
      ca: "la propietat no és vàlida",
      cs: "název položky není platný",
      de: "Attributname ist ungültig",
      es: "la propiedad no és válida",
      fr: "le nom de propriété est invalide",
      id: "nama properti tidak valid",
      it: "il nome dell'attritbuto non è valido",
      ko: "속성명이 올바르지 않습니다",
      nb: "egenskapen med navnet '{{e.params.propertyName}}' er ugyldig",
      nl: "eigenschapnaam is ongeldig",
      "pt-BR": "o nome da propriedade é inválido",
      ru: "имя поля не соответствует схеме",
      sk: "názov položky nezodpovedá schéme",
      sv: "egenskap med namnet är inte giltig",
      th: "ชื่อ property ไม่ถูกต้อง",
      zh: "属性名 无效",
      "zh-TW": "属性名 無效",
    },
    patternRequired: {
      en: 'must have property matching pattern "{{=e.params.missingPattern}}"',
      ar: 'يجب أن يحوي خاصية توافق النمط "{{=e.params.missingPattern}}"',
      ca: 'la propietat ha de coincidir amb el patró "{{=e.params.missingPattern}}"',
      cs: 'musí obsahovat položku vyhovující regulárnímu výrazu "{{=e.params.missingPattern}}"',
      de: 'muss ein Attribut nach folgendem Muster haben "{{=e.params.missingPattern}}"',
      es: 'la propiedad debe coincidir con el patrón "{{=e.params.missingPattern}}"',
      fr: 'la propriété doit correspondre au format "{{=e.params.missingPattern}}"',
      id: 'harus memiliki pola pencocokan properti "{{=e.params.missingPattern}}"',
      it: 'deve avere un attributo che corrisponda al formato "{{=e.params.missingPattern}}"',
      ko: '"{{=e.params.missingPattern}}"패턴과 일치하는 속성을 가져야 합니다',
      nb: 'må ha en egenskap som samsvarer med mønsteret "{{=e.params.missingPattern}}',
      nl:
        'moet een eigenschap bevatten die overeenkomt met het pattroon: "{{=e.params.missingPattern}}"',
      pl: 'powinien mieć pole pasujące do wzorca "{{=e.params.missingPattern}}"',
      "pt-BR": 'deve ter a propriedade correspondente ao padrão "{{=e.params.missingPattern}}"',
      ru: 'должно иметь поле, соответствующее образцу "{{=e.params.missingPattern}}"',
      sk: 'musí obsahovať položku splňjúcu regulárny výraz "{{=e.params.missingPattern}}"',
      sv: 'bör ha en egenskap som matchar mönstret "{{=e.params.missingPattern}}"',
      th: 'ต้องมี property ที่มีชื่อตรงตาม pattern "{{=e.params.missingPattern}}"',
      zh: "应当有属性匹配模式 {{=e.params.missingPattern}}",
      "zh-TW": "應該有屬性對應模式 {{=e.params.missingPattern}}",
    },
    const: {
      en: "must be equal to constant",
      ar: "يجب أن يكون ثابتاً",
      ca: "ha de ser igual a la constant",
      cs: "musí být roven konstantě",
      de: "muss gleich der Konstanten sein",
      es: "debe ser igual a la constante",
      fr: "doit être égal à la constante",
      id: "harus sama dengan konstan",
      it: "deve essere uguale alla costante",
      ko: "상수와 같아야합니다",
      nb: "må være lik konstanten",
      nl: "moet gelijk zijn aan constante",
      pl: "powinien być równy stałej",
      "pt-BR": "deve ser igual à constante",
      ru: "должно быть равно заданному значению",
      sk: "musí byť konštanta",
      sv: "bör vara en konstant",
      th: "ต้องเท่ากับค่าคงที่",
      zh: "应当等于常量",
      "zh-TW": "應該等於常數",
    },
    contains: {
      en: "must contain a valid item",
      ar: "يجب أن يحوي عنصرا صحيح",
      ca: "ha de contenir un ítem vàlid",
      cs: "musí obsahovat prvek odpovídající schématu",
      de: "muss ein valides Element enthalten",
      es: "debe contener un elemento válido",
      fr: "doit contenir un élément valide",
      id: "harus berisi item yang valid",
      it: "deve contentere un elemento valido",
      ko: "올바른 아이템을 포함해야 합니다",
      nb: "må inneholde et gyldig element",
      nl: "moet een geldig item bevatten",
      "pt-BR": "deve conter um item válido",
      ru: "должно содержать значение соответствующее схеме",
      sk: "musí obsahovať prvok zodpovedajúci schéme",
      sv: "bör innehålla ett giltigt objekt",
      th: "ต้องมีสมาชิกที่ผ่านเงื่อนไขอยู่",
      zh: "应当包含一个有效项",
      "zh-TW": "應該包含一個有效元素",
    },
    formatMaximum: {
      _keywords: ["formatExclusiveMaximum"],
      _defs: {
        c: '{{var cond = e.params.comparison + " " + e.params.limit;}}',
      },
      en: "{{#def.c}}must be {{=cond}}",
      ar: "{{#def.c}} يجب أن يكون {{=cond}}",
      ca: "{{#def.c}}ha de ser {{=cond}}",
      cs: "{{#def.c}}musí být {{=cond}}",
      de: "{{#def.c}}muss {{=cond}} sein",
      es: "{{#def.c}}debe ser {{=cond}}",
      fr: "{{#def.c}}doit être {{=cond}}",
      id: "{{#def.c}}harus {{=cond}}",
      it: "{{#def.c}}deve essere {{=cond}}",
      ko: "{{#def.c}} {{=cond}} 이여야 합니다",
      nb: "{{#def.c}}må være {{=cond}}",
      nl: "{{#def.c}}moet {{=cond}} zijn",
      pl: "{{#def.c}}powinien być {{=cond}}",
      "pt-BR": "{{#def.c}}deve ser {{=cond}}",
      ru: "{{#def.c}}должно быть {{=cond}}",
      sk: "{{#def.c}}musí byť {{=cond}}",
      sv: "{{#def.c}}bör vara {{=cond}}",
      th: "{{#def.c}}ต้อง {{=cond}}",
      zh: "{{#def.c}}应当是 {{=cond}}",
      "zh-TW": "{{#def.c}}應該是 {{=cond}}",
    },
    formatMinimum: {
      _keywords: ["formatExclusiveMinimum"],
      _defs: {
        c: '{{var cond = e.params.comparison + " " + e.params.limit;}}',
      },
      en: "{{#def.c}}must be {{=cond}}",
      ar: "{{#def.c}} يجب أن يكون {{=cond}}",
      ca: "{{#def.c}}ha de ser {{=cond}}",
      cs: "{{#def.c}}musí být {{=cond}}",
      de: "{{#def.c}}muss {{=cond}} sein",
      es: "{{#def.c}}debe ser {{=cond}}",
      fr: "{{#def.c}}doit être {{=cond}}",
      id: "{{#def.c}}harus {{=cond}}",
      it: "{{#def.c}}deve essere {{=cond}}",
      ko: "{{#def.c}} {{=cond}} 이여야 합니다",
      nb: "{{#def.c}}må være {{=cond}}",
      nl: "{{#def.c}}moet {{=cond}} zijn",
      pl: "{{#def.c}}powinien być {{=cond}}",
      "pt-BR": "{{#def.c}}deve ser {{=cond}}",
      ru: "{{#def.c}}должно быть {{=cond}}",
      sk: "{{#def.c}}musí byť {{=cond}}",
      sv: "{{#def.c}}bör vara {{=cond}}",
      th: "{{#def.c}}ต้อง {{=cond}}",
      zh: "{{#def.c}}应当是 {{=cond}}",
      "zh-TW": "{{#def.c}}應該是 {{=cond}}",
    },
    if: {
      en: 'must match "{{=e.params.failingKeyword}}" schema',
      ar: 'يجب أن توافق المخطط "{{=e.params.failingKeyword}}"',
      ca: 'ha de correspondre’s amb l’esquema "{{=e.params.failingKeyword}}"',
      cs: 'musí vyhovět "{{=e.params.failingKeyword}}" schématu',
      de: 'muss dem Schema "{{=e.params.failingKeyword}}" entsprechen',
      es: 'debe corresponderse con el esquema "{{=e.params.failingKeyword}}"',
      fr: 'doit correspondre au schéma "{{=e.params.failingKeyword}}"',
      id: 'harus cocok dengan skema "{{=e.params.failingKeyword}}"',
      it: 'deve corrispondere allo schema "{{=e.params.failingKeyword}}"',
      ko: '"{{=e.params.failingKeyword}}" 스키마와 일치해야 합니다',
      nl: 'moet overeenkomen met "{{=e.params.failingKeyword}}" schema',
      "pt-BR": 'deve corresponder ao schema "{{=e.params.failingKeyword}}"',
      ru: 'должно соответствовать схемe "{{=e.params.failingKeyword}}"',
      th: 'ต้องตรงกับ schema "{{=e.params.failingKeyword}}"',
      zh: '应当匹配模式 "{{=e.params.failingKeyword}}" ',
      "zh-TW": '應該符合 "{{=e.params.failingKeyword}}" schema',
    },
    discriminator: {
      _type: false,
      tag: {
        en: 'tag "{{=e.params.tag}}" must be string',
        de: 'der Tag "{{=e.params.tag}}" muss eine Zeichenkette sein',
        it: 'il tag "{{=e.params.tag}}" deve essere di tipo stringa',
        nl: 'tag "{{=e.params.tag}}" moet een tekenreeks zijn',
        "pt-BR": 'a tag "{{=e.params.tag}}" deve ser uma string',
        ru: 'поле "{{=e.params.tag}}" должно быть строкой',
        th: 'tag "{{=e.params.tag}}" ต้องเป็น string',
        zh: '标签 "{{=e.params.tag}}" 的类型必须为字符串',
        "zh-TW": '標籤 "{{=e.params.tag}}" 的類型必須是字串',
      },
      mapping: {
        en: 'value of tag "{{=e.params.tag}}" must be in oneOf',
        de: 'der Wert vom Tag "{{=e.params.tag}}" muss im oneOf enthalten sein',
        it: 'il valore del tag "{{=e.params.tag}}" deve essere nei oneOf',
        nl: 'de waarde van het veld "{{= e.params.tag}}" moet voorkomen in de oneOf',
        "pt-BR": 'o valor da tag "{{=e.params.tag}}" deve estar no oneOf',
        ru: 'значение поля "{{=e.params.tag}}" должно быть в одной из oneOf схем ',
        th: 'ต้องมีค่าของ tag "{{=e.params.tag}}" ใน oneOf',
        zh: '标签 "{{=e.params.tag}}" 的值必须在 oneOf 之中',
        "zh-TW": '標籤 "{{=e.params.tag}}" 必須在 oneOf 其中之一',
      },
    },
  }
  