#!/usr/bin/env python3
from pathlib import Path
import json,sys
P=Path(__file__).resolve().parents[1];t=(P/'script/script_gustatory_rhinitis.txt').read_text().casefold()
groups={
'capsaicin':['capsaicin'],'not_real_heat':['không phải “nhiệt” theo nghĩa vật lý','không tạo ra nhiệt thật'],'trpv1':['trpv1'],'sensory_endings':['đầu tận cùng của dây thần kinh cảm giác'],'heat_acid':['nhiệt độ nóng, môi trường có tính axit'],'ion_channel':['kênh ion'],'trigeminal':['dây thần kinh sinh ba','trigeminal nerve'],'afferent':['trigeminal afferents'],'brainstem':['thân não'],'autonomic':['phản xạ tự chủ'],'parasympathetic':['đối giao cảm','parasympathetic system'],'nasal_glands':['tuyến tiết dịch trong niêm mạc mũi','các tuyến trong mũi tăng tiết'],'watery':['watery rhinorrhea','dịch mũi loãng'],'tears':['chảy nước mắt'],'sweat':['đổ mồ hôi'],'gustatory':['gustatory rhinitis'],'nonallergic':['phản xạ không dị ứng'],'hot_food':['món ăn cay, nóng','súp nóng'],'other_spices':['tiêu, mù tạt, wasabi, gừng'],'hot_steam':['hơi nóng bốc lên'],'capsaicin_amount':['lượng capsaicin','một lượng lớn capsaicin'],'age':['người lớn tuổi'],'hyperreactivity':['tăng phản ứng của niêm mạc mũi'],'autonomic_sensitivity':['hệ thần kinh tự chủ được điều chỉnh'],'not_allergy':['đừng vội gọi mọi lần sụt sịt sau bữa ăn là dị ứng'],'hives':['mề đay'],'lip_tongue_throat_swelling':['sưng môi, lưỡi hoặc họng'],'wheeze':['khò khè'],'breathing':['khó thở'],'vomit_dizzy':['nôn nhiều','chóng mặt'],'anaphylaxis':['phản vệ'],'epinephrine':['bút tiêm epinephrine'],'call_emergency':['gọi dịch vụ cấp cứu','gọi cấp cứu'],'not_antihistamine_substitute':['không thay epinephrine bằng thuốc kháng histamine'],'infection':['cảm lạnh hoặc nhiễm virus'],'allergic_rhinitis':['viêm mũi dị ứng'],'reduce_trigger':['dùng ít ớt hơn'],'smaller_portion':['khẩu phần nhỏ hơn'],'eat_slow':['ăn chậm'],'cool_food':['để món ăn nguội bớt'],'tissue':['khăn giấy mềm'],'saline':['dung dịch saline'],'sterile_water':['nước vô trùng'],'distilled_water':['nước cất'],'boiled_cooled':['đun sôi đúng cách rồi để nguội'],'no_tap':['không dùng nước máy trực tiếp'],'clean_device':['dụng cụ phải được vệ sinh'],'no_chili_nose':['không nhét ớt'],'no_essential_oil':['tinh dầu'],'decongestant_overuse':['nghẹt mũi bật lại'],'no_self_mix':['đừng tự phối hợp nhiều loại thuốc xịt'],'clinician_treatment':['bác sĩ có thể đánh giá'],'no_self_prescribe':['không phải lời mời tự kê đơn'],'unilateral':['chỉ từ một bên mũi'],'head_injury':['sau chấn thương đầu'],'bend_forward':['cúi người về phía trước'],'csf':['rò dịch não tủy'],'blood_foul':['có máu lặp lại, mùi hôi'],'fever_face_pain':['sốt hoặc đau vùng mặt'],'choking_swallow':['ho sặc, nghẹn','khó nuốt'],'airway_emergency':['không thể ho, nói hoặc thở'],'no_absolute_diagnosis':['không thể chẩn đoán tuyệt đối','không thể phân biệt chắc chắn']}
missing=[k for k,v in groups.items() if not any(x in t for x in v)];o={'status':'PASS' if not missing else 'FAIL','missing':missing,'groups':len(groups)};print(json.dumps(o,ensure_ascii=False));sys.exit(bool(missing))
