Skip to content

Provider data user one day

GET v1/ad/provider/data/:provider_d/:user_id/:date

Request

namenecessarytypedefaultdescribe

Response data struct

namenecessarytypedefaultdescribeui
codetrueint-错误码(error code)
messagetruestring-错误信息(error message)
causetruestring-错误原因(error cause)
detailstrueobject-详情(details)
-idtrueint-id(id)
-user_idtrueint-用户id(user id)
-start_timetruestring-开始时间(start time)佩戴时段-开始
-end_timetruestring-结束时间(end time)佩戴时段-结束
-datetruestring-日期(date)
-blood_oxygen_totaltrueint-血氧-总(blood oxygen-total)
-blood_oxygen_secondtrueint-血氧-秒(blood oxygen-second)
-blood_oxygen_avgtruefloat-血氧-平均(blood oxygen-avg)平均血氧
-heart_rate_totaltrueint-心率-总(heart rate-total)
-heart_rate_secondtrueint-心率-秒(heart rate-second)佩戴时长秒,要转换
-heart_rate_avgtruefloat-心率-平均(heart rate-avg)平均静息心率
-movement_totaltrueint-体动的运动量-总(physical activity-total)
-movement_secondtrueint-体动的运动量-秒(physical activity-second)
-movement_avgtruefloat-体动的运动量-平均(physical activity-avg)
-temperature_totaltrueint-体表温度-总(body temperature-total)
-temperature_secondtrueint-体表温度-秒(body temperature-second)
-temperature_avgtruefloat-体表温度-平均(body temperature-avg)
-sleep_time_minutetrueint-睡眠时间-分钟(sleeping time-minute)
-wire_time_minutetrueint-佩戴时间-分钟(wearing time-minute)
-blood_oxygen_low90_secondtrueint-血氧低90时间(low blood oxygen for 90 time)
-odi_counttrueint-odi次数(odi time)odi总事件次数
-odi_indextrueint-odi指标(odi index)odi指标
-odi_index_high3trueint-ODI≥3(oxygen reduction ≥ 3)
-odi_event_high3truefloat-ODI事件≥3(ODI events ≥ 3)
-sleep_scoretrueint-睡眠得分(sleep score)
-sleep_efficiencytruefloat-睡眠效率(sleep efficiency)
-device_nametruestring-设备名称(device name)
-created_attruestring-创建时间(creation time)
-updated_attruestring-更新时间(update time)
-advancement_positiontruestring-下牙套位置(advancement position)
-data_raw_total_day_subtrueobject-数据-原始-统计-日-副(data-raw-total-day-sub)
--user_idtrueint-用户id(user id)
--datetrueint-日期(date)
--odi_event_4_9_counttrueint-ODI事件氧减4-9次数(OD event oxygen reduction 4-9 times)
--odi_event_4_9_ratiotruefloat-ODI事件氧减4-9占比(Oxygen reduction 4-9 ratio of OD events)
--odi_event_10_20_counttrueint-ODI事件氧减10-20次数(ODI event oxygen reduction 10-20 times)
--odi_event_10_20_ratiotruefloat-ODI事件氧减10-20占比(Oxygen reduction ratio of 10-20 in ODI events
--odi_event_high20_counttrueint-ODI事件氧减氧减>20次数(ODI event Oxygen reduction Oxygen reduction > 20 times)
--odi_event_high20_ratiotruefloat-ODI事件氧减氧减>20占比(Oxygen reduction and oxygen reduction > 20 ratio in ODI events)
--blood_oxygen_mintrueint-血氧的最低值(blood oxygen minimum)
--blood_oxygen_maxtrueint-血氧的最高值(blood oxygen peak)
--blood_oxygen_min_timetruestring-血氧的最低值的发生时间(Occurrence time of the lowest value of blood oxygen)
--blood_oxygen_low90_secondtrueint-血氧<90的时长秒(The duration of blood oxygen < 90 seconds)
--blood_oxygen_low90_time_ratiotruefloat-血氧<90的时长所占的佩戴比例(Percentage of sleep when blood oxygen < 90)
--blood_oxygen_low88_secondtrueint-血氧<88的时长秒(The duration of blood oxygen < 88 seconds)
--blood_oxygen_low88_time_ratiotruefloat-血氧<88的时长所占的佩戴比例(ercentage of sleep time with blood oxygen < 88)
--blood_oxygen_low85_secondtrueint-血氧<85的时长秒(The duration of blood oxygen < 85 seconds)
--blood_oxygen_low85_time_ratiotruefloat-血氧<85的时长所占的佩戴比例(Percentage of sleep time with blood oxygen < 85)
--blood_oxygen_low80_secondtrueint-血氧<80的时长秒(The duration of blood oxygen < 80 seconds)
--blood_oxygen_low80_time_ratiotruefloat-血氧<80的时长所占的佩戴比例(Percentage of sleep time with blood oxygen < 80)
--blood_oxygen_low70_secondtrueint-血氧<70的时长秒(The duration of blood oxygen < 70 seconds)
--blood_oxygen_low70_time_ratiotruefloat-血氧<70的时长所占的佩戴比例(ercentage of sleep when blood oxygen < 70)
--heart_rate_mintrueint-心率的最低值(lowest heart rate)
--heart_rate_maxtrueint-心率的最高值(maximum heart rate)
--heart_rate_min_timetruestring-心率的最高值的发生时间(The time of occurrence of the highest value of heart rate)
--heart_rate_max_timetruestring-心率的最低值的发生时间(The time of occurrence of the lowest value of the heart rate)
--heart_rate_high100_secondtrueint-心率>100的时长(The duration of heart rate > 100)
--heart_rate_high100_time_ratiotruefloat-心率>100的时长所占的佩戴比例(The proportion of sleep with heart rate > 100)
--heart_rate_low40_secondtrueint-心率<40的时长(The duration of heart rate < 40)
--heart_rate_low40_time_ratiotruefloat-心率<40的时长所占的佩戴比例(Percentage of sleep with heart rate < 40)
--heart_rate_arrhythmiatrueint-心率失常时长(Arrhythmia duration)
--heart_rate_arrhythmia_time_ratiotruefloat-心率失常时长所占的佩戴比例(Arrhythmia duration as a percentage of sleep)
--created_attruestring-创建时间(creation time)
--updated_attruestring-更新时间(update time)
-user_logtruearray-用户日志(user-log)
--idtrueint-id(id)
--user_idtrueint-用户id(user id)
--datetruestring-日期(date)
--snore_loudlyfalsestring-你打鼾大声吗:0否1是(louder than talking or loud enough to be heard through closed doors)
--often_feelfalsestring-⽩天你经常感到疲倦、疲劳或困倦吗:0否1是(Do you often feel tired, fatigued, or sleepy during daytime)
--stop_breathingfalsestring-有⼈看到你在睡觉时停⽌呼吸吗:0否1是(Has anyone observed you stop breathing during your sleep)
--being_treated_high_blood_pressurefalsestring-你有或正在接受⾼⾎压治疗吗:0否1是(Do you have or are you being treated for high blood pressure)
--notetruestring-笔记(note)
--osa_leveltrueint-osa级别:1低风险,2高风险(OSA level:1Low risk of OSA, 2High risk of OSA)
--created_attruestring-创建时间(creation time)
--updated_attruestring-更新时间(update time)
-data_device_daytrueobject-数据-设备信息-天(data-device info-day)
--idtrueint-id(id)
--user_idtruestring-用户id(user id)
--start_timetruestring-开始时间(start time)
--end_timetruestring-结束时间(end time)
--datetruestring-日期(date)
--device_nametruestring-设备名称(device name)
--device_numtruestring-设备号(device No)
--device_sntruestring-设备sn(device Sn)设备SN
--firmware_version_numtruestring-固件版本号(firmware version number)
--system_nametruestring-系统名称(system name)
--machinetruestring-机型(machine)
--system_versiontruestring-系统版本(system version)
--app_versiontruestring-app版本(app version)
--created_attruestring-创建时间(creation time)
--updated_attruestring-更新时间(update time)
-data_oditrueobject-odi(odi)
--start_timetruestring-开始时间(start time)
--end_timetruestring-结束时间(end time)
--oxygen_desatu_valuetrueint-氧减指标百分比(oxygen desatu value)
-rawtrueobject-秒数据(second data)
--blood_oxygentruearray-血氧
---start_timetruestring-开始时间(start time)
---end_timetruestring-结束时间(end time)
---datatruestring-数据(data)
--head_ratetruearray-心率
---start_timetruestring-开始时间(start time)
---end_timetruestring-结束时间(end time)
---datatruestring-数据(data)
--temperaturetruearray-体表温度(body temperature)
---start_timetruestring-开始时间(start time)
---end_timetruestring-结束时间(end time)
---datatruestring-数据(data)

Example

  • Url params: v1/ad/provider/data/20221201092014WSUxccxp/36/2022-11-09

  • Header:

keyvalue
x-api-keyyour's key value
  • Response body:
json
{
    "code": 0,
    "message": "Success",
    "cause": "",
    "details": {
        "user_id": 6,
        "start_time": "2022-11-15T04:24:51+08:00",
        "end_time": "2022-11-15T04:56:58+08:00",
        "local_offset_utc": -8,
        "date": "2022-11-14",
        "blood_oxygen_total": 31727,
        "blood_oxygen_second": 348,
        "blood_oxygen_avg": 91.17,
        "heart_rate_total": 31238,
        "heart_rate_second": 348,
        "heart_rate_avg": 89.76,
        "movement_total": 0,
        "movement_second": 0,
        "movement_avg": 0,
        "temperature_total": 967507,
        "temperature_second": 348,
        "temperature_avg": 2780.19,
        "sleep_time_minute": 0,
        "wire_time_minute": 8,
        "blood_oxygen_low90_second": 188,
        "odi_count": 1,
        "odi_index": 0,
        "odi_event_high3": 0,
        "odi_index_high3": 0,
        "sleep_score": 0,
        "sleep_efficiency": 0,
        "device_name": "Go2Sleep 253F",
        "created_at": "2023-03-22T19:33:03+08:00",
        "updated_at": "2023-03-22T19:43:29+08:00",
        "advancement_position": "",
        "data_raw_total_day_sub": {
            "user_id": 6,
            "date": "2022-11-14",
            "odi_event_4_9_count": 0,
            "odi_event_4_9_ratio": 0,
            "odi_event_10_20_count": 2,
            "odi_event_10_20_ratio": 2,
            "odi_event_high20_count": 0,
            "odi_event_high20_ratio": 0,
            "blood_oxygen_min": 85,
            "blood_oxygen_max": 98,
            "blood_oxygen_min_time": "2022-11-14 12:51:35",
            "blood_oxygen_low90_second": 188,
            "blood_oxygen_low90_time_ratio": 0.58,
            "blood_oxygen_low88_second": 96,
            "blood_oxygen_low88_time_ratio": 0.3,
            "blood_oxygen_low85_second": 0,
            "blood_oxygen_low85_time_ratio": 0,
            "blood_oxygen_low80_second": 0,
            "blood_oxygen_low80_time_ratio": 0,
            "blood_oxygen_low70_second": 0,
            "blood_oxygen_low70_time_ratio": 0,
            "heart_rate_min": 63,
            "heart_rate_max": 127,
            "heart_rate_min_time": "2022-11-14 12:51:35",
            "heart_rate_max_time": "2022-11-14 12:51:35",
            "heart_rate_high100_second": 65,
            "heart_rate_high100_time_ratio": 0.2,
            "heart_rate_low40_second": 0,
            "heart_rate_low40_time_ratio": 0,
            "heart_rate_arrhythmia": 65,
            "heart_rate_arrhythmia_time_ratio": 0.2,
            "created_at": "2023-03-22T19:33:03+08:00",
            "updated_at": "2023-03-22T19:43:18+08:00"
        },
        "user_log": {
            "id": 0,
            "user_id": 0,
            "date": "",
            "snore_loudly": "",
            "often_feel": "",
            "stop_breathing": "",
            "being_treated_high_blood_pressure": "",
            "note": "",
            "osa_level": 0,
            "created_at": "0001-01-01T00:00:00Z",
            "updated_at": "0001-01-01T00:00:00Z"
        },
        "data_device_day": {
            "user_id": 6,
            "start_time": "2022-11-15T04:24:51+08:00",
            "end_time": "2022-11-15T04:56:58+08:00",
            "local_offset_utc": -8,
            "date": "2022-11-14",
            "device_name": "Go2Sleep 253F",
            "device_num": "���",
            "device_sn": "����������������",
            "firmware_version_num": "V0.2.14",
            "system_name": "",
            "machine": "",
            "system_version": "",
            "app_version": "",
            "created_at": "2023-03-22T19:33:05+08:00",
            "updated_at": "2023-03-22T19:43:20+08:00"
        },
        "data_odi": [
            {
                "start_time": "2022-11-15T04:52:22+08:00",
                "end_time": "2022-11-15T04:56:16+08:00",
                "oxygen_desatu_value": 13
            },
            {
                "start_time": "2022-11-15T04:52:22+08:00",
                "end_time": "2022-11-15T04:56:16+08:00",
                "oxygen_desatu_value": 13
            },
            {
                "start_time": "2022-11-15T04:52:22+08:00",
                "end_time": "2022-11-15T04:56:16+08:00",
                "oxygen_desatu_value": 13
            },
            {
                "start_time": "2022-11-15T04:52:22+08:00",
                "end_time": "2022-11-15T04:56:16+08:00",
                "oxygen_desatu_value": 13
            }
        ],
        "raw": {
            "blood_oxygen": [
                {
                    "start_time": "2022-11-15T04:24:51+08:00",
                    "end_time": "2022-11-15T04:25:14+08:00",
                    "data": "97,97,97,97,97,97,97,97,97,97,97,97,97,97,98,98,98,98,98,98,98,98,98,98"
                },
                {
                    "start_time": "2022-11-15T04:51:35+08:00",
                    "end_time": "2022-11-15T04:56:58+08:00",
                    "data": "98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,97,96,96,96,96,96,96,96,96,95,95,95,94,94,94,94,94,94,94,93,92,92,92,92,92,91,91,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,89,89,89,88,88,88,88,88,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,88,89,89,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,87,86,85,86,86,86,86,86,86,86,86,86,86,86,87,87,87,87,87,87,87,87,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,87,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,95,96,96,97,97,97,97,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96"
                }
            ],
            "head_rate": [
                {
                    "start_time": "2022-11-15T04:24:51+08:00",
                    "end_time": "2022-11-15T04:25:14+08:00",
                    "data": "82,86,88,88,88,88,88,88,88,90,90,90,96,96,96,96,100,97,103,102,103,100,100,100"
                },
                {
                    "start_time": "2022-11-15T04:51:35+08:00",
                    "end_time": "2022-11-15T04:56:58+08:00",
                    "data": "75,75,75,75,75,75,75,75,75,75,75,82,82,82,82,82,82,82,82,74,74,74,77,77,77,77,77,77,77,77,77,77,77,77,77,83,83,83,69,71,71,71,70,70,70,70,70,70,75,82,82,82,82,82,82,82,78,78,78,78,78,77,77,77,77,77,77,77,77,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,87,87,85,82,77,84,89,89,89,91,98,98,98,116,126,125,127,127,127,127,122,122,122,122,122,122,122,118,118,118,116,111,111,111,112,112,112,112,110,104,104,104,99,99,91,91,91,91,91,90,90,90,91,92,92,92,92,92,92,92,93,93,93,93,93,93,93,99,99,99,99,99,99,99,99,99,99,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,98,98,98,98,104,113,105,105,105,105,105,106,106,106,104,104,104,100,100,100,100,98,98,98,98,98,98,98,98,98,98,98,98,93,88,91,91,91,91,91,91,97,101,101,101,101,110,112,112,112,112,112,112,108,106,106,106,105,105,105,105,105,97,89,79,79,79,79,73,63,63,63,63,63,63,63,63,66,66,66,65,65,65,65,65,68,68,68,68,74,74,74,74,74,74,77,77,78,78,75,86,86,86,86,86,86,86,86,85,85,85,85,85,85,85,85,85,85,85,85,85,85,85,85,85,85,78,82,82,82,82,82,82,82,82,84,86,86,86,86,86"
                }
            ]
        }
    }
}
{
    "code": 0,
    "message": "Success",
    "cause": "",
    "details": {
        "user_id": 6,
        "start_time": "2022-11-15T04:24:51+08:00",
        "end_time": "2022-11-15T04:56:58+08:00",
        "local_offset_utc": -8,
        "date": "2022-11-14",
        "blood_oxygen_total": 31727,
        "blood_oxygen_second": 348,
        "blood_oxygen_avg": 91.17,
        "heart_rate_total": 31238,
        "heart_rate_second": 348,
        "heart_rate_avg": 89.76,
        "movement_total": 0,
        "movement_second": 0,
        "movement_avg": 0,
        "temperature_total": 967507,
        "temperature_second": 348,
        "temperature_avg": 2780.19,
        "sleep_time_minute": 0,
        "wire_time_minute": 8,
        "blood_oxygen_low90_second": 188,
        "odi_count": 1,
        "odi_index": 0,
        "odi_event_high3": 0,
        "odi_index_high3": 0,
        "sleep_score": 0,
        "sleep_efficiency": 0,
        "device_name": "Go2Sleep 253F",
        "created_at": "2023-03-22T19:33:03+08:00",
        "updated_at": "2023-03-22T19:43:29+08:00",
        "advancement_position": "",
        "data_raw_total_day_sub": {
            "user_id": 6,
            "date": "2022-11-14",
            "odi_event_4_9_count": 0,
            "odi_event_4_9_ratio": 0,
            "odi_event_10_20_count": 2,
            "odi_event_10_20_ratio": 2,
            "odi_event_high20_count": 0,
            "odi_event_high20_ratio": 0,
            "blood_oxygen_min": 85,
            "blood_oxygen_max": 98,
            "blood_oxygen_min_time": "2022-11-14 12:51:35",
            "blood_oxygen_low90_second": 188,
            "blood_oxygen_low90_time_ratio": 0.58,
            "blood_oxygen_low88_second": 96,
            "blood_oxygen_low88_time_ratio": 0.3,
            "blood_oxygen_low85_second": 0,
            "blood_oxygen_low85_time_ratio": 0,
            "blood_oxygen_low80_second": 0,
            "blood_oxygen_low80_time_ratio": 0,
            "blood_oxygen_low70_second": 0,
            "blood_oxygen_low70_time_ratio": 0,
            "heart_rate_min": 63,
            "heart_rate_max": 127,
            "heart_rate_min_time": "2022-11-14 12:51:35",
            "heart_rate_max_time": "2022-11-14 12:51:35",
            "heart_rate_high100_second": 65,
            "heart_rate_high100_time_ratio": 0.2,
            "heart_rate_low40_second": 0,
            "heart_rate_low40_time_ratio": 0,
            "heart_rate_arrhythmia": 65,
            "heart_rate_arrhythmia_time_ratio": 0.2,
            "created_at": "2023-03-22T19:33:03+08:00",
            "updated_at": "2023-03-22T19:43:18+08:00"
        },
        "user_log": {
            "id": 0,
            "user_id": 0,
            "date": "",
            "snore_loudly": "",
            "often_feel": "",
            "stop_breathing": "",
            "being_treated_high_blood_pressure": "",
            "note": "",
            "osa_level": 0,
            "created_at": "0001-01-01T00:00:00Z",
            "updated_at": "0001-01-01T00:00:00Z"
        },
        "data_device_day": {
            "user_id": 6,
            "start_time": "2022-11-15T04:24:51+08:00",
            "end_time": "2022-11-15T04:56:58+08:00",
            "local_offset_utc": -8,
            "date": "2022-11-14",
            "device_name": "Go2Sleep 253F",
            "device_num": "���",
            "device_sn": "����������������",
            "firmware_version_num": "V0.2.14",
            "system_name": "",
            "machine": "",
            "system_version": "",
            "app_version": "",
            "created_at": "2023-03-22T19:33:05+08:00",
            "updated_at": "2023-03-22T19:43:20+08:00"
        },
        "data_odi": [
            {
                "start_time": "2022-11-15T04:52:22+08:00",
                "end_time": "2022-11-15T04:56:16+08:00",
                "oxygen_desatu_value": 13
            },
            {
                "start_time": "2022-11-15T04:52:22+08:00",
                "end_time": "2022-11-15T04:56:16+08:00",
                "oxygen_desatu_value": 13
            },
            {
                "start_time": "2022-11-15T04:52:22+08:00",
                "end_time": "2022-11-15T04:56:16+08:00",
                "oxygen_desatu_value": 13
            },
            {
                "start_time": "2022-11-15T04:52:22+08:00",
                "end_time": "2022-11-15T04:56:16+08:00",
                "oxygen_desatu_value": 13
            }
        ],
        "raw": {
            "blood_oxygen": [
                {
                    "start_time": "2022-11-15T04:24:51+08:00",
                    "end_time": "2022-11-15T04:25:14+08:00",
                    "data": "97,97,97,97,97,97,97,97,97,97,97,97,97,97,98,98,98,98,98,98,98,98,98,98"
                },
                {
                    "start_time": "2022-11-15T04:51:35+08:00",
                    "end_time": "2022-11-15T04:56:58+08:00",
                    "data": "98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,97,96,96,96,96,96,96,96,96,95,95,95,94,94,94,94,94,94,94,93,92,92,92,92,92,91,91,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,89,89,89,88,88,88,88,88,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,88,89,89,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,87,86,85,86,86,86,86,86,86,86,86,86,86,86,87,87,87,87,87,87,87,87,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,88,87,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,95,96,96,97,97,97,97,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96"
                }
            ],
            "head_rate": [
                {
                    "start_time": "2022-11-15T04:24:51+08:00",
                    "end_time": "2022-11-15T04:25:14+08:00",
                    "data": "82,86,88,88,88,88,88,88,88,90,90,90,96,96,96,96,100,97,103,102,103,100,100,100"
                },
                {
                    "start_time": "2022-11-15T04:51:35+08:00",
                    "end_time": "2022-11-15T04:56:58+08:00",
                    "data": "75,75,75,75,75,75,75,75,75,75,75,82,82,82,82,82,82,82,82,74,74,74,77,77,77,77,77,77,77,77,77,77,77,77,77,83,83,83,69,71,71,71,70,70,70,70,70,70,75,82,82,82,82,82,82,82,78,78,78,78,78,77,77,77,77,77,77,77,77,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,87,87,85,82,77,84,89,89,89,91,98,98,98,116,126,125,127,127,127,127,122,122,122,122,122,122,122,118,118,118,116,111,111,111,112,112,112,112,110,104,104,104,99,99,91,91,91,91,91,90,90,90,91,92,92,92,92,92,92,92,93,93,93,93,93,93,93,99,99,99,99,99,99,99,99,99,99,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,98,98,98,98,104,113,105,105,105,105,105,106,106,106,104,104,104,100,100,100,100,98,98,98,98,98,98,98,98,98,98,98,98,93,88,91,91,91,91,91,91,97,101,101,101,101,110,112,112,112,112,112,112,108,106,106,106,105,105,105,105,105,97,89,79,79,79,79,73,63,63,63,63,63,63,63,63,66,66,66,65,65,65,65,65,68,68,68,68,74,74,74,74,74,74,77,77,78,78,75,86,86,86,86,86,86,86,86,85,85,85,85,85,85,85,85,85,85,85,85,85,85,85,85,85,85,78,82,82,82,82,82,82,82,82,84,86,86,86,86,86"
                }
            ]
        }
    }
}