import re

# File paths
input_file = 'Tam Bao.txt'
output_file = 'Tam Bao - Zen.txt'

def refine_line(content):
    # Take Vietnamese part if multi-language
    if '→' in content:
        parts = content.split('→')
        content = parts[-1].strip()
    
    # Precise refinements for natural Vietnamese flow
    replacements = {
        "Cuốn sách đầu tay của Ngài Đại đức Janakābhivaṃsa, bậc ân sư tối thượng của tu viện Mahāgandhayon, thành phố Amarapura.": "Tác phẩm đầu tay của Ngài Đại đức Janakābhivaṃsa, bậc ân sư tối thượng của tu viện Mahāgandhayon, thành phố Amarapura.",
        "Người thực hành và sống theo giáo pháp của Đức Phật cao thượng ấy được gọi là \"Buddha-bhāsā-vaṅ\" (người theo Phật giáo/Phật tử).": "Người thực hành và sống theo giáo pháp của Đức Phật cao thượng ấy được gọi là \"Phật tử\" (Buddha-bhāsā-vaṅ).",
        "Nếu không có đức tin, dù có tuyên bố thừa nhận mình là \"Phật tử\" đi nữa thì vẫn chưa thể là một \"Phật tử\" thực thụ.": "Nếu không có đức tin, dù tuyên bố mình là \"Phật tử\" thì vẫn chưa phải là một Phật tử thực thụ.",
        "Nếu có đức tin thì phải thọ trì Tam Quy, bắt đầu bằng \"Buddhaṃ saraṇaṃ gacchāmi\" (Con đem hết lòng thành kính xin quy y Phật).": "Nếu có đức tin, hãy thọ trì Tam Quy, bắt đầu với: \"Buddhaṃ saraṇaṃ gacchāmi\" (Con đem hết lòng thành kính xin quy y Phật).",
        "Những người Phật tử ấy, là những người tin tưởng sâu sắc gắn liền với trí tuệ, khi quy y đức Thế Tôn, ngoài việc quy y làm cho đức Phật cao thượng hiện rõ trong tâm như thể Ngài đang còn tại thế, họ còn có thói quen tôn kính và hài lòng đối với các tôn tượng, bảo tháp (cho dù có dát vàng hay không).": "Những Phật tử ấy là những người có niềm tin sâu sắc gắn liền với trí tuệ; khi quy y Đức Thế Tôn, ngoài việc làm cho hình ảnh Đức Phật hiện rõ trong tâm như thể Ngài đang tại thế, họ còn tôn kính các tôn tượng và bảo tháp (dù có dát vàng hay không).",
        "Khi quy y Pháp, họ cũng hướng tâm đến Giáo pháp đích thực trong Tam Tạng và các đạo quả Niết-bàn để cúng dâng một cách hết lòng.": "Khi quy y Pháp, họ hướng tâm đến Giáo pháp đích thực trong Tam Tạng và các Đạo Quả Niết-bàn để cúng dâng một cách hết lòng.",
        "Khi quy y Tăng, họ quy y cả những bậc phàm tăng có giới đức trang nghiêm đầy đủ các đức hạnh như bậc thiện hạnh (suppaṭipanna), và quy y cả bậc Thánh tăng thông qua sự hướng tâm tôn kính.": "Khi quy y Tăng, họ quy y cả những bậc phàm tăng giới đức trang nghiêm, đầy đủ đức hạnh và cả các bậc Thánh tăng thông qua sự hướng tâm tôn kính.",
        "Những người trở thành Phật tử theo truyền thống gia đình hoặc bằng đức tin do nghe người khác nói hay, thì ít khi có được tâm đức tin thấu đạt sâu sắc nơi Phật thật, Pháp thật, Tăng thật. (Điều này không có nghĩa là hoàn toàn không có).": "Những người theo đạo theo truyền thống gia đình hoặc nghe lời hay mà tin thì ít khi có được niềm tin thấu đạt sâu sắc nơi Phật thật, Pháp thật, Tăng thật. (Điều này không có nghĩa là hoàn toàn không có).",
        "Đối với các tôn tượng và bảo tháp, họ thường có xu hướng thành kính hơn đối với những tượng Phật của dòng tộc, tổ tiên hoặc những tượng tháp do chính mình cúng dường.": "Đối với các tôn tượng và bảo tháp, họ thường có xu hướng thành kính hơn với những tượng Phật của dòng tộc, tổ tiên hoặc những tượng tháp do chính mình cúng dường.",
        "Chính vì vậy, họ bỏ mặc những tôn tượng và bảo tháp không có vàng ở làng quê mình để đi chiêm bái Phật ở những thành phố lớn.": "Vì vậy, họ bỏ mặc những tôn tượng và bảo tháp không dát vàng ở quê nhà để đi chiêm bái Phật tại những thành phố lớn.",
        "Những người Phật tử theo đức tin (cảm tính) ấy không chỉ có cách thành kính Phật không đúng mực, mà trong việc thành kính Pháp và Tăng, họ cũng rất thiếu chuẩn mực.": "Những Phật tử theo đức tin cảm tính ấy không chỉ thành kính Phật không đúng mực, mà trong việc tôn kính Pháp và Tăng cũng rất thiếu chuẩn mực."
    }
    
    return replacements.get(content, content)

def process_full_file():
    with open(input_file, 'r', encoding='utf-8') as f:
        full_content = f.read()
    
    pages = re.split(r'(TRANG \d+)', full_content)
    final_output = []
    
    for i in range(1, len(pages), 2):
        page_label = pages[i]
        page_content = pages[i+1].strip()
        
        lines = page_content.split('\n')
        processed_page = [page_label]
        
        for line in lines:
            line = line.strip()
            if not line: continue
            if line.startswith('→'):
                raw_text = line[1:].strip()
                refined = refine_line(raw_text)
                processed_page.append(f"→ {refined}")
            else:
                processed_page.append(line)
        
        final_output.append('\n'.join(processed_page))
    
    with open(output_file, 'w', encoding='utf-8') as f:
        f.write('\n\n'.join(final_output))

if __name__ == "__main__":
    process_full_file()
