>_ rehablogger
Система работает
← Все сессии
СЕССИЯ УСТРОЙСТВА

rehabapp_2026-08-12_13-52-58

Подключение…
Rehab Logger console · история загружается порциями по 250 записей
INFO [console] [DIO]
INFO [console] ✅ RAW RESPONSE: {success: true, meta: {timestamp: 2026-08-12T10:58:52.245703Z, request_id: 43e18355-5cc7-4d50-91be-89dddaabc2d0, version: v1}, data: {rehabilitation_day_id: 2019, phase_id: 262, diagnosis_rehab: Postman test, start_rehab: 2026-05-04 00:00:00, end_rehab: 2026-07-10 00:00:00, name_rehab_phase: Postman test phase, status: [none], recommendations_count: 1, date: 2026-06-29, training: [{mode: correction_unit, status: completed, progress: 33, unit_id: 795, time: 10 - 20 мин, count_questions: 1, status_questions: false, workout_id: 83}, {mode: diagnostics, status: completed, progress: 52, unit_id: 794, time: 10 - 20 мин, count_questions: null, status_questions: false, workout_id: 97}]}}
INFO [console] [DIO] server: openresty
INFO [console] [DIO] Response Text:
INFO [console] [DIO] {"success":true,"meta":{"timestamp":"2026-08-12T10:58:52.245703Z","request_id":"43e18355-5cc7-4d50-91be-89dddaabc2d0","version":"v1"},"data":{"rehabilitation_day_id":2019,"phase_id":262,"diagnosis_rehab":"Postman test","start_rehab":"2026-05-04 00:00:00","end_rehab":"2026-07-10 00:00:00","name_rehab_phase":"Postman test phase","status":["none"],"recommendations_count":1,"date":"2026-06-29","training":[{"mode":"correction_unit","status":"completed","progress":33,"unit_id":795,"time":"10 - 20 мин","count_questions":1,"status_questions":false,"workout_id":83},{"mode":"diagnostics","status":"completed","progress":52,"unit_id":794,"time":"10 - 20 мин","count_questions":null,"status_questions":false,"workout_id":97}]}}
INFO [console] [DIO] transfer-encoding: chunked
INFO [console] [DIO] access-control-allow-origin: http://localhost:3000
INFO [console] [DIO] content-type: application/json
INFO [console] [DIO] connection: keep-alive
INFO [console] [DIO] cache-control: no-cache, private
INFO [console] [DIO] date: Wed, 12 Aug 2026 10:58:52 GMT
INFO [console] [DIO] *** Request ***
INFO [console] Request query: {start_date: 2026-06-01, end_date: 2026-07-05}
INFO [console] e_id: 41, sequence_number: 3, step_text: Приподнимите рабочую ногу на 5-10 см }, {exercise_id: 41, sequence_number: 4, step_text: На выдохе отведите рабочую ногу в сторону (наружу) на максимально возможную амплитуду, которую позволяет ваша подвижность и физическое состояние. Движение должно происходить за счёт работы мышц бедра}, {exercise_id: 41, sequence_number: 5, step_text: На вдохе так же плавно верните ногу в исходное положение (перед собой), но не кладите её на пол до окончания подхода. Нога остаётся на весу}, {exercise_id: 41, sequence_number: 6, step_text: Повторите движение ногой заданное количество раз}]}}], workout_id: 97, workout_duration_start: 10, workout_duration_end: 20, training_score: {score_percent: 52, score_interpretation: satisfactory}}}
FATAL [zone] Unhandled asynchronous error
Invalid argument(s): A value must be provided. Supported values: completed, not_completed, cant_complete
#0      $enumDecode (package:json_annotation/src/enum_helpers.dart:70:5)
#1      _$ResultInfoExerciseDtoFromJson (package:testapp/features/training/models/dto/result_workout/result_info_exercise_dto.g.dart:20:21)
#2      new ResultInfoExerciseDto.fromJson (package:testapp/features/training/models/dto/result_workout/result_info_exercise_dto.dart:29:7)
#3      _$ResultInfoWorkoutDtoFromJson.<anonymous closure> (package:testapp/features/training/models/dto/result_workout/result_info_workout_dto.g.dart:16:41)
#4      MappedListIterable.elementAt (dart:_internal/iterable.dart:442:31)
#5      ListIterator.moveNext (dart:_internal/iterable.dart:371:26)
#6      new _GrowableList._ofEfficientLengthIterable (dart:core-patch/growable_array.dart:194:27)
#7      new _GrowableList.of (dart:core-patch/growable_array.dart:154:28)
#8      new List.of (dart:core-patch/array_patch.dart:39:18)
#9      ListIterable.toList (dart:_internal/iterable.dart:224:7)
#10     _$ResultInfoWorkoutDtoFromJson (package:testapp/features/training/models/dto/result_workout/result_info_workout_dto.g.dart:17:8)
#11     new ResultInfoWorkoutDto.fromJson (package:testapp/features/training/models/dto/result_workout/result_info_workout_dto.dart:27:7)
#12     WorkoutRepositoryImpl.getResultWorkout.<anonymous closure> (package:testapp/features/training/data/repository/workout_repository_impl.dart:93:32)
#13     _$nullableGenericFromJson (package:testapp/core/data/models/response/response_api.g.dart:38:37)
#14     _$ResponseApiFromJson (package:testapp/core/data/models/response/response_api.g.dart:14:9)
#15     new ResponseApi.fromJson (package:testapp/core/data/models/response/response_api.dart:27:8)
#16     BaseRepository.apiCall (package:testapp/core/data/repository/base_repository.dart:29:24)
<asynchronous suspension>
#17     WorkoutRepositoryImpl.getResultWorkout (package:testapp/features/training/data/repository/workout_repository_impl.dart:84:22)
<asynchronous suspension>
#18     ResultWorkoutCubit._loadTrainingResult (package:testapp/features/training/presentation/bloc/training_result/result_workout_cubit.dart:27:29)
<asynchronous suspension>
INFO [console] у. Представьте, что вы лежите на боку и прижимаетесь спиной к стене, а далее скользите пяткой верхней ноги по стене вверх. Цель – тренировка мышц абдукторов/аддукторов бедра., steps: [{exercise_id: 42, sequence_number: 1, step_text: Лягте на бок так, чтобы рабочая нога была сверху}, {exercise_id: 42, sequence_number: 2, step_text: Убедитесь, что вы лежите ровно. Голова может лежать на руке или на подушке}, {exercise_id: 42, sequence_number: 3, step_text: Нижнюю ногу слегка согните в колене и тазобедренном суставе для устойчивости}, {exercise_id: 42, sequence_number: 4, step_text: Верхнюю ногу полностью выпрямите. Она должна находиться строго над нижней ногой, образуя одну линию с туловищем}, {exercise_id: 42, sequence_number: 5, step_text: Положите верхнюю руку на талию или на матрас перед собой для равновесия}, {exercise_id: 42, sequence_number: 6, step_text: На выдохе: Медленно поднимите (отведите) прямую ногу вверх. Движение должно происходить строго в плоскости тела, как будто вы о
INFO [console] тводите ногу в сторону. Нога не должна сгибаться в тазобедренном суставе и отклоняться вперёд по направлению к животу или назад по направлению к спине}, {exercise_id: 42, sequence_number: 7, step_text: В верхней точке задержитесь на 1-2 секунды, сохраняя ногу прямой и чувствуя напряжение в боковой поверхности бедра и ягодице}, {exercise_id: 42, sequence_number: 8, step_text: На вдохе: Плавно, без рывка, опустите ногу в исходное положение. Старайтесь не класть ногу полностью на нижнюю, а остановитесь чуть выше, чтобы сохранить напряжение в мышцах}, {exercise_id: 42, sequence_number: 9, step_text: Повторите необходимое количество раз }]}}, {id: 41, sequence_number: 3, completion_status: null, score_percent: null, score_interpretation: null, exercise_image: https://rehabilitation.most.team/storage/exercise/photos/01KQC6319E6D4MPZ50SGTNW1Q6.png, instruction: {exercise_name: Отведение прямой ноги в сторону - В и.п. сидя с прямыми ногами с опорой руками назад за спиной, video: https://rehabi
INFO [console] litation.most.team/storage/exercise/videos/01KQC6319HS0NS6B4PRV3WH9FT.mov, inventory: null, warning: Следить за тем, чтобы бедро не ротировалось (вращалось) наружу, носок стопы отведённой ноги должен “смотреть вверх”, general_description: Спина относительно поверхности может находиться от 90 до 45 градусов к полу (например, упираясь не прямыми руками, а предплечьями, отклонившись больше назад). Приподнять прямую рабочую ногу от поверхности и отвести её в сторону на сколько возможно, не опуская ногу, и вернуться в исходное положение. Можно выполнять без пауз между повторениями. Цель – тренировка мышц абдукторов бедра., steps: [{exercise_id: 41, sequence_number: 1, step_text: Сядьте на пол лицом к камере. Ноги выпрямите перед собой}, {exercise_id: 41, sequence_number: 2, step_text: Корпус отклоните назад. Спина должна находиться под углом от 90 до 45 градусов относительно пола. Для удобства и стабильности можно опираться не на прямые руки, а на предплечья, согнув руки в локтях}, {exercis
INFO [console] ✅ RAW RESPONSE: {success: true, meta: {timestamp: 2026-08-12T10:58:54.851975Z, request_id: fcb0bfca-aa37-4b22-9454-cfceca0d37df, version: v1}, data: {results: [{id: 85, sequence_number: 1, completion_status: completed, score_percent: 52, score_interpretation: satisfactory, exercise_image: https://rehabilitation.most.team/storage/exercise/photos/01KSM578DSDH215A8W6P26RXEH.png, instruction: {exercise_name: Тренировка икроножных мышц стоя, video: https://rehabilitation.most.team/storage/exercise/videos/01KRJHJR20X1FNE739BG0QDYN4.mov, inventory: Опора (стул, подоконник, стена), warning: Следите за положением пяток и стоп. Пятки не должны заваливаться внутрь (это признак неправильной нагрузки). Стопы должны оставаться параллельными на протяжении всего движения, для более наглядного контроля вы можете положить кубик для йоги между стопами Следите, чтобы спина была прямая Не уводите таз вперед/назад Колени держите выпрямленными, general_description: В исходном положении стоя, ноги на ширине т
INFO [console] аза, руками опереться на спинку стула или стол, выполнить подъём на носки. Следить за тем, чтобы пятки не уходили внутрь, и стопы оставались параллельными. Цель – тренировка мышц голени., steps: [{exercise_id: 85, sequence_number: 1, step_text: Встаньте прямо, лицом к устойчивой опоре (спинка стула, стол, подоконник, стена). Вы должны находиться боком оперированной ноги к камере}, {exercise_id: 85, sequence_number: 2, step_text: Поставьте ноги на ширине таза (примерно на расстоянии 10-15 см друг от друга). Стопы должны быть параллельны друг другу}, {exercise_id: 85, sequence_number: 3, step_text: Слегка обопритесь руками на опору для сохранения равновесия. Не переносите на руки весь вес тела}, {exercise_id: 85, sequence_number: 4, step_text: Спина прямая, живот слегка подтянут, взгляд направлен вперёд}, {exercise_id: 85, sequence_number: 5, step_text: Медленно и плавно поднимитесь как можно выше на носки, перенося вес тела на передние части стоп}, {exercise_id: 85, sequence_number: 6,
INFO [console] step_text: Движение должно быть контролируемым. Максимально напрягите икроножные мышцы в верхней точке}, {exercise_id: 85, sequence_number: 7, step_text: Также под контролем медленно опустите пятки на пол, возвращаясь в исходное положение}, {exercise_id: 85, sequence_number: 8, step_text: Выполните поднятие на носки необходимое количество раз}]}}, {id: 42, sequence_number: 2, completion_status: null, score_percent: null, score_interpretation: null, exercise_image: https://rehabilitation.most.team/storage/exercise/photos/01KQC78495HZ7HDF3FGQ104G16.png, instruction: {exercise_name: Подъём прямой ноги в сторону - В и.п. лёжа на боку, video: https://rehabilitation.most.team/storage/exercise/videos/01KQC78499GQQ5WEFZWRN07YFK.mov, inventory: null, warning: Верхняя нога не должна сильно сгибаться в бедре, т.е. отклоняться вперёд к животу, general_description: Лёжа на боку отвести верхнюю ногу в сторону (поднять). Верхняя нога не должна сильно сгибаться в бедре, т.е. отклоняться вперёд к живот
INFO [console] [DIO] Response Text:
INFO [console] [DIO] {"success":true,"meta":{"timestamp":"2026-08-12T10:58:54.851975Z","request_id":"fcb0bfca-aa37-4b22-9454-cfceca0d37df","version":"v1"},"data":{"results":[{"id":85,"sequence_number":1,"completion_status":"completed","score_percent":52,"score_interpretation":"satisfactory","exercise_image":"https://rehabilitation.most.team/storage/exercise/photos/01KSM578DSDH215A8W6P26RXEH.png","instruction":{"exercise_name":"Тренировка икроножных мышц стоя","video":"https://rehabilitation.most.team/storage/exercise/videos/01KRJHJR20X1FNE739BG0QDYN4.mov","inventory":"Опора (стул, подоконник, стена)","warning":"Следите за положением пяток и стоп. Пятки не должны заваливаться внутрь (это признак неправильной нагрузки). Стопы должны оставаться параллельными на протяжении всего движения, для более наглядного контроля вы можете положить кубик для йоги между стопами\nСледите, чтобы спина была прямая\nНе уводите таз вперед/назад\nКолени держите выпрямленными","general_description":"В исходном положении стоя, ноги на ширине таза, руками опереться на спинку стула или стол, выполнить подъём на носки. Следить за тем, чтобы пятки не уходили внутрь, и стопы оставались параллельными. Цель – тренировка мышц голени.","steps":[{"exercise_id":85,"sequence_number":1,"step_text":"Встаньте прямо, лицом к устойчивой опоре (спинка стула, стол, подоконник, стена). Вы должны находиться боком оперированной ноги к камере"},{"exercise_id":85,"sequence_number":2,"step_text":"Поставьте ноги на ширине таза (примерно на расстоянии 10-15 см друг от друга). Стопы должны быть параллельны друг другу"},{"exercise_id":85,"sequence_number":3,"step_text":"Слегка обопритесь руками на опору для сохранения равновесия. Не переносите на руки весь вес тела"},{"exercise_id":85,"sequence_number":4,"step_text":"Спина прямая, живот слегка подтянут, взгляд направлен вперёд"},{"exercise_id":85,"sequence_number":5,"step_text":"Медленно и плавно поднимитесь как можно выше на носки, перенося вес тела на передние части стоп"},{"exercise_id":85,"sequence_number":6,"step_text":"Движение должно быть контролируемым. Максимально напрягите икроножные мышцы в верхней точке"},{"exercise_id":85,"sequence_number":7,"step_text":"Также под контролем медленно опустите пятки на пол, возвращаясь в исходное положение"},{"exercise_id":85,"sequence_number":8,"step_text":"Выполните поднятие на носки необходимое количество раз"}]}},{"id":42,"sequence_number":2,"completion_status":null,"score_percent":null,"score_interpretation":null,"exercise_image":"https://rehabilitation.most.team/storage/exercise/photos/01KQC78495HZ7HDF3FGQ104G16.png","instruction":{"exercise_name":"Подъём прямой ноги в сторону - В и.п. лёжа на боку","video":"https://rehabilitation.most.team/storage/exercise/videos/01KQC78499GQQ5WEFZWRN07YFK.mov","inventory":null,"warning":"Верхняя нога не должна сильно сгибаться в бедре, т.е. отклоняться вперёд к животу","general_description":"Лёжа на боку отвести верхнюю ногу в сторону (поднять). Верхняя нога не должна сильно сгибаться в бедре, т.е. отклоняться вперёд к животу. Представьте, что вы лежите на боку и прижимаетесь спиной к стене, а далее скользите пяткой верхней ноги по стене вверх. Цель – тренировка мышц абдукторов/аддукторов бедра.","steps":[{"exercise_id":42,"sequence_number":1,"step_text":"Лягте на бок так, чтобы рабочая нога была сверху"},{"exercise_id":42,"sequence_number":2,"step_text":"Убедитесь, что вы лежите ровно. Голова может лежать на руке или на подушке"},{"exercise_id":42,"sequence_number":3,"step_text":"Нижнюю ногу слегка согните в колене и тазобедренном суставе для устойчивости"},{"exercise_id":42,"sequence_number":4,"step_text":"Верхнюю ногу полностью выпрямите. Она должна находиться строго над нижней ногой, образуя одну линию с туловищем"},{"exercise_id":42,"sequence_number":5,"step_text":"Положите верхнюю руку на талию или на матрас перед собой для равновесия"},{"exercise_id":42,"sequence_number":6,"step_text":"На выдохе: Медленно поднимите (отведите) прямую ногу вверх. Движение должно происходить строго в плоскости тела, как будто вы отводите ногу в сторону. Нога не должна сгибаться в тазобедренном суставе и отклоняться вперёд по направлению к животу или назад по направлению к спине"},{"exercise_id":42,"sequence_number":7,"step_text":"В верхней точке задержитесь на 1-2 секунды, сохраняя ногу прямой и чувствуя напряжение в боковой поверхности бедра и ягодице"},{"exercise_id":42,"sequence_number":8,"step_text":"На вдохе: Плавно, без рывка, опустите ногу в исходное положение. Старайтесь не класть ногу полностью на нижнюю, а остановитесь чуть выше, чтобы сохранить напряжение в мышцах"},{"exercise_id":42,"sequence_number":9,"step_text":"Повторите необходимое количество раз "}]}},{"id":41,"sequence_number":3,"completion_status":null,"score_percent":null,"score_interpretation":null,"exercise_image":"https://rehabilitation.most.team/storage/exercise/photos/01KQC6319E6D4MPZ50SGTNW1Q6.png","instruction":{"exercise_name":"Отведение прямой ноги в сторону - В и.п. сидя с прямыми ногами с опорой руками назад за спиной","video":"https://rehabilitation.most.team/storage/exercise/videos/01KQC6319HS0NS6B4PRV3WH9FT.mov","inventory":null,"warning":"Следить за тем, чтобы бедро не ротировалось (вращалось) наружу, носок стопы отведённой ноги должен “смотреть вверх”","general_description":"Спина относительно поверхности может находиться от 90 до 45 градусов к полу (например, упираясь не прямыми руками, а предплечьями, отклонившись больше назад). Приподнять прямую рабочую ногу от поверхности и отвести её в сторону на сколько возможно, не опуская ногу, и вернуться в исходное положение. Можно выполнять без пауз между повторениями. Цель – тренировка мышц абдукторов бедра.","steps":[{"exercise_id":41,"sequence_number":1,"step_text":"Сядьте на пол лицом к камере. Ноги выпрямите перед собой"},{"exercise_id":41,"sequence_number":2,"step_text":"Корпус отклоните назад. Спина должна находиться под углом от 90 до 45 градусов относительно пола. Для удобства и стабильности можно опираться не на прямые руки, а на предплечья, согнув руки в локтях"},{"exercise_id":41,"sequence_number":3,"step_text":"Приподнимите рабочую ногу на 5-10 см "},{"exercise_id":41,"sequence_number":4,"step_text":"На выдохе отведите рабочую ногу в сторону (наружу) на максимально возможную амплитуду, которую позволяет ваша подвижность и физическое состояние. Движение должно происходить за счёт работы мышц бедра"},{"exercise_id":41,"sequence_number":5,"step_text":"На вдохе так же плавно верните ногу в исходное положение (перед собой), но не кладите её на пол до окончания подхода. Нога остаётся на весу"},{"exercise_id":41,"sequence_number":6,"step_text":"Повторите движение ногой заданное количество раз"}]}}],"workout_id":97,"workout_duration_start":10,"workout_duration_end":20,"training_score":{"score_percent":52,"score_interpretation":"satisfactory"}}}
INFO [console] [DIO]
INFO [console] [DIO] access-control-allow-origin: http://localhost:3000
INFO [console] [DIO] content-type: application/json
INFO [console] [DIO] server: openresty
INFO [console] [DIO] cache-control: no-cache, private
INFO [console] [DIO] date: Wed, 12 Aug 2026 10:58:54 GMT
INFO [console] [DIO] transfer-encoding: chunked
INFO [console] [DIO] x-served-by: rehabilitation.most.team
INFO [console] [DIO] access-control-allow-credentials: true
INFO [console] [DIO] connection: keep-alive
INFO [console] [DIO]
INFO [console] ✅ RAW RESPONSE: {success: true, meta: {timestamp: 2026-08-12T11:02:33.290031Z, request_id: 2d114437-287a-4aac-b4e9-2fc2e0b77f40, version: v1}, data: {rehabilitation_day_id: 2019, phase_id: 262, diagnosis_rehab: Postman test, start_rehab: 2026-05-04 00:00:00, end_rehab: 2026-07-10 00:00:00, name_rehab_phase: Postman test phase, status: [none], recommendations_count: 1, date: 2026-06-29, training: [{mode: correction_unit, status: completed, progress: 33, unit_id: 795, time: 10 - 20 мин, count_questions: 1, status_questions: false, workout_id: 83}, {mode: diagnostics, status: completed, progress: 52, unit_id: 794, time: 10 - 20 мин, count_questions: null, status_questions: false, workout_id: 97}]}}
INFO [console] [DIO] *** Request ***
INFO [console] [DIO] uri: https://rehabilitation.most.team/api/v1/statistics/range-of-motion
INFO [console] [DIO] method: GET
INFO [console] [DIO] responseType: ResponseType.json
INFO [console] [DIO] followRedirects: true
INFO [console] [DIO] persistentConnection: true
INFO [console] [DIO] connectTimeout: 0:00:10.000000
INFO [console] [DIO] sendTimeout: null
INFO [console] [DIO] receiveTimeout: 0:00:10.000000
INFO [console] [DIO] transformTimeout: null
INFO [console] [DIO] receiveDataWhenStatusError: true
INFO [console] [DIO] extra: {}
INFO [console] [DIO] headers:
INFO [console] [DIO] Authorization: Bearer 585|xY5R9yCrUKkki5zj3amaJTOpmyoSvm6GWGzRUMDcde317a87
INFO [console] [DIO] data:
INFO [console] [DIO] null
INFO [console] [DIO]
INFO [console] [DIO] *** Response ***
INFO [console] [DIO] uri: https://rehabilitation.most.team/api/v1/statistics/range-of-motion
INFO [console] [DIO] statusCode: 200
INFO [console] [DIO] statusMessage: OK
INFO [console] [DIO] headers:
INFO [console] [DIO] x-served-by: rehabilitation.most.team
INFO [console] [DIO] access-control-allow-credentials: true
INFO [console] [DIO] connection: keep-alive
INFO [console] [DIO] cache-control: no-cache, private
INFO [console] [DIO] date: Wed, 12 Aug 2026 11:46:59 GMT
INFO [console] [DIO] transfer-encoding: chunked
INFO [console] [DIO] access-control-allow-origin: http://localhost:3000
INFO [console] [DIO] content-type: application/json
INFO [console] [DIO] server: openresty
INFO [console] [DIO] Response Text:
INFO [console] [DIO] {"success":true,"meta":{"timestamp":"2026-08-12T11:46:59.583554Z","request_id":"89905422-60c3-4125-b06d-e805af3c9405","version":"v1"},"data":{"average_score":61.8,"average_interpretation":"satisfactory","phases":[{"phase_sequence_number":1,"phase_name":"Postman test phase","weeks":[{"phase_week_number":1,"week_number":1,"rehabilitation_week_number":1,"score":82,"interpretation":"good","is_control_week":false},{"phase_week_number":2,"week_number":2,"rehabilitation_week_number":2,"score":15,"interpretation":"bad","is_control_week":false},{"phase_week_number":3,"week_number":3,"rehabilitation_week_number":3,"score":47,"interpretation":"satisfactory","is_control_week":false},{"phase_week_number":4,"week_number":4,"rehabilitation_week_number":4,"score":67,"interpretation":"good","is_control_week":false},{"phase_week_number":5,"week_number":5,"rehabilitation_week_number":5,"score":55,"interpretation":"satisfactory","is_control_week":false},{"phase_week_number":6,"week_number":6,"rehabilitation_week_number":6,"score":60,"interpretation":"satisfactory","is_control_week":false},{"phase_week_number":7,"week_number":7,"rehabilitation_week_number":7,"score":77,"interpretation":"good","is_control_week":false},{"phase_week_number":8,"week_number":8,"rehabilitation_week_number":8,"score":97,"interpretation":"excellent","is_control_week":false},{"phase_week_number":9,"week_number":9,"rehabilitation_week_number":9,"score":52,"interpretation":"satisfactory","is_control_week":false},{"phase_week_number":10,"week_number":10,"rehabilitation_week_number":10,"score":66,"interpretation":"good","is_control_week":true}]}]}}
INFO [console] [DIO]
INFO [console] ✅ RAW RESPONSE: {success: true, meta: {timestamp: 2026-08-12T11:46:59.583554Z, request_id: 89905422-60c3-4125-b06d-e805af3c9405, version: v1}, data: {average_score: 61.8, average_interpretation: satisfactory, phases: [{phase_sequence_number: 1, phase_name: Postman test phase, weeks: [{phase_week_number: 1, week_number: 1, rehabilitation_week_number: 1, score: 82, interpretation: good, is_control_week: false}, {phase_week_number: 2, week_number: 2, rehabilitation_week_number: 2, score: 15, interpretation: bad, is_control_week: false}, {phase_week_number: 3, week_number: 3, rehabilitation_week_number: 3, score: 47, interpretation: satisfactory, is_control_week: false}, {phase_week_number: 4, week_number: 4, rehabilitation_week_number: 4, score: 67, interpretation: good, is_control_week: false}, {phase_week_number: 5, week_number: 5, rehabilitation_week_number: 5, score: 55, interpretation: satisfactory, is_control_week: false}, {phase_week_number: 6, week_number: 6, rehabilitation_week_n
INFO [console] umber: 6, score: 60, interpretation: satisfactory, is_control_week: false}, {phase_week_number: 7, week_number: 7, rehabilitation_week_number: 7, score: 77, interpretation: good, is_control_week: false}, {phase_week_number: 8, week_number: 8, rehabilitation_week_number: 8, score: 97, interpretation: excellent, is_control_week: false}, {phase_week_number: 9, week_number: 9, rehabilitation_week_number: 9, score: 52, interpretation: satisfactory, is_control_week: false}, {phase_week_number: 10, week_number: 10, rehabilitation_week_number: 10, score: 66, interpretation: good, is_control_week: true}]}]}}
INFO [console] [DIO] *** Request ***
INFO [console] [DIO] uri: https://rehabilitation.most.team/api/v1/statistics/range-of-motion
INFO [console] [DIO] method: GET
INFO [console] [DIO] responseType: ResponseType.json
INFO [console] [DIO] followRedirects: true
INFO [console] [DIO] persistentConnection: true
INFO [console] [DIO] connectTimeout: 0:00:10.000000
INFO [console] [DIO] sendTimeout: null
INFO [console] [DIO] receiveTimeout: 0:00:10.000000
INFO [console] [DIO] transformTimeout: null
INFO [console] [DIO] receiveDataWhenStatusError: true
INFO [console] [DIO] extra: {}
INFO [console] [DIO] headers:
INFO [console] [DIO] Authorization: Bearer 585|xY5R9yCrUKkki5zj3amaJTOpmyoSvm6GWGzRUMDcde317a87
INFO [console] [DIO] data:
INFO [console] [DIO] null
INFO [console] [DIO]
INFO [console] [DIO] *** Response ***
INFO [console] [DIO] uri: https://rehabilitation.most.team/api/v1/statistics/range-of-motion
INFO [console] [DIO] statusCode: 200
INFO [console] [DIO] statusMessage: OK
INFO [console] [DIO] headers:
INFO [console] [DIO] x-served-by: rehabilitation.most.team
INFO [console] [DIO] access-control-allow-credentials: true
INFO [console] [DIO] connection: keep-alive
INFO [console] [DIO] cache-control: no-cache, private
INFO [console] [DIO] date: Wed, 12 Aug 2026 11:54:12 GMT
INFO [console] [DIO] transfer-encoding: chunked
INFO [console] [DIO] access-control-allow-origin: http://localhost:3000
INFO [console] [DIO] content-type: application/json
INFO [console] [DIO] server: openresty
INFO [console] [DIO] Response Text:
INFO [console] [DIO] {"success":true,"meta":{"timestamp":"2026-08-12T11:54:12.198949Z","request_id":"6f433550-5868-4180-b03d-f2d89ccffdd8","version":"v1"},"data":{"average_score":61.8,"average_interpretation":"satisfactory","phases":[{"phase_sequence_number":1,"phase_name":"Postman test phase","weeks":[{"phase_week_number":1,"week_number":1,"rehabilitation_week_number":1,"score":82,"interpretation":"good","is_control_week":false},{"phase_week_number":2,"week_number":2,"rehabilitation_week_number":2,"score":15,"interpretation":"bad","is_control_week":false},{"phase_week_number":3,"week_number":3,"rehabilitation_week_number":3,"score":47,"interpretation":"satisfactory","is_control_week":false},{"phase_week_number":4,"week_number":4,"rehabilitation_week_number":4,"score":67,"interpretation":"good","is_control_week":false},{"phase_week_number":5,"week_number":5,"rehabilitation_week_number":5,"score":55,"interpretation":"satisfactory","is_control_week":false},{"phase_week_number":6,"week_number":6,"rehabilitation_week_number":6,"score":60,"interpretation":"satisfactory","is_control_week":false},{"phase_week_number":7,"week_number":7,"rehabilitation_week_number":7,"score":77,"interpretation":"good","is_control_week":false},{"phase_week_number":8,"week_number":8,"rehabilitation_week_number":8,"score":97,"interpretation":"excellent","is_control_week":false},{"phase_week_number":9,"week_number":9,"rehabilitation_week_number":9,"score":52,"interpretation":"satisfactory","is_control_week":false},{"phase_week_number":10,"week_number":10,"rehabilitation_week_number":10,"score":66,"interpretation":"good","is_control_week":true}]}]}}
INFO [console] [DIO]
INFO [console] ✅ RAW RESPONSE: {success: true, meta: {timestamp: 2026-08-12T11:54:12.198949Z, request_id: 6f433550-5868-4180-b03d-f2d89ccffdd8, version: v1}, data: {average_score: 61.8, average_interpretation: satisfactory, phases: [{phase_sequence_number: 1, phase_name: Postman test phase, weeks: [{phase_week_number: 1, week_number: 1, rehabilitation_week_number: 1, score: 82, interpretation: good, is_control_week: false}, {phase_week_number: 2, week_number: 2, rehabilitation_week_number: 2, score: 15, interpretation: bad, is_control_week: false}, {phase_week_number: 3, week_number: 3, rehabilitation_week_number: 3, score: 47, interpretation: satisfactory, is_control_week: false}, {phase_week_number: 4, week_number: 4, rehabilitation_week_number: 4, score: 67, interpretation: good, is_control_week: false}, {phase_week_number: 5, week_number: 5, rehabilitation_week_number: 5, score: 55, interpretation: satisfactory, is_control_week: false}, {phase_week_number: 6, week_number: 6, rehabilitation_week_n
INFO [console] umber: 6, score: 60, interpretation: satisfactory, is_control_week: false}, {phase_week_number: 7, week_number: 7, rehabilitation_week_number: 7, score: 77, interpretation: good, is_control_week: false}, {phase_week_number: 8, week_number: 8, rehabilitation_week_number: 8, score: 97, interpretation: excellent, is_control_week: false}, {phase_week_number: 9, week_number: 9, rehabilitation_week_number: 9, score: 52, interpretation: satisfactory, is_control_week: false}, {phase_week_number: 10, week_number: 10, rehabilitation_week_number: 10, score: 66, interpretation: good, is_control_week: true}]}]}}
INFO [console] [DIO]
INFO [console] ✅ RAW RESPONSE: {success: true, meta: {timestamp: 2026-08-12T11:58:41.442735Z, request_id: 3515927c-bf43-4d5f-b70b-d0562853b6dc, version: v1}, data: {average_score: 61.8, average_interpretation: satisfactory, phases: [{phase_sequence_number: 1, phase_name: Postman test phase, weeks: [{phase_week_number: 1, week_number: 1, rehabilitation_week_number: 1, score: 82, interpretation: good, is_control_week: false}, {phase_week_number: 2, week_number: 2, rehabilitation_week_number: 2, score: 15, interpretation: bad, is_control_week: false}, {phase_week_number: 3, week_number: 3, rehabilitation_week_number: 3, score: 47, interpretation: satisfactory, is_control_week: false}, {phase_week_number: 4, week_number: 4, rehabilitation_week_number: 4, score: 67, interpretation: good, is_control_week: false}, {phase_week_number: 5, week_number: 5, rehabilitation_week_number: 5, score: 55, interpretation: satisfactory, is_control_week: false}, {phase_week_number: 6, week_number: 6, rehabilitation_week_n
INFO [console] umber: 6, score: 60, interpretation: satisfactory, is_control_week: false}, {phase_week_number: 7, week_number: 7, rehabilitation_week_number: 7, score: 77, interpretation: good, is_control_week: false}, {phase_week_number: 8, week_number: 8, rehabilitation_week_number: 8, score: 97, interpretation: excellent, is_control_week: false}, {phase_week_number: 9, week_number: 9, rehabilitation_week_number: 9, score: 52, interpretation: satisfactory, is_control_week: false}, {phase_week_number: 10, week_number: 10, rehabilitation_week_number: 10, score: 66, interpretation: good, is_control_week: true}]}]}}
INFO [console] [DIO] server: openresty
INFO [console] [DIO] Response Text:
INFO [console] [DIO] {"success":true,"meta":{"timestamp":"2026-08-12T11:58:41.442735Z","request_id":"3515927c-bf43-4d5f-b70b-d0562853b6dc","version":"v1"},"data":{"average_score":61.8,"average_interpretation":"satisfactory","phases":[{"phase_sequence_number":1,"phase_name":"Postman test phase","weeks":[{"phase_week_number":1,"week_number":1,"rehabilitation_week_number":1,"score":82,"interpretation":"good","is_control_week":false},{"phase_week_number":2,"week_number":2,"rehabilitation_week_number":2,"score":15,"interpretation":"bad","is_control_week":false},{"phase_week_number":3,"week_number":3,"rehabilitation_week_number":3,"score":47,"interpretation":"satisfactory","is_control_week":false},{"phase_week_number":4,"week_number":4,"rehabilitation_week_number":4,"score":67,"interpretation":"good","is_control_week":false},{"phase_week_number":5,"week_number":5,"rehabilitation_week_number":5,"score":55,"interpretation":"satisfactory","is_control_week":false},{"phase_week_number":6,"week_number":6,"rehabilitation_week_number":6,"score":60,"interpretation":"satisfactory","is_control_week":false},{"phase_week_number":7,"week_number":7,"rehabilitation_week_number":7,"score":77,"interpretation":"good","is_control_week":false},{"phase_week_number":8,"week_number":8,"rehabilitation_week_number":8,"score":97,"interpretation":"excellent","is_control_week":false},{"phase_week_number":9,"week_number":9,"rehabilitation_week_number":9,"score":52,"interpretation":"satisfactory","is_control_week":false},{"phase_week_number":10,"week_number":10,"rehabilitation_week_number":10,"score":66,"interpretation":"good","is_control_week":true}]}]}}
INFO [console] [DIO] transfer-encoding: chunked
INFO [console] [DIO] access-control-allow-origin: http://localhost:3000
INFO [console] [DIO] content-type: application/json
INFO [console] [DIO] connection: keep-alive
INFO [console] [DIO] cache-control: no-cache, private
INFO [console] [DIO] date: Wed, 12 Aug 2026 11:58:41 GMT
INFO [console] [DIO] headers:
INFO [console] [DIO] x-served-by: rehabilitation.most.team
INFO [console] [DIO] access-control-allow-credentials: true
INFO [console] [DIO] uri: https://rehabilitation.most.team/api/v1/statistics/range-of-motion
INFO [console] [DIO] statusCode: 200
INFO [console] [DIO] statusMessage: OK
INFO [console] [DIO] uri: https://rehabilitation.most.team/api/v1/statistics/range-of-motion
INFO [console] [DIO] method: GET
INFO [console] [DIO] responseType: ResponseType.json
INFO [console] [DIO] server: openresty
INFO [console] [DIO] Response Text:
INFO [console] [DIO] {"success":true,"meta":{"timestamp":"2026-08-12T11:58:35.761747Z","request_id":"6a4b5a9a-b48c-4099-8704-42bcfc989821","version":"v1"},"data":[{"id":85,"name":"Тренировка икроножных мышц стоя"}]}
INFO [console] [DIO] transfer-encoding: chunked
INFO [console] [DIO] access-control-allow-origin: http://localhost:3000
INFO [console] [DIO] content-type: application/json
INFO [console] [DIO] connection: keep-alive
INFO [console] [DIO] cache-control: no-cache, private
INFO [console] [DIO] date: Wed, 12 Aug 2026 11:58:35 GMT
INFO [console] [DIO] headers:
INFO [console] [DIO] x-served-by: rehabilitation.most.team
INFO [console] [DIO] access-control-allow-credentials: true
INFO [console] [DIO] uri: https://rehabilitation.most.team/api/v1/statistics/exercises/list
INFO [console] [DIO] statusCode: 200
INFO [console] [DIO] statusMessage: OK
INFO [console] [DIO] *** Request ***
INFO [console] [DIO] uri: https://rehabilitation.most.team/api/v1/statistics/exercises/list
INFO [console] [DIO] method: GET
INFO [console] [DIO] null
INFO [console] [DIO]
INFO [console] [DIO] *** Response ***
INFO [console] [DIO] headers:
INFO [console] [DIO] Authorization: Bearer 585|xY5R9yCrUKkki5zj3amaJTOpmyoSvm6GWGzRUMDcde317a87
INFO [console] [DIO] data:
INFO [console] [DIO] transformTimeout: null
INFO [console] [DIO] receiveDataWhenStatusError: true
INFO [console] [DIO] extra: {}
INFO [console] [DIO] connectTimeout: 0:00:10.000000
INFO [console] [DIO] sendTimeout: null
INFO [console] [DIO] receiveTimeout: 0:00:10.000000
INFO [console] [DIO] responseType: ResponseType.json
INFO [console] [DIO] followRedirects: true
INFO [console] [DIO] persistentConnection: true
INFO [console] [DIO]
INFO [console] ✅ RAW RESPONSE: {success: true, meta: {timestamp: 2026-08-12T11:58:35.761747Z, request_id: 6a4b5a9a-b48c-4099-8704-42bcfc989821, version: v1}, data: [{id: 85, name: Тренировка икроножных мышц стоя}]}
INFO [console] [DIO] *** Request ***
INFO [console] [DIO]
INFO [console] [DIO] *** Response ***
INFO [console] [DIO] Authorization: Bearer 585|xY5R9yCrUKkki5zj3amaJTOpmyoSvm6GWGzRUMDcde317a87
INFO [console] [DIO] data:
INFO [console] [DIO] null
INFO [console] [DIO] receiveDataWhenStatusError: true
INFO [console] [DIO] extra: {}
INFO [console] [DIO] headers:
INFO [console] [DIO] sendTimeout: null
INFO [console] [DIO] receiveTimeout: 0:00:10.000000
INFO [console] [DIO] transformTimeout: null
INFO [console] [DIO] followRedirects: true
INFO [console] [DIO] persistentConnection: true
INFO [console] [DIO] connectTimeout: 0:00:10.000000
INFO [console] [DIO]
INFO [console] ✅ RAW RESPONSE: {success: true, meta: {timestamp: 2026-08-12T12:06:00.195080Z, request_id: 8ae9ecf8-d963-40c4-adb8-3c9733563206, version: v1}, data: {average_score: 61.8, average_interpretation: satisfactory, phases: [{phase_sequence_number: 1, phase_name: Postman test phase, weeks: [{phase_week_number: 1, week_number: 1, rehabilitation_week_number: 1, score: 82, interpretation: good, is_control_week: false}, {phase_week_number: 2, week_number: 2, rehabilitation_week_number: 2, score: 15, interpretation: bad, is_control_week: false}, {phase_week_number: 3, week_number: 3, rehabilitation_week_number: 3, score: 47, interpretation: satisfactory, is_control_week: false}, {phase_week_number: 4, week_number: 4, rehabilitation_week_number: 4, score: 67, interpretation: good, is_control_week: false}, {phase_week_number: 5, week_number: 5, rehabilitation_week_number: 5, score: 55, interpretation: satisfactory, is_control_week: false}, {phase_week_number: 6, week_number: 6, rehabilitation_week_n
INFO [console] umber: 6, score: 60, interpretation: satisfactory, is_control_week: false}, {phase_week_number: 7, week_number: 7, rehabilitation_week_number: 7, score: 77, interpretation: good, is_control_week: false}, {phase_week_number: 8, week_number: 8, rehabilitation_week_number: 8, score: 97, interpretation: excellent, is_control_week: false}, {phase_week_number: 9, week_number: 9, rehabilitation_week_number: 9, score: 52, interpretation: satisfactory, is_control_week: false}, {phase_week_number: 10, week_number: 10, rehabilitation_week_number: 10, score: 66, interpretation: good, is_control_week: true}]}]}}
INFO [console] [DIO] server: openresty
INFO [console] [DIO] Response Text:
INFO [console] [DIO] {"success":true,"meta":{"timestamp":"2026-08-12T12:06:00.195080Z","request_id":"8ae9ecf8-d963-40c4-adb8-3c9733563206","version":"v1"},"data":{"average_score":61.8,"average_interpretation":"satisfactory","phases":[{"phase_sequence_number":1,"phase_name":"Postman test phase","weeks":[{"phase_week_number":1,"week_number":1,"rehabilitation_week_number":1,"score":82,"interpretation":"good","is_control_week":false},{"phase_week_number":2,"week_number":2,"rehabilitation_week_number":2,"score":15,"interpretation":"bad","is_control_week":false},{"phase_week_number":3,"week_number":3,"rehabilitation_week_number":3,"score":47,"interpretation":"satisfactory","is_control_week":false},{"phase_week_number":4,"week_number":4,"rehabilitation_week_number":4,"score":67,"interpretation":"good","is_control_week":false},{"phase_week_number":5,"week_number":5,"rehabilitation_week_number":5,"score":55,"interpretation":"satisfactory","is_control_week":false},{"phase_week_number":6,"week_number":6,"rehabilitation_week_number":6,"score":60,"interpretation":"satisfactory","is_control_week":false},{"phase_week_number":7,"week_number":7,"rehabilitation_week_number":7,"score":77,"interpretation":"good","is_control_week":false},{"phase_week_number":8,"week_number":8,"rehabilitation_week_number":8,"score":97,"interpretation":"excellent","is_control_week":false},{"phase_week_number":9,"week_number":9,"rehabilitation_week_number":9,"score":52,"interpretation":"satisfactory","is_control_week":false},{"phase_week_number":10,"week_number":10,"rehabilitation_week_number":10,"score":66,"interpretation":"good","is_control_week":true}]}]}}
INFO [console] [DIO] transfer-encoding: chunked
INFO [console] [DIO] access-control-allow-origin: http://localhost:3000
INFO [console] [DIO] content-type: application/json
INFO [console] [DIO] connection: keep-alive
INFO [console] [DIO] cache-control: no-cache, private
INFO [console] [DIO] date: Wed, 12 Aug 2026 12:06:00 GMT
INFO [console] [DIO] headers:
INFO [console] [DIO] x-served-by: rehabilitation.most.team
INFO [console] [DIO] access-control-allow-credentials: true
INFO [console] [DIO] uri: https://rehabilitation.most.team/api/v1/statistics/range-of-motion
INFO [console] [DIO] statusCode: 200
INFO [console] [DIO] statusMessage: OK
INFO [console] [DIO] null
INFO [console] [DIO]
INFO [console] [DIO] *** Response ***
INFO [console] [DIO] headers:
INFO [console] [DIO] Authorization: Bearer 585|xY5R9yCrUKkki5zj3amaJTOpmyoSvm6GWGzRUMDcde317a87
INFO [console] [DIO] data:
INFO [console] [DIO] transformTimeout: null
INFO [console] [DIO] receiveDataWhenStatusError: true
INFO [console] [DIO] extra: {}
INFO [console] [DIO] connectTimeout: 0:00:10.000000
INFO [console] [DIO] sendTimeout: null
INFO [console] [DIO] receiveTimeout: 0:00:10.000000
INFO [console] [DIO] responseType: ResponseType.json
INFO [console] [DIO] followRedirects: true
INFO [console] [DIO] persistentConnection: true
INFO [console] [DIO] *** Request ***
INFO [console] [DIO] uri: https://rehabilitation.most.team/api/v1/statistics/range-of-motion
INFO [console] [DIO] method: GET
INFO [console] [DIO] *** Request ***
INFO [console] [DIO] uri: https://rehabilitation.most.team/api/v1/statistics/detailed
INFO [console] [DIO] method: GET
INFO [console] [DIO] responseType: ResponseType.json
INFO [console] [DIO] followRedirects: true
INFO [console] [DIO] persistentConnection: true
INFO [console] [DIO] connectTimeout: 0:00:10.000000
INFO [console] [DIO] sendTimeout: null
INFO [console] [DIO] receiveTimeout: 0:00:10.000000
INFO [console] [DIO] transformTimeout: null
INFO [console] [DIO] receiveDataWhenStatusError: true
INFO [console] [DIO] extra: {}
INFO [console] [DIO] headers:
INFO [console] [DIO] Authorization: Bearer 585|xY5R9yCrUKkki5zj3amaJTOpmyoSvm6GWGzRUMDcde317a87
INFO [console] [DIO] data:
INFO [console] [DIO] null
INFO [console] [DIO]
INFO [console] [DIO] *** Response ***
INFO [console] [DIO] uri: https://rehabilitation.most.team/api/v1/statistics/detailed
INFO [console] [DIO] statusCode: 200
INFO [console] [DIO] statusMessage: OK
INFO [console] [DIO] headers:
INFO [console] [DIO] x-served-by: rehabilitation.most.team
INFO [console] [DIO] access-control-allow-credentials: true
INFO [console] [DIO] connection: keep-alive
INFO [console] [DIO] cache-control: no-cache, private
INFO [console] [DIO] date: Wed, 12 Aug 2026 12:26:10 GMT
INFO [console] [DIO] transfer-encoding: chunked
INFO [console] [DIO] access-control-allow-origin: http://localhost:3000
INFO [console] [DIO] content-type: application/json
INFO [console] [DIO] server: openresty
INFO [console] [DIO] Response Text:
INFO [console] [DIO] {"success":true,"meta":{"timestamp":"2026-08-12T12:26:10.306065Z","request_id":"4fde7f70-d288-4e19-85e3-393dbbc3ebe4","version":"v1"},"data":{"rehabilitation_name":"Postman test","rehabilitation_start_date":"2026-05-04","rehabilitation_end_date":"2026-07-10","rehabilitation_weeks_count":10,"average_score":54.1,"average_interpretation":"satisfactory","phases":[{"phase_sequence_number":1,"phase_name":"Postman test phase","weeks":[{"phase_week_number":1,"rehabilitation_week_number":1,"score":57.8,"interpretation":"satisfactory","is_control_week":false},{"phase_week_number":2,"rehabilitation_week_number":2,"score":72,"interpretation":"good","is_control_week":false},{"phase_week_number":3,"rehabilitation_week_number":3,"score":23.8,"interpretation":"bad","is_control_week":false},{"phase_week_number":4,"rehabilitation_week_number":4,"score":59,"interpretation":"satisfactory","is_control_week":false},{"phase_week_number":5,"rehabilitation_week_number":5,"score":28,"interpretation":"bad","is_control_week":false},{"phase_week_number":6,"rehabilitation_week_number":6,"score":76,"interpretation":"good","is_control_week":false},{"phase_week_number":7,"rehabilitation_week_number":7,"score":34,"interpretation":"bad","is_control_week":false},{"phase_week_number":8,"rehabilitation_week_number":8,"score":86,"interpretation":"good","is_control_week":false},{"phase_week_number":9,"rehabilitation_week_number":9,"score":52.5,"interpretation":"satisfactory","is_control_week":false},{"phase_week_number":10,"rehabilitation_week_number":10,"score":52,"interpretation":"satisfactory","is_control_week":true}]}]}}
INFO [console] [DIO]
INFO [console] ✅ RAW RESPONSE: {success: true, meta: {timestamp: 2026-08-12T12:26:10.306065Z, request_id: 4fde7f70-d288-4e19-85e3-393dbbc3ebe4, version: v1}, data: {rehabilitation_name: Postman test, rehabilitation_start_date: 2026-05-04, rehabilitation_end_date: 2026-07-10, rehabilitation_weeks_count: 10, average_score: 54.1, average_interpretation: satisfactory, phases: [{phase_sequence_number: 1, phase_name: Postman test phase, weeks: [{phase_week_number: 1, rehabilitation_week_number: 1, score: 57.8, interpretation: satisfactory, is_control_week: false}, {phase_week_number: 2, rehabilitation_week_number: 2, score: 72, interpretation: good, is_control_week: false}, {phase_week_number: 3, rehabilitation_week_number: 3, score: 23.8, interpretation: bad, is_control_week: false}, {phase_week_number: 4, rehabilitation_week_number: 4, score: 59, interpretation: satisfactory, is_control_week: false}, {phase_week_number: 5, rehabilitation_week_number: 5, score: 28, interpretation: bad, is_control_week: fa
INFO [console] lse}, {phase_week_number: 6, rehabilitation_week_number: 6, score: 76, interpretation: good, is_control_week: false}, {phase_week_number: 7, rehabilitation_week_number: 7, score: 34, interpretation: bad, is_control_week: false}, {phase_week_number: 8, rehabilitation_week_number: 8, score: 86, interpretation: good, is_control_week: false}, {phase_week_number: 9, rehabilitation_week_number: 9, score: 52.5, interpretation: satisfactory, is_control_week: false}, {phase_week_number: 10, rehabilitation_week_number: 10, score: 52, interpretation: satisfactory, is_control_week: true}]}]}}
$
250 строкUTF-8LIVE