{
  "type": "component_data",
  "items": [
    "minecraft:writable_book",
    "minecraft:written_book",
    "minecraft:enchanted_book",
    "minecraft:book"
  ],
  "modelPrefix": "item/written_book/",
  "modelParent": "minecraft:item/generated",
  "parameters": {
    "componentType": "custom_name",
    "expect": "rich_text",
    "debug": true,
    "transform": ["lowercase",
      {
        "regex": "(?iu)ё",
        "substitution": "е",
        "matchAll": false,
        "validate": false
      },{
        "regex": "(?iu)закрытый атлас",
        "substitution": "atlas",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)атлас",
        "substitution": "atlas_open",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)большая стопка документов",
        "substitution": "big_stack_of_documents",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)завернутый чертеж",
        "substitution": "blueprint",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)чертеж",
        "substitution": "rolled_out_blueprint",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)план строительства",
        "substitution": "blueprint_left_hand",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)документ",
        "substitution": "document",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)закрытая папка с документами",
        "substitution": "document_folder",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)папка с документами",
        "substitution": "document_folder_left_hand",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)закрытая зачарованная книга",
        "substitution": "enchanted_book",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)зачарованная книга",
        "substitution": "enchanted_book_left_hand",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)чародейский том",
        "substitution": "enchanter_tome",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)закрытый чародейский том",
        "substitution": "enchanter_tome_left_hand",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)закрытая канцелярская папка",
        "substitution": "folder",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)канцелярская папка",
        "substitution": "folder_left_hand",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)закрытый гримуар",
        "substitution": "grimoire",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)гримуар",
        "substitution": "grimoire_left_hand",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)голографическая записка",
        "substitution": "hologram_note",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)выключенная голографическая записка",
        "substitution": "hologram_note_left_hand",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)закрытая библия",
        "substitution": "holy_bible",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)библия",
        "substitution": "holy_bible_left_hand",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)закрытое удостоверение",
        "substitution": "id",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)удостоверение",
        "substitution": "id_left_hand",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)закрытое письмо",
        "substitution": "letter",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)закрытое послание в бутылке",
        "substitution": "letter_in_bottle",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)послание в бутылке",
        "substitution": "letter_in_bottle_left_hand",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)письмо",
        "substitution": "letter_opened",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)чистое письмо",
        "substitution": "letter_writable",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)лицензия",
        "substitution": "license",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)подписанная лицензия",
        "substitution": "license_in_frame",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)закрытый журнал",
        "substitution": "magazine",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)журнал",
        "substitution": "magazine_left_hand",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)закрытый манифест",
        "substitution": "manifesto",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)манифест",
        "substitution": "manifesto_left_hand",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)закрытая медицинская карта",
        "substitution": "medical_file",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)медицинская карта",
        "substitution": "medical_file_left_hand",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)закрытый некрономикон",
        "substitution": "necronomicon",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)некрономикон",
        "substitution": "necronomicon_left_hand",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)закрытая газета",
        "substitution": "newspaper",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)газета",
        "substitution": "newspaper_left_hand",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)закрытый блокнот",
        "substitution": "notepad",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)блокнот",
        "substitution": "notepad_left_hand",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)записка",
        "substitution": "notes",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)закрытая старинная книга",
        "substitution": "old_book",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)старинная книга",
        "substitution": "old_book_left_hand",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)закрытое старое письмо",
        "substitution": "old_letter",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)старое письмо",
        "substitution": "old_letter_opened",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)чистое старое письмо",
        "substitution": "old_letter_writable",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)пропуск",
        "substitution": "pass",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)закрытый паспорт",
        "substitution": "passport",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)паспорт",
        "substitution": "passport_left_hand",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)закрытый партийный паспорт",
        "substitution": "passport_sssp",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)партийный паспорт",
        "substitution": "passport_sssp_left_hand",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)пиратская карта",
        "substitution": "pirate_map",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)завернутая пиратская карта",
        "substitution": "pirate_map_left_hand",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)закрытая сатанинская библия",
        "substitution": "satanic_bible",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)сатанинская библия",
        "substitution": "satanic_bible_left_hand",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)завернутый свиток",
        "substitution": "scroll",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)свиток",
        "substitution": "scroll_left_hand",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)стопка документов",
        "substitution": "stack_of_documents",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)стопка зачарованных книг",
        "substitution": "stack_of_enchanted_books",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)стопка канцелярских папок",
        "substitution": "stack_of_folders",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)стопка газет",
        "substitution": "stack_of_newspapers",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)стопка записок",
        "substitution": "stack_of_notes",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)стопка свитков",
        "substitution": "stack_of_scrolls",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)свиток досаждателя",
        "substitution": "vexing_chant",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)завернутый свиток досаждателя",
        "substitution": "vexing_chant_left_hand",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)деревянный планшет с бумагами",
        "substitution": "wooden_tablet_with_papers",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)бумага с пером",
        "substitution": "paper_and_quill",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)книга",
        "substitution": "opened_book",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)закрытая книга",
        "substitution": "closed_book",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)книга с пером",
        "substitution": "book_and_quill",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)стопка из 2 книг",
        "substitution": "stack_of_2_books",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)стопка из 3 книг",
        "substitution": "stack_of_3_books",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)стопка из 4 книг",
        "substitution": "stack_of_4_books",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)стопка из 5 книг",
        "substitution": "stack_of_5_books",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)стопка из 6 книг",
        "substitution": "stack_of_6_books",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)связка книг",
        "substitution": "bunch_of_books",
        "matchAll": true,
        "validate": false
      },
      {
        "regex": "(?iu)документ петрозаводска",
        "substitution": "petrozavodsk_document",
        "matchAll": true,
        "validate": false
      }
    ]
  }
}