import os
import numpy as np
from PIL import Image, ImageFont, ImageDraw
import pandas as pd
import datetime
import PLOT
import directory
import time


# 레포트 text 폰트 
Font_medium30 = ImageFont.truetype(os.path.join(directory.FONT_DIR, 'Pretendard-Medium.ttf'), 30)
Font_medium32 = ImageFont.truetype(os.path.join(directory.FONT_DIR, 'Pretendard-Medium.ttf'), 32)
Font_medium35 = ImageFont.truetype(os.path.join(directory.FONT_DIR, 'Pretendard-Medium.ttf'), 35)
Font_medium50 = ImageFont.truetype(os.path.join(directory.FONT_DIR, 'Pretendard-Medium.ttf'), 50)
Font_medium45 = ImageFont.truetype(os.path.join(directory.FONT_DIR, 'Pretendard-Medium.ttf'), 45)
Font_bold35 = ImageFont.truetype(os.path.join(directory.FONT_DIR, 'Pretendard-Bold.ttf'), 35)
Font_bold45 = ImageFont.truetype(os.path.join(directory.FONT_DIR, 'Pretendard-Bold.ttf'), 45)
Font_bold50 = ImageFont.truetype(os.path.join(directory.FONT_DIR, 'Pretendard-Bold.ttf'), 50)
Font_bold55 = ImageFont.truetype(os.path.join(directory.FONT_DIR, 'Pretendard-Bold.ttf'), 55)


# 레포트 이미지 파일 경로 
BASE_DIR = directory.BASE_DIR  # 기본 레포트 
BASE_DIR_com = directory.BASE_DIR_com  # 기관 홍보 
BASE_DIR_HOS = directory.BASE_DIR_HOS  # 검진센터 
hos_msn = directory.hos_msn  # 검진센터 msn 리스트 

def make_report(file, RESULT_DIR, depressed=0, unrest=0, number='0000', name='Bwave', sex='M/F', age='00', date=datetime.datetime.today().isoformat().split('T')[0], eeg_only=False, ppg_only=False, reportLanguage="kr", msn=1):
    #s_time = time.perf_counter()
    name = name.replace("_", " ")
    people = [date, number, name, sex, age+"세"]
    global BASE_DIR
    if reportLanguage =="en":
        BASE_DIR = directory.BASE_DIR_EN
        people = [date, number, name, sex, age]
    if msn == "147": ##CECLAB 계정일 경우 로고없는 버전
        BASE_DIR = directory.BASE_DIR_CEC

    real_age = age  # 설문 레포트 만들 때 나이 구분을 위해 실제 나이값 받아옴 


    age = directory.age_modify(age)  # age 0,10,15,20,30,40,50,60 으로 나눔 

    # 전체 평균, 표준편차 저장되어 있는 csv 파일 
    info = pd.read_csv(os.path.join(directory.ROOT_DIR, 'all_info.csv'))
    info.index = ['eeg_mean', 'eeg_std', 'ppg_mean', 'ppg_std']

    my_eeg = 0
    my_ppg = 0

    if (eeg_only == False) & (ppg_only == False): #TODO: 코드정리
        result_eeg = pd.read_csv(os.path.join(RESULT_DIR, file.split('/')[-1][:-4] + '_eeg.csv'))
        result_ppg = pd.read_csv(os.path.join(RESULT_DIR, file.split('/')[-1][:-4] + '_ppg.csv'))
        my_eeg = result_eeg['eeg'].values[0]
        my_ppg = result_ppg['ppg'].values[0]

        eeg_emoji = result_eeg['eeg_emoji'].values[0].split(', ')
        temp_eeg_emoji = change_emoji(eeg_emoji, sort='eeg')
        eeg_dq = directory.change_dq(result_eeg['eeg_dq'].values[0], reportLanguage=reportLanguage)

        ppg_emoji = result_ppg['ppg_emoji'].values[0].split(', ')
        temp_ppg_emoji = change_emoji(ppg_emoji, sort='ppg')
        ppg_dq = directory.change_dq(result_ppg['ppg_dq'].values[0], reportLanguage=reportLanguage)
        
        hrt = str(result_ppg['hrt'].values[0])

        eeg_ebsi = str(result_eeg['eeg_ebsi'].values[0])   # 검진센터 레포트 만들 떄 필요 
        eeg_ebsi_detail = result_eeg['eeg_ebsi_detail'].values[0].split(', ')
        ppg_ebsi = str(result_ppg['ppg_ebsi'].values[0])
        ppg_ebsi_detail = result_ppg['ppg_ebsi_detail'].values[0].split(', ')

        eeg_ebsi_word = [k for k, v in directory.brain_ebsi_index.items() if (v == int(eeg_ebsi)) and (k.upper() == k.lower())][0]
        ppg_ebsi_word = [k for k, v in directory.mind_ebsi_index.items() if (v == int(ppg_ebsi)) and (k.upper() == k.lower())][0]

        score_word = []
        score_dict = {'건강': 80, '보통': 70, '경고': 60, '위험': 0}  # --> directory에 추가하는 것도 좋을 듯
        score_word.append(next(word for word, threshold in score_dict.items() if my_eeg >= threshold))
        score_word.append(next(word for word, threshold in score_dict.items() if my_ppg >= threshold))

        score_word.append(eeg_ebsi_word)
        score_word.append(ppg_ebsi_word)


    elif eeg_only == True:
        result_eeg = pd.read_csv(os.path.join(RESULT_DIR, file.split('/')[-1][:-4] + '_eeg.csv'))
        my_eeg = result_eeg['eeg'].values[0]
        eeg_emoji = result_eeg['eeg_emoji'].values[0].split(', ')
        temp_eeg_emoji = change_emoji(eeg_emoji, sort='eeg')
        eeg_dq = directory.change_dq(result_eeg['eeg_dq'].values[0], reportLanguage=reportLanguage)
        eeg_ebsi = str(result_eeg['eeg_ebsi'].values[0])
        eeg_ebsi_detail = result_eeg['eeg_ebsi_detail'].values[0].split(', ')
        eeg_ebsi_word = [k for k, v in directory.brain_ebsi_index.items() if (v == int(eeg_ebsi)) and (k.upper() == k.lower())][0]

        score_word = []
        score_dict = {'건강': 80, '보통': 70, '경고': 60, '위험': 0}  # --> directory에 추가하는 것도 좋을 듯
        score_word.append(next(word for word, threshold in score_dict.items() if my_eeg >= threshold))
        score_word.append(eeg_ebsi_word)

    elif ppg_only == True:
        result_ppg = pd.read_csv(os.path.join(RESULT_DIR, file.split('/')[-1][:-4] + '_ppg.csv'))
        my_ppg = result_ppg['ppg'].values[0]
        ppg_emoji = result_ppg['ppg_emoji'].values[0].split(', ')
        temp_ppg_emoji = change_emoji(ppg_emoji, sort='ppg')
        ppg_dq = directory.change_dq(result_ppg['ppg_dq'].values[0], reportLanguage=reportLanguage)
        hrt = str(result_ppg['hrt'].values[0])
        ppg_ebsi = str(result_ppg['ppg_ebsi'].values[0])
        ppg_ebsi_detail = result_ppg['ppg_ebsi_detail'].values[0].split(', ')
        ppg_ebsi_word = [k for k, v in directory.mind_ebsi_index.items() if (v == int(ppg_ebsi)) and (k.upper() == k.lower())][0]

        score_word = []
        score_dict = {'건강': 80, '보통': 70, '경고': 60, '위험': 0}  # --> directory에 추가하는 것도 좋을 듯
        score_word.append(next(word for word, threshold in score_dict.items() if my_ppg >= threshold))
        score_word.append(ppg_ebsi_word)

    plot_stat(info, age, directory.sex_modify(sex, reportLanguage="kr"), RESULT_DIR, my_eeg=my_eeg, my_ppg=my_ppg, reportLanguage=reportLanguage)

    
    if msn in hos_msn:
        report_page1_hos(people, RESULT_DIR, reportLanguage=reportLanguage)  # 검진센터 표지 (추후 검진센터 다른 디자인이라면 밑에 elif 로 추가하기 )
    else:
        report_page1(people, RESULT_DIR, reportLanguage=reportLanguage) # 기본 표지    


    if (eeg_only == False) & (ppg_only == False):
        if msn in hos_msn:
            report_page2_hos(people, RESULT_DIR,temp_eeg_emoji, temp_ppg_emoji, score_word, eeg_ebsi,ppg_ebsi) # 검진센터용 요약페이지 
            report_page2(people, RESULT_DIR, eeg_dq, ppg_dq, temp_eeg_emoji, temp_ppg_emoji, reportLanguage=reportLanguage, page_no='02') # 요약
            report_page3(people, RESULT_DIR, eeg_dq, eeg_emoji, reportLanguage=reportLanguage,  page_no='03') # 두뇌1
            report_page4(people, RESULT_DIR, eeg_emoji, reportLanguage=reportLanguage, page_no='04') # 두뇌2
            report_page5(people, RESULT_DIR, ppg_dq, ppg_emoji, hrt, reportLanguage=reportLanguage, page_no='05') # 마음1
            report_page6(people, RESULT_DIR, depressed, unrest, ppg_emoji, reportLanguage=reportLanguage, page_no='06') # 마음2
            report_page7(people, RESULT_DIR, reportLanguage=reportLanguage, page_no='07') # 통계
        else:
            report_page2(people, RESULT_DIR, eeg_dq, ppg_dq, temp_eeg_emoji, temp_ppg_emoji, reportLanguage=reportLanguage) # 요약
            report_page3(people, RESULT_DIR, eeg_dq, eeg_emoji, reportLanguage=reportLanguage) # 두뇌1
            report_page4(people, RESULT_DIR, eeg_emoji, reportLanguage=reportLanguage) # 두뇌2
            report_page5(people, RESULT_DIR, ppg_dq, ppg_emoji, hrt, reportLanguage=reportLanguage) # 마음1
            report_page6(people, RESULT_DIR, depressed, unrest, ppg_emoji, reportLanguage=reportLanguage) # 마음2
            report_page7(people, RESULT_DIR, reportLanguage=reportLanguage) # 통계
        #report_page8(people, RESULT_DIR, reportLanguage=reportLanguage, msn=msn) # 기관 홍보

    elif eeg_only == True:
        if msn in hos_msn:
            report_page2_hos_eeg(people, RESULT_DIR, temp_eeg_emoji, score_word, eeg_ebsi)
            report_page2_eeg(people, RESULT_DIR, eeg_dq, temp_eeg_emoji, reportLanguage=reportLanguage, page_no='02') # 두뇌만 요약
            report_page3(people, RESULT_DIR, eeg_dq, eeg_emoji, reportLanguage=reportLanguage, page_no='03')  # 두뇌1
            report_page4(people, RESULT_DIR, eeg_emoji, reportLanguage=reportLanguage,page_no='04')  # 두뇌2
        else:
            report_page2_eeg(people, RESULT_DIR, eeg_dq, temp_eeg_emoji, reportLanguage=reportLanguage, page_no='01') # 두뇌만 요약
            report_page3(people, RESULT_DIR, eeg_dq, eeg_emoji, reportLanguage=reportLanguage, page_no='02')  # 두뇌1
            report_page4(people, RESULT_DIR, eeg_emoji, reportLanguage=reportLanguage, page_no='03')  # 두뇌2

    elif ppg_only == True:
        if msn in hos_msn:
            report_page2_hos_ppg(people, RESULT_DIR, temp_ppg_emoji, score_word, ppg_ebsi)
            report_page2_ppg(people, RESULT_DIR, ppg_dq, temp_ppg_emoji, reportLanguage=reportLanguage, page_no='02') # 마음만 요약
            report_page5(people, RESULT_DIR, ppg_dq, ppg_emoji, hrt, reportLanguage=reportLanguage, page_no='03') # 마음1
            report_page6(people, RESULT_DIR, depressed, unrest, ppg_emoji, reportLanguage=reportLanguage,page_no='04') # 마음2
        else:
            report_page2_ppg(people, RESULT_DIR, ppg_dq, temp_ppg_emoji, reportLanguage=reportLanguage) # 마음만 요약
            report_page5(people, RESULT_DIR, ppg_dq, ppg_emoji, hrt, reportLanguage=reportLanguage, page_no='02') # 마음1
            report_page6(people, RESULT_DIR, depressed, unrest, ppg_emoji, reportLanguage=reportLanguage,page_no='03') # 마음2

def make_report_two_files(file_eeg, file_ppg, RESULT_DIR, depressed=0, unrest=0, number='0000', name='Bwave', sex='M/F', age='00', date=datetime.datetime.today().isoformat().split('T')[0], eeg_only=False, ppg_only=False, reportLanguage="kr", msn=1):
    name = name.replace("_", " ")
    people = [date, number, name, sex, age+"세"]
    global BASE_DIR
    if reportLanguage =="en":
        BASE_DIR = directory.BASE_DIR_EN
        people = [date, number, name, sex, age]
    if msn == "147": ##CECLAB 계정일 경우 로고없는 버전
        BASE_DIR = directory.BASE_DIR_CEC
                

    age = directory.age_modify(age)
    info = pd.read_csv(os.path.join(directory.ROOT_DIR, 'all_info.csv'))
    info.index = ['eeg_mean', 'eeg_std', 'ppg_mean', 'ppg_std']

    my_eeg = 0
    my_ppg = 0

    if (eeg_only == False) & (ppg_only == False): #TODO: 코드정리
        result_eeg = pd.read_csv(os.path.join(RESULT_DIR, file_eeg.split('/')[-1][:-4] + '_eeg.csv'))
        result_ppg = pd.read_csv(os.path.join(RESULT_DIR, file_ppg.split('/')[-1][:-4] + '_ppg.csv'))
        my_eeg = result_eeg['eeg'].values[0]
        my_ppg = result_ppg['ppg'].values[0]

        eeg_emoji = result_eeg['eeg_emoji'].values[0].split(', ')
        temp_eeg_emoji = change_emoji(eeg_emoji, sort='eeg')
        eeg_dq = directory.change_dq(result_eeg['eeg_dq'].values[0], reportLanguage=reportLanguage)

        ppg_emoji = result_ppg['ppg_emoji'].values[0].split(', ')
        temp_ppg_emoji = change_emoji(ppg_emoji, sort='ppg')
        ppg_dq = directory.change_dq(result_ppg['ppg_dq'].values[0], reportLanguage=reportLanguage)
        
        hrt = str(result_ppg['hrt'].values[0])


        eeg_ebsi = str(result_eeg['eeg_ebsi'].values[0])
        eeg_ebsi_detail = result_eeg['eeg_ebsi_detail'].values[0].split(', ')
        ppg_ebsi = str(result_ppg['ppg_ebsi'].values[0])
        ppg_ebsi_detail = result_ppg['ppg_ebsi_detail'].values[0].split(', ')

        eeg_ebsi_word = [k for k, v in directory.brain_ebsi_index.items() if (v == int(eeg_ebsi)) and (k.upper() == k.lower())][0]
        ppg_ebsi_word = [k for k, v in directory.mind_ebsi_index.items() if (v == int(ppg_ebsi)) and (k.upper() == k.lower())][0]

        score_word = []
        score_dict = {'건강': 80, '보통': 70, '경고': 60, '위험': 0}  # --> directory에 추가하는 것도 좋을 듯
        score_word.append(next(word for word, threshold in score_dict.items() if my_eeg >= threshold))
        score_word.append(next(word for word, threshold in score_dict.items() if my_ppg >= threshold))

        score_word.append(eeg_ebsi_word)
        score_word.append(ppg_ebsi_word)

    elif eeg_only == True:
        result_eeg = pd.read_csv(os.path.join(RESULT_DIR, file_eeg.split('/')[-1][:-4] + '_eeg.csv'))
        my_eeg = result_eeg['eeg'].values[0]
        eeg_emoji = result_eeg['eeg_emoji'].values[0].split(', ')
        temp_eeg_emoji = change_emoji(eeg_emoji, sort='eeg')
        eeg_dq = directory.change_dq(result_eeg['eeg_dq'].values[0], reportLanguage=reportLanguage)
        eeg_ebsi = str(result_eeg['eeg_ebsi'].values[0])
        eeg_ebsi_detail = result_eeg['eeg_ebsi_detail'].values[0].split(', ')
        eeg_ebsi_word = [k for k, v in directory.brain_ebsi_index.items() if (v == int(eeg_ebsi)) and (k.upper() == k.lower())][0]
        score_word = []
        score_dict = {'건강': 80, '보통': 70, '경고': 60, '위험': 0}  # --> directory에 추가하는 것도 좋을 듯
        score_word.append(next(word for word, threshold in score_dict.items() if my_eeg >= threshold))
        score_word.append(eeg_ebsi_word)


    elif ppg_only == True:
        result_ppg = pd.read_csv(os.path.join(RESULT_DIR, file_ppg.split('/')[-1][:-4] + '_ppg.csv'))
        my_ppg = result_ppg['ppg'].values[0]
        ppg_emoji = result_ppg['ppg_emoji'].values[0].split(', ')
        temp_ppg_emoji = change_emoji(ppg_emoji, sort='ppg')
        ppg_dq = directory.change_dq(result_ppg['ppg_dq'].values[0], reportLanguage=reportLanguage)
        hrt = str(result_ppg['hrt'].values[0])
        ppg_ebsi = str(result_ppg['ppg_ebsi'].values[0])
        ppg_ebsi_detail = result_ppg['ppg_ebsi_detail'].values[0].split(', ')
        ppg_ebsi_word = [k for k, v in directory.mind_ebsi_index.items() if (v == int(ppg_ebsi)) and (k.upper() == k.lower())][0]

        score_word = []
        score_dict = {'건강': 80, '보통': 70, '경고': 60, '위험': 0}  # --> directory에 추가하는 것도 좋을 듯
        score_word.append(next(word for word, threshold in score_dict.items() if my_ppg >= threshold))
        score_word.append(ppg_ebsi_word)


    plot_stat(info, age, directory.sex_modify(sex, reportLanguage="kr"), RESULT_DIR, my_eeg=my_eeg, my_ppg=my_ppg, reportLanguage=reportLanguage)

    if msn in hos_msn:
        report_page1_hos(people, RESULT_DIR, reportLanguage=reportLanguage)  # 건강검진 센터용 표지 
    else:
        report_page1(people, RESULT_DIR, reportLanguage=reportLanguage) # 기본 표지    


    if (eeg_only == False) & (ppg_only == False):
        if msn in hos_msn:
            report_page2_hos(people, RESULT_DIR,temp_eeg_emoji, temp_ppg_emoji, score_word, eeg_ebsi,ppg_ebsi) # 검진센터용 요약페이지 
            report_page2(people, RESULT_DIR, eeg_dq, ppg_dq, temp_eeg_emoji, temp_ppg_emoji, reportLanguage=reportLanguage, page_no='02') # 요약
            report_page3(people, RESULT_DIR, eeg_dq, eeg_emoji, reportLanguage=reportLanguage,  page_no='03') # 두뇌1
            report_page4(people, RESULT_DIR, eeg_emoji, reportLanguage=reportLanguage, page_no='04') # 두뇌2
            report_page5(people, RESULT_DIR, ppg_dq, ppg_emoji, hrt, reportLanguage=reportLanguage, page_no='05') # 마음1
            report_page6(people, RESULT_DIR, depressed, unrest, ppg_emoji, reportLanguage=reportLanguage, page_no='06') # 마음2
            report_page7(people, RESULT_DIR, reportLanguage=reportLanguage, page_no='07') # 통계
        else:
            report_page2(people, RESULT_DIR, eeg_dq, ppg_dq, temp_eeg_emoji, temp_ppg_emoji, reportLanguage=reportLanguage) # 요약
            report_page3(people, RESULT_DIR, eeg_dq, eeg_emoji, reportLanguage=reportLanguage) # 두뇌1
            report_page4(people, RESULT_DIR, eeg_emoji, reportLanguage=reportLanguage) # 두뇌2
            report_page5(people, RESULT_DIR, ppg_dq, ppg_emoji, hrt, reportLanguage=reportLanguage) # 마음1
            report_page6(people, RESULT_DIR, depressed, unrest, ppg_emoji, reportLanguage=reportLanguage) # 마음2
            report_page7(people, RESULT_DIR, reportLanguage=reportLanguage) # 통계

    elif eeg_only == True:
        if msn in hos_msn:
            report_page2_hos_eeg(people, RESULT_DIR, temp_eeg_emoji, score_word, eeg_ebsi)
            report_page2_eeg(people, RESULT_DIR, eeg_dq, temp_eeg_emoji, reportLanguage=reportLanguage, page_no='02') # 두뇌만 요약
            report_page3(people, RESULT_DIR, eeg_dq, eeg_emoji, reportLanguage=reportLanguage, page_no='03')  # 두뇌1
            report_page4(people, RESULT_DIR, eeg_emoji, reportLanguage=reportLanguage,page_no='04')  # 두뇌2
        else:
            report_page2_eeg(people, RESULT_DIR, eeg_dq, temp_eeg_emoji, reportLanguage=reportLanguage, page_no='01') # 두뇌만 요약
            report_page3(people, RESULT_DIR, eeg_dq, eeg_emoji, reportLanguage=reportLanguage, page_no='02')  # 두뇌1
            report_page4(people, RESULT_DIR, eeg_emoji, reportLanguage=reportLanguage, page_no='03')  # 두뇌2

    elif ppg_only == True:
        if msn in hos_msn:
            report_page2_hos_ppg(people, RESULT_DIR, temp_ppg_emoji, score_word, ppg_ebsi)
            report_page2_ppg(people, RESULT_DIR, ppg_dq, temp_ppg_emoji, reportLanguage=reportLanguage, page_no='02') # 마음만 요약
            report_page5(people, RESULT_DIR, ppg_dq, ppg_emoji, hrt, reportLanguage=reportLanguage, page_no='03') # 마음1
            report_page6(people, RESULT_DIR, depressed, unrest, ppg_emoji, reportLanguage=reportLanguage,page_no='04') # 마음2
        else:
            report_page2_ppg(people, RESULT_DIR, ppg_dq, temp_ppg_emoji, reportLanguage=reportLanguage) # 마음만 요약
            report_page5(people, RESULT_DIR, ppg_dq, ppg_emoji, hrt, reportLanguage=reportLanguage, page_no='02') # 마음1
            report_page6(people, RESULT_DIR, depressed, unrest, ppg_emoji, reportLanguage=reportLanguage,page_no='03') # 마음2


    # report_page1(people, RESULT_DIR, reportLanguage=reportLanguage) # 표지
    # if (eeg_only == False) & (ppg_only == False):
    #     report_page2(people, RESULT_DIR, eeg_dq, ppg_dq, temp_eeg_emoji, temp_ppg_emoji, reportLanguage=reportLanguage) # 요약
    #     report_page3(people, RESULT_DIR, eeg_dq, eeg_emoji, reportLanguage=reportLanguage) # 두뇌1
    #     report_page4(people, RESULT_DIR, eeg_emoji, reportLanguage=reportLanguage) # 두뇌2
    #     report_page5(people, RESULT_DIR, ppg_dq, ppg_emoji, hrt, reportLanguage=reportLanguage) # 마음1
    #     report_page6(people, RESULT_DIR, depressed, unrest, ppg_emoji, reportLanguage=reportLanguage) # 마음2
    #     report_page7(people, RESULT_DIR, reportLanguage=reportLanguage) # 통계
    #     #report_page8(people, RESULT_DIR, reportLanguage=reportLanguage, msn=msn) # 기관 홍보
    # elif eeg_only == True:
    #     report_page2_eeg(people, RESULT_DIR, eeg_dq, temp_eeg_emoji, reportLanguage=reportLanguage) # 두뇌만 요약
    #     report_page3(people, RESULT_DIR, eeg_dq, eeg_emoji, reportLanguage=reportLanguage)  # 두뇌1
    #     report_page4(people, RESULT_DIR, eeg_emoji, reportLanguage=reportLanguage)  # 두뇌2
    # elif ppg_only == True:
    #     report_page2_ppg(people, RESULT_DIR, ppg_dq, temp_ppg_emoji, reportLanguage=reportLanguage) # 마음만 요약
    #     report_page5(people, RESULT_DIR, ppg_dq, ppg_emoji, hrt, reportLanguage=reportLanguage) # 마음1
    #     report_page6(people, RESULT_DIR, depressed, unrest, ppg_emoji, reportLanguage=reportLanguage) # 마음2


    


def plot_stat(info, age, sex, RESULT_DIR, my_eeg=0, my_ppg=0, reportLanguage="kr"):
    sex_eeg_mean = info[sex]['eeg_mean']
    sex_ppg_mean = info[sex]['ppg_mean']

    age_eeg_mean = info[age]['eeg_mean']
    age_ppg_mean = info[age]['ppg_mean']

    age_eeg_std = info[age]['eeg_std']
    age_ppg_std = info[age]['ppg_std']

    all_eeg_mean = info['all']['eeg_mean']
    all_ppg_mean = info['all']['ppg_mean']

    eeg = np.array([float(all_eeg_mean), float(age_eeg_mean), float(sex_eeg_mean), float(my_eeg)])
    ppg = np.array([float(all_ppg_mean), float(age_ppg_mean), float(sex_ppg_mean), float(my_ppg)])

    eeg_zscore = (my_eeg - age_eeg_mean) / age_eeg_std
    ppg_zscore = (my_ppg - age_ppg_mean) / age_ppg_std

    if my_eeg != 0:
        PLOT.plot_statistic_mean(values=eeg, sort='eeg', RESULT_DIR=RESULT_DIR, reportLanguage=reportLanguage)
        PLOT.plot_norm(zscore=eeg_zscore, sort='eeg', age=age, RESULT_DIR=RESULT_DIR, reportLanguage=reportLanguage)
    if my_ppg != 0:
        PLOT.plot_statistic_mean(values=ppg, sort='ppg', RESULT_DIR=RESULT_DIR, reportLanguage=reportLanguage)
        PLOT.plot_norm(zscore=ppg_zscore, sort='ppg', age=age, RESULT_DIR=RESULT_DIR, reportLanguage=reportLanguage)


def change_emoji(emoji:list, sort:str):
    temp_emoji = emoji.copy()
    if sort == "eeg":
        if int(emoji[1]) == 41 or int(emoji[1]) == 42:
            temp_emoji[1] = 4
        elif int(emoji[1]) == 31 or int(emoji[1]) == 32:
            temp_emoji[1] = 3
        else:
            temp_emoji[1] = emoji[1]
            
        if int(emoji[3]) == 1:
            temp_emoji[3] = 2
        elif int(emoji[3]) == 2 or int(emoji[3]) == 3:
            temp_emoji[3] = 3
        elif int(emoji[3]) == 4 or int(emoji[3]) == 5:
            temp_emoji[3] = 4
        
    if sort == "ppg":
        if int(emoji[1]) == 1:
            temp_emoji[1] = 2
        elif int(emoji[1]) == 2 or int(emoji[1]) == 3:
            temp_emoji[1] = 4
        else:
            temp_emoji[1] = 5
    return temp_emoji


def report_page1(people: list, RESULT_DIR: str, reportLanguage: str="kr"):
    first_1 = Image.open(os.path.join(BASE_DIR, 'first_1.png'))

    draw = ImageDraw.Draw(first_1)
    if reportLanguage =="en":
        draw.text((380, 3270), people[0], fill="black", font=Font_medium45, align='center')
        draw.text((840, 3270), people[1], fill="black", font=Font_medium45, align='center')
        draw.text((1380, 3270), people[2], fill="black", font=Font_medium45, align='center')
        draw.text((1860, 3270), people[3], fill="black", font=Font_medium45, align='center')
        draw.text((2140, 3270), people[4], fill="black", font=Font_medium45, align='center')
    else:
        draw.text((390, 3275), people[0], fill="black", font=Font_medium45, align='center')
        draw.text((930, 3275), people[1], fill="black", font=Font_medium45, align='center')
        draw.text((1415, 3275), people[2], fill="black", font=Font_medium45, align='center')
        draw.text((1830, 3275), people[3], fill="black", font=Font_medium45, align='center')
        draw.text((2140, 3275), '만 ' + people[4], fill="black", font=Font_medium45, align='center')

    first_1 = first_1.convert('RGB')
    first_1.save(os.path.join(RESULT_DIR, 'first_1.jpg'))



def report_page1_hos(people: list, RESULT_DIR: str, reportLanguage="kr"):  # 건강검진센터용 표지 
    first_1 = Image.open(os.path.join(BASE_DIR_HOS, 'first_1.png'))  # 표지

    draw = ImageDraw.Draw(first_1)
    # if reportLanguage=reportLanguage:
    #     draw.text((380, 3270), people[0], fill="black", font=Font_medium45, align='center')
    #     draw.text((840, 3270), people[1], fill="black", font=Font_medium45, align='center')
    #     draw.text((1380, 3270), people[2], fill="black", font=Font_medium45, align='center')
    #     draw.text((1860, 3270), people[3], fill="black", font=Font_medium45, align='center')
    #     draw.text((2140, 3270), people[4], fill="black", font=Font_medium45, align='center')
    # else:
    draw.text((390, 3275), people[0], fill="black", font=Font_medium45, align='center')
    draw.text((910, 3275), people[1], fill="black", font=Font_medium45, align='center')
    draw.text((1415, 3275), people[2], fill="black", font=Font_medium45, align='center')
    draw.text((1830, 3275), people[3], fill="black", font=Font_medium45, align='center')
    draw.text((2140, 3275), '만 ' + people[4], fill="black", font=Font_medium45, align='center')

    first_1 = first_1.convert('RGB')
    first_1.save(os.path.join(RESULT_DIR, 'first_1.jpg'))

def report_page2_hos(people:list, RESULT_DIR:str, temp_eeg_emoji:list, temp_ppg_emoji:list, score_word: list, eeg_ebsi:str, ppg_ebsi:str,reportLanguage: str="kr", page_no:str='01'):

    first_2 = Image.open(os.path.join(BASE_DIR_HOS, 'n_first_2_1.png'))  # 레포트 페이지 넘버링 없는 이미지 
    draw = ImageDraw.Draw(first_2)

    draw.text((270, 330), people[0], fill="black", font=Font_medium32, align='center')
    draw.text((610, 326), people[1], fill="black", font=Font_medium32, align='center')
    draw.text((930, 326), people[2], fill="black", font=Font_medium32, align='center')
    draw.text((1200, 326), people[3], fill="black", font=Font_medium32, align='center')
    draw.text((1400, 326), '만 '+ people[4], fill="black", font=Font_medium32, align='center')
    draw.text((1780, 330), score_word[0], fill="black", font=Font_medium30, align='center')
    draw.text((1840, 330), ",", fill="black", font=Font_medium30, align='center')
    draw.text((1852, 330), score_word[2], fill="black", font=Font_medium30, align='center')
    draw.text((2170, 328), score_word[1], fill="black", font=Font_medium30, align='center')
    draw.text((2230, 328), ",", fill="black", font=Font_medium32, align='center')
    draw.text((2242, 328), score_word[3], fill="black", font=Font_medium30, align='center')

    add_image_1 = Image.open(os.path.join(RESULT_DIR, 'eeg_score.png'))
    add_image_1 = add_image_1.crop((400, 400, 1400, 1400))  # 1000 1000
    add_image_1 = add_image_1.resize((int(1000 / 1.8), int(1000 / 1.8)))
    first_2.paste(add_image_1, (350, 850), add_image_1)

    add_image_2 = Image.open(os.path.join(RESULT_DIR, 'ppg_score.png'))
    add_image_2 = add_image_2.crop((400, 400, 1400, 1400))  # 1000 1000
    add_image_2 = add_image_2.resize((int(1000 / 1.8), int(1000 / 1.8)))
    first_2.paste(add_image_2, (1570, 850), add_image_2)

    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_eeg_emoji[0]))), (330, 1450),
                  Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_eeg_emoji[0]))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_eeg_emoji[1]))), (810, 1450),
                  Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_eeg_emoji[1]))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_eeg_emoji[2]))), (330, 1750),
                  Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_eeg_emoji[2]))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_eeg_emoji[3]))), (810, 1750),
                  Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_eeg_emoji[3]))))

    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, '1-{}.png'.format(temp_eeg_emoji[0]))), (240, 1620),
                  Image.open(os.path.join(BASE_DIR_HOS, '1-{}.png'.format(temp_eeg_emoji[0]))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, '2-{}.png'.format(temp_eeg_emoji[1]))), (720, 1620),
                  Image.open(os.path.join(BASE_DIR_HOS, '2-{}.png'.format(temp_eeg_emoji[1]))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, '3-{}.png'.format(temp_eeg_emoji[2]))), (240, 1920),
                  Image.open(os.path.join(BASE_DIR_HOS, '3-{}.png'.format(temp_eeg_emoji[2]))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, '4-{}.png'.format(temp_eeg_emoji[3]))), (720, 1920),
                  Image.open(os.path.join(BASE_DIR_HOS, '4-{}.png'.format(temp_eeg_emoji[3]))))

    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_ppg_emoji[0]))), (1500, 1450),
                  Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_ppg_emoji[0]))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_ppg_emoji[1]))), (1980, 1450),
                  Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_ppg_emoji[1]))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_ppg_emoji[2]))), (1500, 1750),
                  Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_ppg_emoji[2]))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_ppg_emoji[3]))), (1980, 1750),
                  Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_ppg_emoji[3]))))

    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, '5-{}.png'.format(temp_ppg_emoji[0]))), (1400, 1620),
                  Image.open(os.path.join(BASE_DIR_HOS, '5-{}.png'.format(temp_ppg_emoji[0]))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, '6-{}.png'.format(temp_ppg_emoji[1]))), (1880, 1620),
                  Image.open(os.path.join(BASE_DIR_HOS, '6-{}.png'.format(temp_ppg_emoji[1]))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, '7-{}.png'.format(temp_ppg_emoji[2]))), (1400, 1920),
                  Image.open(os.path.join(BASE_DIR_HOS, '7-{}.png'.format(temp_ppg_emoji[2]))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, '8-{}.png'.format(temp_ppg_emoji[3]))), (1880, 1920),
                  Image.open(os.path.join(BASE_DIR_HOS, '8-{}.png'.format(temp_ppg_emoji[3]))))

    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, 'ebsi_{}_eeg.png'.format(eeg_ebsi))), (240, 2220),
                  Image.open(os.path.join(BASE_DIR_HOS, 'ebsi_{}_eeg.png'.format(eeg_ebsi))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, 'ebsi_{}_ppg.png'.format(ppg_ebsi))), (1400, 2210),
                  Image.open(os.path.join(BASE_DIR_HOS, 'ebsi_{}_ppg.png'.format(ppg_ebsi))))

    add_image_3 = Image.open(os.path.join(RESULT_DIR, 'eeg_norm.png'))
    add_image_3 = add_image_3.crop((890, 300, 4530, 1500))  # 3640, 1500
    add_image_3 = add_image_3.resize((int(3640 / 3.5), int(1400 / 4.0)))
    first_2.paste(add_image_3, (140, 2900), add_image_3)

    add_image_4 = Image.open(os.path.join(RESULT_DIR, 'ppg_norm.png'))
    add_image_4 = add_image_4.crop((890, 100, 4530, 1500))  # 3640, 1500
    add_image_4 = add_image_4.resize((int(3640 / 3.5), int(1400 / 4.0)))
    first_2.paste(add_image_4, (1300, 2900), add_image_4)
    if reportLanguage == "kr":
        draw.text((125, 3340), page_no, fill="gray", font=Font_bold35, align='center')  # 페이지 넘버 작성 

    first_2 = first_2.convert('RGB')
    first_2.save(os.path.join(RESULT_DIR, 'first_2_1.jpg'))



def report_page2_eeg(people: list, RESULT_DIR: str, eeg_dq: str, temp_eeg_emoji: list, reportLanguage: str="kr", page_no:str='01'):
    '''
    first section
    '''
    first_2 = Image.open(os.path.join(BASE_DIR, 'first_2_eeg.png'))

    draw = ImageDraw.Draw(first_2)
    if reportLanguage =="en":
        # draw.text((270, 356), people[0], fill="black", font=Font_medium32, align='center')
        # draw.text((600, 356), people[1], fill="black", font=Font_medium32, align='center')
        # draw.text((995, 356), people[2], fill="black", font=Font_medium32, align='center')
        # draw.text((1356, 356), people[3], fill="black", font=Font_medium32, align='center')
        # draw.text((1550, 356), people[4], fill="black", font=Font_medium32, align='center')
        # draw.text((740, 1265), eeg_dq, fill="#0084E1", font=Font_bold50, align='center')
        draw.text((270, 394), people[0], fill="black", font=Font_medium32, align='center')
        draw.text((615, 394), people[1], fill="black", font=Font_medium32, align='center')
        draw.text((1100, 394), people[2], fill="black", font=Font_medium32, align='center')
        draw.text((1480, 394), people[3], fill="black", font=Font_medium32, align='center')
        draw.text((1688, 394), people[4], fill="black", font=Font_medium32, align='center')
        draw.text((820, 1390), eeg_dq, fill="#0084E1", font=Font_bold50, align='center')
    else:
        draw.text((283, 344), people[0], fill="black", font=Font_medium32, align='center')
        draw.text((615, 342), people[1], fill="black", font=Font_medium32, align='center')
        draw.text((935, 342), people[2], fill="black", font=Font_medium32, align='center')
        draw.text((1205, 342), people[3], fill="black", font=Font_medium32, align='center')
        draw.text((1410, 342), '만 ' + people[4], fill="black", font=Font_medium32, align='center')
        draw.text((760, 1243), eeg_dq, fill="#0084E1", font=Font_bold50, align='center')

    add_image_1 = Image.open(os.path.join(RESULT_DIR, 'eeg_score.png'))
    add_image_1 = add_image_1.crop((400, 400,1400, 1400)) #1000 1000
    add_image_1 = add_image_1.resize((int(1000/2.2),int(1000/2.2)))
    # first_2.paste(add_image_1, (440, 780), add_image_1)
    if reportLanguage == 'en':
        first_2.paste(add_image_1, (500, 900), add_image_1)
    else:
        first_2.paste(add_image_1, (500, 780), add_image_1)



    first_2 = first_2.convert('RGB')
    first_2.save(os.path.join(RESULT_DIR, 'first_2.jpg'))
    '''
    second_section
    '''
    second_2 = Image.open(os.path.join(BASE_DIR, 'n_second_2_eeg.png'))  # 레포트 페이지번호 없는 버전 

    second_2.paste(Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_eeg_emoji[0]))), (290, 450), Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_eeg_emoji[0]))))
    second_2.paste(Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_eeg_emoji[1]))), (865, 450), Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_eeg_emoji[1]))))
    second_2.paste(Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_eeg_emoji[2]))), (1430, 450), Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_eeg_emoji[2]))))
    second_2.paste(Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_eeg_emoji[3]))), (2000, 450), Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_eeg_emoji[3]))))

    add_image_1 = Image.open(os.path.join(RESULT_DIR, 'eeg_norm.png'))
    add_image_1 = add_image_1.crop((890, 100,4530, 1500)) #3640, 1500
    add_image_1 = add_image_1.resize((int(3640/2.9),int(1400/2.9)))
    second_2.paste(add_image_1, (800,935), add_image_1)

    add_image_2 = Image.open(os.path.join(RESULT_DIR, 'eeg_mean.png'))
    add_image_2 = add_image_2.crop((0, 100, 2670, 850))  # 2670, 750
    add_image_2 = add_image_2.resize((int(2670 / 2.4), int(750 / 2.4)))
    second_2.paste(add_image_2, (800, 1500), add_image_2)

    age = directory.age_modify(people[4], png=True)
    text = directory.define_norm_text(age, "두뇌", reportLanguage=reportLanguage)
    draw = ImageDraw.Draw(second_2)
    draw.text((125, 955), text, fill="black", font=Font_bold45, align='center')


    draw.text((125, 1920), page_no, fill="gray", font=Font_bold35, align='center')  # 페이지 넘버 


    second_2 = second_2.convert("RGB")
    second_2.save(os.path.join(RESULT_DIR, "second_2.jpg"))

def report_page2_ppg(people: list, RESULT_DIR: str, ppg_dq: str, temp_ppg_emoji: list, reportLanguage: str="kr", page_no:str='01'):
    '''
    first section
    '''
    first_2 = Image.open(os.path.join(BASE_DIR, 'first_2_ppg.png'))

    draw = ImageDraw.Draw(first_2)
    if reportLanguage =="en":
        draw.text((270, 394), people[0], fill="black", font=Font_medium32, align='center')
        draw.text((615, 394), people[1], fill="black", font=Font_medium32, align='center')
        draw.text((1100, 394), people[2], fill="black", font=Font_medium32, align='center')
        draw.text((1480, 394), people[3], fill="black", font=Font_medium32, align='center')
        draw.text((1688, 394), people[4], fill="black", font=Font_medium32, align='center')
        draw.text((820, 1390), ppg_dq, fill="#0084E1", font=Font_bold50, align='center')
    else:
        draw.text((283, 358), people[0], fill="black", font=Font_medium32, align='center')
        draw.text((615, 356), people[1], fill="black", font=Font_medium32, align='center')
        draw.text((935, 356), people[2], fill="black", font=Font_medium32, align='center')
        draw.text((1205, 357), people[3], fill="black", font=Font_medium32, align='center')
        draw.text((1410, 357), '만 ' + people[4], fill="black", font=Font_medium32, align='center')
        draw.text((760, 1263), ppg_dq, fill="#0084E1", font=Font_bold50, align='center')

    add_image_1 = Image.open(os.path.join(RESULT_DIR, 'ppg_score.png'))
    add_image_1 = add_image_1.crop((400, 400, 1400, 1400))  # 1000 1000
    add_image_1 = add_image_1.resize((int(1000 / 2.2), int(1000 / 2.2)))
    # first_2.paste(add_image_1, (440, 780), add_image_1)
    if reportLanguage == 'en':
        first_2.paste(add_image_1, (500, 900), add_image_1)
    else:
        first_2.paste(add_image_1, (500, 780), add_image_1)



    first_2 = first_2.convert('RGB')
    first_2.save(os.path.join(RESULT_DIR, 'first_2.jpg'))
    '''
    second_section
    '''
    second_2 = Image.open(os.path.join(BASE_DIR, 'n_second_2_ppg.png'))  # 페이지 넘버링 없는 버전 

    second_2.paste(Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_ppg_emoji[0]))), (290, 450),
                   Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_ppg_emoji[0]))))
    second_2.paste(Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_ppg_emoji[1]))), (865, 450),
                   Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_ppg_emoji[1]))))
    second_2.paste(Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_ppg_emoji[2]))), (1430, 450),
                   Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_ppg_emoji[2]))))
    second_2.paste(Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_ppg_emoji[3]))), (2000, 450),
                   Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_ppg_emoji[3]))))

    add_image_1 = Image.open(os.path.join(RESULT_DIR, 'ppg_norm.png'))
    add_image_1 = add_image_1.crop((890, 100, 4530, 1500))  # 3640, 1500
    add_image_1 = add_image_1.resize((int(3640 / 2.9), int(1400 / 2.9)))
    second_2.paste(add_image_1, (800, 935), add_image_1)

    add_image_2 = Image.open(os.path.join(RESULT_DIR, 'ppg_mean.png'))
    add_image_2 = add_image_2.crop((0, 100, 2670, 850))  # 2670, 750
    add_image_2 = add_image_2.resize((int(2670 / 2.4), int(750 / 2.4)))
    second_2.paste(add_image_2, (800, 1500), add_image_2)

    age = directory.age_modify(people[4], png=True)
    text = directory.define_norm_text(age, "마음", reportLanguage=reportLanguage)

    draw = ImageDraw.Draw(second_2)
    draw.text((125, 955), text, fill="black", font=Font_bold45, align='center')


    draw.text((125, 1920), page_no, fill="gray", font=Font_bold35, align='center')  # 페이지 넘버 수정 



    second_2 = second_2.convert("RGB")
    second_2.save(os.path.join(RESULT_DIR, "second_2.jpg"))


def report_page2(people: list, RESULT_DIR: str, eeg_dq: str, ppg_dq: str, temp_eeg_emoji: list, temp_ppg_emoji: list, reportLanguage: str="kr", page_no:str='01'):
    '''
    first section
    '''
    first_2 = Image.open(os.path.join(BASE_DIR, 'first_2.png'))

    draw = ImageDraw.Draw(first_2)
    if reportLanguage =="en":
        draw.text((270, 338), people[0], fill="black", font=Font_medium32, align='center')
        draw.text((600, 338), people[1], fill="black", font=Font_medium32, align='center')
        draw.text((995, 338), people[2], fill="black", font=Font_medium32, align='center')
        draw.text((1350, 338), people[3], fill="black", font=Font_medium32, align='center')
        draw.text((1550, 338), people[4], fill="black", font=Font_medium32, align='center')
        draw.text((600, 1243), eeg_dq, fill="#0084E1", font=Font_bold50, align='center')
        draw.text((1440, 1243), ppg_dq, fill="#0084E1", font=Font_bold50, align='center')
    else:
        draw.text((284, 340), people[0], fill="black", font=Font_medium32, align='center')
        draw.text((615, 338), people[1], fill="black", font=Font_medium32, align='center')
        draw.text((935, 339), people[2], fill="black", font=Font_medium32, align='center')
        draw.text((1205, 339), people[3], fill="black", font=Font_medium32, align='center')
        draw.text((1420, 339), '만 ' + people[4], fill="black", font=Font_medium32, align='center')
        draw.text((606, 1243), eeg_dq, fill="#0084E1", font=Font_bold50, align='center')
        draw.text((1440, 1243), ppg_dq, fill="#0084E1", font=Font_bold50, align='center')

    add_image_1 = Image.open(os.path.join(RESULT_DIR, 'eeg_score.png'))
    add_image_1 = add_image_1.crop((400, 400, 1400, 1400))  # 1000 1000
    add_image_1 = add_image_1.resize((int(1000 / 2.2), int(1000 / 2.2)))
    first_2.paste(add_image_1, (295, 780), add_image_1)

    add_image_2 = Image.open(os.path.join(RESULT_DIR, 'ppg_score.png'))
    add_image_2 = add_image_2.crop((400, 400, 1400, 1400))  # 1000 1000
    add_image_2 = add_image_2.resize((int(1000 / 2.2), int(1000 / 2.2)))
    first_2.paste(add_image_2, (1130, 780), add_image_2)

    first_2 = first_2.convert('RGB')
    first_2.save(os.path.join(RESULT_DIR, 'first_2.jpg'))
    '''
    second_section
    '''
    second_2 = Image.open(os.path.join(BASE_DIR, 'second_2.png'))

    if reportLanguage == "en":
        second_2 = Image.open(os.path.join(BASE_DIR, 'second_2.png'))
        second_2.paste(Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_eeg_emoji[0]))), (300, 550),
                       Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_eeg_emoji[0]))))
        second_2.paste(Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_eeg_emoji[1]))), (950, 550),
                       Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_eeg_emoji[1]))))
        second_2.paste(Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_eeg_emoji[2]))), (1560, 550),
                       Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_eeg_emoji[2]))))
        second_2.paste(Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_eeg_emoji[3]))), (2200, 550),
                       Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_eeg_emoji[3]))))
    else:
        second_2.paste(Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_eeg_emoji[0]))), (290, 500),
                    Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_eeg_emoji[0]))))
        second_2.paste(Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_eeg_emoji[1]))), (865, 500),
                    Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_eeg_emoji[1]))))
        second_2.paste(Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_eeg_emoji[2]))), (1430, 500),
                    Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_eeg_emoji[2]))))
        second_2.paste(Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_eeg_emoji[3]))), (2000, 500),
                    Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_eeg_emoji[3]))))

    second_2 = second_2.convert("RGB")
    second_2.save(os.path.join(RESULT_DIR, "second_2.jpg"))
    '''
    third_section
    '''
    third_2 = Image.open(os.path.join(BASE_DIR, 'n_third_2.png'))
   
    if reportLanguage == "en":
        third_2.paste(Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_ppg_emoji[0]))), (300, 550),
                      Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_ppg_emoji[0]))))
        third_2.paste(Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_ppg_emoji[1]))), (950, 550),
                      Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_ppg_emoji[1]))))
        third_2.paste(Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_ppg_emoji[2]))), (1560, 550),
                      Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_ppg_emoji[2]))))
        third_2.paste(Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_ppg_emoji[3]))), (2200, 550),
                      Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_ppg_emoji[3]))))
        draw = ImageDraw.Draw(third_2)
        draw.text((120,1050), page_no, fill = 'gray', font=Font_bold35, align='center')

    else:

        third_2.paste(Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_ppg_emoji[0]))), (290, 500),
                    Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_ppg_emoji[0]))))
        third_2.paste(Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_ppg_emoji[1]))), (865, 500),
                    Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_ppg_emoji[1]))))
        third_2.paste(Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_ppg_emoji[2]))), (1430, 500),
                    Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_ppg_emoji[2]))))
        third_2.paste(Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_ppg_emoji[3]))), (2000, 500),
                    Image.open(os.path.join(BASE_DIR, 'emoji_{}.png'.format(temp_ppg_emoji[3]))))
    
        draw = ImageDraw.Draw(third_2)
        draw.text((120, 950), page_no, fill="gray", font=Font_bold35, align='center')  # 레포트 넘버링 수정 

    third_2 = third_2.convert("RGB")
    third_2.save(os.path.join(RESULT_DIR, "third_2.jpg"))

def report_page3(people:list, RESULT_DIR:str, eeg_dq:str, eeg_emoji:list, reportLanguage: str="kr", page_no:str='02'):
    '''
    first_section
    '''
    first_3 = Image.open(os.path.join(BASE_DIR, 'first_3.png'))
    draw = ImageDraw.Draw(first_3)
    if reportLanguage =="en":
        draw.text((270, 339), people[0], fill="black", font=Font_medium32, align='center')
        draw.text((600, 339), people[1], fill="black", font=Font_medium32, align='center')
        draw.text((995, 339), people[2], fill="black", font=Font_medium32, align='center')
        draw.text((1350, 339), people[3], fill="black", font=Font_medium32, align='center')
        draw.text((1550, 339), people[4], fill="black", font=Font_medium32, align='center')
        draw.text((675, 1380), eeg_dq, fill="#0084E1", font=Font_bold50, align='center')
    else:
        draw.text((284, 341), people[0], fill="black", font=Font_medium32, align='center')
        draw.text((615, 339), people[1], fill="black", font=Font_medium32, align='center')
        draw.text((935, 339), people[2], fill="black", font=Font_medium32, align='center')
        draw.text((1205, 339), people[3], fill="black", font=Font_medium32, align='center')
        draw.text((1420, 339), '만 ' + people[4], fill="black", font=Font_medium32, align='center')
        draw.text((685, 1375), eeg_dq, fill='#2575B3', font=Font_bold50, aling='center')

    add_image_1 = Image.open(os.path.join(RESULT_DIR, 'eeg_score.png'))
    add_image_1 = add_image_1.crop((300, 300,1500, 1500)) #1200 1200
    add_image_1 = add_image_1.resize((int(1200/1.8),int(1200/1.8)))
    first_3.paste(add_image_1, (265, 690), add_image_1)

    first_3 = first_3.convert('RGB')
    first_3.save(os.path.join(RESULT_DIR, 'first_3.jpg'))
    '''
    second_section
    '''
    second_3 = Image.open(os.path.join(BASE_DIR, 'n_second_3.png'))

    add_image_1 = Image.open(os.path.join(RESULT_DIR, 'brain_activity.png'))
    add_image_1 = add_image_1.crop((240, 350,1820, 2200)) #1580 1850
    add_image_1 = add_image_1.resize((int(1580/1.8), int(1850/1.8)))
    second_3.paste(add_image_1, (180, 450), add_image_1)

    add_image_2 = Image.open(os.path.join(BASE_DIR, '1-'+str(eeg_emoji[0])+'.png'))
    second_3.paste(add_image_2, (1110, 20), add_image_2)

    draw = ImageDraw.Draw(second_3)
    draw.text((130, 1730), page_no, fill="gray", font=Font_bold35, align='center')  # 레포트 넘버링 수정 

    second_3 = second_3.convert('RGB')
    second_3.save(os.path.join(RESULT_DIR, 'second_3.jpg'))


def report_page4(people: list, RESULT_DIR: str, eeg_emoji: list, reportLanguage: str="kr", page_no:str='03'):
    '''
    first_section
    '''
    first_4 = Image.open(os.path.join(BASE_DIR, 'first_4.png'))
    draw = ImageDraw.Draw(first_4)
    if reportLanguage =="en":
        draw.text((270, 334), people[0], fill="black", font=Font_medium32, align='center')
        draw.text((600, 334), people[1], fill="black", font=Font_medium32, align='center')
        draw.text((995, 334), people[2], fill="black", font=Font_medium32, align='center')
        draw.text((1350, 334), people[3], fill="black", font=Font_medium32, align='center')
        draw.text((1550, 334), people[4], fill="black", font=Font_medium32, align='center')
    else:
        draw.text((284, 338), people[0], fill="black", font=Font_medium32, align='center')
        draw.text((615, 336), people[1], fill="black", font=Font_medium32, align='center')
        draw.text((935, 337), people[2], fill="black", font=Font_medium32, align='center')
        draw.text((1205, 336), people[3], fill="black", font=Font_medium32, align='center')
        draw.text((1420, 336), '만 ' + people[4], fill="black", font=Font_medium32, align='center')

    add_image_1 = Image.open(os.path.join(RESULT_DIR, 'brain_flexibility.png'))
    if reportLanguage =="en":
        add_image_1 = add_image_1.crop((180, 170, 1050, 410))  # 840, 240
        add_image_1 = add_image_1.resize((int(870 / .9), int(240 / .9)))
        first_4.paste(add_image_1, (110, 810), add_image_1)
    else:
        add_image_1 = add_image_1.crop((210, 170, 990, 410))  # 780, 240
        add_image_1 = add_image_1.resize((int(780 / .9), int(240 / .9)))
        first_4.paste(add_image_1, (160, 820), add_image_1)

    add_image_2 = Image.open(os.path.join(BASE_DIR, '2-' + str(eeg_emoji[1]) + '.png'))
    first_4.paste(add_image_2, (1110, 450), add_image_2)

    first_4 = first_4.convert('RGB')
    first_4.save(os.path.join(RESULT_DIR, 'first_4.jpg'))
    '''
    second_section
    '''
    second_4 = Image.open(os.path.join(BASE_DIR, 'second_4.png'))

    add_image_1 = Image.open(os.path.join(RESULT_DIR, 'brain_intelligence.png'))
    add_image_1 = add_image_1.crop((70, 330, 850, 1100))  # 780, 770
    add_image_1 = add_image_1.resize((int(780 / 1.1), int(770 / 1.1)))
    second_4.paste(add_image_1, (230, 320), add_image_1)

    add_image_2 = Image.open(os.path.join(BASE_DIR, '3-' + str(eeg_emoji[2]) + '.png'))
    second_4.paste(add_image_2, (1110, 20), add_image_2)

    second_4 = second_4.convert('RGB')
    second_4.save(os.path.join(RESULT_DIR, 'second_4.jpg'))
    '''
    third_section
    '''
    third_4 = Image.open(os.path.join(BASE_DIR, 'n_third_4.png'))  # 넘버링 없는 버전 

    add_image_1 = Image.open(os.path.join(RESULT_DIR, 'brain_balance.png'))
    add_image_1 = add_image_1.crop((300, 160, 1030, 630))  # 730,470
    add_image_1 = add_image_1.resize((int(730 / .8), int(470 / .8)))
    third_4.paste(add_image_1, (140, 370), add_image_1)

    add_image_2 = Image.open(os.path.join(BASE_DIR, '4-' + str(eeg_emoji[3]) + '.png'))
    third_4.paste(add_image_2, (1110, 20), add_image_2)


    draw = ImageDraw.Draw(third_4)
    draw.text((130, 1125), page_no, fill="gray", font=Font_bold35, align='center')  # 레포트 넘버링 수정 

    third_4 = third_4.convert('RGB')
    third_4.save(os.path.join(RESULT_DIR, 'third_4.jpg'))


def report_page5(people: list, RESULT_DIR: str, ppg_dq: str, ppg_emoji: list, hrt:str, reportLanguage: str="kr", page_no:str='04'):
    '''
    first section
    '''

    first_5 = Image.open(os.path.join(BASE_DIR, 'first_5.png'))
    draw = ImageDraw.Draw(first_5)
    if reportLanguage =="en":
        if len(hrt) >= 3:
            hrt_position = 595
        else:
            # hrt_position = 605
            hrt_position = 620
        draw.text((270, 337), people[0], fill="black", font=Font_medium32, align='center')
        draw.text((600, 337), people[1], fill="black", font=Font_medium32, align='center')
        draw.text((995, 337), people[2], fill="black", font=Font_medium32, align='center')
        draw.text((1350, 337), people[3], fill="black", font=Font_medium32, align='center')
        draw.text((1550, 337), people[4], fill="black", font=Font_medium32, align='center')
        draw.text((695, 1258), ppg_dq, fill='#2575B3', font=Font_bold50, align='center')
        draw.text((hrt_position, 1340), hrt, fill='#717171', font=Font_medium35, align='center')
    else:
        if len(hrt) >= 3:
            hrt_position = 565
        else:
            hrt_position = 575
        draw.text((284, 344), people[0], fill="black", font=Font_medium32, align='center')
        draw.text((614, 342), people[1], fill="black", font=Font_medium32, align='center')
        draw.text((935, 343), people[2], fill="black", font=Font_medium32, align='center')
        draw.text((1205, 342), people[3], fill="black", font=Font_medium32, align='center')
        draw.text((1420, 343), '만 ' + people[4], fill="black", font=Font_medium32, align='center')
        draw.text((685, 1243), ppg_dq, fill='#2575B3', font=Font_bold50, align='center')
        draw.text((hrt_position, 1310), hrt, fill='#717171', font=Font_medium35, align='center')

    add_image_1 = Image.open(os.path.join(RESULT_DIR, 'ppg_score.png'))
    add_image_1 = add_image_1.crop((300, 300, 1500, 1500))  # 1200 1200
    add_image_1 = add_image_1.resize((int(1200 / 2), int(1200 / 2)))
    first_5.paste(add_image_1, (295, 650), add_image_1)

    first_5 = first_5.convert('RGB')
    first_5.save(os.path.join(RESULT_DIR, 'first_5.jpg'))

    '''
    second_section
    '''
    second_5 = Image.open(os.path.join(BASE_DIR, 'second_5.png'))

    add_image_1 = Image.open(os.path.join(RESULT_DIR, 'ANS_activity.png'))
    add_image_1 = add_image_1.crop((165, 150, 1375, 1405))  # 1210 1255
    add_image_1 = add_image_1.resize((int(1210 / 2), int(1255 / 2)))
    second_5.paste(add_image_1, (335, 350), add_image_1)

    add_image_2 = Image.open(os.path.join(BASE_DIR, '5-' + str(ppg_emoji[0]) + '.png'))
    second_5.paste(add_image_2, (1110, 10), add_image_2)

    second_5 = second_5.convert('RGB')
    second_5.save(os.path.join(RESULT_DIR, 'second_5.jpg'))

    '''
    third_section
    '''
    third_5 = Image.open(os.path.join(BASE_DIR, 'n_third_5.png'))  # 레포트 넘버링 없는 버전 

    add_image_1 = Image.open(os.path.join(RESULT_DIR, 'ANS_balance.png'))
    add_image_1 = add_image_1.crop((0, 100, 1900, 950))  # 1900 850
    add_image_1 = add_image_1.resize((int(1900 / 2.3), int(850 / 2.3)))
    third_5.paste(add_image_1, (140, 310), add_image_1)

    add_image_2 = Image.open(os.path.join(BASE_DIR, '6-' + str(ppg_emoji[1]) + '.png'))
    third_5.paste(add_image_2, (1110, 5), add_image_2)

    draw = ImageDraw.Draw(third_5)


    draw.text((130, 813), page_no, fill="gray", font=Font_bold35, align='center')  # 레포트 넘버링 수정 

    third_5 = third_5.convert('RGB')
    third_5.save(os.path.join(RESULT_DIR, 'third_5.jpg'))


def report_page6(people: list, RESULT_DIR: str, depressive_result: float, anxiety_result: float, ppg_emoji: list, reportLanguage: str="kr", page_no:str='05'):
    '''
    first section
    '''
    first_6 = Image.open(os.path.join(BASE_DIR, 'first_6.png'))
    draw = ImageDraw.Draw(first_6)
    if reportLanguage =="en":
        draw.text((270, 342), people[0], fill="black", font=Font_medium32, align='center')
        draw.text((600, 342), people[1], fill="black", font=Font_medium32, align='center')
        draw.text((995, 342), people[2], fill="black", font=Font_medium32, align='center')
        draw.text((1350, 342), people[3], fill="black", font=Font_medium32, align='center')
        draw.text((1550, 342), people[4], fill="black", font=Font_medium32, align='center')
    else:
        draw.text((285, 344), people[0], fill="black", font=Font_medium32, align='center')
        draw.text((615, 342), people[1], fill="black", font=Font_medium32, align='center')
        draw.text((935, 343), people[2], fill="black", font=Font_medium32, align='center')
        draw.text((1205, 343), people[3], fill="black", font=Font_medium32, align='center')
        draw.text((1420, 343), '만 ' + people[4], fill="black", font=Font_medium32, align='center')

    add_image_1 = Image.open(os.path.join(RESULT_DIR, 'stress_index.png'))
    add_image_1 = add_image_1.crop((200, 150, 1050, 350))
    add_image_1 = add_image_1.resize((int(850 / .9), int(200 / .9)))
    first_6.paste(add_image_1, (130, 870), add_image_1)

    add_image_2 = Image.open(os.path.join(RESULT_DIR, 'stress_resistance.png'))
    add_image_2 = add_image_2.crop((200, 150, 1050, 350))
    add_image_2 = add_image_2.resize((int(850 / .9), int(200 / .9)))
    first_6.paste(add_image_2, (130, 1265), add_image_2)

    add_image_3 = Image.open(os.path.join(BASE_DIR, '7-' + str(ppg_emoji[2]) + '.png'))
    first_6.paste(add_image_3, (1110, 460), add_image_3)

    first_6 = first_6.convert('RGB')
    first_6.save(os.path.join(RESULT_DIR, 'first_6.jpg'))
    '''
    second section
    '''
    
    # if int(directory.age_modify(people[4], png=True)) < 14:
    # 실제 나이를 받아오기 위해 바꿈 
    if int(people[4].split("세")[0]) < 14 and reportLanguage == "kr":   
        print(people[4])
        second_6 = Image.open(os.path.join(BASE_DIR, 'n_second_6_14.png'))

    else:
        second_6 = Image.open(os.path.join(BASE_DIR, 'n_second_6.png'))
        draw = ImageDraw.Draw(second_6)
        if reportLanguage =="en":
            draw.text((420, 347), str(depressive_result), fill="#0084E1", font=Font_bold55, align='center')
        else:
            draw.text((355, 347), str(depressive_result), fill="#0084E1", font=Font_bold55, align='center')
        draw.text((355, 747), str(anxiety_result), fill="#0084E1", font=Font_bold55, align='center')


    add_image_1 = Image.open(os.path.join(RESULT_DIR, 'pse_depress.png'))
    
    if int(people[4].split("세")[0]) < 14 and reportLanguage == "en":
        add_image_1 = add_image_1.crop((200, 150, 1018, 350))
    else:
        add_image_1 = add_image_1.crop((200, 150, 950, 350))

    add_image_1 = add_image_1.resize((int(750 / .9), int(200 / .9)))
    second_6.paste(add_image_1, (160, 440), add_image_1)

    add_image_2 = Image.open(os.path.join(RESULT_DIR, 'pse_unrest.png'))
    if int(people[4].split("세")[0]) < 14 and reportLanguage == "en":
        add_image_2 = add_image_2.crop((200, 150, 1018, 350))
    else:
        add_image_2 = add_image_2.crop((200, 150, 950, 350))
        
    add_image_2 = add_image_2.resize((int(750 / .9), int(200 / .9)))
    second_6.paste(add_image_2, (160, 840), add_image_2)

    add_image_3 = Image.open(os.path.join(RESULT_DIR, 'self_understanding.png'))
    add_image_3 = add_image_3.crop((200, 150, 1050, 350))
    add_image_3 = add_image_3.resize((int(850 / .9), int(200 / .9)))
    second_6.paste(add_image_3, (130, 1450), add_image_3)

    add_image_4 = Image.open(os.path.join(BASE_DIR, '8-' + str(ppg_emoji[3]) + '.png'))
    second_6.paste(add_image_4, (1110, 10), add_image_4)

    add_image_5 = Image.open(os.path.join(BASE_DIR, '9-' + str(ppg_emoji[4]) + '.png'))
    second_6.paste(add_image_5, (1110, 1110), add_image_5)

    draw = ImageDraw.Draw(second_6)
    draw.text((130, 1796), page_no, fill="gray", font=Font_bold35, align='center')  # 페이지 넘버 수정 

    second_6 = second_6.convert('RGB')
    second_6.save(os.path.join(RESULT_DIR, 'second_6.jpg'))

def report_page7(people:list, RESULT_DIR:str, reportLanguage: str="kr", page_no:str='06'):
    start_time = time.perf_counter()

    first_7 = Image.open(os.path.join(BASE_DIR, 'n_first_7.png'))
    draw = ImageDraw.Draw(first_7)
    if reportLanguage =="en":
        draw.text((270, 341), people[0], fill="black", font=Font_medium32, align='center')
        draw.text((600, 341), people[1], fill="black", font=Font_medium32, align='center')
        draw.text((995, 341), people[2], fill="black", font=Font_medium32, align='center')
        draw.text((1350, 341), people[3], fill="black", font=Font_medium32, align='center')
        draw.text((1550, 341), people[4], fill="black", font=Font_medium32, align='center')
    else:
        draw.text((285, 342), people[0], fill="black", font=Font_medium32, align='center')
        draw.text((615, 340), people[1], fill="black", font=Font_medium32, align='center')
        draw.text((935, 340), people[2], fill="black", font=Font_medium32, align='center')
        draw.text((1205, 340), people[3], fill="black", font=Font_medium32, align='center')
        draw.text((1420, 341), '만 ' + people[4], fill="black", font=Font_medium32, align='center')

    add_image_1 = Image.open(os.path.join(RESULT_DIR, 'eeg_score.png'))
    add_image_1 = add_image_1.crop((300, 300, 1500, 1500)) #1200 1200
    add_image_1 = add_image_1.resize((int(1200/1.8), int(1200/1.8)))
    first_7.paste(add_image_1, (120, 880), add_image_1)

    add_image_2 = Image.open(os.path.join(RESULT_DIR, 'eeg_norm.png'))
    add_image_2 = add_image_2.crop((500, 0, 4530, 1500)) #3970, 1500
    add_image_2 = add_image_2.resize((int(3970/2.8), int(1500/2.8)))
    first_7.paste(add_image_2, (860, 650), add_image_2)

    age = directory.age_modify(people[4], png=True)
    signal = "두뇌"
    text = directory.define_norm_text(age, signal, reportLanguage=reportLanguage)
    draw.text((915, 650), text, fill="black", font=Font_bold45, align='center')

    add_image_3 = Image.open(os.path.join(RESULT_DIR, 'eeg_mean.png'))
    add_image_3 = add_image_3.crop((0, 30, 2670, 900)) #2670, 870
    add_image_3 = add_image_3.resize((int(2670/2),int(870/2)))
    first_7.paste(add_image_3, (1000, 1300), add_image_3)

    add_image_4 = Image.open(os.path.join(RESULT_DIR, 'ppg_score.png'))
    add_image_4 = add_image_4.crop((300, 300, 1500, 1500)) #1200 1200
    add_image_4 = add_image_4.resize((int(1200/1.8), int(1200/1.8)))
    first_7.paste(add_image_4, (120, 2050), add_image_4)

    add_image_5 = Image.open(os.path.join(RESULT_DIR, 'ppg_norm.png'))
    add_image_5 = add_image_5.crop((500, 0, 4530, 1500)) #3970, 1500
    add_image_5 = add_image_5.resize((int(3970/2.8), int(1500/2.8)))
    first_7.paste(add_image_5, (860, 1805), add_image_5)

    age = directory.age_modify(people[4], png=True)
    signal = "마음"
    text = directory.define_norm_text(age, signal, reportLanguage=reportLanguage)
    draw.text((915, 1800), text, fill="black", font=Font_bold45, align='center')

    add_image_6 = Image.open(os.path.join(RESULT_DIR, 'ppg_mean.png'))
    add_image_6 = add_image_6.crop((0, 30, 2670, 900)) #2670, 870
    add_image_6 = add_image_6.resize((int(2670 / 2), int(870 / 2)))
    first_7.paste(add_image_6, (1000, 2470), add_image_6)


    draw = ImageDraw.Draw(first_7)
    draw.text((130, 3350), page_no, fill="gray", font=Font_bold35, align='center')  # 페이지 넘버 수정 


    first_7 = first_7.convert('RGB')
    first_7.save(os.path.join(RESULT_DIR, 'first_7.jpg'))



    
def report_page2_hos_eeg(people:list, RESULT_DIR:str, temp_eeg_emoji:list, score_word: list, eeg_ebsi:str, page_no:str='01'):
    first_2 = Image.open(os.path.join(BASE_DIR_HOS, 'n_second_eeg.png'))
    draw = ImageDraw.Draw(first_2)

    draw.text((270, 330), people[0], fill="black", font=Font_medium32, align='center')
    draw.text((630, 326), people[1], fill="black", font=Font_medium32, align='center')
    draw.text((930, 326), people[2], fill="black", font=Font_medium32, align='center')
    draw.text((1200, 326), people[3], fill="black", font=Font_medium32, align='center')
    draw.text((1400, 326), '만 '+ people[4], fill="black", font=Font_medium32, align='center')
    draw.text((1780, 328), score_word[0], fill="black", font=Font_medium32, align='center')
    draw.text((1840, 328), ",", fill="black", font=Font_medium32, align='center')
    draw.text((1860, 328), score_word[1], fill="black", font=Font_medium32, align='center')
    draw.text((2200,328), "없음", fill='black', font=Font_medium32, align='center')

    # draw.text((2170, 330), score_word[1], fill="black", font=Font_medium32, align='center')
    # draw.text((2230, 330), ",", fill="black", font=Font_medium32, align='center')
    # draw.text((2250, 330), score_word[3], fill="black", font=Font_medium32, align='center')

    add_image_1 = Image.open(os.path.join(RESULT_DIR, 'eeg_score.png'))
    add_image_1 = add_image_1.crop((400, 400, 1400, 1400))  # 1000 1000
    add_image_1 = add_image_1.resize((int(1000 / 1.1), int(1000 / 1.1)))
    first_2.paste(add_image_1, (250, 1150), add_image_1)

    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_eeg_emoji[0]))), (1500, 1430), Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_eeg_emoji[0]))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_eeg_emoji[1]))), (2000, 1430), Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_eeg_emoji[1]))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_eeg_emoji[2]))), (1500, 1780), Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_eeg_emoji[2]))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_eeg_emoji[3]))), (2000, 1780), Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_eeg_emoji[3]))))

    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, '1-{}.png'.format(temp_eeg_emoji[0]))), (1400, 1620), Image.open(os.path.join(BASE_DIR_HOS, '1-{}.png'.format(temp_eeg_emoji[0]))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, '2-{}.png'.format(temp_eeg_emoji[1]))), (1900, 1620), Image.open(os.path.join(BASE_DIR_HOS, '2-{}.png'.format(temp_eeg_emoji[1]))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, '3-{}.png'.format(temp_eeg_emoji[2]))), (1400, 1970), Image.open(os.path.join(BASE_DIR_HOS, '3-{}.png'.format(temp_eeg_emoji[2]))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, '4-{}.png'.format(temp_eeg_emoji[3]))), (1900, 1970), Image.open(os.path.join(BASE_DIR_HOS, '4-{}.png'.format(temp_eeg_emoji[3]))))

    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, 'ebsi_{}_eeg.png'.format(eeg_ebsi))), (240, 2600),Image.open(os.path.join(BASE_DIR_HOS, 'ebsi_{}_eeg.png'.format(eeg_ebsi))) )

    add_image_3 = Image.open(os.path.join(RESULT_DIR, 'eeg_norm.png'))
    add_image_3 = add_image_3.crop((890, 300, 4530, 1500))  # 3640, 1500
    add_image_3 = add_image_3.resize((int(3640 / 3.5), int(1400 / 4.0)))
    first_2.paste(add_image_3, (1250, 2700), add_image_3)

    draw.text((125, 3340), page_no, fill="gray", font=Font_bold35, align='center')  # 레포트 페이지 넘버링 수정 


    first_2 = first_2.convert('RGB')

    first_2.save(os.path.join(RESULT_DIR, 'first_2_1.jpg'))

def report_page2_hos_ppg(people:list, RESULT_DIR:str, temp_ppg_emoji:list, score_word: list, ppg_ebsi:str, page_no:str='01'):
    first_2 = Image.open(os.path.join(BASE_DIR_HOS, 'n_second_ppg.png'))
    draw = ImageDraw.Draw(first_2)

    draw.text((270, 330), people[0], fill="black", font=Font_medium32, align='center')
    draw.text((630, 326), people[1], fill="black", font=Font_medium32, align='center')
    draw.text((930, 326), people[2], fill="black", font=Font_medium32, align='center')
    draw.text((1200, 326), people[3], fill="black", font=Font_medium32, align='center')
    draw.text((1400, 326), '만 '+ people[4], fill="black", font=Font_medium32, align='center')
    draw.text((1820,330), "없음", fill='black', font=Font_medium32, align='center')

    # draw.text((1780, 330), score_word[0], fill="black", font=Font_medium32, align='center')
    # draw.text((1840, 330), ",", fill="black", font=Font_medium32, align='center')
    # draw.text((1860, 330), score_word[2], fill="black", font=Font_medium32, align='center')
    draw.text((2170, 328), score_word[0], fill="black", font=Font_medium32, align='center')
    draw.text((2230, 328), ",", fill="black", font=Font_medium32, align='center')
    draw.text((2250, 328), score_word[1], fill="black", font=Font_medium32, align='center')

    add_image_1 = Image.open(os.path.join(RESULT_DIR, 'ppg_score.png'))
    add_image_1 = add_image_1.crop((400, 400, 1400, 1400))  # 1000 1000
    add_image_1 = add_image_1.resize((int(1000 / 1.1), int(1000 / 1.1)))
    first_2.paste(add_image_1, (250, 1150), add_image_1)

    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_ppg_emoji[0]))), (1500, 1430), Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_ppg_emoji[0]))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_ppg_emoji[1]))), (2000, 1430), Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_ppg_emoji[1]))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_ppg_emoji[2]))), (1500, 1780), Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_ppg_emoji[2]))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_ppg_emoji[3]))), (2000, 1780), Image.open(os.path.join(BASE_DIR_HOS, 'emoji_{}.png'.format(temp_ppg_emoji[3]))))

    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, '5-{}.png'.format(temp_ppg_emoji[0]))), (1400, 1620), Image.open(os.path.join(BASE_DIR_HOS, '5-{}.png'.format(temp_ppg_emoji[0]))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, '6-{}.png'.format(temp_ppg_emoji[1]))), (1900, 1620), Image.open(os.path.join(BASE_DIR_HOS, '6-{}.png'.format(temp_ppg_emoji[1]))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, '7-{}.png'.format(temp_ppg_emoji[2]))), (1400, 1970), Image.open(os.path.join(BASE_DIR_HOS, '7-{}.png'.format(temp_ppg_emoji[2]))))
    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, '8-{}.png'.format(temp_ppg_emoji[3]))), (1900, 1970), Image.open(os.path.join(BASE_DIR_HOS, '8-{}.png'.format(temp_ppg_emoji[3]))))

    first_2.paste(Image.open(os.path.join(BASE_DIR_HOS, 'ebsi_{}_ppg.png'.format(ppg_ebsi))), (240, 2600),Image.open(os.path.join(BASE_DIR_HOS, 'ebsi_{}_ppg.png'.format(ppg_ebsi))) )
    
    add_image_3 = Image.open(os.path.join(RESULT_DIR, 'ppg_norm.png'))
    add_image_3 = add_image_3.crop((890, 300, 4530, 1500))  # 3640, 1500
    add_image_3 = add_image_3.resize((int(3640 / 3.5), int(1400 / 4.0)))
    first_2.paste(add_image_3, (1250, 2700), add_image_3)

    draw.text((125, 3340), page_no, fill="gray", font=Font_bold35, align='center')


    first_2= first_2.convert('RGB')

    first_2.save(os.path.join(RESULT_DIR, 'first_2_1.jpg'))