<?php

namespace Kargnas\LaravelAiTranslator\AI\Language;

class LanguageRules
{
    protected static array $additionalRules = [
        'zh' => [
            "- CRITICAL: For ALL Chinese translations, ALWAYS use exactly THREE parts if there is '|': 一 + measure word + noun|两 + measure word + noun|:count + measure word + noun. This is MANDATORY, even if the original only has two parts. NO SPACES in Chinese text except right after numbers in curly braces and square brackets.",
            '- Example structure (DO NOT COPY WORDS, only structure): {1} 一X词Y|{2} 两X词Y|[3,*] :countX词Y. Replace X with correct measure word, Y with noun. Ensure NO SPACE between :count and the measure word. If any incorrect spaces are found, remove them and flag for review.',
        ],
        'ko' => [
            "- Don't add a space between the number and the measure word with variables. Example: ':count개' instead of ':count 개'",
        ],
        'ko_kr' => [
            "- 한국의 인터넷 서비스 '토스'의 서비스 말투 처럼, 유저에게 친근하고 직관적인 말투로 설명하고 존댓말로 설명하세요.",
        ],
        'ko_busan' => [
            '- 표준 한국어가 아닌 부산 사투리로 작성해줘.',
            '## **I. 조사 변환 규칙 (Rules 1-10)**',
            "- **주격 조사 \-이가**: 자음 뒤 '-이' → '-이가'. (예: 사람이 → 사람이가)",
            "- **주격 조사 (존칭) \-가**: '-께서' → '-가'. (예: 아버지께서 → 아부지가)",
            "- **목적격 조사 \-로 (제한적)**: 모음 뒤 '-을/를' → '-로'. (예: 물을 마시다 → 물로 묵다) *주의: 빈도 낮음.*",
            "- **여격 조사 \-인대**: '-에게', '-한테' → '-인대'. (예: 나에게 → 내인대)",
            "- **공동격 조사 \-캉**: '-와/과', '-랑/이랑' → '-캉'. (예: 친구랑 → 친구캉)",
            "- **관형격 조사 \-으**: '-의' → '-으'. (예: 우리의 → 우리으)",
            "- **부정 부사 \-도**: '-지도 않다' → 'V + -도 안 하다'. (예: 잡지 않아 → 잡도 안해)",
            "- **주격 조사 \-가 강조**: 표준어 '-이/가' 생략 가능 부분에 '-가' 명시. (예: 이거 좋아 → 이기 좋다)",
            "- **보조사 \-은/는 사용 감소**: '-은/는' 대신 '-이가/-가' 사용 또는 생략 경향. (예: 나는 간다 → 내(는) 간다 / 내가 간다)",
            "- **처소격 조사 \-에**: '-에서'(at/in) → '-에'. (예: 시장에서 샀다 → 시장에 샀다)",
            '## **II. 어미 변환 규칙 (Rules 11-40)**',
            '- **A. 의문형 어미**',
            "  - **판정 + 용언 → \-나**. (예: 뭇나?)",
            "  - **설명 + 용언 → \-노**. (예: 뭐 뭇노?)",
            "  - **판정 + 체언 → \-가**. (예: 학생이가?)",
            "  - **설명 + 체언 → \-고**. (예: 뭐고?)",
            "  - **의문형 과거 \-았/었나?**. (예: 갔나?)",
            "  - **의문형 과거 \-았/었노?**. (예: 뭐 했노?)",
            "  - **의문형 미래/추측 \-겠/것나?**. (예: 가겠나?)",
            "  - **의문형 미래/추측 \-겠/것노?**. (예: 언제 가겠노?)",
            '- **B. 평서형/명령형/청유형/약속법 (해라체)**',
            "  - **평서형 \-다**: 구어체에서 '-다' 종결 빈번. (예: 나 간다)",
            "  - **평서형 \-대이**: 친근/정보 제공 '-대이/-래이/-재이'. (예: 내가 한대이)",
            "  - **평서형 과거 \-았다/-었다**. (예: 밥 뭇다)",
            "  - **평서형 미래/추측 \-겠다/-것다**. (예: 가것다)",
            "  - **명령형 \-아라/-어라/-거라**: '-거라' 사용 빈번. (예: 가거라)",
            "  - **명령형 \-아래이/-어래이**: 친근한 명령. (예: 놀아래이)",
            "  - **청유형 \-자**. (예: 가자)",
            "  - **약속법 \-마**. (예: 내가 하마)",
            "  - **약속법 \-ㄹ게 → \-께**. (예: 내가 가께)",
            "  - **약속법/미래 \-ㄹ끼다**. (예: 갈끼다)",
            "  - **약속법/미래 \-(으)ㄹ끼구마**. (예: 갈끼구마)",
            '- **C. 높임 어미 (합쇼체/하이소체 및 비격식)**',
            "  - **평서형 높임 \-니더 / -(스)ㅂ니더**. (예: 갑니더)",
            "  - **평서형 높임 변형 \-ㅂ니다\~더**. (예: 그렇십니더)",
            "  - **의문형 높임 \-니껴 / -(스)ㅂ니껴**. (예: 갑니껴?)",
            "  - **의문형 높임 변형 \-ㅂ니까\~꺼**. (예: 어딥니꺼?)",
            "  - **명령형 높임 \-(으)이소 / -(으)시이소**. (예: 오이소)",
            "  - **청유형 높임 \-(으)입시더**. (예: 갑입시더)",
            "  - **비격식 높임 \-예**: '-요' → '-예'. (예: 아니예)",
            '- **D. 연결 어미**',
            "  - **조건 \-(으)먼**: '-(으)면' → '-(으)먼'. (예: 가먼)",
            "  - **이유/원인 \-ㄴ께네/\-은께네**: '-니까/-으니까' → '-ㄴ께네/-은께네'. (예: 온께네)",
            "  - **의도/목적 \-ㄹ라꼬**: '-려고' → '-ㄹ라꼬'. (예: 묵을라꼬)",
            '- **E. 선어말 어미**',
            "  - **미래/추측 \-것-**: '-겠-' → '-것-'. (예: 알것다)",
            '',
            '## **III. 어휘 대체 규칙 (Rules 41-80)**',
            '- **A. 부사/감탄사 대체 (10개)**',
            '  - 좀 → 쫌',
            '  - 단단히/제대로 → 단디',
            '  - 꼼꼼히/제대로 → 매매',
            '  - 빨리/얼른 → 퍼뜩',
            '  - 매우/아주 많이 → 억수로',
            '  - 가득/듬뿍 → 항거',
            '  - 그래? (추임새) → 맞나?/글나?',
            '  - 뭣하러?/왜? → 만다꼬?',
            '  - 어서/얼른 → 언능',
            '  - 괜히/쓸데없이 → 맥지(비)',
            '- **B. 명사 대체 (20개)**',
            '  - 계집아이 → 가시나',
            '  - 사내아이 → 머스마',
            '  - 어린아이 → 얼라/알라',
            '  - 아이(child) → 아',
            '  - 할아버지 → 할배',
            '  - 할머니 → 할매/한매',
            '  - 아저씨 → 아재',
            '  - 아주머니 → 아지매',
            '  - 선생님 → 샘(쌤)',
            '  - 엉덩이 → 궁디',
            '  - 목 → 모가지',
            '  - 부추 → 정구지',
            '  - 조금 → 쪼매/쫌',
            '  - 멸치 → 메르치/며르치',
            '  - 봉지 → 봉다리',
            '  - 기름 → 지름',
            '  - 김치 → 짐치',
            '  - 국수 → 국시',
            '  - 그 녀석/그 아이 → 글마',
            '  - 가게/상점 → 점빵',
            '- **C. 동사/형용사 대체 (10개)**',
            '  - 말하다/~라고 하다 → ~카다',
            '  - 먹다 → 묵다',
            '  - 제대로 하다 → 단디하다',
            '  - 별로다/좋지 않다 → 파이다/빠이다',
            '  - 괜찮다 → 개안타',
            '  - ~아/어 버리다 → ~뿌다',
            '  - 치다/때리다 → 쌔리다',
            '  - 떨어뜨리다 → 널쭈다',
            '  - 힘들다/피곤하다 → 대다',
            '  - 짜다 → 짭다',
            '',
            '## **IV. 텍스트 표기 변환 규칙 (축약 및 발음 기반 표기) (Rules 81-95)**',
            '',
            '- **A. 축약형 (10개)**',
            '  - 그 아이가 → 가가',
            '  - 무엇이고 → 뭐꼬/머꼬',
            '  - 무엇이라고 하니 → 뭐라카노/머라카노',
            '  - 왜 이러니/그러니 → 와 이라노/와 그라노',
            '  - 그 녀석아/그 아이 → 글마',
            '  - 이것이/그것이/저것이 → 이기/그기/저기',
            '  - 너/네가 → 니/니가',
            '  - 오늘/지금/내일 → 올/짐/낼',
            '  - 선생님 → 샘',
            '  - 아이가(is not it?) → 아인가',
            '',
            '- **B. 발음 기반 표기 (5개)**',
            "  - **ㅔ/ㅐ 혼용**: 'ㅔ'를 'ㅐ'로 표기하는 경향. (예: 네 → 내)",
            "  - **ㅓ/ㅡ 혼용**: 'ㅓ'를 'ㅡ'로 표기하는 경향. (예: 먹어 → 묵어)",
            "  - **ㅢ 모음 단순화**: 'ㅢ'를 'ㅡ' 또는 'ㅣ'로 표기. (예: 의사 → 으사/이사)",
            "  - **움라우트 반영**: 후행모음 영향으로 'ㅏ/ㅓ/ㅗ' → 'ㅐ/ㅔ/ㅚ'. (예: 아기 → 애기)",
            "  - **ㅕ 모음 단순화**: 'ㅕ'를 'ㅔ' 또는 'ㅐ'로 표기. (예: 형님 → 헹님/행님)",
            '',
            '## **V. 화용/문체 규칙 (Rules 96-100)**',
            '',
            '- **직설적 어조 반영**: 완곡어법보다 직접적인 표현 선택 경향 반영.',
            "- **'맞나?'/'글나?'의 추임새 활용**: 단순 의문 외 대화 중 반응/흐름 유지 기능으로 사용.",
            "- **'만다꼬?'의 맥락적 사용**: 단순 '왜?'보다 불필요/의아함의 뉘앙스 포함 시 사용.",
            '- **방언-표준어 혼용 허용**: 온라인 특성상 완전한 방언 사용 대신 표준어와 혼용되는 양상 허용.',
            '- **과도한 방언 변환 지양**: 문맥과 자연스러움을 고려하여 규칙 적용 강도 조절, 희화화 방지.',
        ],
        'ko_kp' => [
            '# 조선어(문화어) 변환 규칙',
            '## 1. 자모 및 철자 규칙',
            '- **자모 순서 차이**',
            "  - 초성: ㄱ → ㄴ → ㄷ → ㄹ → … 순서, 쌍자음은 '쌍기역' 대신 '된기윽' 등으로 명명",
            '  - 중성: ㅏ → ㅑ → ㅓ → ㅕ … (배열 차이 존재)',
            '- **두음 법칙 배제**',
            "  - 한국어에서 '이, 여, 요'처럼 변하는 단어를 그대로 ㄴ/ㄹ 표기로 유지",
            '  - 예) *이승만* → **리승만**, *양력* → **량력**, *노인* → **로인**',
            '**(참고: 한자어 시작에 ㄴ/ㄹ 그대로 쓰는 관습 유지)**',
            '## 2. 받침 및 된소리 활용',
            '- **된소리 표기**',
            "  - 한국어 '색깔' → 조선어 '색갈', '밟다' → '밟다'(표기는 동일하나 발음은 [밥따])",
            '- **합성어 받침**',
            '  - 합성 시 원형 유지, 발음에서만 된소리화 허용',
            '  - 예) *손뼉* → **손벽**, 실제 발음 [손뼉/손뼉] 가능',
            '- **부정 표기된 자음**',
            '  - ㅅ, ㅆ, ㄷ, ㅈ 등은 받침 뒤 결합 시 된소리로 취급',
            '  - 예) *웃으며* → [우드며/웃으며] (표기는 그대로)',
            '## 3. 띄여쓰기(띄어쓰기) 상세',
            '1. **의존 명사(단위 포함)는 앞말에 붙임**',
            '   - 예) *5 개월 동안* → **5개월동안**',
            '2. **합성 동사·보조 동사**',
            '   - 독립 의미가 약하면 붙여 씀',
            '   - 예) *안아 주다* → **안아주다**, *먹어 보다* → **먹어보다**',
            '3. **고유명사 결합**',
            '   - 예) *조선로동당 중앙위원회 평양시위원회* → **조선로동당 중앙위원회 평양시위원회** (단위마다 띄우기)',
            "> **주의**: 한국어보다 전반적 '붙여쓰기' 경향이 강함",
            '## 4. 어간·어미 차이',
            "- **'-어, -었' vs '-여, -였'**",
            "  - ㅣ·ㅐ·ㅔ 등 뒤는 '-여, -였'으로 적는 경우 많음",
            '  - 예) *되어*→**되여**, *고쳐*→**고치여**(발음 [고치여/고쳐])',
            '- **형용사·동사 활용**',
            "  - 한국어와 기본 유사하나, 두음법칙 관련 용언 변형에서 'ㄹ/ㄴ' 유지",
            '  - 예) *날라가다* → **날라가다** (표기 동일, 발음도 같거나 [날라가다])',
            '## 5. 부정 표현, 높임·경어',
            '- **부정 표현**',
            "  - '일없다' = '괜찮다', 그 외 *아니하다*·*못하다*도 그대로 씀",
            '  - 예) *괜찮아?* → **일없니?**',
            '- **경어체**',
            "  - '-오, -소, -요' 등을 자주 씀",
            '  - 예) "배고프오?" / "그렇소." / "일없어요."',
            '- **하오체, 하십시오체, 해요체** 모두 존재',
            '## 6. 외래어·한자어 표기',
            '1. **영어·러시아어 등 외래어**',
            '   - 영어: *computer* → **콤퓨터**, *apartment* → **아빠트**',
            "   - 일제강점기 유래 외래어도 일부 잔존('삐라', '빠다', '뽀오성(볼링)' 등)",
            '2. **한자어**',
            '   - 두음 ㄹ·ㄴ을 탈락시키지 않음',
            '   - 예) *녹두* → **록두**, *예외* → **례외**',
            '3. **고유어로 대체**',
            '   - *채소*→**남새**, *설탕*→**사탕가루**, 허나 혼용 가능',
            '4. **국제적 용어**',
            "   - '텐트, 택시, 토마토' 등 굳어진 외래어는 그대로 쓰기도 함",
            '## 7. 추가 세부 규칙',
            '- **합성명사 원형 보존**',
            '  - 예) *가을걷이* → **가을걷이**, *별빛* → **별빛** (큰 변화 없음이나 받침 표기 유의)',
            '- **고유명사 표기**',
            '  - 외국 지명: 대체로 현지음 번역 (프랑스→뻐랑스 등), 일부 러시아·독일식 그대로 (독일→도이췰란드)',
            '- **사이시옷**',
            '  - 거의 쓰이지 않음. *뱃사공*→**배사공**, *댓잎*→**대잎**',
            '- **문장부호법**',
            '  - 한국어와 유사하나, 《 》 인용부 많이 사용',
            '  - 예) "안녕?" → **《안녕?》** (보도·문헌체에서)',
            '## 8. 예문 3가지 (3열=특이사항/한자)',
            '| **한국어**             | **조선어**                | **특이참고사항**                      |',
            '|------------------------|---------------------------|---------------------------------------|',
            "| 1) \"이사 갈 건데, 괜찮아?\"    | \"리사 갈건데, 일없니?\"         | '이사(移徙)'→'리사' (두음ㄹ 유지)       |",
            "| 2) \"채소를 좀 사 왔어.\"       | \"남새를 좀 사왔소.\"            | '채소'→'남새' / 붙여쓰기(사왔소)         |",
            "| 3) \"그 사람이 영리하긴 하지만, 잘난 척 좀 해.\" | \"그 사람이 령리하긴 하나, 잘난체 좀 하오.\" | '영리(英利)'→'령리' (두음법칙X), 경어 '하오' |",
            '## 9. 변환시 유의사항 정리',
            '1. **두음법칙** 완전 배제 → ㄹ·ㄴ 어두 유지',
            "2. **자주 사용**: '일없다(괜찮다)', '남새(채소)', '아빠트(아파트)' 등",
            '3. **띄여쓰기**는 의미 단위로 확장, 의존명사는 앞말에 붙이기',
            '4. **발음상 된소리** 가능하나 표기는 본형 유지 (색갈, 첫날 등)',
            '5. **고유한 발음·표기**: 《 》 인용, -소·-오·-니 등 종결 어미 활용',
            "6. **외래어·한자어 처리**: 굳어진 말('텔레비죤', '전투') 그대로",
            '# 추가 특별 규칙들',
            "- 혁명적이고 전투적인 말투로 설명하세요. '혁명적인'이라는 표현을 자주 쓰면 조선어처럼 보입니다.",
            "- 과거시제 표현 변경: '-었-'을 '-였-'으로 대체하라. 이는 모음 조화와 관계없이 적용한다. 예: 되었다 → 되였다, 갔었다 → 갔였다, 먹었다 → 먹였다, 찾았다 → 찾았다(변경 없음)",
            '- 사이시옷 제거: 합성어에서 사이시옷을 사용하지 말라. 예: 핏줄 → 피줄, 곳간 → 고간, 잇몸 → 이몸, 깃발 → 기발, 햇살 → 해살',
            "- 북한식 호칭 사용: '동무', '동지' 등의 호칭을 상황에 맞게 사용하라. 직함과 함께 쓸 때는 이름 뒤에 붙인다. 예: 김철수동무, 박영희동지, 리철호선생, 김민국로동자동지",
            "- 정치적 표현 사용: 김일성, 김정일, 김정은 언급 시 '위대한 수령', '경애하는 최고령도자' 등의 표현을 사용하라. 예: 김정은 → 경애하는 최고령도자 김정은동지, 김일성 → 위대한 수령 김일성동지, 김정일 → 위대한 령도자 김정일동지",
            "- 한자어 '적(的)' 사용: '~적' 표현을 가능한 많이 사용하라. 예: 과학적, 혁명적 (예: 혁명적인 성과), 전략적, 창조적, 주체적",
            '- IT 용어 예시, 괄호로 한국어 설명을 참고로 제공한다: 찰칵(클릭), 주체년도, 우리 식, 예/아니(버튼), 통과암호, 짧은 이름(닉네임), 망(네트워크), 콤퓨터, 봉사기(서버), 날자(날짜), X분 정도(약 X분), ~적으로(~으로), 웃부분(윗부분), 프로그람(프로그램), 차림표(메뉴), 동태(현황), 오유(오류), 페지(페이지), 소프트웨어(쏘프트웨어), 례외(예외), 등록가입(가입), 알고리듬, 자료가지(데이터베이스), 체계(시스템), 조종(제어)',
        ],
        'zh_dongbei' => [
            '- Rephrase all the text into 东北官话, not standard Chinese.',
            '## 构建在线东北官话语境的15条规则 (构成在线东北官话语境的规则)',
            '- **广泛使用泛指动词 ‘整’**: 在需要表达“做、弄、办、搞、吃、喝”等多种动作时，优先考虑使用万能动词 ‘整’ 来构建语句，例如用“咋整？”表达“怎么办？”，用“整点儿吃的”表达“弄点吃的”。',
            '- **优先使用程度副词 ‘贼’**: 在表达“很”、“非常”、“太”等程度深的含义时，高频使用 ‘贼’ 置于形容词或动词前（例如：“贼好”、“贼快”、“贼喜欢”），以增强语气和地方色彩。',
            '- **运用程度副词 ‘嘎嘎’**: 在需要强调程度极深，尤其是形容质量上乘、状态极佳或全新时，使用 ‘嘎嘎’ + 形容词的结构（例如：“嘎嘎新”、“嘎嘎好”、“嘎嘎脆”）。',
            '- **运用程度副词 ‘老’**: 使用副词 ‘老’ (不同于普通话中表示年长或前缀的用法) 来表示“很”、“非常”（例如：“老好了”、“老厉害了”、“老多了”），常与‘了’搭配。',
            '- **使用特色疑问词 ‘嘎哈/干哈’**: 在询问“干什么”、“做什么”或“怎么了”时，使用 ‘嘎哈’ 或 ‘干哈’ 替代普通话的说法。',
            '- **使用特色疑问词 ‘咋’ 和 ‘啥’**: 使用 ‘咋’ 替代“怎么”、“怎样”、“为什么”，使用 ‘啥’ 替代“什么”。',
            '- **采用标志性名词、动词和形容词**: 选择并使用能体现东北特色的核心词汇，如 ‘唠嗑’ (聊天)、‘埋汰’ (脏)、‘磕碜’ (难看/丢人)、‘嘚瑟/得瑟’ (炫耀/显摆)、‘墨迹’ (磨蹭/拖拉)、‘苞米’ (玉米)、‘旮旯’ (角落)、‘膊棱盖儿’ (膝盖) 等。',
            '- **运用高频感叹词 ‘哎呀妈呀/我的妈呀’**: 在表达惊讶、感叹、无奈、强调或遇到意外情况时，频繁使用 ‘哎呀妈呀’ 或 ‘我的妈呀’ 来营造生动、强烈的情感氛围。',
            '- **使用特色应答词 ‘嗯呢’**: 在表示肯定、同意或应答时，使用 ‘嗯呢’ (èn ne) 替代普通话的“嗯”、“好的”、“行”等。',
            '- **句末酌情使用语气助词 ‘呗’**: 在句末添加 ‘呗’ (bei)，以表达理所当然、自然而然、提出建议或略带不耐烦/随意的语气（例如：“那就去呗”、“还能咋地呗”）。',
            '- **灵活运用句末语气助词 ‘啊’、‘呢’**: 根据需要，在句末使用 ‘啊’(a)、‘呢’(ne) 等语气助词来调节语气、表达情感（确认、感叹、疑问、持续等），其使用频率或特定语境下的含义可能带有地域色彩。',
            '- **营造幽默、直率 (豪爽) 的语境氛围**: 在遣词造句和表达方式上，体现东北话特有的幽默感、风趣以及不拐弯抹角的直率风格。',
            '- **传递热情、亲近的社交语感**: 使用如 ‘老铁’ (称呼朋友)、‘大兄弟/大妹子’ (非正式称呼) 等词语，或采用更直接、热情的表达方式，构建亲切、友好的交流语境。',
            '- **融入地方特色俗语或固定表达**: 适时使用如 ‘扯犊子’ (胡说)、‘稀里马哈’ (马虎)、‘破马张飞’ (咋咋呼呼) 等生动形象的东北方言习语，增强语言的表现力和地域感。',
            '- **允许并体现语言混合现象**: 在语境构建中，自然地混合使用东北方言词汇/语法特点、标准普通话以及通用的网络流行语（包括源自或流行于东北的 ‘(大)冤种’ 等），反映线上交流的实际生态。',
            '',
            '## Lexical Substitution Rules',
            '- 普通话的 ‘干什么’, ‘做什么’, ‘怎么了’ 通常可写作东北话 ‘嘎哈’, ‘干哈’ 或 ‘咋地’.',
            '- 普通话的 ‘聊天’ 通常写作 ‘唠嗑’ 或 ‘唠嗑儿’.',
            "- 普通话表示程度深（很, 非常, 太）时, 常可替换为 ‘贼’. (例如: ‘很好’ \-\> ‘贼好’).",
            "- 普通话表示程度深（很, 非常, 太）, 尤其强调高质量或极端状态时, 也可写作 ‘嘎嘎’. (例如: ‘崭新’ \-\> ‘嘎嘎新’).",
            "- 普通话表示程度深（很, 非常, 太）时, 也可写作 ‘老’. (例如: ‘非常好’ \-\> ‘老好了’).",
            '- 普通话的 ‘做’, ‘弄’, ‘办’, ‘搞’ 等多种动词, 根据语境可泛化替换为 ‘整’.',
            '- 普通话的 ‘吃’, ‘喝’, 尤其表示尽情地、大量地时, 常可写作 ‘造’.',
            '- 普通话的 ‘玉米’ 通常写作 ‘苞米’.',
            '- 普通话的 ‘膝盖’ 通常写作 ‘膊棱盖儿’.',
            '- 普通话的 ‘角落’ 通常写作 ‘旮旯’ 或 ‘旮旯儿’.',
            '- 普通话的 ‘脏’, ‘不干净’ 通常写作 ‘埋汰’.',
            '- 普通话的 ‘难看’, ‘丑’, ‘丢人’ 通常写作 ‘磕碜’.',
            '- 普通话的 ‘炫耀’, ‘显摆’ 通常写作 ‘嘚瑟’ 或 ‘得瑟’.',
            '- 普通话的 ‘撒谎’, ‘胡说’ 通常写作 ‘扒瞎’ 或 ‘扯犊子’.',
            '- 普通话的 ‘磨蹭’, ‘拖拉’ 通常写作 ‘墨迹’.',
            '- 普通话的 ‘怎么’ 通常写作 ‘咋’.',
            '- 普通话的 ‘什么’ 通常写作 ‘啥’.',
            '- 普通话的 ‘地方’ (特指某处) 可写作 ‘那疙瘩’.',
            '- 普通话的 ‘奇怪’, ‘特别’, ‘与众不同’ 可写作 ‘隔路’.',
            '- 普通话形容人 ‘厉害’, ‘有种’, ‘酷’ 可写作 ‘尿性’.',
            '- 普通话形容人 ‘傻’, ‘莽撞’, ‘愣’ 可写作 ‘虎’, ‘彪’, 或 ‘虎了吧唧’.',
            '- 普通话的 ‘邻居’ 可写作 ‘界壁儿’.',
            '- 普通话的 ‘客人’ 可写作 ‘客(qiě)’.',
            '- 普通话表示同意或应答的 ‘好的’, ‘行’, ‘可以’ 时, 常可用 ‘嗯呢’.',
            '- 普通话的 ‘不知道’ 可写作 ‘不儿道’.',
            '',
            '# Grammatical Modification Rules',
            '- 形容词前可加入 ‘贼’ 表示程度深: ‘贼好’, ‘贼冷’, ‘贼快’.',
            '- 形容词前可加入 ‘嘎嘎’ 表示程度深或质量高: ‘嘎嘎新’, ‘嘎嘎甜’, ‘嘎嘎好’.',
            '- 形容词前可加入 ‘老’ 表示程度深: ‘老好了’, ‘老厉害了’, ‘老快了’.',
            '- 形容词前可加入 ‘挺’ 表示程度: ‘挺好’, ‘挺多’, ‘挺快’.',
            '- 在需要泛指动作 ‘做/弄/搞/办’ 等时, 优先考虑使用 ‘整’.',
            '- 询问 ‘怎么办’ 时, 使用 ‘咋整’.',
            '- 询问 ‘为什么’ 或 ‘怎么’ 时, 使用 ‘咋’.',
            '- 询问 ‘干什么’ 时, 使用 ‘嘎哈’ 或 ‘干哈’.',
            '- 句末可根据语气酌情添加 ‘呗’, 表示理所当然、建议或略带不耐烦: ‘那就去呗’, ‘还能咋地呗’.',
            "- 句末可根据语气酌情添加 ‘啊’, 表示确认、感叹、提醒或疑问: ‘是啊\!’, ‘你快点啊\!’, ‘你说啥啊?’.",
            '- 句末可根据语气酌情添加 ‘呢’, 表示疑问、持续、强调或反问: ‘他嘎哈呢?’, ‘我寻思呢’, ‘这还用说呢?’.',
            '- 使用特定的后缀词汇: 如 ‘蔫巴’ (시들다), ‘抽巴’ (쭈그러들다), ‘闹挺’ (짜증나게 시끄럽다).',
            "- 使用 AABB 式叠词形容词/副词以增强生动性: 如 ‘利索’ \-\> ‘利利索索’, ‘干净’ \-\> ‘干干净净’. (注意选择东北话常用叠词).",
            "- 使用 ABAB 式动词重叠表示尝试或短暂动作: 如 ‘研究’ \-\> ‘研究研究’, ‘寻思’ \-\> ‘寻思寻思’. (通用模式，但注意与东北话常用动词结合).",
            '- 使用 A不溜丢 / A拉巴叽 / A了吧唧 式形容词强化: ‘酸不溜丢’, ‘傻拉巴叽’, ‘虎了吧唧’.',
            '- 颜色词强调模式: ‘洼(wà)蓝洼蓝的’, ‘焦黄焦黄的’, ‘通红通红的’, ‘刷(shuà)白’, ‘雀(qiāo)黑雀黑的’.',
            "- 句式 “一 \+ V \+ 就 \+ VP” 可写作 “一整就 \+ VP”: 例如 ‘他一(V)就迟到’ \-\> ‘他一整就迟到’.",
            "- 疑问句可以使用 V/A \+ 不 \+ V/A 结构: ‘你去不去?’, ‘他虎不虎?’. (通用结构，注意与东北话词汇结合).",
            '',
            '## Pragmatic/Stylistic Enhancement Rules',
            '- 表达惊讶、感叹、无奈或强调时, 可在句首或句中插入 ‘哎呀妈呀’ 或 ‘我的妈呀’.',
            '- 为表示亲近或在网络社群中称呼朋友, 可使用 ‘老铁’.',
            '- 为表示自嘲式的无奈、倒霉或形容他人做了傻事, 可使用 ‘(大)冤种’.',
            '- 为表达强烈肯定或赞同, 可使用 ‘必须的’.',
            '- 可适当使用语气较为直接或强烈的词语以体现豪爽风格, 如 ‘滚犊子’ (慎用, 需注意语境).',
            '- 增加对话中的反问语气, 例如使用 ‘咋地?’ 表达挑战或确认.',
            '- 适当融入通用网络流行语, 但优先使用具有东北特色的对等词或表达方式 (例如, 优先使用 ‘贼’ 而非 ‘超’; 优先使用 ‘唠嗑’ 而非 ‘聊天’).',
        ],
    ];

    public static function getAdditionalRules(Language $language): array
    {
        $rules = [];

        // Get plural rules first
        $pluralRules = PluralRules::getAdditionalRulesPlural($language);
        if (! empty($pluralRules)) {
            $rules = array_merge($rules, $pluralRules);
        }

        // Get config rules (both base and specific)
        $configRules = self::getAdditionalRulesFromConfig($language->code);
        if (! empty($configRules)) {
            $rules = array_merge($rules, $configRules);
        }

        // Get default rules (both base and specific)
        $defaultRules = self::getAdditionalRulesDefault($language->code);
        if (! empty($defaultRules)) {
            $rules = array_merge($rules, $defaultRules);
        }

        return array_unique($rules);
    }

    protected static function getAdditionalRulesFromConfig(string $code): array
    {
        $list = config('ai-translator.additional_rules', []);
        $code = Language::normalizeCode($code);
        $rules = [];

        // Get base language rules first
        $baseCode = substr($code, 0, 2);
        if (isset($list[$baseCode])) {
            $rules = array_merge($rules, $list[$baseCode]);
        }

        // Then get specific language rules
        if (isset($list[$code]) && $code !== $baseCode) {
            $rules = array_merge($rules, $list[$code]);
        }

        // Finally get default rules if no rules found
        if (empty($rules)) {
            $rules = $list['default'] ?? [];
        }

        return $rules;
    }

    protected static function getAdditionalRulesDefault(string $code): array
    {
        $code = Language::normalizeCode($code);
        $rules = [];

        // Get base language rules first
        $baseCode = substr($code, 0, 2);
        if (isset(self::$additionalRules[$baseCode])) {
            $rules = array_merge($rules, self::$additionalRules[$baseCode]);
        }

        // Then get specific language rules
        if (isset(self::$additionalRules[$code]) && $code !== $baseCode) {
            $rules = array_merge($rules, self::$additionalRules[$code]);
        }

        // Finally get default rules if no rules found
        if (empty($rules)) {
            $rules = self::$additionalRules['default'] ?? [];
        }

        return $rules;
    }
}
