From df6465267fe1da3aadbb1f8abe79dd718e7b95b0 Mon Sep 17 00:00:00 2001 From: lux Date: Tue, 7 Apr 2026 10:31:35 -0400 Subject: [PATCH] Add LED panel animations for Lux robot (128x96 landscape) Turn signals (amber sweeping arrows), robot faces (happy, idle, alert, following), and status animations (boot sequence, low battery). Each animation has numbered PNG frames + preview GIF. Co-Authored-By: Claude Opus 4.6 (1M context) --- animations/face_alert/face_alert.gif | Bin 0 -> 10144 bytes animations/face_alert/frame_001.png | Bin 0 -> 326 bytes animations/face_alert/frame_002.png | Bin 0 -> 395 bytes animations/face_alert/frame_003.png | Bin 0 -> 399 bytes animations/face_alert/frame_004.png | Bin 0 -> 438 bytes animations/face_alert/frame_005.png | Bin 0 -> 435 bytes animations/face_alert/frame_006.png | Bin 0 -> 438 bytes animations/face_alert/frame_007.png | Bin 0 -> 436 bytes animations/face_alert/frame_008.png | Bin 0 -> 438 bytes animations/face_alert/frame_009.png | Bin 0 -> 435 bytes animations/face_alert/frame_010.png | Bin 0 -> 438 bytes animations/face_alert/frame_011.png | Bin 0 -> 438 bytes animations/face_alert/frame_012.png | Bin 0 -> 438 bytes animations/face_alert/frame_013.png | Bin 0 -> 438 bytes animations/face_alert/frame_014.png | Bin 0 -> 438 bytes animations/face_alert/frame_015.png | Bin 0 -> 438 bytes animations/face_alert/frame_016.png | Bin 0 -> 438 bytes animations/face_alert/frame_017.png | Bin 0 -> 438 bytes animations/face_alert/frame_018.png | Bin 0 -> 438 bytes animations/face_alert/frame_019.png | Bin 0 -> 438 bytes animations/face_alert/frame_020.png | Bin 0 -> 438 bytes animations/face_following/face_following.gif | Bin 0 -> 21174 bytes animations/face_following/frame_001.png | Bin 0 -> 447 bytes animations/face_following/frame_002.png | Bin 0 -> 447 bytes animations/face_following/frame_003.png | Bin 0 -> 448 bytes animations/face_following/frame_004.png | Bin 0 -> 447 bytes animations/face_following/frame_005.png | Bin 0 -> 444 bytes animations/face_following/frame_006.png | Bin 0 -> 438 bytes animations/face_following/frame_007.png | Bin 0 -> 441 bytes animations/face_following/frame_008.png | Bin 0 -> 437 bytes animations/face_following/frame_009.png | Bin 0 -> 455 bytes animations/face_following/frame_010.png | Bin 0 -> 434 bytes animations/face_following/frame_011.png | Bin 0 -> 441 bytes animations/face_following/frame_012.png | Bin 0 -> 426 bytes animations/face_following/frame_013.png | Bin 0 -> 442 bytes animations/face_following/frame_014.png | Bin 0 -> 443 bytes animations/face_following/frame_015.png | Bin 0 -> 443 bytes animations/face_following/frame_016.png | Bin 0 -> 444 bytes animations/face_following/frame_017.png | Bin 0 -> 444 bytes animations/face_following/frame_018.png | Bin 0 -> 443 bytes animations/face_following/frame_019.png | Bin 0 -> 443 bytes animations/face_following/frame_020.png | Bin 0 -> 440 bytes animations/face_following/frame_021.png | Bin 0 -> 444 bytes animations/face_following/frame_022.png | Bin 0 -> 443 bytes animations/face_following/frame_023.png | Bin 0 -> 450 bytes animations/face_following/frame_024.png | Bin 0 -> 448 bytes animations/face_happy/face_happy.gif | Bin 0 -> 4884 bytes animations/face_happy/frame_001.png | Bin 0 -> 516 bytes animations/face_happy/frame_002.png | Bin 0 -> 516 bytes animations/face_happy/frame_003.png | Bin 0 -> 516 bytes animations/face_happy/frame_004.png | Bin 0 -> 516 bytes animations/face_happy/frame_005.png | Bin 0 -> 516 bytes animations/face_happy/frame_006.png | Bin 0 -> 516 bytes animations/face_happy/frame_007.png | Bin 0 -> 516 bytes animations/face_happy/frame_008.png | Bin 0 -> 516 bytes animations/face_happy/frame_009.png | Bin 0 -> 516 bytes animations/face_happy/frame_010.png | Bin 0 -> 516 bytes animations/face_happy/frame_011.png | Bin 0 -> 456 bytes animations/face_happy/frame_012.png | Bin 0 -> 406 bytes animations/face_happy/frame_013.png | Bin 0 -> 456 bytes animations/face_happy/frame_014.png | Bin 0 -> 516 bytes animations/face_happy/frame_015.png | Bin 0 -> 516 bytes animations/face_happy/frame_016.png | Bin 0 -> 516 bytes animations/face_happy/frame_017.png | Bin 0 -> 516 bytes animations/face_happy/frame_018.png | Bin 0 -> 516 bytes animations/face_happy/frame_019.png | Bin 0 -> 516 bytes animations/face_happy/frame_020.png | Bin 0 -> 516 bytes animations/face_happy/frame_021.png | Bin 0 -> 516 bytes animations/face_happy/frame_022.png | Bin 0 -> 516 bytes animations/face_happy/frame_023.png | Bin 0 -> 516 bytes animations/face_happy/frame_024.png | Bin 0 -> 516 bytes animations/face_happy/frame_025.png | Bin 0 -> 516 bytes animations/face_happy/frame_026.png | Bin 0 -> 516 bytes animations/face_happy/frame_027.png | Bin 0 -> 516 bytes animations/face_happy/frame_028.png | Bin 0 -> 516 bytes animations/face_happy/frame_029.png | Bin 0 -> 516 bytes animations/face_happy/frame_030.png | Bin 0 -> 516 bytes animations/face_idle/face_idle.gif | Bin 0 -> 13798 bytes animations/face_idle/frame_001.png | Bin 0 -> 297 bytes animations/face_idle/frame_002.png | Bin 0 -> 297 bytes animations/face_idle/frame_003.png | Bin 0 -> 297 bytes animations/face_idle/frame_004.png | Bin 0 -> 297 bytes animations/face_idle/frame_005.png | Bin 0 -> 297 bytes animations/face_idle/frame_006.png | Bin 0 -> 297 bytes animations/face_idle/frame_007.png | Bin 0 -> 297 bytes animations/face_idle/frame_008.png | Bin 0 -> 297 bytes animations/face_idle/frame_009.png | Bin 0 -> 297 bytes animations/face_idle/frame_010.png | Bin 0 -> 297 bytes animations/face_idle/frame_011.png | Bin 0 -> 296 bytes animations/face_idle/frame_012.png | Bin 0 -> 297 bytes animations/face_idle/frame_013.png | Bin 0 -> 297 bytes animations/face_idle/frame_014.png | Bin 0 -> 297 bytes animations/face_idle/frame_015.png | Bin 0 -> 297 bytes animations/face_idle/frame_016.png | Bin 0 -> 232 bytes animations/face_idle/frame_017.png | Bin 0 -> 172 bytes animations/face_idle/frame_018.png | Bin 0 -> 244 bytes animations/face_idle/frame_019.png | Bin 0 -> 297 bytes animations/face_idle/frame_020.png | Bin 0 -> 297 bytes animations/face_idle/frame_021.png | Bin 0 -> 297 bytes animations/face_idle/frame_022.png | Bin 0 -> 297 bytes animations/face_idle/frame_023.png | Bin 0 -> 297 bytes animations/face_idle/frame_024.png | Bin 0 -> 297 bytes animations/face_idle/frame_025.png | Bin 0 -> 300 bytes animations/face_idle/frame_026.png | Bin 0 -> 300 bytes animations/face_idle/frame_027.png | Bin 0 -> 300 bytes animations/face_idle/frame_028.png | Bin 0 -> 300 bytes animations/face_idle/frame_029.png | Bin 0 -> 300 bytes animations/face_idle/frame_030.png | Bin 0 -> 300 bytes animations/face_idle/frame_031.png | Bin 0 -> 304 bytes animations/face_idle/frame_032.png | Bin 0 -> 300 bytes animations/face_idle/frame_033.png | Bin 0 -> 300 bytes animations/face_idle/frame_034.png | Bin 0 -> 300 bytes animations/face_idle/frame_035.png | Bin 0 -> 300 bytes animations/face_idle/frame_036.png | Bin 0 -> 240 bytes animations/face_idle/frame_037.png | Bin 0 -> 172 bytes animations/face_idle/frame_038.png | Bin 0 -> 244 bytes animations/face_idle/frame_039.png | Bin 0 -> 297 bytes animations/face_idle/frame_040.png | Bin 0 -> 297 bytes animations/status_boot/frame_001.png | Bin 0 -> 125 bytes animations/status_boot/frame_002.png | Bin 0 -> 130 bytes animations/status_boot/frame_003.png | Bin 0 -> 129 bytes animations/status_boot/frame_004.png | Bin 0 -> 129 bytes animations/status_boot/frame_005.png | Bin 0 -> 129 bytes animations/status_boot/frame_006.png | Bin 0 -> 130 bytes animations/status_boot/frame_007.png | Bin 0 -> 123 bytes animations/status_boot/frame_008.png | Bin 0 -> 430 bytes animations/status_boot/frame_009.png | Bin 0 -> 462 bytes animations/status_boot/frame_010.png | Bin 0 -> 503 bytes animations/status_boot/frame_011.png | Bin 0 -> 555 bytes animations/status_boot/frame_012.png | Bin 0 -> 579 bytes animations/status_boot/frame_013.png | Bin 0 -> 623 bytes animations/status_boot/frame_014.png | Bin 0 -> 655 bytes animations/status_boot/frame_015.png | Bin 0 -> 708 bytes animations/status_boot/frame_016.png | Bin 0 -> 373 bytes animations/status_boot/frame_017.png | Bin 0 -> 373 bytes animations/status_boot/frame_018.png | Bin 0 -> 396 bytes animations/status_boot/frame_019.png | Bin 0 -> 439 bytes animations/status_boot/frame_020.png | Bin 0 -> 478 bytes animations/status_boot/frame_021.png | Bin 0 -> 512 bytes animations/status_boot/frame_022.png | Bin 0 -> 521 bytes animations/status_boot/frame_023.png | Bin 0 -> 521 bytes animations/status_boot/frame_024.png | Bin 0 -> 510 bytes animations/status_boot/frame_025.png | Bin 0 -> 532 bytes animations/status_boot/frame_026.png | Bin 0 -> 530 bytes animations/status_boot/frame_027.png | Bin 0 -> 519 bytes animations/status_boot/frame_028.png | Bin 0 -> 297 bytes animations/status_boot/frame_029.png | Bin 0 -> 297 bytes animations/status_boot/frame_030.png | Bin 0 -> 297 bytes animations/status_boot/frame_031.png | Bin 0 -> 297 bytes animations/status_boot/frame_032.png | Bin 0 -> 297 bytes animations/status_boot/frame_033.png | Bin 0 -> 297 bytes animations/status_boot/frame_034.png | Bin 0 -> 297 bytes animations/status_boot/frame_035.png | Bin 0 -> 297 bytes animations/status_boot/frame_036.png | Bin 0 -> 297 bytes animations/status_boot/frame_037.png | Bin 0 -> 297 bytes animations/status_boot/frame_038.png | Bin 0 -> 297 bytes animations/status_boot/frame_039.png | Bin 0 -> 297 bytes animations/status_boot/frame_040.png | Bin 0 -> 297 bytes animations/status_boot/status_boot.gif | Bin 0 -> 28667 bytes animations/status_low_battery/frame_001.png | Bin 0 -> 375 bytes animations/status_low_battery/frame_002.png | Bin 0 -> 375 bytes animations/status_low_battery/frame_003.png | Bin 0 -> 375 bytes animations/status_low_battery/frame_004.png | Bin 0 -> 359 bytes animations/status_low_battery/frame_005.png | Bin 0 -> 359 bytes animations/status_low_battery/frame_006.png | Bin 0 -> 359 bytes animations/status_low_battery/frame_007.png | Bin 0 -> 375 bytes animations/status_low_battery/frame_008.png | Bin 0 -> 375 bytes animations/status_low_battery/frame_009.png | Bin 0 -> 375 bytes animations/status_low_battery/frame_010.png | Bin 0 -> 359 bytes animations/status_low_battery/frame_011.png | Bin 0 -> 359 bytes animations/status_low_battery/frame_012.png | Bin 0 -> 359 bytes animations/status_low_battery/frame_013.png | Bin 0 -> 375 bytes animations/status_low_battery/frame_014.png | Bin 0 -> 375 bytes animations/status_low_battery/frame_015.png | Bin 0 -> 375 bytes animations/status_low_battery/frame_016.png | Bin 0 -> 359 bytes animations/status_low_battery/frame_017.png | Bin 0 -> 359 bytes animations/status_low_battery/frame_018.png | Bin 0 -> 359 bytes animations/status_low_battery/frame_019.png | Bin 0 -> 375 bytes animations/status_low_battery/frame_020.png | Bin 0 -> 375 bytes animations/status_low_battery/frame_021.png | Bin 0 -> 375 bytes animations/status_low_battery/frame_022.png | Bin 0 -> 359 bytes animations/status_low_battery/frame_023.png | Bin 0 -> 359 bytes animations/status_low_battery/frame_024.png | Bin 0 -> 359 bytes .../status_low_battery/status_low_battery.gif | Bin 0 -> 8089 bytes animations/turn_left/frame_001.png | Bin 0 -> 383 bytes animations/turn_left/frame_002.png | Bin 0 -> 383 bytes animations/turn_left/frame_003.png | Bin 0 -> 383 bytes animations/turn_left/frame_004.png | Bin 0 -> 384 bytes animations/turn_left/frame_005.png | Bin 0 -> 369 bytes animations/turn_left/frame_006.png | Bin 0 -> 369 bytes animations/turn_left/frame_007.png | Bin 0 -> 370 bytes animations/turn_left/frame_008.png | Bin 0 -> 371 bytes animations/turn_left/frame_009.png | Bin 0 -> 371 bytes animations/turn_left/frame_010.png | Bin 0 -> 371 bytes animations/turn_left/frame_011.png | Bin 0 -> 371 bytes animations/turn_left/frame_012.png | Bin 0 -> 371 bytes animations/turn_left/frame_013.png | Bin 0 -> 116 bytes animations/turn_left/frame_014.png | Bin 0 -> 116 bytes animations/turn_left/frame_015.png | Bin 0 -> 116 bytes animations/turn_left/frame_016.png | Bin 0 -> 116 bytes animations/turn_left/turn_left.gif | Bin 0 -> 7976 bytes animations/turn_right/frame_001.png | Bin 0 -> 385 bytes animations/turn_right/frame_002.png | Bin 0 -> 387 bytes animations/turn_right/frame_003.png | Bin 0 -> 387 bytes animations/turn_right/frame_004.png | Bin 0 -> 386 bytes animations/turn_right/frame_005.png | Bin 0 -> 373 bytes animations/turn_right/frame_006.png | Bin 0 -> 372 bytes animations/turn_right/frame_007.png | Bin 0 -> 371 bytes animations/turn_right/frame_008.png | Bin 0 -> 371 bytes animations/turn_right/frame_009.png | Bin 0 -> 371 bytes animations/turn_right/frame_010.png | Bin 0 -> 371 bytes animations/turn_right/frame_011.png | Bin 0 -> 371 bytes animations/turn_right/frame_012.png | Bin 0 -> 371 bytes animations/turn_right/frame_013.png | Bin 0 -> 116 bytes animations/turn_right/frame_014.png | Bin 0 -> 116 bytes animations/turn_right/frame_015.png | Bin 0 -> 116 bytes animations/turn_right/frame_016.png | Bin 0 -> 116 bytes animations/turn_right/turn_right.gif | Bin 0 -> 7970 bytes scripts/generate_animations.py | 403 ++++++++++++++++++ 219 files changed, 403 insertions(+) create mode 100644 animations/face_alert/face_alert.gif create mode 100644 animations/face_alert/frame_001.png create mode 100644 animations/face_alert/frame_002.png create mode 100644 animations/face_alert/frame_003.png create mode 100644 animations/face_alert/frame_004.png create mode 100644 animations/face_alert/frame_005.png create mode 100644 animations/face_alert/frame_006.png create mode 100644 animations/face_alert/frame_007.png create mode 100644 animations/face_alert/frame_008.png create mode 100644 animations/face_alert/frame_009.png create mode 100644 animations/face_alert/frame_010.png create mode 100644 animations/face_alert/frame_011.png create mode 100644 animations/face_alert/frame_012.png create mode 100644 animations/face_alert/frame_013.png create mode 100644 animations/face_alert/frame_014.png create mode 100644 animations/face_alert/frame_015.png create mode 100644 animations/face_alert/frame_016.png create mode 100644 animations/face_alert/frame_017.png create mode 100644 animations/face_alert/frame_018.png create mode 100644 animations/face_alert/frame_019.png create mode 100644 animations/face_alert/frame_020.png create mode 100644 animations/face_following/face_following.gif create mode 100644 animations/face_following/frame_001.png create mode 100644 animations/face_following/frame_002.png create mode 100644 animations/face_following/frame_003.png create mode 100644 animations/face_following/frame_004.png create mode 100644 animations/face_following/frame_005.png create mode 100644 animations/face_following/frame_006.png create mode 100644 animations/face_following/frame_007.png create mode 100644 animations/face_following/frame_008.png create mode 100644 animations/face_following/frame_009.png create mode 100644 animations/face_following/frame_010.png create mode 100644 animations/face_following/frame_011.png create mode 100644 animations/face_following/frame_012.png create mode 100644 animations/face_following/frame_013.png create mode 100644 animations/face_following/frame_014.png create mode 100644 animations/face_following/frame_015.png create mode 100644 animations/face_following/frame_016.png create mode 100644 animations/face_following/frame_017.png create mode 100644 animations/face_following/frame_018.png create mode 100644 animations/face_following/frame_019.png create mode 100644 animations/face_following/frame_020.png create mode 100644 animations/face_following/frame_021.png create mode 100644 animations/face_following/frame_022.png create mode 100644 animations/face_following/frame_023.png create mode 100644 animations/face_following/frame_024.png create mode 100644 animations/face_happy/face_happy.gif create mode 100644 animations/face_happy/frame_001.png create mode 100644 animations/face_happy/frame_002.png create mode 100644 animations/face_happy/frame_003.png create mode 100644 animations/face_happy/frame_004.png create mode 100644 animations/face_happy/frame_005.png create mode 100644 animations/face_happy/frame_006.png create mode 100644 animations/face_happy/frame_007.png create mode 100644 animations/face_happy/frame_008.png create mode 100644 animations/face_happy/frame_009.png create mode 100644 animations/face_happy/frame_010.png create mode 100644 animations/face_happy/frame_011.png create mode 100644 animations/face_happy/frame_012.png create mode 100644 animations/face_happy/frame_013.png create mode 100644 animations/face_happy/frame_014.png create mode 100644 animations/face_happy/frame_015.png create mode 100644 animations/face_happy/frame_016.png create mode 100644 animations/face_happy/frame_017.png create mode 100644 animations/face_happy/frame_018.png create mode 100644 animations/face_happy/frame_019.png create mode 100644 animations/face_happy/frame_020.png create mode 100644 animations/face_happy/frame_021.png create mode 100644 animations/face_happy/frame_022.png create mode 100644 animations/face_happy/frame_023.png create mode 100644 animations/face_happy/frame_024.png create mode 100644 animations/face_happy/frame_025.png create mode 100644 animations/face_happy/frame_026.png create mode 100644 animations/face_happy/frame_027.png create mode 100644 animations/face_happy/frame_028.png create mode 100644 animations/face_happy/frame_029.png create mode 100644 animations/face_happy/frame_030.png create mode 100644 animations/face_idle/face_idle.gif create mode 100644 animations/face_idle/frame_001.png create mode 100644 animations/face_idle/frame_002.png create mode 100644 animations/face_idle/frame_003.png create mode 100644 animations/face_idle/frame_004.png create mode 100644 animations/face_idle/frame_005.png create mode 100644 animations/face_idle/frame_006.png create mode 100644 animations/face_idle/frame_007.png create mode 100644 animations/face_idle/frame_008.png create mode 100644 animations/face_idle/frame_009.png create mode 100644 animations/face_idle/frame_010.png create mode 100644 animations/face_idle/frame_011.png create mode 100644 animations/face_idle/frame_012.png create mode 100644 animations/face_idle/frame_013.png create mode 100644 animations/face_idle/frame_014.png create mode 100644 animations/face_idle/frame_015.png create mode 100644 animations/face_idle/frame_016.png create mode 100644 animations/face_idle/frame_017.png create mode 100644 animations/face_idle/frame_018.png create mode 100644 animations/face_idle/frame_019.png create mode 100644 animations/face_idle/frame_020.png create mode 100644 animations/face_idle/frame_021.png create mode 100644 animations/face_idle/frame_022.png create mode 100644 animations/face_idle/frame_023.png create mode 100644 animations/face_idle/frame_024.png create mode 100644 animations/face_idle/frame_025.png create mode 100644 animations/face_idle/frame_026.png create mode 100644 animations/face_idle/frame_027.png create mode 100644 animations/face_idle/frame_028.png create mode 100644 animations/face_idle/frame_029.png create mode 100644 animations/face_idle/frame_030.png create mode 100644 animations/face_idle/frame_031.png create mode 100644 animations/face_idle/frame_032.png create mode 100644 animations/face_idle/frame_033.png create mode 100644 animations/face_idle/frame_034.png create mode 100644 animations/face_idle/frame_035.png create mode 100644 animations/face_idle/frame_036.png create mode 100644 animations/face_idle/frame_037.png create mode 100644 animations/face_idle/frame_038.png create mode 100644 animations/face_idle/frame_039.png create mode 100644 animations/face_idle/frame_040.png create mode 100644 animations/status_boot/frame_001.png create mode 100644 animations/status_boot/frame_002.png create mode 100644 animations/status_boot/frame_003.png create mode 100644 animations/status_boot/frame_004.png create mode 100644 animations/status_boot/frame_005.png create mode 100644 animations/status_boot/frame_006.png create mode 100644 animations/status_boot/frame_007.png create mode 100644 animations/status_boot/frame_008.png create mode 100644 animations/status_boot/frame_009.png create mode 100644 animations/status_boot/frame_010.png create mode 100644 animations/status_boot/frame_011.png create mode 100644 animations/status_boot/frame_012.png create mode 100644 animations/status_boot/frame_013.png create mode 100644 animations/status_boot/frame_014.png create mode 100644 animations/status_boot/frame_015.png create mode 100644 animations/status_boot/frame_016.png create mode 100644 animations/status_boot/frame_017.png create mode 100644 animations/status_boot/frame_018.png create mode 100644 animations/status_boot/frame_019.png create mode 100644 animations/status_boot/frame_020.png create mode 100644 animations/status_boot/frame_021.png create mode 100644 animations/status_boot/frame_022.png create mode 100644 animations/status_boot/frame_023.png create mode 100644 animations/status_boot/frame_024.png create mode 100644 animations/status_boot/frame_025.png create mode 100644 animations/status_boot/frame_026.png create mode 100644 animations/status_boot/frame_027.png create mode 100644 animations/status_boot/frame_028.png create mode 100644 animations/status_boot/frame_029.png create mode 100644 animations/status_boot/frame_030.png create mode 100644 animations/status_boot/frame_031.png create mode 100644 animations/status_boot/frame_032.png create mode 100644 animations/status_boot/frame_033.png create mode 100644 animations/status_boot/frame_034.png create mode 100644 animations/status_boot/frame_035.png create mode 100644 animations/status_boot/frame_036.png create mode 100644 animations/status_boot/frame_037.png create mode 100644 animations/status_boot/frame_038.png create mode 100644 animations/status_boot/frame_039.png create mode 100644 animations/status_boot/frame_040.png create mode 100644 animations/status_boot/status_boot.gif create mode 100644 animations/status_low_battery/frame_001.png create mode 100644 animations/status_low_battery/frame_002.png create mode 100644 animations/status_low_battery/frame_003.png create mode 100644 animations/status_low_battery/frame_004.png create mode 100644 animations/status_low_battery/frame_005.png create mode 100644 animations/status_low_battery/frame_006.png create mode 100644 animations/status_low_battery/frame_007.png create mode 100644 animations/status_low_battery/frame_008.png create mode 100644 animations/status_low_battery/frame_009.png create mode 100644 animations/status_low_battery/frame_010.png create mode 100644 animations/status_low_battery/frame_011.png create mode 100644 animations/status_low_battery/frame_012.png create mode 100644 animations/status_low_battery/frame_013.png create mode 100644 animations/status_low_battery/frame_014.png create mode 100644 animations/status_low_battery/frame_015.png create mode 100644 animations/status_low_battery/frame_016.png create mode 100644 animations/status_low_battery/frame_017.png create mode 100644 animations/status_low_battery/frame_018.png create mode 100644 animations/status_low_battery/frame_019.png create mode 100644 animations/status_low_battery/frame_020.png create mode 100644 animations/status_low_battery/frame_021.png create mode 100644 animations/status_low_battery/frame_022.png create mode 100644 animations/status_low_battery/frame_023.png create mode 100644 animations/status_low_battery/frame_024.png create mode 100644 animations/status_low_battery/status_low_battery.gif create mode 100644 animations/turn_left/frame_001.png create mode 100644 animations/turn_left/frame_002.png create mode 100644 animations/turn_left/frame_003.png create mode 100644 animations/turn_left/frame_004.png create mode 100644 animations/turn_left/frame_005.png create mode 100644 animations/turn_left/frame_006.png create mode 100644 animations/turn_left/frame_007.png create mode 100644 animations/turn_left/frame_008.png create mode 100644 animations/turn_left/frame_009.png create mode 100644 animations/turn_left/frame_010.png create mode 100644 animations/turn_left/frame_011.png create mode 100644 animations/turn_left/frame_012.png create mode 100644 animations/turn_left/frame_013.png create mode 100644 animations/turn_left/frame_014.png create mode 100644 animations/turn_left/frame_015.png create mode 100644 animations/turn_left/frame_016.png create mode 100644 animations/turn_left/turn_left.gif create mode 100644 animations/turn_right/frame_001.png create mode 100644 animations/turn_right/frame_002.png create mode 100644 animations/turn_right/frame_003.png create mode 100644 animations/turn_right/frame_004.png create mode 100644 animations/turn_right/frame_005.png create mode 100644 animations/turn_right/frame_006.png create mode 100644 animations/turn_right/frame_007.png create mode 100644 animations/turn_right/frame_008.png create mode 100644 animations/turn_right/frame_009.png create mode 100644 animations/turn_right/frame_010.png create mode 100644 animations/turn_right/frame_011.png create mode 100644 animations/turn_right/frame_012.png create mode 100644 animations/turn_right/frame_013.png create mode 100644 animations/turn_right/frame_014.png create mode 100644 animations/turn_right/frame_015.png create mode 100644 animations/turn_right/frame_016.png create mode 100644 animations/turn_right/turn_right.gif create mode 100644 scripts/generate_animations.py diff --git a/animations/face_alert/face_alert.gif b/animations/face_alert/face_alert.gif new file mode 100644 index 0000000000000000000000000000000000000000..26e1586d77432ac39eb89bcd4d92fcbf459013aa GIT binary patch literal 10144 zcmZ?wbhEHbY+y)WXlDR}6aRq#!W<<>LtsROfZ|UU1}>nF75{VlxrPKgI|jHK=@~FH z0)=!y0RhS;3>^O%7&&A-HY_;U%pt55b7I57!|ejfUUNJ)E;`yRVVrg6#Ky(P`xTtK zWIQ)5IXPJ)cvZ~FO-oNtH%LA;$8+P2jd7 z-$z@k!{40Rl=yj_=$fq?9vrF6O_H@`Rv^E^z;nl?0aW+Zhn4#fpfLa z>+8lZFVFU0t)^4CHT(3shn846Y0!qd9aWrpi%2BSL^<0W60$v$2CK zbLU15Ww9KMjgJm@OR$Gc*-^0gXpe$*RnLk-mE#i>eTzbV3O;q6W)QmTh(z$xhS}!P z=ay&)ru$8^E1Y-dq;TSe`D*=K5?&!oE-rRhI4S4UhUHh5g!2cjl?u$fvcPA%(3@GM zDmOMnYtLKzGH{L4wgSOjx{~JaVmitm-did?dHtEab-q@jJU?_#FUsZSzqi6b0dGE* zV&G@+Wl$W=$A}mmWsSrT;5g5~3~iJ%GH3uB<%-TNphkJeg@vx|BEUv@#m2>ldPQu} z8s+T@?E7LQg4K@AGK+n5=4YY0|5UqTHq{eFD|{Ba1S`cx320ni?l)hrSL>?A)m5yl z8F#fD9)&i?Y=6gd+VoL)Q_9h6KC7>;3F^q%y)N~&Sn81-79X8#tON3W_Ot)wV%amX z;PQ43-t>?^o1et)sytccIw!*D+JPzh??u)`DnCD`Xxz;9(^9QrrFP(axmA-*&z#k7 zj%u-;Y}U{~Alr*F_%TS2X8Vzt)JOe{2my}k!0KB>0@%O?_Qm-?eR1a|PGz?mjg5;A zwM)oG-HF(sc)VZI+38P4p`zymCCzzvEQ(T3PT`3yVo{i^>ND9?`_dWBk7|DNxElSw z+ziTaU(C@dX1Z(hqK4%GtT$A48ES=06I<(6>v?tMwdJat>!z*>UU_4E;@(BNw?iLA zY_dI{_4HNnx~p6Aj$hiFS-$$*zVMsZLao2+Kiu8)Q|_Cz_=hV8yC0gl-MXmrbn$d% zja;vp#+S~{G;L>_d($}h^z`YU?yRwT?!RCSdtD!=^|m*+sAi)7p7Tz8o)1ZDp#Z+04LU70Dm*6r-dD~qnJ7M(5k=hu|i0qawW7yZqemUV4Q z;`OZD?BI2wTk~(Wy`5E_cV}Pu_j#;)zOHxK6vVpQmZv-^bbr_DTe{uinU@YuWA6C7 zvgEVhc?;|GcNS5`_s=ZI?2_}{lJWeSW9_jzUTc%XH@9T(4q0inJ!d8lGZWq-K$2m! z1%N$GjEat^5Ev~2!1H#aqwFIp)sK1>DFjA40Su$rA1OVIGDlPh4Dalp2aHQ>%MqkT TI{+gpm5+KBM+gk>4uCZP z?}LBCzl4-H3TklQQq#PjcR$)iaCXHX)2>M~w1C=R;KrK?JKy~LR9VC&x?#fV=WmZ* zUtJaP_K}Th)cMoQJJx%z3N#uD8^U@K#|`t2*cNO&{`mXD z4BJlG4?7N3d|w@J3p4dVf${SR^Uj?2o4rOV>|MG0^yfzmmR&Fnek`1H!pHspja@VU z^8Nq!<5Ua7wl5oN+1@hWxOecLnI2EmJq-+Q-yUGj%%+y99tcCx$; z@xLatB~@*vv{3FVPaF0%=hf@2SGe2mRDYPgdDX3+*J1onx3wF6e)suQ^W)3!mh)?u zzc&6|oFozaV%~LCwIc>kUcRW+Umdcy>YKPQ(~hP6Z;dnL54@FqGuQDw!@H}yk4b*v zdmu01V8|#U?6C13SIFUkL$+JJ$~0yW20xc;uelw)b^Dw|agj jnQv)jz6-Vd!9hDl$x4q+uJctVgPh~(>gTe~DWM4fll!V& literal 0 HcmV?d00001 diff --git a/animations/face_alert/frame_003.png b/animations/face_alert/frame_003.png new file mode 100644 index 0000000000000000000000000000000000000000..76d00aa2a4542c02ef0a3eb733d74c2b27f352ea GIT binary patch literal 399 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~FffLBx;TbZ%z1m;Gw-m00Ly{G z3HGZ0?N!$oohuT{cv#R@c=c=>gXz@^Nfnjj!y#qA}3Ywncie*0Ha8MmoiU}N=` z_HBC>1<(7#)Yqq2edg>Z74ZVS+Ius0KRv1Y!0TO)Vfkrc!O8C!|GX>xr}sX8cK`PC zKLyRQKA*8;mUH|4*xY#P^FmIoWerJO8bD$*_m6))fxksU<}H6z*<$cxJ z<6?Tmiix2j?&97B+0xYtg|@xyuWxJxv}KC#hQ=YO>E=^Nes^q|+3u^GCls(AdH4C- zwOv<>wV#WLggyrqx9*cW3XB!*yf&BBp^32b!uLq5G-i(v-4|`W1u5nKIuu1E> zNEs_ z4ab7H7JuPOkg4}d{LSFD|K&@dri3-NeQ*2!&3Ku5r*->6U6~jEL6!o+q*}(k!Tujk SOgCc%aXnrAT-G@yGywqX54rIG literal 0 HcmV?d00001 diff --git a/animations/face_alert/frame_005.png b/animations/face_alert/frame_005.png new file mode 100644 index 0000000000000000000000000000000000000000..385443e74892f2e967488b8cb243bc9eea6bbc9a GIT binary patch literal 435 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffdkmx;TbZ%z1mqvFMNi4{N~X zmve9ZUVkh2B5Ufh3sYXI1gW%tpQh9DVDb^ZvSUDPKqE?)Kd6#_{-8Psw-CEmW(pLr%Ola zDmL_-d_HZ~-CsLXmBM@&jj z=KcLMp^U5R)u$Du>x|Yj9{>F`ZO&P+cjg_M^F3Vt&BWPn`#z?;{a0T7$i~p;@{3t> z7aAWiIJv5$^mox@x#^-=Z4A5KUgEoI*N}H!v*Vg|!#e*P99OIx)D;?%m^9QHlJ+vc z*fq}};61~!kJp8_@h5zVo-GH|bnMpqjeob>r|ps~f0&oS&Hl?CY%4=UO1#E&{|{c# Q?w3FUp00i_>zopr0FgMt!~g&Q literal 0 HcmV?d00001 diff --git a/animations/face_alert/frame_006.png b/animations/face_alert/frame_006.png new file mode 100644 index 0000000000000000000000000000000000000000..e0c51babec641225ff0808970d848f18f00d97d7 GIT binary patch literal 438 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi77x;TbZ%z1mqH|Ved4_mz*<$cxJ z<6?Tmiix2j?&97B+0xYtg|@xyuWxJxv}KC#hQ=YO>E=^Nes^q|+3u^GCls(AdH4C- zwOv<>wV#WLggyrqx9*cW3XB!*yf&BBp^32b!uLq5G-i(v-4|`W1u5nKIuu1E> zNEs_ z4ab7H7JuPOkg4}d{LSFD|K&@dri3-NeQ*2!&3Ku5r*->6U6~jEL6!o+q*}(k!Tujk SOgCc%aXnrAT-G@yGywqX54rIG literal 0 HcmV?d00001 diff --git a/animations/face_alert/frame_007.png b/animations/face_alert/frame_007.png new file mode 100644 index 0000000000000000000000000000000000000000..55d012299b765e98d5cc185146e2022f703b593e GIT binary patch literal 436 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffdkox;TbZ%z1mq(eJQ<0BeAF zq56*hUGrAyaCNL$=ycM;xa?kZS)$$F%vVdwqL_jD7#iN`9eiASr-^+}_5E3!qvo;e z2QqK$Wnws|T_yG<`S};+yjdTYM$OBw-PiKn|6kJb{;QwcVv>L!b~P0ar5=W`ZwRUeR}k?Dy5~BtFrGm%bI`N{o~%R^^jY> zAcf0gSp$qHi(#xkyMFUJ=B_7}Uz~J4&dLsLwefR2DKf!_5lHB4X^_h{|JD0mDMtmUuJdioI=k%|X<##f^_p*2YzVF-h z_=N7y?kf@}gbLm+dtO$(&tZWe*NSc7)*(NcR@tsqh@|MZZ0c0c4 z+AQ&a>d?fFTdZ4thKo+qUvM>gpzopr0FFGtdH?_b literal 0 HcmV?d00001 diff --git a/animations/face_alert/frame_008.png b/animations/face_alert/frame_008.png new file mode 100644 index 0000000000000000000000000000000000000000..e0c51babec641225ff0808970d848f18f00d97d7 GIT binary patch literal 438 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi77x;TbZ%z1mqH|Ved4_mz*<$cxJ z<6?Tmiix2j?&97B+0xYtg|@xyuWxJxv}KC#hQ=YO>E=^Nes^q|+3u^GCls(AdH4C- zwOv<>wV#WLggyrqx9*cW3XB!*yf&BBp^32b!uLq5G-i(v-4|`W1u5nKIuu1E> zNEs_ z4ab7H7JuPOkg4}d{LSFD|K&@dri3-NeQ*2!&3Ku5r*->6U6~jEL6!o+q*}(k!Tujk SOgCc%aXnrAT-G@yGywqX54rIG literal 0 HcmV?d00001 diff --git a/animations/face_alert/frame_009.png b/animations/face_alert/frame_009.png new file mode 100644 index 0000000000000000000000000000000000000000..385443e74892f2e967488b8cb243bc9eea6bbc9a GIT binary patch literal 435 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffdkmx;TbZ%z1mqvFMNi4{N~X zmve9ZUVkh2B5Ufh3sYXI1gW%tpQh9DVDb^ZvSUDPKqE?)Kd6#_{-8Psw-CEmW(pLr%Ola zDmL_-d_HZ~-CsLXmBM@&jj z=KcLMp^U5R)u$Du>x|Yj9{>F`ZO&P+cjg_M^F3Vt&BWPn`#z?;{a0T7$i~p;@{3t> z7aAWiIJv5$^mox@x#^-=Z4A5KUgEoI*N}H!v*Vg|!#e*P99OIx)D;?%m^9QHlJ+vc z*fq}};61~!kJp8_@h5zVo-GH|bnMpqjeob>r|ps~f0&oS&Hl?CY%4=UO1#E&{|{c# Q?w3FUp00i_>zopr0FgMt!~g&Q literal 0 HcmV?d00001 diff --git a/animations/face_alert/frame_010.png b/animations/face_alert/frame_010.png new file mode 100644 index 0000000000000000000000000000000000000000..e0c51babec641225ff0808970d848f18f00d97d7 GIT binary patch literal 438 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi77x;TbZ%z1mqH|Ved4_mz*<$cxJ z<6?Tmiix2j?&97B+0xYtg|@xyuWxJxv}KC#hQ=YO>E=^Nes^q|+3u^GCls(AdH4C- zwOv<>wV#WLggyrqx9*cW3XB!*yf&BBp^32b!uLq5G-i(v-4|`W1u5nKIuu1E> zNEs_ z4ab7H7JuPOkg4}d{LSFD|K&@dri3-NeQ*2!&3Ku5r*->6U6~jEL6!o+q*}(k!Tujk SOgCc%aXnrAT-G@yGywqX54rIG literal 0 HcmV?d00001 diff --git a/animations/face_alert/frame_011.png b/animations/face_alert/frame_011.png new file mode 100644 index 0000000000000000000000000000000000000000..e0c51babec641225ff0808970d848f18f00d97d7 GIT binary patch literal 438 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi77x;TbZ%z1mqH|Ved4_mz*<$cxJ z<6?Tmiix2j?&97B+0xYtg|@xyuWxJxv}KC#hQ=YO>E=^Nes^q|+3u^GCls(AdH4C- zwOv<>wV#WLggyrqx9*cW3XB!*yf&BBp^32b!uLq5G-i(v-4|`W1u5nKIuu1E> zNEs_ z4ab7H7JuPOkg4}d{LSFD|K&@dri3-NeQ*2!&3Ku5r*->6U6~jEL6!o+q*}(k!Tujk SOgCc%aXnrAT-G@yGywqX54rIG literal 0 HcmV?d00001 diff --git a/animations/face_alert/frame_012.png b/animations/face_alert/frame_012.png new file mode 100644 index 0000000000000000000000000000000000000000..e0c51babec641225ff0808970d848f18f00d97d7 GIT binary patch literal 438 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi77x;TbZ%z1mqH|Ved4_mz*<$cxJ z<6?Tmiix2j?&97B+0xYtg|@xyuWxJxv}KC#hQ=YO>E=^Nes^q|+3u^GCls(AdH4C- zwOv<>wV#WLggyrqx9*cW3XB!*yf&BBp^32b!uLq5G-i(v-4|`W1u5nKIuu1E> zNEs_ z4ab7H7JuPOkg4}d{LSFD|K&@dri3-NeQ*2!&3Ku5r*->6U6~jEL6!o+q*}(k!Tujk SOgCc%aXnrAT-G@yGywqX54rIG literal 0 HcmV?d00001 diff --git a/animations/face_alert/frame_013.png b/animations/face_alert/frame_013.png new file mode 100644 index 0000000000000000000000000000000000000000..e0c51babec641225ff0808970d848f18f00d97d7 GIT binary patch literal 438 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi77x;TbZ%z1mqH|Ved4_mz*<$cxJ z<6?Tmiix2j?&97B+0xYtg|@xyuWxJxv}KC#hQ=YO>E=^Nes^q|+3u^GCls(AdH4C- zwOv<>wV#WLggyrqx9*cW3XB!*yf&BBp^32b!uLq5G-i(v-4|`W1u5nKIuu1E> zNEs_ z4ab7H7JuPOkg4}d{LSFD|K&@dri3-NeQ*2!&3Ku5r*->6U6~jEL6!o+q*}(k!Tujk SOgCc%aXnrAT-G@yGywqX54rIG literal 0 HcmV?d00001 diff --git a/animations/face_alert/frame_014.png b/animations/face_alert/frame_014.png new file mode 100644 index 0000000000000000000000000000000000000000..e0c51babec641225ff0808970d848f18f00d97d7 GIT binary patch literal 438 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi77x;TbZ%z1mqH|Ved4_mz*<$cxJ z<6?Tmiix2j?&97B+0xYtg|@xyuWxJxv}KC#hQ=YO>E=^Nes^q|+3u^GCls(AdH4C- zwOv<>wV#WLggyrqx9*cW3XB!*yf&BBp^32b!uLq5G-i(v-4|`W1u5nKIuu1E> zNEs_ z4ab7H7JuPOkg4}d{LSFD|K&@dri3-NeQ*2!&3Ku5r*->6U6~jEL6!o+q*}(k!Tujk SOgCc%aXnrAT-G@yGywqX54rIG literal 0 HcmV?d00001 diff --git a/animations/face_alert/frame_015.png b/animations/face_alert/frame_015.png new file mode 100644 index 0000000000000000000000000000000000000000..e0c51babec641225ff0808970d848f18f00d97d7 GIT binary patch literal 438 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi77x;TbZ%z1mqH|Ved4_mz*<$cxJ z<6?Tmiix2j?&97B+0xYtg|@xyuWxJxv}KC#hQ=YO>E=^Nes^q|+3u^GCls(AdH4C- zwOv<>wV#WLggyrqx9*cW3XB!*yf&BBp^32b!uLq5G-i(v-4|`W1u5nKIuu1E> zNEs_ z4ab7H7JuPOkg4}d{LSFD|K&@dri3-NeQ*2!&3Ku5r*->6U6~jEL6!o+q*}(k!Tujk SOgCc%aXnrAT-G@yGywqX54rIG literal 0 HcmV?d00001 diff --git a/animations/face_alert/frame_016.png b/animations/face_alert/frame_016.png new file mode 100644 index 0000000000000000000000000000000000000000..e0c51babec641225ff0808970d848f18f00d97d7 GIT binary patch literal 438 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi77x;TbZ%z1mqH|Ved4_mz*<$cxJ z<6?Tmiix2j?&97B+0xYtg|@xyuWxJxv}KC#hQ=YO>E=^Nes^q|+3u^GCls(AdH4C- zwOv<>wV#WLggyrqx9*cW3XB!*yf&BBp^32b!uLq5G-i(v-4|`W1u5nKIuu1E> zNEs_ z4ab7H7JuPOkg4}d{LSFD|K&@dri3-NeQ*2!&3Ku5r*->6U6~jEL6!o+q*}(k!Tujk SOgCc%aXnrAT-G@yGywqX54rIG literal 0 HcmV?d00001 diff --git a/animations/face_alert/frame_017.png b/animations/face_alert/frame_017.png new file mode 100644 index 0000000000000000000000000000000000000000..e0c51babec641225ff0808970d848f18f00d97d7 GIT binary patch literal 438 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi77x;TbZ%z1mqH|Ved4_mz*<$cxJ z<6?Tmiix2j?&97B+0xYtg|@xyuWxJxv}KC#hQ=YO>E=^Nes^q|+3u^GCls(AdH4C- zwOv<>wV#WLggyrqx9*cW3XB!*yf&BBp^32b!uLq5G-i(v-4|`W1u5nKIuu1E> zNEs_ z4ab7H7JuPOkg4}d{LSFD|K&@dri3-NeQ*2!&3Ku5r*->6U6~jEL6!o+q*}(k!Tujk SOgCc%aXnrAT-G@yGywqX54rIG literal 0 HcmV?d00001 diff --git a/animations/face_alert/frame_018.png b/animations/face_alert/frame_018.png new file mode 100644 index 0000000000000000000000000000000000000000..e0c51babec641225ff0808970d848f18f00d97d7 GIT binary patch literal 438 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi77x;TbZ%z1mqH|Ved4_mz*<$cxJ z<6?Tmiix2j?&97B+0xYtg|@xyuWxJxv}KC#hQ=YO>E=^Nes^q|+3u^GCls(AdH4C- zwOv<>wV#WLggyrqx9*cW3XB!*yf&BBp^32b!uLq5G-i(v-4|`W1u5nKIuu1E> zNEs_ z4ab7H7JuPOkg4}d{LSFD|K&@dri3-NeQ*2!&3Ku5r*->6U6~jEL6!o+q*}(k!Tujk SOgCc%aXnrAT-G@yGywqX54rIG literal 0 HcmV?d00001 diff --git a/animations/face_alert/frame_019.png b/animations/face_alert/frame_019.png new file mode 100644 index 0000000000000000000000000000000000000000..e0c51babec641225ff0808970d848f18f00d97d7 GIT binary patch literal 438 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi77x;TbZ%z1mqH|Ved4_mz*<$cxJ z<6?Tmiix2j?&97B+0xYtg|@xyuWxJxv}KC#hQ=YO>E=^Nes^q|+3u^GCls(AdH4C- zwOv<>wV#WLggyrqx9*cW3XB!*yf&BBp^32b!uLq5G-i(v-4|`W1u5nKIuu1E> zNEs_ z4ab7H7JuPOkg4}d{LSFD|K&@dri3-NeQ*2!&3Ku5r*->6U6~jEL6!o+q*}(k!Tujk SOgCc%aXnrAT-G@yGywqX54rIG literal 0 HcmV?d00001 diff --git a/animations/face_alert/frame_020.png b/animations/face_alert/frame_020.png new file mode 100644 index 0000000000000000000000000000000000000000..e0c51babec641225ff0808970d848f18f00d97d7 GIT binary patch literal 438 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi77x;TbZ%z1mqH|Ved4_mz*<$cxJ z<6?Tmiix2j?&97B+0xYtg|@xyuWxJxv}KC#hQ=YO>E=^Nes^q|+3u^GCls(AdH4C- zwOv<>wV#WLggyrqx9*cW3XB!*yf&BBp^32b!uLq5G-i(v-4|`W1u5nKIuu1E> zNEs_ z4ab7H7JuPOkg4}d{LSFD|K&@dri3-NeQ*2!&3Ku5r*->6U6~jEL6!o+q*}(k!Tujk SOgCc%aXnrAT-G@yGywqX54rIG literal 0 HcmV?d00001 diff --git a/animations/face_following/face_following.gif b/animations/face_following/face_following.gif new file mode 100644 index 0000000000000000000000000000000000000000..f5983fbb2156bcd473d455ac0029c73a844adcbd GIT binary patch literal 21174 zcmeI4e=wVO9LFEz(nqjmRVswV?;mx<%1Tui3z}r+x0M^kR8Li1%cks{5h^VjiiM#X zC9PG5pw`xPD^V4yU8iSVn|26}_Ih3KHsfZpM4DY=)?9b_FQ4a++~xW2`+DB5@AvtB zKF@u3(E~ia67rCEgoUhLLlT5DB#}svkSzHP_yqzQLcnqfgXl}gYAMkR@{b6o`iA(w z<3iTalHPKbA&_Z;pb|t2CDJ;$eFdnYQ_N6Dqkx6CX4KR8XReo+Y)ugj@tbaxk*LK) zdS|n+(jojjhQ#HKRJ-gRE~Izy1hpPXZ3FZ!%ix;rkt;d#UAFm6v`VMg;qI@;&V@8F zPSv{GQCoex9(8Ab**e~i;}`vo>q+(H>)xsLXkCbZa53(e23x&vFT^m9Jh|0eLT=yF znDY?3(mLik(pPxID(L1VzW7G@MQlyr<<1%5X4eC4#LE-2w`&}kE28L$|hc4`rqf_H29a<~K`j&qjK`$lzSf&U-G_NpoE;UA~mwf4$E8*;DeB-=^=H zeO%qvdu8^?VDAB;X5xrKl6{)mh1 zH(o{HRm)0Gh>0^-{SHUoinyw59aGa@%_%Zoj zSyAkKBBw-G$U`D?3Hz$G_y62f6LH3iR~yzz;MIlXdR3jE3YQE|ea4KwTkkO&J##t_ z>oms=!(xzEJ#ZX?Lk=Ps`Me0TqAdS#X(9pC?UfTA&gPo(gy*ADECUcr6N3a}Rwkf+ zvG5?4GGh3ri3HRymLZ6xi9v!fD-%$^SjHfhGGh3ri3CvZ|Jq}HB0ywCrDJ!j5H`u< zb0Uo^FDk_dJEcV>a${C8H#-A80Gp81BTI5d;RgiWW+gy_?He65dIy+kD8LP6eL0qGnw22~XrN9LQG>HJ} zr%(-9Rjp&PzW{H}s5e1mEfRw;(IUBt!Y26?6PMna9z1CmT;c2~Ymtx>6{=-?r*c_) z8(h<*Ou<;!CxC{&>{cv$m)=IXp>a85sr1+L3*wS}r>=^M^^alO|g^F~YD3 zdKEshE$4W}-Vvrw`eTu>>)h?rlmeVNqkHaFo{INLD-dt}M*(*=iGZ?rfim$}dYh%< zg-!}ej11R`hgXP)p-IIH+xNlii)Xt=JorjSlkx^*eL(;XR9f*oxs3v?f3J8XD)v{; zkY?dgoAC3SvO0Og9Q)m-Hk8$kT!v!BJE(F;=K#(@@PGj7|FUz^kKUAabZ>@p=feiS{pEQ|JG#e(1iXqj%Pk-qL=6a_I~B66Q>nz;rwl}eiv8H~FHHB+ zw54B|Dw+Y(@=16SMTKQ9U>Rf#2&li8?FM2&tbl;}#c~I+AXY#?{bFqcu^?7JK>cEE z2eBYlKtTOs`G8muDK7{z#DZ7>f&U|x_usgdP5J-; literal 0 HcmV?d00001 diff --git a/animations/face_following/frame_001.png b/animations/face_following/frame_001.png new file mode 100644 index 0000000000000000000000000000000000000000..f6c75c5c508d2efa91af0c06e9cbf49fc65dbc74 GIT binary patch literal 447 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg`xx;TbZ%z1m)G3=0m2y4KH z9qN&d$=4rx#WcQ7c*9i?Y7wYrvTdPn9QXG=n~F*IpKM)tA*g6?ZD~(K6w=%p~x`8Ej(=V%UwZP5X#SPEOsjMqi`_PXtgPX`aV_r7>sbcCPy>MjwNX#ciu?XIDoOo5dxyCR z(CrK?J+_XAjjO~0=lRcPM)nrMr)J;yXS>bMe!aWv?waNQt(XpRG2U1oZLpewp}vkm Wqr_8Z+UK%LkolgjelF{r5}E)IioD|h literal 0 HcmV?d00001 diff --git a/animations/face_following/frame_002.png b/animations/face_following/frame_002.png new file mode 100644 index 0000000000000000000000000000000000000000..ee59859acaf04f5a73d3e7c24fcd519e9d605c80 GIT binary patch literal 447 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg`xx;TbZ%z1nFVra901lxsc zkNwJ+=3BQ5TQmtLDm0%aHznK)MaIzIodIQ!#{EXJBzo|`?@ z->dX=4Ov?`6?_)R6;zU>zOettncL-yB&Tjz${b<;a?h(#c5x8mi?UsE3)e*FFJwYehJOls~A z=b!%`xBZBSh+2aIV+*H(j+n#CHH*LB^jMYW`N_oO>hqAhp34>hrM~hfthJV2`*z7I zGpQmLo%e@xb(g%_CSl5|`|_mR^|`qZ$`9=O_9*as3nS3iAn@+8n*6>OzosvguD*9< z^TI@6U@9yq2>tZ^7<>MO2-ixRSazU&aGwF42X(@lZ~U`Yz2EvZ`e@?C+x4=HiLDH8 fuG>n4GBm{7yB+bEoqt%U4rGC+tDnm{r-UW|{%^Va literal 0 HcmV?d00001 diff --git a/animations/face_following/frame_003.png b/animations/face_following/frame_003.png new file mode 100644 index 0000000000000000000000000000000000000000..ea09d60ca004791202f7b0a1c2b3d08707f060eb GIT binary patch literal 448 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg`zx;TbZ%z1nFVra901lxsc zkNwJ+=3BQ5TQmtLDm0%aHznK*`TDJ`yFT}D zC3x0<+wm^Pnd!#+xI6aE{}|U?ZNF9)R4TnwfLquh;_dYd^VaDL%ggP5zwOoqKecz?JY=Hq|3#S6mij53j>9Tvzy9JecPg=fkrQPyZenzaVoC<5|8M5!*%*a&_ z-F|U`azdqiUbbTB_M25#*$4NwS_8}pTkCIx)UIE9UyHB%-oMuz9NH`i``;a0 c!Nl(VR2yRh{c59A;!-XtNfx|GDRk)`PcO z!h*|k4o2AOYE4uNUL3{I5I9eJ{_MnOEBb;e-8Qnfa4PsPBr#3G>9u;Etc zji0q1#&Y4h4eR?A&+aH+|Gb2oL2XL@i7y2^&DIx1EpA;|l`c^sQFU13&Yo*xujZzQ zFnIske7rPWTIfLC_DBCDzwjrlwc9dn@~Z6C6nXN#wEP~&WYMP|OXPswG+@Nyb9uAS``NFfjwW8bUH_Ibv6Ug`x~)VgLqoj% X=>s0KxwbdUf-LZK^>bP0l+XkKG|{{V literal 0 HcmV?d00001 diff --git a/animations/face_following/frame_005.png b/animations/face_following/frame_005.png new file mode 100644 index 0000000000000000000000000000000000000000..4dee0181c19b27409a41b730a82097f3d60dcd75 GIT binary patch literal 444 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~FfcZIx;TbZ%z1nFVra7g18cym zLUrr5Vv9y)i^gILx4En8D!z1cFiv8xc%N>mqSDWzv4w}3fuW>aQ?GLWS*-_8cU@g3 zbE9itRYa&#=&`D;0t|a?{B+C@pE11Y{Z#TO2Zyl342DB20%{Egj4hlBJ`9OW9KsC$ zqkq1Bk$--Dtl8r?cK0qtI~=^iapT(CxV@)JyLEl8T00+a{?HT`vFDoHtGUa=8M1E` zA1O_LEp(vp`=f7?Tlf=Jn_ZbUdDZqw+#7+W`re(A|MH*7r-x5JZ~5BS)!T3}?#JWL zi?2r~adAOy7vo+~a_!=;9F@>~&rc>MSD%IKUF_osbV|1Tfv|G3tka%XqgS5hh`8UD zs=DOW+Kbs-QI{tvud|Lmo_t{Aw?}c`TNr^M1_I|Yr}M{~{7rpvZl3waoQxSjAr6h0 zsekr;JSc5q7WmHpIwQ!3n4X^f>+rIZ-*5d|mlW~!TfDNu8i9ttyIA*fF?@K;-D>8+ Tlz8X$1CRxtu6{1-oD!M*6F8=y95Q)8Vnd)I2C*t5}7!J9cC~bVi8bd zX!yUn#&KEu>$N|1r|Vub2rX}mn)&>?;_AW@`TV7-i`@=1)qdE1^mp>AcR9{{&f(t< zJrWBljsC))usSy*S3Pw5MB$ATT<3_mHnb~Js6JP?fRX*;mYN` z`@Y9DwSV{;D0TUNz~;wpS4t9muI4`RvdDS4u*U!T^qGyz-|t>)t-X!?%(g@Jhx_BU zyNHWG?bQ);c)4cr_nRK8@;pD8m~1__a@Xb(N1$6?%O8j{4~lv|dDZQV6LK4BWv`u8 z4BdWogfJ{{L3?7Ez`RvELVjGBVWtW%%yl^0?2Z Q=@!TaPgg&ebxsLQ08py9ZvX%Q literal 0 HcmV?d00001 diff --git a/animations/face_following/frame_008.png b/animations/face_following/frame_008.png new file mode 100644 index 0000000000000000000000000000000000000000..f660fcfd1b0fdca85380583a81dcdddb1abedc79 GIT binary patch literal 437 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi75x;TbZ%z1nFVra901Y5wX zLUrr5Vv9y)i^gILx4EnAUIzbXW}LMCN_D)Yr-vQKg-dC(fJW>H-ud+NrWH-wKgaDZ zN{~MGDl@p(WT)vWSB9QXHkQfBzbo`?7v}^qGa%r*As)a`%l3CHeD!sx&pAwnpeQ zyy^;%ep{<2gQfp6-*~OLZ0o#`-Mwvd7;pdHu&ym+x2~J7V{}!~ zkxkvad)Q=NYsh__YXA%?5IB&$>-2Q}UH^=}oV#cKF)w2VP>e%kp4Y#ynhj0I^j>}Z zB7^WBvX?jPw9lCpd;MCv=;dWs>*q2ix-#^=mg~`CIIv#cr^#K_?fDK@kOiKuelF{r G5}E*ukhhBf literal 0 HcmV?d00001 diff --git a/animations/face_following/frame_009.png b/animations/face_following/frame_009.png new file mode 100644 index 0000000000000000000000000000000000000000..c059909db152244c369a824e3ebc70c7af20fc7a GIT binary patch literal 455 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~FfjIcx;TbZ%z1nFVra901lxsc zkNwJco)<8=7cf09=&=f|y`=uniR)zetG)eCCrqeOQDuEv05s-d-_vR5KQCgs=NBz| zs&DO!)yqRwFQu#s?`DvATA8+6GOhDw+^TdDWd$FGL?#YlhZziqSOnA>3>aHDfkF)b z!)u+FwSQh(IsLMj`;1lPjg9e#%)cBuTYcAg@97?{1mEg!JKiTbGu?O}dB?u_A7jqd zwrfQ}U(GfNa0@%!xa0eCo}Rw2yxe~IZTCDk3L4zx4!65sy;n3i;KrS*_g`yIB--p+ z-=F3EpS8SDvOM*~^vi{p&oi&AlAhUgD2Xv-dG!0$6GQe+eUh57>g>uYb)YDVz%~1Z zwR(zCr#-LU&N#slalh@hm&euHNmoR+EK{w%Q@*kBKI3nzZuh&wY{0++feN4UpC4SW z@8{XO`MIx+w3Hf9jHxU1A3>{{Menv|0|bz|+;wWt~$(69BRPzt;c& literal 0 HcmV?d00001 diff --git a/animations/face_following/frame_010.png b/animations/face_following/frame_010.png new file mode 100644 index 0000000000000000000000000000000000000000..78622af16a67b022e18eacff6233b7d7dda3aa1b GIT binary patch literal 434 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffdknx;TbZ%z1nFZfLUs16#nW zLUrr5Vv9y)i^gILx4EloFR3fBc-S4NmVY>5LXC<{T~r$*1H-P}BG+r~rHOthyPFlx zm*X05yH;zWR`T8`j)u5->epr`KAZ7o>8G9~mKIJ0ABIFG4q=BG42M_*)EW#JTR0gW z{MWLdkomA|{k;{2HFx1-&k9F5qze-U+Gs=R$1VKyzxv)sF{{ATaw z-@i20X4aq2KdgOnmGzXBRoXL~fX=vP*Rb|jey$~uUnv$z&`=k-hjU^s!m0n4|ao^~(W&vWhDV{ zEZzhO1^<_}`WYMjU8^lL{=X^HAudLXbJipw?i(*utsc!;r|tA?z@N;SdYM zhx)1PDN#G_t`^^!x3P6)QTmGtp|}fN-P3P5@BI9QE5Wz6Z^xUQSSE{iad+&RzcJ>7 zw%_`?!ti`(ZP{cgn#L4#Xd^*;7hJ5_frfZ4Q>!7E&L?RvMM zr_)sQor6pLrdoT6iVLeX<-^kQ%EE&KRRUz?z{ z-EDpGfmyR;3UA)Dn%C05Rs6e@FdHzqK)_;o?7o_dU#2g#uD*Zd^v*c8!kI-@3NzM6z2DwSNyZp_GiD2Ji6i4>-~KV8=M%vy%yV|#c-gXz5legbfHs; PImiM}S3j3^P65{u5@d)@g}AQ_jYA72D-cma5pjZmSmi zwuCkF#I|}&-WaIMav*G;_Gj6|Wh?rEes(1Ba|k=kU^v7gpw?i(*utsc!;r|tAh_7&2%u?M=1;44?eFo~Q}h4!uEj~!2VQ9WG5q_Y)LW(rX46q7jk%>??4&)f z>Uz#=TlQ9LRk8>0$S}{XBPXepZ{u%PR~NV{BbL>AtyLMe{MOQ;%O-LA`|T%dPe~ xtM*;LRxWyY(f0qhm=AF=-dI;{u!@1fUQTkEm$}b_PjMg%JYD@<);T3K0RXartaAVW literal 0 HcmV?d00001 diff --git a/animations/face_following/frame_013.png b/animations/face_following/frame_013.png new file mode 100644 index 0000000000000000000000000000000000000000..a6153faf22e64006047712583d350f6eef53bf95 GIT binary patch literal 442 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~FfcZHx;TbZ%z1nFVra901Y5wX zLUrr5Vv9y)i^gILx4EloFR3eWPN-RW@AnP4Pm^mVI4w+_1vFwu@W;95y+fJvpYIKO zdcdsb>g8o(nMUTTS{WpsRz9pX_USzusC8cBTY~{(3#Wn)Ln0H0u)_?7Lo5PnKp}=d z@lUypY-84)?Vj^J;&8}aE@u0d@Sa1jmcCn1)kY8Xo5z{cHR}{y?Gm(k}(FMlV#KG*e@ar5F2$6vdzk51y^f?6WRy`bdE#ork! zq1#m|C1$-UUiD5VH~?t>FZK=Br}kbe3o4c7y~(`odtxm2%3Zo{zK+pVMMqLs^Zwzn zxE5yfYL-Ewx8?qQ{E@xx-@i_bV+Mv72prpedba+qe@0)MmcQ*>H;JD~WJ)5?ly`bZ^X>9COI7U7+p5LB zEosfXu&o|bHwNmmIOv}jzCSzh*$kPbpL&w`IfNZ%FdSkLP-`$?Y~fV!VMt`+5N0?~ zIW_;pmV({k`bBq>c!NvRUsMRh8E|z^zvXM|PKBIT%WAy8PoK!If1f|PJS2x-LbkQu&c5odP;da$t_=|kOE>pjOIKdG zOZDXC3nBA^OWkKS0iAKpu3_!FoGaTVuZmuIT5iKW{?kz&SJz(5=8C#JSy|6I`grnz zjoTi@eQ#m3SijQw?Ca|3S1U^5PT%T>foOXS(xY76t|fhli`4 zyzk||w_s!Er;1&CSUv1;g8o(nMUTTS{WpsRz9pX_USzusC8cBTY~{(3#Wn)Ln0H0u)_?7Lo5PnKp}=d z@lUypY-84)?Vj^J;&8}aE@u0d@Sa1jmcCn1)kY8Xo5z{cHR}{y?Gm(k}(FMlV#KG*e@ar5F2$6vdzk51y^f?6WRy`bdE#ork! zq1#m|C1$-UUiD5VH~?t>FZK=Br}kbe3o4c7y~(`odtxm2%3Zo{zK+pVMMqLs^Zwzn zxE5yfYL)>51B;IA+kN}^BYWMyf1Mb|3=A@chBdqQ{9N=}-}(KUI^pkaZJa=%hC`7j z-wVszI3|lf{a7Lg_8*3qH!QW!iKprp0l+(NZ%=KLLn#5Ikt&Q@BwA~WF25k@6er^TBwlB{+PKQYg9Vp!X=%3^l{)F{* zTeeMJb^AnT1kj9WdZ)gZ)XuE@_@#DxY5LJ`4L1XSJpa1*x~?H>E7Y!T)&Q$lFKSID zt%{yx!{htaGPHb}rUuX%f0=K*KIN8ey>eG?+Z)E)zc;LF4Y@0}c-aD7TgykAuCmp! z$z*HGmHJ8mLrCuQCC=}!e^0o&qdZ>zr72K^VTRlPP{*a~_VeuB_}ll6w3Hf9jEO5< zwcfwx150o0l;f8x5xzw6__Ti;GC%Izwr}+eGuyw{s5+;U*hv$x#+pQ1f-4nYl zYASQIVVM8ws3j+_tPo>LnDTt)_p=73Y3?g+7T;h##3G>9V8GbIso=wq$iyM+FoWR` z3&V%{sro0r6znzCFS?n;8(gZ*^G6`gfUA4@E$6#di`XsteylkWA<*1`T(E*&w4mn#;3 zzv!_l&-0Uk$<^l}cRiOa06OC9uc{yfTy8#J=YJ;Z0&erO`dJny!6$(s4RW z`iEq}nza>IOcQ}2#E>vy=lef#_uJPTTm1W%$9hHvh7Iz&_xxP+THm?6Y=399^I;YS z1_y_SYo2`Xav+h&f?9ces-CY|iVRhibAH_6Fg~85Kh<5t-C+j9Ar=9(1_QtWkF5V8?yAI(QPnHT=fyFu$viK3eePOshU0g;Z>L|dYgl_L zAlh%$J+HhYK-0`jHSb^go0;

E|t9`?_Qq7w`RW{L|v=(McR!Ak%?L#JCrfT)p@! zOC>bl^OKRu)n_4l7xOp*ZO@iJ5N0gB_34sVYp*=zh`8UDstROY%;t!?JV|+-b@cJ# z0~^0RiYq<@3?T-F13!Izt!?&~-R#-?yTUu4k>SH>J^6hZzfND6Yn%V*<^=;r1_ptE z9oj!DA2*w4kJNk8XJNc7I>P1}BDZuf@J-F&x;g|8=Pc Tlf_bD0g#QJu6{1-oD!M<$IrNT literal 0 HcmV?d00001 diff --git a/animations/face_following/frame_019.png b/animations/face_following/frame_019.png new file mode 100644 index 0000000000000000000000000000000000000000..f960d79eb412f1df3326f9121795b0b5f10a6eee GIT binary patch literal 443 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~FfcZGx;TbZ%z1nFVra7g1M7ur zkNwJco)<8=7cf09=&=g@y)@oMNTD*|{of_+El(U9+NNFRWMF8s7PtSoCrtE1+0CqA zz8u$h+qGH~)q?j%aWn+ZOSdyWbY;fdrJp(;ac~Gb%wRagBB0h_z}Uj6;KPu}#39UZ z;D6}62`?X3Wyd|;bX08FtF;CnRQ4h z<(zG~vPycVAh)o?jXO(f{I^fQ|eQkNr8;%)oTJ5LF@4YAF900XzLj=Rp)qVHE zl~-1IPny1PrP=aVb5l6DgdHM)X3e^pp{pL6zgW@zz%Mf$ZNbL5Yd^=byjqQjF#9UU#qJPMBZz^MmX4__lX%DuvItwE;t-q2W;M z$@kLodmNL6pZ+V6NA)Sp^BZ>B=gg{IzxKVB-|Bn+UUP70vn1?)=eVAU;m;1{SF=5s Tcz2)c2U+Op>gTe~DWM4frF67m literal 0 HcmV?d00001 diff --git a/animations/face_following/frame_020.png b/animations/face_following/frame_020.png new file mode 100644 index 0000000000000000000000000000000000000000..55dbdcccced3515f264f4ef256a7f63a1c141df0 GIT binary patch literal 440 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi78x;TbZ%z1nFVra901Y5wX zLUrr5Vv9y)i^gILx4EloFR3fBc-S4NmOrg%f0A8OcMA_Q14Bu-F0=D z%#E&%RZ&-!LXWv^6=2wF7^Y*Hg)(f&yv{28=D73O)>pOdP@vGZ+rB2&geM z{9j$;xUBW|-m0mu#iD1dvUWah{*ZO?hKjYeSLQAcXUP6le55q}wa|gW?~lGoZsAW@ zZFgncShhFdYw^g zHfdG#BpY7eua=?ZQ#3Vzj(E#_;xI3?B8302F1P)mG-mUrg>t3qyxp%J@Z%LV6zTf0;=DTxwKMITWfWg-~`O$rK zyNae`YNsB*EQb0I-OJ1VZOHtzbKAbv5@EJ~uL}x3%^n89#}ML?~=fU$*B!G|G{i9?v- z!2i&F3YQPPjoW*&wAfD8o+dnh~M(nvN_v+kb?FQ4omXEe=F6Df%!@ck~&n@;1 zq4HU`J+H2P(j5UbZJFMw?Irb6l^;J<-rBV|$vB}z2`EA1Xk T%D4ANgY5Hk^>bP0l+XkKK;5-n literal 0 HcmV?d00001 diff --git a/animations/face_following/frame_022.png b/animations/face_following/frame_022.png new file mode 100644 index 0000000000000000000000000000000000000000..a6e127ee57e1d76c341fac170e0aa3804b8fc4e3 GIT binary patch literal 443 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~FfcZGx;TbZ%z1nFVra901Y5wX zLUrr5Vv9y)i^gILx4EnAUJ45`smNcbmcQ*>H;F$;V+#*614Bu<=DyFBv#%bwUAj8d za)W5{*Db4DSM~H}DKb=5&a1f3V|@IH#?*9?YKIvNhgbyE8Vnd)I2C*t5}7!JfkF&& z;Xj*vxVKk-Rl2Tw%^F+J2?nl2hTnzm2{OjWDx`wQ+P)oX51FT+U)S66M z6+Ov@$M>scX!#UP4WRvRnQy#0<(6x`a@W*dZx~6K{ z;#%09*Ru?OAp`;kEZ=^5*1c>$&)u7U)!y;)3NsvdJj+U@qW1kJsr2t(C&n?~Sbj+4 z%l9Mf{ugezRNBmCNA@Se>p8FZXRFQ6e!aUZ@#^LJw~UFc3^~_zB|;e*;_Xk?dN8eA R@F)gkpQo#z%Q~loCIIk+wu}G( literal 0 HcmV?d00001 diff --git a/animations/face_following/frame_023.png b/animations/face_following/frame_023.png new file mode 100644 index 0000000000000000000000000000000000000000..2cd511844fcb7eabeef7fb5341cae607ff375a75 GIT binary patch literal 450 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffev{x;TbZ%z1m)F{s&qf%U?* zkAB}+*4ehJe`J}rINLwKKh*q|Z|4N3PYY}FuWC9weNsHYF!?SY1H-P{;?ry9sfm85 zi^vK#%W;dhJ*zcQ%Xx1UM?>5^_i56J%Ou_|{nYV@gG1P12E!p10ksAL#uiQmABIFG z4q=7^kG1S4WIile7x#3-5wT^j<}P^b`J*jvN99`6E7rd28J=xP?|$ufO|{|eyQ6Q7 zGvp5h<*v|G56xFKPXg+fuGYAJ>1XPL^MAkJy=JXZ#=`UMkp2Jsz4wHi1E7{|h+tT{ zy6;-J^2#djNz)guG+X{kHid&r*dgLK!?dbRfzf`e?s>)bHT=xov9={-uW1#pV{z1` zqowMvEBJ0)i@WoBrU5XNK;S@a)YH@AzWaG%Z~j)h$IB}W6k}}NJ?V50fBf;d=%VX! z_v`9o&TcjQHuKfTiS%roA_Y*2j0a6pQEBzSf5|PFzriv|Lb#RDh+?%9sO(k zLjFKhZAPwo==O=+8-b=>%{%qIq;}?y4?k+Rm#QD_Yd9JBk*L4k9TcI{}vj$kb zeo<>SX;t(j8(!b9mZ9a7G&O*Z_{$ve`kY&~^~znnZ8D6fe-}h^uiT~U=IiKPwdr_i zy7Uj(4eR$-T(M0Ah7kxf{N8f1U4Pd<;qSPdK}yeEsuFLcswL|3ZRbO_@|w?fSL%wfMU4{d>*9q0N%8 h|J}hAObma1G5&q*G5asut=k|gJzf1=);T3K0RR-Pz|;T$ literal 0 HcmV?d00001 diff --git a/animations/face_happy/face_happy.gif b/animations/face_happy/face_happy.gif new file mode 100644 index 0000000000000000000000000000000000000000..1ef493760414af1388feefcf81f659ac156b4eed GIT binary patch literal 4884 zcmZ?wbhEHbY+y)WXlDR}6aN`frv3l_AHo|YM?+xbgn;5t7KRj{cNPD0`?-b$J39ur z8tEA@GXjNlK%oH2CJY?^85lWaJT@#i*vuiU6?0<4!o%$X%3gCkHZD5aEn%E>=fuXv z$NLqWyJS2!Ejc+^BY0KJ$xTa7Pd7+DHOF)Fva_=-ieKG1xq12d`3}uovR+$OTwLri zSu6I`mX(*62P|I3M*Y#~CPdQTxLD!~KJ1JEi#MgfDt@wEgF?yIht=VSA@&o1gnB@hPoi zu6X^v$QuTa+LlW8`|bIz_3T>c??ZiWE6O6yZDZau@9gC=*ZbMgi$(tx=es?2e4RB_ zd+W~6&o33CgH&5uRTPEPl!pR(8U`-`)SWzNg~ zDgXWG)tT>Zj~ zDebzA9wFg+6Fa7K1SeK3>e5*FV_~=Q%pFsDR4-a6_sHEmF(q5+qsG-#%U>^KCLHJF zyqneHDfS?S%g{3+&%)00PD^HF#?z@hY%C0*nBxM*5Vn|;V~}ESWe|cCaHGW=C?Su6 zkr)CT6?jT6X66iF$))Vx!(h|(#iL+}=OhvTRaZ0$mY(X;^KX-}T(Imcqni4xJ(6Ak8<Jmd$U3) z4Q@NBH02E3wki-4eBk4NC5!`=MaSv&>> z$*w&L)>SwcypNR?qjw!&5$Re-+)RX4s1NEex8#$Hb zN;EbuI@B(q88ziZ!Q!Jm3W`-vG>TMCPLT3-Q(3V|=~SC;^0Atmfy+)YS`_mYcorwP z&b3Ttx>~tu`H_W=`ATba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_002.png b/animations/face_happy/frame_002.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_003.png b/animations/face_happy/frame_003.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_004.png b/animations/face_happy/frame_004.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_005.png b/animations/face_happy/frame_005.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_006.png b/animations/face_happy/frame_006.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_007.png b/animations/face_happy/frame_007.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_008.png b/animations/face_happy/frame_008.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_009.png b/animations/face_happy/frame_009.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_010.png b/animations/face_happy/frame_010.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_011.png b/animations/face_happy/frame_011.png new file mode 100644 index 0000000000000000000000000000000000000000..0e10e894fdb4db2717f170f94e9c393c88b47d89 GIT binary patch literal 456 zcmV;(0XP1MP)N;uy$cHLBMhXDWp0000000000 z;0&I6T;y`y`H!#l;$_INq;UgwPkZiQ2{L3Tdu}u?8@1d4<)wFhS&H&i9%}aj%#dMK zzz$fP`O4#G%`ggRKxvh&t-dp6xLvXB@EH!k3>nHC!ol1Jbj$z%06+qjZu8zgZhw5f z*BLOmdhuyxZU-95za(hDs6$7i~iWY=e3T$sWBzgStjbp-p-?Z%sHx&7lWzWgTtj7w}3j+;W`nB!*?@94|3JXtZ zllr!|OltcSH{dw6FRcsfsu3qVxypRo~Tw|%pZ>wLQK7M`hdGFbVlUrx!mogM< zdi%>bzyA5{kJT*US4=lz_}I_?FO_|k&CVk1uwfU&H@^Alwk_6YuJds`D?YIP&-R}n zhXcW!;=NygU$107oX!0!)a4w{vQ@{fJxkX-_=xGmHqNG3l5!6JcE|OsHArGVV|->a z=QFRi_5Cl56`a`?nzFENh{@O}sk2`0<0pyj%tk2!cmH1cJFk#`ZIt~Q?!fDR6|EXJ zZT+)*Tk?mea-ISQQXJwZZLJfEKe&DG=wS`OeKjBI!s!^E#CTg-{n@7m0sL$Ko wX8y7}9dS7-RY>!N;uy$cHLBMhXDWp0000000000 z;0&I6T;y`y`H!#l;$_INq;UgwPkZiQ2{L3Tdu}u?8@1d4<)wFhS&H&i9%}aj%#dMK zzz$fP`O4#G%`ggRKxvh&t-dp6xLvXB@EH!k3>nHC!ol1Jbj$z%06+qjZu8zgZhw5f z*BLOmdhuyxZU-95za(hDs6$ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_015.png b/animations/face_happy/frame_015.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_016.png b/animations/face_happy/frame_016.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_017.png b/animations/face_happy/frame_017.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_018.png b/animations/face_happy/frame_018.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_019.png b/animations/face_happy/frame_019.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_020.png b/animations/face_happy/frame_020.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_021.png b/animations/face_happy/frame_021.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_022.png b/animations/face_happy/frame_022.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_023.png b/animations/face_happy/frame_023.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_024.png b/animations/face_happy/frame_024.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_025.png b/animations/face_happy/frame_025.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_026.png b/animations/face_happy/frame_026.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_027.png b/animations/face_happy/frame_027.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_028.png b/animations/face_happy/frame_028.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_029.png b/animations/face_happy/frame_029.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_happy/frame_030.png b/animations/face_happy/frame_030.png new file mode 100644 index 0000000000000000000000000000000000000000..f98f12b9cd8a9d8db75838311ec1338fdf62116b GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9>ba4!+nDh3IV-S;}K&)vCBS9B0Mxbs4NKk2C@><6Kf8D9< z_c?r$>ug-(7fgwr`o3;jahvH!-i(zC!~gP0YBfn;m{->$_)1CI;Ln=B}se|FD*tCSfTd=LLv*&2)FITo2X z=xk!#d(SIJ^0?yRWe;R8%&P{P`6%D<`@Xv7|0)xT*xsyOnE#Ydl7S)ORmq7xwR7r! z)Vw!du(R%~nR!CrCX)i`s_Unt1(R}lBVzfa`|s~=sJh9RWa6-9E#ub1=~tXB7Q~e` zNUUcrtK3qB@aF@wjB7Ogp+S0#J*}YGvnb}( zzts~j?>R4H9Gmr~<>{XDYYwm7u~G8gWIhJ9eTZG-9?#KW|j;E`i%Q~loCIG_s B+Xnyu literal 0 HcmV?d00001 diff --git a/animations/face_idle/face_idle.gif b/animations/face_idle/face_idle.gif new file mode 100644 index 0000000000000000000000000000000000000000..d926b3df0f8df40128078f8554faab3b5d366921 GIT binary patch literal 13798 zcmZ?wbhEHbY+y)WXlDR}6aRq#!W<<>LtsROfZ|UU1|y)475{VlxrPKgI|jHK=@~FH z0)=!y0RhS;3>^O%7&&A-HY_;U%pt55b7I57!|ejfUUNJ)E;`yRVVrg6#Ky(P`xTtK zWIQ)5IXPJ)cvZ~FO-oNtH%LA;$8+54lc-B5w()*rd z)Q5~iQxxmBMc&#Jc4npNd_Nf}!y|_lr58VYEozp(adJKT4egp8_wS3hGC!R=ZGGhK zeSKqd_Wg5vcYlBX;BdE%y#KyEKR>^?ygL5;zP-P{e|UU)d2CGi_g|}@ zzrKHd|9)Wc!KU$`fkiCiK_iFSiU&_(ypoG6XpMfpwjPg+ar?W_CsmPxn&>S=fga8%&!#+vaQ0Ci(!Oqm!wFDW0Kq~ROob23Qb z^c3;k6r1X2Jf}9N9G&FS`bgzfu+oJE#>I6#np+p2UZohG z#9Lsr++(HE;VxP4ZEJ3BR$^u%kUtfG`I8HlKjF?DWsHWvhzbD?XYBd&gh2y%m}!Yc z05E?t*md3UC|u&%t?1wMWJZvx=QPAH6Du1FDOqiF*mp#wuTjs!Lx3X{nALb3KqI;= ztl$w{U<;I2ug4>B(cx}>?J$`Y6P1qj3tPLfI0QC$PL^{_(y0t;@MzZc?+d9kO!Aqc z&w0$pbF-rNOv~nPXC%HToLt1(e$8dp2aVvRE)(0%aDGh=Y$Y)CIod9TN5?2*B!>XU z3}9wt5m*44USS7kMyD15ezP8rjSCKUOK1nhtk?+5jQrMaG8&hZPxPp|FEgo}^zhVl z?P$N2nL!P{vvpD@EvXQGetMp{`70hy!4>CcxwZ0%o-lstwU}v&UM|;{<-r}^0aBKr@Je5_0+VxGfLhsd-B6bKYmaB)nB}K0uvp; zl_~D23x&}^)RCNSNBs^70s0Q-s58iqX1md(HyQ%8$#%FWFGjQ7Xqp=h0S1~(8RD9# zAMGQKrnu1%0EPfZDfY2Z=n_2aa~BDoj0TC*_WUqf)-cmF_nu0m;d0+;3Z;wQyew9~ zuvorRDRx(gX7FVHP^;QkMp-AOhB41c(VDdC#QFrt+{Lj5Qbtop<7qSmMrH_%PF#%4 lcpvpO-9vz$6Bm*|-(g!lI@&0ud$f;QI2c1<5KmlK0|1ffcxnIu literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_001.png b/animations/face_idle/frame_001.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_002.png b/animations/face_idle/frame_002.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_003.png b/animations/face_idle/frame_003.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_004.png b/animations/face_idle/frame_004.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_005.png b/animations/face_idle/frame_005.png new file mode 100644 index 0000000000000000000000000000000000000000..8e6844a34713088b4f30ebca4f3eb845c4a41d29 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx9i*F=0@Xr+iE;1lE7|u7K5X{iz#};=k9l3-sbkNq z`~FYov2Wu^h@ZUeuW?Gm<$4Bpt1YkQD>}PAXO!`;?=!yA8^yfBpdsP=3hwj$M~}a( zy~tx&ejxnw)%wTYP6M{487WNBnN_ zoQ3QDE5Gpg6?WD*Wrf5hwl}XYY^!YJ$#&B{6g~S(#ymx4s1pykE~)vv=(W7?tWK literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_006.png b/animations/face_idle/frame_006.png new file mode 100644 index 0000000000000000000000000000000000000000..8e6844a34713088b4f30ebca4f3eb845c4a41d29 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx9i*F=0@Xr+iE;1lE7|u7K5X{iz#};=k9l3-sbkNq z`~FYov2Wu^h@ZUeuW?Gm<$4Bpt1YkQD>}PAXO!`;?=!yA8^yfBpdsP=3hwj$M~}a( zy~tx&ejxnw)%wTYP6M{487WNBnN_ zoQ3QDE5Gpg6?WD*Wrf5hwl}XYY^!YJ$#&B{6g~S(#ymx4s1pykE~)vv=(W7?tWK literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_007.png b/animations/face_idle/frame_007.png new file mode 100644 index 0000000000000000000000000000000000000000..8e6844a34713088b4f30ebca4f3eb845c4a41d29 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx9i*F=0@Xr+iE;1lE7|u7K5X{iz#};=k9l3-sbkNq z`~FYov2Wu^h@ZUeuW?Gm<$4Bpt1YkQD>}PAXO!`;?=!yA8^yfBpdsP=3hwj$M~}a( zy~tx&ejxnw)%wTYP6M{487WNBnN_ zoQ3QDE5Gpg6?WD*Wrf5hwl}XYY^!YJ$#&B{6g~S(#ymx4s1pykE~)vv=(W7?tWK literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_008.png b/animations/face_idle/frame_008.png new file mode 100644 index 0000000000000000000000000000000000000000..8e6844a34713088b4f30ebca4f3eb845c4a41d29 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx9i*F=0@Xr+iE;1lE7|u7K5X{iz#};=k9l3-sbkNq z`~FYov2Wu^h@ZUeuW?Gm<$4Bpt1YkQD>}PAXO!`;?=!yA8^yfBpdsP=3hwj$M~}a( zy~tx&ejxnw)%wTYP6M{487WNBnN_ zoQ3QDE5Gpg6?WD*Wrf5hwl}XYY^!YJ$#&B{6g~S(#ymx4s1pykE~)vv=(W7?tWK literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_009.png b/animations/face_idle/frame_009.png new file mode 100644 index 0000000000000000000000000000000000000000..8e6844a34713088b4f30ebca4f3eb845c4a41d29 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx9i*F=0@Xr+iE;1lE7|u7K5X{iz#};=k9l3-sbkNq z`~FYov2Wu^h@ZUeuW?Gm<$4Bpt1YkQD>}PAXO!`;?=!yA8^yfBpdsP=3hwj$M~}a( zy~tx&ejxnw)%wTYP6M{487WNBnN_ zoQ3QDE5Gpg6?WD*Wrf5hwl}XYY^!YJ$#&B{6g~S(#ymx4s1pykE~)vv=(W7?tWK literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_010.png b/animations/face_idle/frame_010.png new file mode 100644 index 0000000000000000000000000000000000000000..8e6844a34713088b4f30ebca4f3eb845c4a41d29 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx9i*F=0@Xr+iE;1lE7|u7K5X{iz#};=k9l3-sbkNq z`~FYov2Wu^h@ZUeuW?Gm<$4Bpt1YkQD>}PAXO!`;?=!yA8^yfBpdsP=3hwj$M~}a( zy~tx&ejxnw)%wTYP6M{487WNBnN_ zoQ3QDE5Gpg6?WD*Wrf5hwl}XYY^!YJ$#&B{6g~S(#ymx4s1pykE~)vv=(W7?tWK literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_011.png b/animations/face_idle/frame_011.png new file mode 100644 index 0000000000000000000000000000000000000000..b7083718246254e89c0a8ba0e66c14f182329137 GIT binary patch literal 296 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasrQ~Pjv*Cu-rhdV*JL2TdLikL z`rrRk>qOTH?qaxgPUHC-6PI^qTiTaQ0qKE&3ujF7!q-}PAXO!`;?=!yA8^yfBpdsP=3hwj$M~}a( zy~tx&ejxnw)%wTYP6M{487WNBnN_ zoQ3QDE5Gpg6?WD*Wrf5hwl}XYY^!YJ$#&B{6g~S(#ymx4s1pykE~)vv=(W7?tWK literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_013.png b/animations/face_idle/frame_013.png new file mode 100644 index 0000000000000000000000000000000000000000..8e6844a34713088b4f30ebca4f3eb845c4a41d29 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx9i*F=0@Xr+iE;1lE7|u7K5X{iz#};=k9l3-sbkNq z`~FYov2Wu^h@ZUeuW?Gm<$4Bpt1YkQD>}PAXO!`;?=!yA8^yfBpdsP=3hwj$M~}a( zy~tx&ejxnw)%wTYP6M{487WNBnN_ zoQ3QDE5Gpg6?WD*Wrf5hwl}XYY^!YJ$#&B{6g~S(#ymx4s1pykE~)vv=(W7?tWK literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_014.png b/animations/face_idle/frame_014.png new file mode 100644 index 0000000000000000000000000000000000000000..8e6844a34713088b4f30ebca4f3eb845c4a41d29 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx9i*F=0@Xr+iE;1lE7|u7K5X{iz#};=k9l3-sbkNq z`~FYov2Wu^h@ZUeuW?Gm<$4Bpt1YkQD>}PAXO!`;?=!yA8^yfBpdsP=3hwj$M~}a( zy~tx&ejxnw)%wTYP6M{487WNBnN_ zoQ3QDE5Gpg6?WD*Wrf5hwl}XYY^!YJ$#&B{6g~S(#ymx4s1pykE~)vv=(W7?tWK literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_015.png b/animations/face_idle/frame_015.png new file mode 100644 index 0000000000000000000000000000000000000000..8e6844a34713088b4f30ebca4f3eb845c4a41d29 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx9i*F=0@Xr+iE;1lE7|u7K5X{iz#};=k9l3-sbkNq z`~FYov2Wu^h@ZUeuW?Gm<$4Bpt1YkQD>}PAXO!`;?=!yA8^yfBpdsP=3hwj$M~}a( zy~tx&ejxnw)%wTYP6M{487WNBnN_ zoQ3QDE5Gpg6?WD*Wrf5hwl}XYY^!YJ$#&B{6g~S(#ymx4s1pykE~)vv=(W7?tWK literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_016.png b/animations/face_idle/frame_016.png new file mode 100644 index 0000000000000000000000000000000000000000..01df8cc55a15927923062520a5bb49eb651a1a88 GIT binary patch literal 232 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lvasr8;Njv*Cu-rn}*YcddEyO6YJ z^1b?{%MY#XQvFwQOYq)pN2i~sOqQrPYXTL+z=8dpFAnT99m$_*zyOQr*c>V11;fE!6GusT;FIYZvzs=@$p41S=Y1wQ4 zzdAi(;SJWWrvnnjO=j?K+$RY$pCRFK(6)Q7{{$wky&X`j2N%9@fp=}Qs*${m)mD(0 Mr>mdKI;Vst0I8Q)7XSbN literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_017.png b/animations/face_idle/frame_017.png new file mode 100644 index 0000000000000000000000000000000000000000..5304be4a31efcf588f86bd3d6cd441d5129de1aa GIT binary patch literal 172 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasbWtT$B>FSZ*OnpJ)pqD;-DU! z`d=$rRrtb#h)r{L&pXa>N*$yc4iat$?mPT<$+Y-*pBss7t(*0%lxja2a%LYDpHOdY wECg4_z_2Vka?iRqkIP@r693PS5dZg-^~fte&d7xuo`VEEUHx3vIVCg!06-Tr@&Et; literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_018.png b/animations/face_idle/frame_018.png new file mode 100644 index 0000000000000000000000000000000000000000..4fe30ff1d6a8d66d812c6d22be4230961af8a0f1 GIT binary patch literal 244 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasokC~jv*Cu-rjcPYcddEy>PKY zeeZuSzt(6`?Kx#aJaueM!}5vy_k7})OuE9NlbyTv*SFb< zN`B10dO92z`_5SSnQKLT>AS_PM)8i#KLu}_F~jU)coTDKZTVF7u4}5db2Ezd;Nll9 Y@bVcd^gSxuVGI)UboFyt=akR{0H5_*VgLXD literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_019.png b/animations/face_idle/frame_019.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_020.png b/animations/face_idle/frame_020.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_021.png b/animations/face_idle/frame_021.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_022.png b/animations/face_idle/frame_022.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_023.png b/animations/face_idle/frame_023.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_024.png b/animations/face_idle/frame_024.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_025.png b/animations/face_idle/frame_025.png new file mode 100644 index 0000000000000000000000000000000000000000..13ca29dec51f9021fcd1d6ee3de0244e6bb9b426 GIT binary patch literal 300 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lvasn4D+jv*Cu-rjcPYcddEy^yqL z^1b?{%MZ=v#NBzg&+3%Zs3tzrYCzY@YJbi z(tZD@^ThAsNr;}j>#uRjjLUTl)mB$t%~w3!bd34N{C^VKI=i<;|Jwf1?5Bl||Ez`A zeJfrq{`tl{{Y1bbwga;nS&SPJ*aURa81Db>{bxOaN7CzonaPseLp*wp2YD1C9y7lA z@BSTVNcMm38#NBzg&+3%Zs3tzrYCzY@YJbi z(tZD@^ThAsNr;}j>#uRjjLUTl)mB$t%~w3!bd34N{C^VKI=i<;|Jwf1?5Bl||Ez`A zeJfrq{`tl{{Y1bbwga;nS&SPJ*aURa81Db>{bxOaN7CzonaPseLp*wp2YD1C9y7lA z@BSTVNcMm38#NBzg&+3%Zs3tzrYCzY@YJbi z(tZD@^ThAsNr;}j>#uRjjLUTl)mB$t%~w3!bd34N{C^VKI=i<;|Jwf1?5Bl||Ez`A zeJfrq{`tl{{Y1bbwga;nS&SPJ*aURa81Db>{bxOaN7CzonaPseLp*wp2YD1C9y7lA z@BSTVNcMm38#NBzg&+3%Zs3tzrYCzY@YJbi z(tZD@^ThAsNr;}j>#uRjjLUTl)mB$t%~w3!bd34N{C^VKI=i<;|Jwf1?5Bl||Ez`A zeJfrq{`tl{{Y1bbwga;nS&SPJ*aURa81Db>{bxOaN7CzonaPseLp*wp2YD1C9y7lA z@BSTVNcMm38#NBzg&+3%Zs3tzrYCzY@YJbi z(tZD@^ThAsNr;}j>#uRjjLUTl)mB$t%~w3!bd34N{C^VKI=i<;|Jwf1?5Bl||Ez`A zeJfrq{`tl{{Y1bbwga;nS&SPJ*aURa81Db>{bxOaN7CzonaPseLp*wp2YD1C9y7lA z@BSTVNcMm38#NBzg&+3%Zs3tzrYCzY@YJbi z(tZD@^ThAsNr;}j>#uRjjLUTl)mB$t%~w3!bd34N{C^VKI=i<;|Jwf1?5Bl||Ez`A zeJfrq{`tl{{Y1bbwga;nS&SPJ*aURa81Db>{bxOaN7CzonaPseLp*wp2YD1C9y7lA z@BSTVNcMm3877KzO(Gt@6wr%x7SW?t}bll$=y7U z(Yt=u`npfNl1kYOHj)lT%pPeBCyUrV{Mz^NzVwObX&oKjhh_;*ys|BUEjj=q%f|oU zhyIWAJDhL-$UiXg%idYxCoUMIa^JeXF#j``#NBzg&+3%Zs3tzrYCzY@YJbi z(tZD@^ThAsNr;}j>#uRjjLUTl)mB$t%~w3!bd34N{C^VKI=i<;|Jwf1?5Bl||Ez`A zeJfrq{`tl{{Y1bbwga;nS&SPJ*aURa81Db>{bxOaN7CzonaPseLp*wp2YD1C9y7lA z@BSTVNcMm38#NBzg&+3%Zs3tzrYCzY@YJbi z(tZD@^ThAsNr;}j>#uRjjLUTl)mB$t%~w3!bd34N{C^VKI=i<;|Jwf1?5Bl||Ez`A zeJfrq{`tl{{Y1bbwga;nS&SPJ*aURa81Db>{bxOaN7CzonaPseLp*wp2YD1C9y7lA z@BSTVNcMm38#NBzg&+3%Zs3tzrYCzY@YJbi z(tZD@^ThAsNr;}j>#uRjjLUTl)mB$t%~w3!bd34N{C^VKI=i<;|Jwf1?5Bl||Ez`A zeJfrq{`tl{{Y1bbwga;nS&SPJ*aURa81Db>{bxOaN7CzonaPseLp*wp2YD1C9y7lA z@BSTVNcMm38#NBzg&+3%Zs3tzrYCzY@YJbi z(tZD@^ThAsNr;}j>#uRjjLUTl)mB$t%~w3!bd34N{C^VKI=i<;|Jwf1?5Bl||Ez`A zeJfrq{`tl{{Y1bbwga;nS&SPJ*aURa81Db>{bxOaN7CzonaPseLp*wp2YD1C9y7lA z@BSTVNcMm38&J-FV3=eck%%w7rLp8C_v5cQ{(K=Bs?Iq|ubd^$Qf& z`p!r^!}CCI2Xo#3x*P7TR>lbi_DQwIaC;7%TN+a(zEe@@c9wH@F(XX8p)F5|NqMdF Rw2o;YAx~F7mvv4FO#pw?Q+EIW literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_037.png b/animations/face_idle/frame_037.png new file mode 100644 index 0000000000000000000000000000000000000000..5304be4a31efcf588f86bd3d6cd441d5129de1aa GIT binary patch literal 172 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasbWtT$B>FSZ*OnpJ)pqD;-DU! z`d=$rRrtb#h)r{L&pXa>N*$yc4iat$?mPT<$+Y-*pBss7t(*0%lxja2a%LYDpHOdY wECg4_z_2Vka?iRqkIP@r693PS5dZg-^~fte&d7xuo`VEEUHx3vIVCg!06-Tr@&Et; literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_038.png b/animations/face_idle/frame_038.png new file mode 100644 index 0000000000000000000000000000000000000000..4fe30ff1d6a8d66d812c6d22be4230961af8a0f1 GIT binary patch literal 244 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasokC~jv*Cu-rjcPYcddEy>PKY zeeZuSzt(6`?Kx#aJaueM!}5vy_k7})OuE9NlbyTv*SFb< zN`B10dO92z`_5SSnQKLT>AS_PM)8i#KLu}_F~jU)coTDKZTVF7u4}5db2Ezd;Nll9 Y@bVcd^gSxuVGI)UboFyt=akR{0H5_*VgLXD literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_039.png b/animations/face_idle/frame_039.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/face_idle/frame_040.png b/animations/face_idle/frame_040.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_001.png b/animations/status_boot/frame_001.png new file mode 100644 index 0000000000000000000000000000000000000000..0c1580dec1a0f2f796d6875797cef27043987848 GIT binary patch literal 125 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvaDHl%{$B>FSZ_hajGBB_(7<}Ph qCaQYpXAbAIi^6|az6Yux2*kx6uV*~Hr)v@iNU5i*pUXO@geCwwc^Q}h literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_002.png b/animations/status_boot/frame_002.png new file mode 100644 index 0000000000000000000000000000000000000000..1442df327a2f873f7739d17baa6d6339b0b2f352 GIT binary patch literal 130 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvaDNj!q$B>FSZ_hFEGAQscZ;<_e zsDM?kq9}^h7bpwV@KWn{iTu88yO_aTT*RIN#w%Tnr^CBTc|b}$UHx3vIVCg!0N~vl AfdBvi literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_003.png b/animations/status_boot/frame_003.png new file mode 100644 index 0000000000000000000000000000000000000000..4be17a793bc70eec13191c32f74bb035a30f5ccf GIT binary patch literal 129 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvaDGyH<$B>FSZ_hCbGAMAcY`FgK zV8&9z3(4LaSb(xH@Z+x6+;@jFc3Z;)(C7o)dPh?kPakc0UIUWxboFyt=akR{0ASP} A$^ZZW literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_004.png b/animations/status_boot/frame_004.png new file mode 100644 index 0000000000000000000000000000000000000000..1564c5eb8c9d3b24aeb350690faada15072cb505 GIT binary patch literal 129 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvaDGyH<$B>FSZ_hCbGAMAcY`FgK zV8&9z3(4LaSb(yqpyICA+;@jFc3Yzg19=Dd^|m=Mo<6;qQywJe>FVdQ&MBb@02D(V A6aWAK literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_005.png b/animations/status_boot/frame_005.png new file mode 100644 index 0000000000000000000000000000000000000000..4c3bfae2a74f0f4acac9bbdf86628db22a1e5048 GIT binary patch literal 129 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvaDGyH<$B>FSZ_hFEGAQscZ)mJf y+`%O2?YDXXCr}m}xUj7#@ArqTclnSc4GuCdmu5VD?tS!1kf^7tpUXO@geCxrksPuB literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_006.png b/animations/status_boot/frame_006.png new file mode 100644 index 0000000000000000000000000000000000000000..019417903ff033f9e70d662a7236c2f446862495 GIT binary patch literal 130 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvaDNj!q$B>FSZ_hc3GAMAcZdm`f y`65^F4~q?|5g=8#!Jo1q+uDe?e(Yc+Hy$uf|HgRwNXkbI5Z}|)&t;ucLK6Vvc^%6D literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_007.png b/animations/status_boot/frame_007.png new file mode 100644 index 0000000000000000000000000000000000000000..e303a21ecf95836d898108f5dc029ec5c43ac614 GIT binary patch literal 123 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvaDJM@C$B>FSZ_hajGB9v3FZk-8 srtQ1&Gc%_LP!bK?O54wlCd9ySp{zTE@q~td_g|2dr>mdKI;Vst0H9wObN~PV literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_008.png b/animations/status_boot/frame_008.png new file mode 100644 index 0000000000000000000000000000000000000000..2d3e8fb6c86dd097ac6b5a21e6cff4ed4b3a1171 GIT binary patch literal 430 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Fff*Sx;TbZ%z1nJVAdfA5r>OQ zJTm{E2;G0*U&y>{AxBwi)Wb7Zs>34pv`olWoA6-Qo_d{$+t@Pxt^AySyKi2)HbWT0 z8iokQ4NM8F2e=wU8IT0B?=x>Xc&~r|tr~9u+^Sd){E|Ds`>pQJ)o0O7*oyPJ5vx0N0KllsZ*|AW5A zbN-tic)8>4i^pf?_mzL{e`9gwr~e;;d+Sd>tl9qN%uktl-y}EOiT`N1{-4oD*@BJn z=K6xoGk@~^5J&R_#8$r^dr WA+qEI7(8A5T-G@yGywp^jIFx> literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_009.png b/animations/status_boot/frame_009.png new file mode 100644 index 0000000000000000000000000000000000000000..396be59d4964c69d0ef1fef7537d6f6bda37f8c4 GIT binary patch literal 462 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~FfdN_ba4!+nDh3w;kqUV3D<`Q zFGTH-{vN+mnp=Fq(FhHuV-53m7VUdC(Y~eN9*op{36gt1}Xz6Msm>&xx? zWlLnckF0Arcvs$bl0q@-mFn34PrtVpS>ETLx32KDLIJDIy}#~XJ#JZfa2u32Z=g#cstNB_bb{=TqC8jg>Y0u>^`g(B( zER$xr_jl4S$2T{6-+#?4-|w=nA?sCh#H=%-0laapDP6IQ{|}*g_Vahf9mnqV=jYzj zR4cHjZJ~P}&`Te+B`n?bf+$8G@ z`44!fzrH*DIct@C{z;w>24CME+`^N|cx&bQ;#!-j^WX2Ee#yw?E_2@I`na%VJ8XAU zb^2&(Ieh)|=A7mC)pHouuh%X0IpI1%IAO69Q_sDqV!fsb47W=)Qg_MTdiUev8&_oc4xeYD!|J$jBCCNL~EzdC1syE9WxxL?C{{iZpW_p7k(sJy4} zu>5~mNJH8BxBp$Xvpf6!pR`@}uAa+k_3Cq1!ZR6HUH$EN>q_`c##Qa?Ml%<^V~kFL z`T5y@_6KUWln{&@^~9@d&?DIgfe)# L`njxgN@xNAjP=dM literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_011.png b/animations/status_boot/frame_011.png new file mode 100644 index 0000000000000000000000000000000000000000..e6006352ed6ec048be2c163b496f0ce5eb8f353a GIT binary patch literal 555 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffe}dba4!+nDh45!N9`?0uC2V zoke%HDFv~&2Dx`NXy>*xr?)V9dL$jb@A_YM<1yhcojE%G8*jFGY-cO@v+A*Yp7ri) zX$&(M6WAIg8L%;KJgH;Qz4`g$#bdi!4)QPCU_OA2QEbmJ{msuG8INO|68gWe z@3{W2;8FYTm*?$|2VG^FGw1tz_t#T2L>J8eYj$*Y?w z(8};X>Jfu?*#Ee9+K!JHk_{MiKGq#Lo$YeubMU(0wfaC;pa1y#a47e8)93H~r@r}K z%Go5zFwNpX)b{@DyXXG(9br5cpm<=CzT>t3`)A!@ycT7?X`THpB#FI=ZImRSfgLl}COvF826VQ?uoxo+FNMg9hmx{sXGjc6PTarYqoy4xp60 YXx;TbZ%z1m;G3by1gWJO^ zAC=yeo)5KI7@oMky1%LW49ju_=giZ;z3*)=GDtJvcglSoP?qnyWF@1_{ue){XKv2U zWNVOQNMo46n1GGJ8^^z(b*}vT+&$3(XBZ5a5AZM;GhkzEI2*_R?6i2gK*j6&`5|m8nb)J63+%ctLo&>`*@dfizqaT0Rc&_rJj-0x_Lpl$`>D_Vx+dHP7 zd$Zo^=iEc@rrXbTj86Wya6@WgkWPHW8_t^Y3rRUc0HymJ?YsjEubU;e| zT+n)7H?|j^K+Ep4tknNMNqT|Kb%lzr-X#rbe$9Kd4U}&(rrirS`n+yhd&hpm*ZZQ^ zY}@c9w5B1;e$G3yoc=k#-~YRqAk7(Y&TjJhe6Q$;Us~_04)o4@`k(pJI`$GXyWbis vn6ZUAJVJ86RUP=uVQqi!HpHQL6z^aDqUJWYN7^D_;$ZM}^>bP0l+XkKKHc?1 literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_013.png b/animations/status_boot/frame_013.png new file mode 100644 index 0000000000000000000000000000000000000000..602b4b4dc074b35920e1cb292d117a5bea1c7673 GIT binary patch literal 623 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Fff^Ux;TbZ%y~OII`5Ey2&?ne zqZ=4k=`HtuT@!pbgk8;NulNJ8GXCBAd*4gN z9T&bar9u1cKl?OgH8Z7zYhNxOyDQ%||2_A_r=EM-Di|*>i@!W8*{3pjPurWX4d>T? zp4@M)<6L^^+4296`j>xxeDKd^o5cI(r4m-t`i`$YJ|o3f{@xr9MpLfxRn0bxOS7)O zF!MgQG5myrkHhTvj7zlwY6}ALugox)^A!rHo3ZtHw`%r*xKarEKk8g`wBKN;-m?%ds9qOJ2Z zzAE{~_g?!&CU5z#$sE{SG)rev1!HUE_C3pzJMw=Wa$^xmWB;)3cutEir^L=8pVI6l ze9pTaQKAPHV>e$j#tN9(-;3U(%7GezFct7P{mh-BIxqVCqenA=35mhe)z4*}Q$iB} DJjVQ7 literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_014.png b/animations/status_boot/frame_014.png new file mode 100644 index 0000000000000000000000000000000000000000..4a561159965c9f1340b1ce488788d537788add95 GIT binary patch literal 655 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~FffIAx;TbZ%y~PvoU!wKxuOTQ{#MOllwOrv49`CY-!VKGUfxX)@pP6pv?I1-}=)-T&-s zo>wxXffxfmqW3kUNz(7fTep^THEm>&;BG(=KbNs@=-BrA$MWRO4=uPh$TKQC{=bsL zZ}d$eLE=|k3jgww-TU%o)^9b<;I82OJ0;+m+0V_lq*_>?aOid4?e5%mxn#jEu3zb2 ze)BwU5vnqN@cjFG*Mr<Yg$k}NzF_MFmW5KjGsZI|Ehr1V;UT_P@GwUiW zFxqrru7k6~(Fg_}Er-PHo;dDGwgV9iJ*)>7d~LWf_xSc_4-*@{Hf)dne7iq=k5fRP z?E)_yhGR?#0gPXqFMPhev)%DL$nzHk9?UXmJJ4ri%@*bGm4jo!HK#AX)CB}4+`QE2 z@QvSuWry0C&8bS4JnR~K8oqRR{Nw*Lwd0@ZqWLv;4h$1mZa^uX1l=u;N())^S{?N+~YYRGy6H`xH@s5_U>HXS{DMV#T{3AixAUhp4BO{#{d>H4 z@9do$86>zH@DMW&{$?~u`hL7R`@IlLGNXYQ1CW^ig<;C_v%?oIFs}ze!A4bEUFODq+g)C z&{*Mxs%5R?0nQ6E|8Zv6l(1b87LaGwT~MvSnDxDV=hF$s49A!fI2f~D&!6-x`LU71 zbCwAW#~wp{>imX%#hs4*&5{wn|2FJ@f2jGl@MPxS&wn%C1qa0AzYW^5Z`oJGGEX;= zpY1Ks!+OAhiDe%9&c@pcMQjHyFo{fBaG8Dcm1|Ca-?4A-bXcyS<)F^FW8wwL1A6T& z^ZGviX8f^@g5$TUc1;oVNp31QW5Wbvoq+0@Fb>3?-r}C&y@HZ zsQ*jx``V647fqv5HRS8!J$MosJ5L%Hr#f*Qw^i0x2;T1&<$TBZwcrHFqvc;tZrZxA zO6VOMG&Nkj!T&<4^>0Jp?cFQ~BN%{w!$X{rJkxi={d!B7BrtU{c)I$ztaD0e0sw(s BGbR84 literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_016.png b/animations/status_boot/frame_016.png new file mode 100644 index 0000000000000000000000000000000000000000..89b10ac248cf147ee64ccb4820890db7510441da GIT binary patch literal 373 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~FfiJ9x;TbZ%z1m$usl^z7U|I51`Q{Z4kVl3wuB`+5HJfAdz0GH5e|F|1*T zVBElzzsl^z7U|I51`Q{Z4kVl3wuB`+5HJfAdz0GH5e|F|1*T zVBElzzz z4|#GOkzD)wKl6^MwQ+UXuWvVDdI905Yo8hNQokSHzHOf_2W~GjCD`&m2rH|vA!OV) ZX8)U(DmfRvz5qrDgQu&X%Q~loCICYAt)l<{ literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_020.png b/animations/status_boot/frame_020.png new file mode 100644 index 0000000000000000000000000000000000000000..99e2ba2a336902f7b7eceecfc41240f40d9e8c11 GIT binary patch literal 478 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~FfcClba4!+nDh4b!Q4Xz5)KdV zcW_!9R7quHOJkeSGH;jD4gnSqhc!a`<$ugzqkB=Kq$9 zbvI@>!(hOCfQJDaV@;KP!?ZWQe&js9+myi8Ajy!%FoO}5QP%aZHU4`q<92QP_I|4x zKK_mG8_rIh9%NU4?A*eqAETdDPB_5ucD2;@e>}wzUAyEjeB5PMqkqbveQMOX>7Tyu zeynbFto*%}Zgt_~nqBc1x4*vdT>X#2pMv`Mn#ld?bD2LIe#v~Qzu)+CnRlA`F2u zA9F=Gss=c7En{235|*jBMmGB3COhRdJFP7aRVH;5%FHkOaE96T>J{gs4?X(+a*MIf)+#oY zw|@@&`fqgDYcj*}vY@j6wr4ght!wCi|2RH6>%ZmklQZkvPceSl-~8Od>5h!kU+XP1 z|JCeZ`>bN?a_W&~i@-YjOn3h%`NHbx8jISa)9vbZ^i+18onXlS+3G>w^V#zy6Wbne z8_t0^;uuRre7?;tCd>Cc3tyhyp_;N?_S^$ajxbAyf3kOrWfa%_Gk)-?>QA=!Tbt(= zmY?5Wcp_4g^FOuzUDb?4@74DiS6Z*!_*pJ3BC|qtOR;@x-Z$6u6;*#q;#d#<`OgrO zUaxO|tIFRIXUKp9t;U|=`pv%|FJ7zWYC;MYc=*5>&wexRIQOoFVdQ&MBb@0NLlw$N&HU literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_023.png b/animations/status_boot/frame_023.png new file mode 100644 index 0000000000000000000000000000000000000000..5c08e3679d1ba8a25789706dd270e38165eda284 GIT binary patch literal 521 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffd;5ba4!+nDh3wcUZH5gu}xJ ziSJylFS33y>u%#ZSM^v&*Ksox`}c~#S9Kg+}*<{kT9{93+c@oE$1 z13V1I3}+Y&urbu`^DihZtFPJebzV~fTZ1G+8p8}m1fzI&`>#E!I(75?tPcmRPItI; zj(^R6ed9GIoCP`Rso(D(=81mA{^N(;zpYEZ%`cua=V$o}8HNAW6@AJ_&MIEn?>zhE z`SxrB|4YtGbmlp8Jp47e?8}m`g4?$rZND5|^YU@~=^4v!@JN0(SkL^fY~RnBf@vK4 z1P((T;nVQ->#@b!6F#34n02ow+NtdJLmr?br!qgef6?~1;GN;IF!!#!eD2=m3dq5N8BqJ=8(zQp_ao!AE$cx%!Og?)o7L{E WXOPw@6ER>EGkCiCxvX zFoQ9HtpOXu>}MUr+ReWoFJAjyh{c%U41)pl0Uic8WA^R2uRc%O@T1o14UhL)IYv+G z`y2o5KU1*Sv!T{nbN7F_w1{B)1INGrTd%wI|D4B9&irpU#rSD|^Kpwq+bkFTlfC6r zKX2VZ8_(q)kv8rwbLubk&D&CU_-XFPhhMht{qpan(KAgm=VLZ!UN@|syS^^1Me>k% zk_E&CJ)8xHvr9l|3dCD$L&}4On&Qs@85RiTyfuI z7Zr<35SOd zHWawscb{&z%ez*7?#p%SHa7e{`P8Lo-(0_zBg!6{b1yv(7SfbD@X__S{gG|!F7YrJ zGn`>CU_OA2F}udT;o8l=A1@xO=4z5;NMo46n84NmXPkXo_O+0gr*5vFb^FpVcZZCp z?8p93x4e@f^x%fqsdf9?E!V7+fAIJ9kMq-_>d%!GJ*#g&#rUbd`T31Q+boy@)>b)DwS&QyjE?H*&c-n-kWftuIjvIg$ynit-nfvxDdB*(n$LqIUIaR!E zvhjaw6H8Xv==z)ccgsE7u^D&1yZ(N&d%*(0pnG%kf^De1Ow>=u)f)W_5!2lrUUaT_(f-A1_p8qwh`@py@UxC# o-R9qq7x#V_VZjsj#td)R*L-xluDZ9q92naSp00i_>zopr03BfEJpcdz literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_026.png b/animations/status_boot/frame_026.png new file mode 100644 index 0000000000000000000000000000000000000000..cc19367b80033f5f7f290b26edac931851b80b31 GIT binary patch literal 530 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~FfiWqba4!+nDh4b>7Zr<35SOd z9=wo#d2D(4;`}9-U1O6Oe@{N$`J~2rE=Q;PgdnS>$Cs-FnKV4^?yK*}ja@3qkj5~B zF@dcC8^i2p9mCqqzaKB|{Vu{{%y5RmfcXFq1DrAY_S;vFr6m4X%`M~eUfb7j;S_(* zfBoVe7gY{yoH`}8p1(LE*#5xp>mTRqZv8js?UOVA`KB^I`OkKKV{2})*Vp$K(tZ_} z^F9;4<(l$gPLS91_cyLNKQ@nv7mN3sf7|(c`E?aQ#&He&a(jlk|@i zK%6Qe{NP(v@_Vi)dx|}L^N;B&u6|pUWup#y71!7!>fS))8cscoVj4G>?9n1g?k#v_zqNf zS6)7M&vFG|(B0U)uzFRU#g#&CoG-)dLK=le`NfpN{?>FVdQ&MBb@0FP7Me*gdg literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_027.png b/animations/status_boot/frame_027.png new file mode 100644 index 0000000000000000000000000000000000000000..4b394455e4a7980a0cf4414c22ad5d5b83b30050 GIT binary patch literal 519 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffg9;ba4!+nDh2_bWpQ_gu}!6 z(`;Yv_+R*H-j!cHtT`v1x)kj*pUctdereh@O}*;^nx+kpyZiPpk&Rs{$&kh{gE4`v z0UN{YXC1@Z&A%Tn?k(qT!c=hftzYSGb)LGpe%9?v!@?ado#OBLuU}koLFK^4sZ(O> z`HLfh?GOBZ{&BwU)_-#zKRNTCb1L(b|7_wkxl;LN23CM!4>l?QB#ICz?s<>~m@qcxbn@xRd_rJLx3v|@w zSB46us-|K04$FjUE`W|ROb*9~|itP$GLmV6#_FG*Y VCvN)Wu>u&u44$rjF6*2UngDUZ*irxh literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_028.png b/animations/status_boot/frame_028.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_029.png b/animations/status_boot/frame_029.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_030.png b/animations/status_boot/frame_030.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_031.png b/animations/status_boot/frame_031.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_032.png b/animations/status_boot/frame_032.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_033.png b/animations/status_boot/frame_033.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_034.png b/animations/status_boot/frame_034.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_035.png b/animations/status_boot/frame_035.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_036.png b/animations/status_boot/frame_036.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_037.png b/animations/status_boot/frame_037.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_038.png b/animations/status_boot/frame_038.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_039.png b/animations/status_boot/frame_039.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/status_boot/frame_040.png b/animations/status_boot/frame_040.png new file mode 100644 index 0000000000000000000000000000000000000000..bb2a7adc178405476a41f067cce69d86dcb559b3 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvasSlnmjv*Cu-rjcPYcddEy^yqL z^1b?{%MY1)i96hue7JXR+kyWx8G2VP1*(Mt6XV|9SF-OFeAw*2fk$#$9`m}uQ^%fJ z_x+#FW8cP;5I=d_U*nXB%k>QIR$E@pS9ErL&M4zw-)DTKw~9TWuz%NwKM^%^?unlj zC}yuQjsN?MOR~#7z=D}0jo~1VLc|${y6e)9!xbcrrW{Dk@VMO~Y17nHDtF*xe98I3 zwq5_q4@~^Bc2@d{0K+GOTh=?@ekN(OM)E7)jay6HKl4b!+^DDY^j!D4dLN%{H;>#4 efQd3JSjfL(pYg%J;+LO-#5`U7T-G@yGywp1i*!){ literal 0 HcmV?d00001 diff --git a/animations/status_boot/status_boot.gif b/animations/status_boot/status_boot.gif new file mode 100644 index 0000000000000000000000000000000000000000..129048bfca56c7d999fec3873a23a4afee88db54 GIT binary patch literal 28667 zcmeHQXHZj%whqC9fQW!dk={dVG%=5fC0c4@a( z#v*Xi5MVew1;E1u&2UVhD50h*en&}ypN9_@2lFScuULGg2>`DHfQxrUIzOq-8;=yE z)0&^$;7iOT8!ugu()0qrZ#mIgklGSVFCK73rZBB7oLv>E(^is}89j-&z42*eix7RO(%~T8_M*&z45d`r1leNbyDSZq4{6>xrCvwirhO3n=cH{dMh=Uc-CTUNy;=}AQZj}m|bz`Lz9bKC1Q0scLTxAfw^ z=P3ns5PbB%D20A+#rOhnfB-CkPHOsK8`pFa@aG=gfl36sI`TfN`+AwDmrnfn90NeEWC;`!L0Y=ZRet0cjWu_P)uk55xnH6?>k&yEwV_dI zIzA^+`7mdy)*h$lk`8oBx4{*cleVhN4&4w;3Wlvk^P6;paYAaUM8JzZF!5c9>qpFu z-{ujXX+a)!=83hOxuIP&-CFE8?NhDoY&%wKUCTnFvu`)i6i&BTJ>lXw)ANepu~@aO z6Z)OM{zDke;ojzCjPJ3_O(rZK3n{W+iS%}!2aQ8Be_tveWP#+ zWT!0*U;b(voqp9$D_<>_V=HA(=harBO8MPp?m#QY9)ZnHhqp9Y)Tmym#WisMEz&pO z-s@sHsQx>uG{r3{yw)FkHC(Kn2K2HzuSxu}G5+Ie5W{~eCae*hOc}&RjWvS*iV>s& zgcsNWfdY~v#^$1DGSM$@scWQ}i^HMwzTjp&bg;-2IZHSVtqhBVuvt`k-~&NTbQJ1^ zOe)j_#A0S=q}68XN3Td38)w-*lCEq{e%37hepI=7!ti7!Td?U)`DE0SAdw7BuNtYP zL_zW~{S;gtw`*|dAGl~bUka6#FXpsEC9^HL2mw{o?f(>8lDXdD4QSjft|)8-~-Te02$DfcZ7?r*#W zxYY7nb;GQ$?dmRo*EZ|PIIZj(FBw0zZy#FkJN*(D&I|Obh;=y(Dj0t* zdMD)g88s{=Ci8g6*f!_mJJVF|y|H(!=l2G!_J7-(Fn7`2ALcuA>Ms@yFe<^og|!H* zSe{G-uom&3wTKJn4CefSAqYlsD#j&}0KODq2EQ|IWrmV`>QJ;Vx1dF8AVtDKY>1Gv zbgI{B5|OyDTSre!UefbZ#)sYS9zlE4#^A+8Y3PlbKqc&#si6p2ndP>ye2}xd5|NMP}z7Q)L3a)M;71p)jHvOpe+M$jXJo zpKyj1_{e6tSIvoXMLeSIn27fSePT_&ac7mYz*`nc8q=ZWk4U}duW40k#?!tOI2RUZ zR-_WuGGEqbq^(@Z-j}tJ+TYD->?SrAvsoM3#GYU3A7q(dz(;GfRsE&iog1}%_cy*e zfSk_NCL(iar{&8x8(cR28p-)ZMbyaMiI?9c&s@s>VCb&Cj9 zp?YpSZ0GM4JiDG&FU@uX)Nr?_)3HwpedXhT%0q>Z@9t?Q2n;D4PZamX5q;=BL8|}tbIW>O5>!u^gM>LA zB}FI-j?RRWERQ5bQE82)E2!yFvijOX@F3+AXw#6seX|om7yBGznc%juhqxV{8Ce zvnKkHJS|lvj|zB!9p|vT*fqxK6iN`j{Pn>TY_c%GD(Ffc zW6RTsL@s=K=HzD%P8KkKo&bb~68~62d{kJQxof1N=tVdT*rt*ZB3WUQ=^WZ_;Fq)z zlPWGzb9|(fUC2X*%yhIFT|veWWg-!m*73QJb)YeJoq7iuuH4ua%k1b5qdoS#PI4-1 z^8q5xzNAvt!$nk_p!Ryf7^9?7o|_khyV!iTZ6jgIxnmZ!;^R)8<=BYu3oA`Y+4 zRz4H7e6u#AM$FI_49#|^^6&PY=_Jlu+x7Tz`q^d^U5k8t?=3leaFGz_

lFipXL zs(AIaI^kQ^PW|c-Zh>KKbKS=yYTloVN6dytx5upVXat5ZB`cQ+Czl(0qmRR_UB>2j zL=slVpY>Fi&bVC;+MjWyvk{)~6RLSK;}8CFF#S+`qiil(4p#m?d|&=xA;LZ9a4Ft< z!*xF0n}YbSe_|1k!WzuUlvixjC(vL%OaKcZ(>$K8kLQLXpC8+HRzLmP5)a;oeaSnV z-5eH!UP!ok1P7Eo9}3og<~~1rntjkY|6=Rli(LPGec7=W88lvl+`@@3DFv1iU(Jk~ z$NS6~Mkn8+RUDc2Wda@;cu~E2Lih4Zq@S`kmt=a17f){EnC0l?l2VW;+$Y6n)SlhI z?M?s%ljq(gnb`m`j`G>C`$J`k;Zj6`sS)y$?CIeel8;EBcYV&WyaBz^NH+$af=Mc5G6L;umRTOSPHCFCI9h6&CVHvkErmERiY_GwXqlQPhbTtC6Mgt& z5z){>5xw{r=XMgP+Zp`J8Ob-#g3?31EI8nnuvk#oap-ZtN?=r!sA@3bwjXB@aIK;@ z8=1SzA(dNV0m;s?M6N{@0|_Ahg*Bi@sD3I<<)UU1IqQ-5Hm}C|O#E>u`rPF*~G*4DHU6#YOFslEm9Uxa}h_5RGcR z%2|dgyk)DCUn#bK4cr1WmrJrbvp2z>_FGr;bc;CHYO8;}sb#n8Lzwy0@L49^?Jffd zSJ6A8)j;QWb1Kz)WF1FJ$<1Wp8^0S)BPj_~UCueN>PfRFxjacSi13WR>Atg^Lcg3YRVOHSMBMITC@n)MZJp6ZSM_RVUX=i2#?+F7&t zAgjQ&ylNtE4*QA=i(>W-xKi@lO`B$G+jYktI`*|!2nhKb8KG8Nt*21gSDV?itF}A& zD&zUPXjuv}e<~1@f;LP`zR(v%Gw?+*mVmi@IM6Y3!Kk$qn7e%PCR5;sdpDQALjBRh& z4P!qD_p-DGvM4XSezXM#L<+lf5Be7@-UIw%z>x(&4-f*J!&2|ZEx?{nCIWaam`QiC z+aXDBzi-|nHoW5v#JL`ihgrt+^>vpbL;;gzASs<5p=N$cOZb)hHWAV)fDSKQR=C<> z=t8sqRc)e?Lp!)a;x*js6EWc?%HD!t-~$dP_NFKvXo|cR=}K!9Yo=K`J_)B}z~yu| zvhk}d8o#0^6MzmN1|Y=J^JFF^HtHV;;Jw5+BiZeIgF676Q<%k=#D)#NKvJrB1mA5> ze+usJTk?V^*tAX&lQ1>!16M4xHjptO^k?iu!cG7-Rw!*KN!eG+DgEf7ek(`uJg??a4p>bCSn#-_lF3^zN= zwv3vBXm2@?mD!uL29w@bA$yfbmeV$hC+}qx60bGBWoXw5q!p4 z_`?z)RWV#rr#*jJ8S(I9P(;}~P+x+6y5-u+$4tdY?M$!h+9CAgIXZ1H8sW>iV@T2M zlvmW3Z4{CjHu=e__)J@0{o-ku4nPeM2asYZd@>Uk8}$za@JcZ@3jo~q{JMvl1oQIu z>{}n=bFA@xAu|mx$iP&u@wORSUQvPZizrmkEw5;AMRgw7rMHE1FjbI=?6R~(pNFhu zQzm`eL%oqLl4PMAchR1I(BcE48!jo~p@tvEsFnfFBMNcbHIdA@pXZ>k@(!tyV$N32 zC3cZZ3t=o)sIauhtzN9U*l#WBw4fFF3>UqQuVGjBmQ8Bqos5HpQB$C<-gTYbtMjc4 zmr6fCVnB`UOt`?m*u(y|+X351_;I_j=aYp1rkC&^+ByBduPoBy^ZdGI-np~=5@%no zL5>X}fjawWK4nkT=S=dPrV@y2{bMnE8=VB_O7+f;Vsi}~Pn?0s1EGA+I*~dmqNhSB zb4|V<+t=|$9P|T%FAFutjBYLXCQ!;vQEF{j)JHHpFVP$;RPW3bNL0K+b+xfR#oTdW z^^%}%LHP5tBb-mmrl&8z!hN3*m8V&0oO~gn@)FOx)e#hAy1Tk^e{-fGP>Ak+P1WJ< z(m{uo`o+c!iDj4+O9p^MBG9vHt-!=ft}J literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/frame_001.png b/animations/status_low_battery/frame_001.png new file mode 100644 index 0000000000000000000000000000000000000000..1c841e3eef1964eb72b6d33211d3ed94eccf44b8 GIT binary patch literal 375 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~FfiJAx;TbZ%z1k!Fzb+mh{MH* zU3}m7>zOCna|LzD2R$o%{bWu)=gggcK3ASt0Chd^(R04N_x^k5Xuepz*UMig{}k)@ zP5(bb^7=1^-RJ&of4Vq&&$7CA_m4F3^77_B5h%$q|9$*Mhn>3FuY&z?@%0~{md(CB zxjs9K^@9>)64Mcu4o(4K1+!|YU8|R0KU}{%U;`6eRL#MsVFrUCLK#%R{=}c7(tnKm z#6emiVjEXVn|#}C|6qpX-78!--n%VbD7dzM{yX!p``5(Yc^!UW8vFeAr;DX6S>E1C zxL(M}P+;}GD(UwZMUMABHZb3BI|gwEE(;kM&YjLbWGH_K;TB*}Fg&o?$6&^9&^CY7 Q-zgxzr>mdKI;Vst0FB9$IsgCw literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/frame_002.png b/animations/status_low_battery/frame_002.png new file mode 100644 index 0000000000000000000000000000000000000000..1c841e3eef1964eb72b6d33211d3ed94eccf44b8 GIT binary patch literal 375 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~FfiJAx;TbZ%z1k!Fzb+mh{MH* zU3}m7>zOCna|LzD2R$o%{bWu)=gggcK3ASt0Chd^(R04N_x^k5Xuepz*UMig{}k)@ zP5(bb^7=1^-RJ&of4Vq&&$7CA_m4F3^77_B5h%$q|9$*Mhn>3FuY&z?@%0~{md(CB zxjs9K^@9>)64Mcu4o(4K1+!|YU8|R0KU}{%U;`6eRL#MsVFrUCLK#%R{=}c7(tnKm z#6emiVjEXVn|#}C|6qpX-78!--n%VbD7dzM{yX!p``5(Yc^!UW8vFeAr;DX6S>E1C zxL(M}P+;}GD(UwZMUMABHZb3BI|gwEE(;kM&YjLbWGH_K;TB*}Fg&o?$6&^9&^CY7 Q-zgxzr>mdKI;Vst0FB9$IsgCw literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/frame_003.png b/animations/status_low_battery/frame_003.png new file mode 100644 index 0000000000000000000000000000000000000000..1c841e3eef1964eb72b6d33211d3ed94eccf44b8 GIT binary patch literal 375 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~FfiJAx;TbZ%z1k!Fzb+mh{MH* zU3}m7>zOCna|LzD2R$o%{bWu)=gggcK3ASt0Chd^(R04N_x^k5Xuepz*UMig{}k)@ zP5(bb^7=1^-RJ&of4Vq&&$7CA_m4F3^77_B5h%$q|9$*Mhn>3FuY&z?@%0~{md(CB zxjs9K^@9>)64Mcu4o(4K1+!|YU8|R0KU}{%U;`6eRL#MsVFrUCLK#%R{=}c7(tnKm z#6emiVjEXVn|#}C|6qpX-78!--n%VbD7dzM{yX!p``5(Yc^!UW8vFeAr;DX6S>E1C zxL(M}P+;}GD(UwZMUMABHZb3BI|gwEE(;kM&YjLbWGH_K;TB*}Fg&o?$6&^9&^CY7 Q-zgxzr>mdKI;Vst0FB9$IsgCw literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/frame_004.png b/animations/status_low_battery/frame_004.png new file mode 100644 index 0000000000000000000000000000000000000000..e8bcd3406ffca3264277819295efa8eb247b5cd5 GIT binary patch literal 359 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi(Qx;TbZ%z1m;Fz=87gTuvu zuN*Sl++QT_bhavS%w=aO+y7{fxsl7p{c{AGw(|n@oqJ;Ra>ws|{#HdViX`o0^AGp$ z(6#z~dro05|Atp@>ZR>=9n609?@yY}jSEW_`tD@OJ$?3{S+2`wrVk2?NlZsrIyeP{ z71SKw?6qrj{`I-?$4+)uZ6M#LVFrUCvH}!=&rZ)I*?*+V@CzX;O=FG7UwmnaVDJ5} z8}D8DZ&0@S%n#8G_ns}OKJ0G(RA@_9bLeqah668UzIMMo{`J@I!{=|m{eS+6Yh6z_ w#1SZVfLsL=V3;$#{E(sfLxh`vK4&P9i|;8>Z++OLI3L9IboFyt=akR{0GZ2+pa1{> literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/frame_005.png b/animations/status_low_battery/frame_005.png new file mode 100644 index 0000000000000000000000000000000000000000..e8bcd3406ffca3264277819295efa8eb247b5cd5 GIT binary patch literal 359 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi(Qx;TbZ%z1m;Fz=87gTuvu zuN*Sl++QT_bhavS%w=aO+y7{fxsl7p{c{AGw(|n@oqJ;Ra>ws|{#HdViX`o0^AGp$ z(6#z~dro05|Atp@>ZR>=9n609?@yY}jSEW_`tD@OJ$?3{S+2`wrVk2?NlZsrIyeP{ z71SKw?6qrj{`I-?$4+)uZ6M#LVFrUCvH}!=&rZ)I*?*+V@CzX;O=FG7UwmnaVDJ5} z8}D8DZ&0@S%n#8G_ns}OKJ0G(RA@_9bLeqah668UzIMMo{`J@I!{=|m{eS+6Yh6z_ w#1SZVfLsL=V3;$#{E(sfLxh`vK4&P9i|;8>Z++OLI3L9IboFyt=akR{0GZ2+pa1{> literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/frame_006.png b/animations/status_low_battery/frame_006.png new file mode 100644 index 0000000000000000000000000000000000000000..e8bcd3406ffca3264277819295efa8eb247b5cd5 GIT binary patch literal 359 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi(Qx;TbZ%z1m;Fz=87gTuvu zuN*Sl++QT_bhavS%w=aO+y7{fxsl7p{c{AGw(|n@oqJ;Ra>ws|{#HdViX`o0^AGp$ z(6#z~dro05|Atp@>ZR>=9n609?@yY}jSEW_`tD@OJ$?3{S+2`wrVk2?NlZsrIyeP{ z71SKw?6qrj{`I-?$4+)uZ6M#LVFrUCvH}!=&rZ)I*?*+V@CzX;O=FG7UwmnaVDJ5} z8}D8DZ&0@S%n#8G_ns}OKJ0G(RA@_9bLeqah668UzIMMo{`J@I!{=|m{eS+6Yh6z_ w#1SZVfLsL=V3;$#{E(sfLxh`vK4&P9i|;8>Z++OLI3L9IboFyt=akR{0GZ2+pa1{> literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/frame_007.png b/animations/status_low_battery/frame_007.png new file mode 100644 index 0000000000000000000000000000000000000000..1c841e3eef1964eb72b6d33211d3ed94eccf44b8 GIT binary patch literal 375 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~FfiJAx;TbZ%z1k!Fzb+mh{MH* zU3}m7>zOCna|LzD2R$o%{bWu)=gggcK3ASt0Chd^(R04N_x^k5Xuepz*UMig{}k)@ zP5(bb^7=1^-RJ&of4Vq&&$7CA_m4F3^77_B5h%$q|9$*Mhn>3FuY&z?@%0~{md(CB zxjs9K^@9>)64Mcu4o(4K1+!|YU8|R0KU}{%U;`6eRL#MsVFrUCLK#%R{=}c7(tnKm z#6emiVjEXVn|#}C|6qpX-78!--n%VbD7dzM{yX!p``5(Yc^!UW8vFeAr;DX6S>E1C zxL(M}P+;}GD(UwZMUMABHZb3BI|gwEE(;kM&YjLbWGH_K;TB*}Fg&o?$6&^9&^CY7 Q-zgxzr>mdKI;Vst0FB9$IsgCw literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/frame_008.png b/animations/status_low_battery/frame_008.png new file mode 100644 index 0000000000000000000000000000000000000000..1c841e3eef1964eb72b6d33211d3ed94eccf44b8 GIT binary patch literal 375 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~FfiJAx;TbZ%z1k!Fzb+mh{MH* zU3}m7>zOCna|LzD2R$o%{bWu)=gggcK3ASt0Chd^(R04N_x^k5Xuepz*UMig{}k)@ zP5(bb^7=1^-RJ&of4Vq&&$7CA_m4F3^77_B5h%$q|9$*Mhn>3FuY&z?@%0~{md(CB zxjs9K^@9>)64Mcu4o(4K1+!|YU8|R0KU}{%U;`6eRL#MsVFrUCLK#%R{=}c7(tnKm z#6emiVjEXVn|#}C|6qpX-78!--n%VbD7dzM{yX!p``5(Yc^!UW8vFeAr;DX6S>E1C zxL(M}P+;}GD(UwZMUMABHZb3BI|gwEE(;kM&YjLbWGH_K;TB*}Fg&o?$6&^9&^CY7 Q-zgxzr>mdKI;Vst0FB9$IsgCw literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/frame_009.png b/animations/status_low_battery/frame_009.png new file mode 100644 index 0000000000000000000000000000000000000000..1c841e3eef1964eb72b6d33211d3ed94eccf44b8 GIT binary patch literal 375 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~FfiJAx;TbZ%z1k!Fzb+mh{MH* zU3}m7>zOCna|LzD2R$o%{bWu)=gggcK3ASt0Chd^(R04N_x^k5Xuepz*UMig{}k)@ zP5(bb^7=1^-RJ&of4Vq&&$7CA_m4F3^77_B5h%$q|9$*Mhn>3FuY&z?@%0~{md(CB zxjs9K^@9>)64Mcu4o(4K1+!|YU8|R0KU}{%U;`6eRL#MsVFrUCLK#%R{=}c7(tnKm z#6emiVjEXVn|#}C|6qpX-78!--n%VbD7dzM{yX!p``5(Yc^!UW8vFeAr;DX6S>E1C zxL(M}P+;}GD(UwZMUMABHZb3BI|gwEE(;kM&YjLbWGH_K;TB*}Fg&o?$6&^9&^CY7 Q-zgxzr>mdKI;Vst0FB9$IsgCw literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/frame_010.png b/animations/status_low_battery/frame_010.png new file mode 100644 index 0000000000000000000000000000000000000000..e8bcd3406ffca3264277819295efa8eb247b5cd5 GIT binary patch literal 359 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi(Qx;TbZ%z1m;Fz=87gTuvu zuN*Sl++QT_bhavS%w=aO+y7{fxsl7p{c{AGw(|n@oqJ;Ra>ws|{#HdViX`o0^AGp$ z(6#z~dro05|Atp@>ZR>=9n609?@yY}jSEW_`tD@OJ$?3{S+2`wrVk2?NlZsrIyeP{ z71SKw?6qrj{`I-?$4+)uZ6M#LVFrUCvH}!=&rZ)I*?*+V@CzX;O=FG7UwmnaVDJ5} z8}D8DZ&0@S%n#8G_ns}OKJ0G(RA@_9bLeqah668UzIMMo{`J@I!{=|m{eS+6Yh6z_ w#1SZVfLsL=V3;$#{E(sfLxh`vK4&P9i|;8>Z++OLI3L9IboFyt=akR{0GZ2+pa1{> literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/frame_011.png b/animations/status_low_battery/frame_011.png new file mode 100644 index 0000000000000000000000000000000000000000..e8bcd3406ffca3264277819295efa8eb247b5cd5 GIT binary patch literal 359 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi(Qx;TbZ%z1m;Fz=87gTuvu zuN*Sl++QT_bhavS%w=aO+y7{fxsl7p{c{AGw(|n@oqJ;Ra>ws|{#HdViX`o0^AGp$ z(6#z~dro05|Atp@>ZR>=9n609?@yY}jSEW_`tD@OJ$?3{S+2`wrVk2?NlZsrIyeP{ z71SKw?6qrj{`I-?$4+)uZ6M#LVFrUCvH}!=&rZ)I*?*+V@CzX;O=FG7UwmnaVDJ5} z8}D8DZ&0@S%n#8G_ns}OKJ0G(RA@_9bLeqah668UzIMMo{`J@I!{=|m{eS+6Yh6z_ w#1SZVfLsL=V3;$#{E(sfLxh`vK4&P9i|;8>Z++OLI3L9IboFyt=akR{0GZ2+pa1{> literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/frame_012.png b/animations/status_low_battery/frame_012.png new file mode 100644 index 0000000000000000000000000000000000000000..e8bcd3406ffca3264277819295efa8eb247b5cd5 GIT binary patch literal 359 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi(Qx;TbZ%z1m;Fz=87gTuvu zuN*Sl++QT_bhavS%w=aO+y7{fxsl7p{c{AGw(|n@oqJ;Ra>ws|{#HdViX`o0^AGp$ z(6#z~dro05|Atp@>ZR>=9n609?@yY}jSEW_`tD@OJ$?3{S+2`wrVk2?NlZsrIyeP{ z71SKw?6qrj{`I-?$4+)uZ6M#LVFrUCvH}!=&rZ)I*?*+V@CzX;O=FG7UwmnaVDJ5} z8}D8DZ&0@S%n#8G_ns}OKJ0G(RA@_9bLeqah668UzIMMo{`J@I!{=|m{eS+6Yh6z_ w#1SZVfLsL=V3;$#{E(sfLxh`vK4&P9i|;8>Z++OLI3L9IboFyt=akR{0GZ2+pa1{> literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/frame_013.png b/animations/status_low_battery/frame_013.png new file mode 100644 index 0000000000000000000000000000000000000000..1c841e3eef1964eb72b6d33211d3ed94eccf44b8 GIT binary patch literal 375 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~FfiJAx;TbZ%z1k!Fzb+mh{MH* zU3}m7>zOCna|LzD2R$o%{bWu)=gggcK3ASt0Chd^(R04N_x^k5Xuepz*UMig{}k)@ zP5(bb^7=1^-RJ&of4Vq&&$7CA_m4F3^77_B5h%$q|9$*Mhn>3FuY&z?@%0~{md(CB zxjs9K^@9>)64Mcu4o(4K1+!|YU8|R0KU}{%U;`6eRL#MsVFrUCLK#%R{=}c7(tnKm z#6emiVjEXVn|#}C|6qpX-78!--n%VbD7dzM{yX!p``5(Yc^!UW8vFeAr;DX6S>E1C zxL(M}P+;}GD(UwZMUMABHZb3BI|gwEE(;kM&YjLbWGH_K;TB*}Fg&o?$6&^9&^CY7 Q-zgxzr>mdKI;Vst0FB9$IsgCw literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/frame_014.png b/animations/status_low_battery/frame_014.png new file mode 100644 index 0000000000000000000000000000000000000000..1c841e3eef1964eb72b6d33211d3ed94eccf44b8 GIT binary patch literal 375 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~FfiJAx;TbZ%z1k!Fzb+mh{MH* zU3}m7>zOCna|LzD2R$o%{bWu)=gggcK3ASt0Chd^(R04N_x^k5Xuepz*UMig{}k)@ zP5(bb^7=1^-RJ&of4Vq&&$7CA_m4F3^77_B5h%$q|9$*Mhn>3FuY&z?@%0~{md(CB zxjs9K^@9>)64Mcu4o(4K1+!|YU8|R0KU}{%U;`6eRL#MsVFrUCLK#%R{=}c7(tnKm z#6emiVjEXVn|#}C|6qpX-78!--n%VbD7dzM{yX!p``5(Yc^!UW8vFeAr;DX6S>E1C zxL(M}P+;}GD(UwZMUMABHZb3BI|gwEE(;kM&YjLbWGH_K;TB*}Fg&o?$6&^9&^CY7 Q-zgxzr>mdKI;Vst0FB9$IsgCw literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/frame_015.png b/animations/status_low_battery/frame_015.png new file mode 100644 index 0000000000000000000000000000000000000000..1c841e3eef1964eb72b6d33211d3ed94eccf44b8 GIT binary patch literal 375 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~FfiJAx;TbZ%z1k!Fzb+mh{MH* zU3}m7>zOCna|LzD2R$o%{bWu)=gggcK3ASt0Chd^(R04N_x^k5Xuepz*UMig{}k)@ zP5(bb^7=1^-RJ&of4Vq&&$7CA_m4F3^77_B5h%$q|9$*Mhn>3FuY&z?@%0~{md(CB zxjs9K^@9>)64Mcu4o(4K1+!|YU8|R0KU}{%U;`6eRL#MsVFrUCLK#%R{=}c7(tnKm z#6emiVjEXVn|#}C|6qpX-78!--n%VbD7dzM{yX!p``5(Yc^!UW8vFeAr;DX6S>E1C zxL(M}P+;}GD(UwZMUMABHZb3BI|gwEE(;kM&YjLbWGH_K;TB*}Fg&o?$6&^9&^CY7 Q-zgxzr>mdKI;Vst0FB9$IsgCw literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/frame_016.png b/animations/status_low_battery/frame_016.png new file mode 100644 index 0000000000000000000000000000000000000000..e8bcd3406ffca3264277819295efa8eb247b5cd5 GIT binary patch literal 359 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi(Qx;TbZ%z1m;Fz=87gTuvu zuN*Sl++QT_bhavS%w=aO+y7{fxsl7p{c{AGw(|n@oqJ;Ra>ws|{#HdViX`o0^AGp$ z(6#z~dro05|Atp@>ZR>=9n609?@yY}jSEW_`tD@OJ$?3{S+2`wrVk2?NlZsrIyeP{ z71SKw?6qrj{`I-?$4+)uZ6M#LVFrUCvH}!=&rZ)I*?*+V@CzX;O=FG7UwmnaVDJ5} z8}D8DZ&0@S%n#8G_ns}OKJ0G(RA@_9bLeqah668UzIMMo{`J@I!{=|m{eS+6Yh6z_ w#1SZVfLsL=V3;$#{E(sfLxh`vK4&P9i|;8>Z++OLI3L9IboFyt=akR{0GZ2+pa1{> literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/frame_017.png b/animations/status_low_battery/frame_017.png new file mode 100644 index 0000000000000000000000000000000000000000..e8bcd3406ffca3264277819295efa8eb247b5cd5 GIT binary patch literal 359 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi(Qx;TbZ%z1m;Fz=87gTuvu zuN*Sl++QT_bhavS%w=aO+y7{fxsl7p{c{AGw(|n@oqJ;Ra>ws|{#HdViX`o0^AGp$ z(6#z~dro05|Atp@>ZR>=9n609?@yY}jSEW_`tD@OJ$?3{S+2`wrVk2?NlZsrIyeP{ z71SKw?6qrj{`I-?$4+)uZ6M#LVFrUCvH}!=&rZ)I*?*+V@CzX;O=FG7UwmnaVDJ5} z8}D8DZ&0@S%n#8G_ns}OKJ0G(RA@_9bLeqah668UzIMMo{`J@I!{=|m{eS+6Yh6z_ w#1SZVfLsL=V3;$#{E(sfLxh`vK4&P9i|;8>Z++OLI3L9IboFyt=akR{0GZ2+pa1{> literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/frame_018.png b/animations/status_low_battery/frame_018.png new file mode 100644 index 0000000000000000000000000000000000000000..e8bcd3406ffca3264277819295efa8eb247b5cd5 GIT binary patch literal 359 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi(Qx;TbZ%z1m;Fz=87gTuvu zuN*Sl++QT_bhavS%w=aO+y7{fxsl7p{c{AGw(|n@oqJ;Ra>ws|{#HdViX`o0^AGp$ z(6#z~dro05|Atp@>ZR>=9n609?@yY}jSEW_`tD@OJ$?3{S+2`wrVk2?NlZsrIyeP{ z71SKw?6qrj{`I-?$4+)uZ6M#LVFrUCvH}!=&rZ)I*?*+V@CzX;O=FG7UwmnaVDJ5} z8}D8DZ&0@S%n#8G_ns}OKJ0G(RA@_9bLeqah668UzIMMo{`J@I!{=|m{eS+6Yh6z_ w#1SZVfLsL=V3;$#{E(sfLxh`vK4&P9i|;8>Z++OLI3L9IboFyt=akR{0GZ2+pa1{> literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/frame_019.png b/animations/status_low_battery/frame_019.png new file mode 100644 index 0000000000000000000000000000000000000000..1c841e3eef1964eb72b6d33211d3ed94eccf44b8 GIT binary patch literal 375 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~FfiJAx;TbZ%z1k!Fzb+mh{MH* zU3}m7>zOCna|LzD2R$o%{bWu)=gggcK3ASt0Chd^(R04N_x^k5Xuepz*UMig{}k)@ zP5(bb^7=1^-RJ&of4Vq&&$7CA_m4F3^77_B5h%$q|9$*Mhn>3FuY&z?@%0~{md(CB zxjs9K^@9>)64Mcu4o(4K1+!|YU8|R0KU}{%U;`6eRL#MsVFrUCLK#%R{=}c7(tnKm z#6emiVjEXVn|#}C|6qpX-78!--n%VbD7dzM{yX!p``5(Yc^!UW8vFeAr;DX6S>E1C zxL(M}P+;}GD(UwZMUMABHZb3BI|gwEE(;kM&YjLbWGH_K;TB*}Fg&o?$6&^9&^CY7 Q-zgxzr>mdKI;Vst0FB9$IsgCw literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/frame_020.png b/animations/status_low_battery/frame_020.png new file mode 100644 index 0000000000000000000000000000000000000000..1c841e3eef1964eb72b6d33211d3ed94eccf44b8 GIT binary patch literal 375 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~FfiJAx;TbZ%z1k!Fzb+mh{MH* zU3}m7>zOCna|LzD2R$o%{bWu)=gggcK3ASt0Chd^(R04N_x^k5Xuepz*UMig{}k)@ zP5(bb^7=1^-RJ&of4Vq&&$7CA_m4F3^77_B5h%$q|9$*Mhn>3FuY&z?@%0~{md(CB zxjs9K^@9>)64Mcu4o(4K1+!|YU8|R0KU}{%U;`6eRL#MsVFrUCLK#%R{=}c7(tnKm z#6emiVjEXVn|#}C|6qpX-78!--n%VbD7dzM{yX!p``5(Yc^!UW8vFeAr;DX6S>E1C zxL(M}P+;}GD(UwZMUMABHZb3BI|gwEE(;kM&YjLbWGH_K;TB*}Fg&o?$6&^9&^CY7 Q-zgxzr>mdKI;Vst0FB9$IsgCw literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/frame_021.png b/animations/status_low_battery/frame_021.png new file mode 100644 index 0000000000000000000000000000000000000000..1c841e3eef1964eb72b6d33211d3ed94eccf44b8 GIT binary patch literal 375 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~FfiJAx;TbZ%z1k!Fzb+mh{MH* zU3}m7>zOCna|LzD2R$o%{bWu)=gggcK3ASt0Chd^(R04N_x^k5Xuepz*UMig{}k)@ zP5(bb^7=1^-RJ&of4Vq&&$7CA_m4F3^77_B5h%$q|9$*Mhn>3FuY&z?@%0~{md(CB zxjs9K^@9>)64Mcu4o(4K1+!|YU8|R0KU}{%U;`6eRL#MsVFrUCLK#%R{=}c7(tnKm z#6emiVjEXVn|#}C|6qpX-78!--n%VbD7dzM{yX!p``5(Yc^!UW8vFeAr;DX6S>E1C zxL(M}P+;}GD(UwZMUMABHZb3BI|gwEE(;kM&YjLbWGH_K;TB*}Fg&o?$6&^9&^CY7 Q-zgxzr>mdKI;Vst0FB9$IsgCw literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/frame_022.png b/animations/status_low_battery/frame_022.png new file mode 100644 index 0000000000000000000000000000000000000000..e8bcd3406ffca3264277819295efa8eb247b5cd5 GIT binary patch literal 359 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi(Qx;TbZ%z1m;Fz=87gTuvu zuN*Sl++QT_bhavS%w=aO+y7{fxsl7p{c{AGw(|n@oqJ;Ra>ws|{#HdViX`o0^AGp$ z(6#z~dro05|Atp@>ZR>=9n609?@yY}jSEW_`tD@OJ$?3{S+2`wrVk2?NlZsrIyeP{ z71SKw?6qrj{`I-?$4+)uZ6M#LVFrUCvH}!=&rZ)I*?*+V@CzX;O=FG7UwmnaVDJ5} z8}D8DZ&0@S%n#8G_ns}OKJ0G(RA@_9bLeqah668UzIMMo{`J@I!{=|m{eS+6Yh6z_ w#1SZVfLsL=V3;$#{E(sfLxh`vK4&P9i|;8>Z++OLI3L9IboFyt=akR{0GZ2+pa1{> literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/frame_023.png b/animations/status_low_battery/frame_023.png new file mode 100644 index 0000000000000000000000000000000000000000..e8bcd3406ffca3264277819295efa8eb247b5cd5 GIT binary patch literal 359 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi(Qx;TbZ%z1m;Fz=87gTuvu zuN*Sl++QT_bhavS%w=aO+y7{fxsl7p{c{AGw(|n@oqJ;Ra>ws|{#HdViX`o0^AGp$ z(6#z~dro05|Atp@>ZR>=9n609?@yY}jSEW_`tD@OJ$?3{S+2`wrVk2?NlZsrIyeP{ z71SKw?6qrj{`I-?$4+)uZ6M#LVFrUCvH}!=&rZ)I*?*+V@CzX;O=FG7UwmnaVDJ5} z8}D8DZ&0@S%n#8G_ns}OKJ0G(RA@_9bLeqah668UzIMMo{`J@I!{=|m{eS+6Yh6z_ w#1SZVfLsL=V3;$#{E(sfLxh`vK4&P9i|;8>Z++OLI3L9IboFyt=akR{0GZ2+pa1{> literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/frame_024.png b/animations/status_low_battery/frame_024.png new file mode 100644 index 0000000000000000000000000000000000000000..e8bcd3406ffca3264277819295efa8eb247b5cd5 GIT binary patch literal 359 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffi(Qx;TbZ%z1m;Fz=87gTuvu zuN*Sl++QT_bhavS%w=aO+y7{fxsl7p{c{AGw(|n@oqJ;Ra>ws|{#HdViX`o0^AGp$ z(6#z~dro05|Atp@>ZR>=9n609?@yY}jSEW_`tD@OJ$?3{S+2`wrVk2?NlZsrIyeP{ z71SKw?6qrj{`I-?$4+)uZ6M#LVFrUCvH}!=&rZ)I*?*+V@CzX;O=FG7UwmnaVDJ5} z8}D8DZ&0@S%n#8G_ns}OKJ0G(RA@_9bLeqah668UzIMMo{`J@I!{=|m{eS+6Yh6z_ w#1SZVfLsL=V3;$#{E(sfLxh`vK4&P9i|;8>Z++OLI3L9IboFyt=akR{0GZ2+pa1{> literal 0 HcmV?d00001 diff --git a/animations/status_low_battery/status_low_battery.gif b/animations/status_low_battery/status_low_battery.gif new file mode 100644 index 0000000000000000000000000000000000000000..45a2a0ff47db3831798afd7fbda9c77062d1edc6 GIT binary patch literal 8089 zcmZ?wbhEHbY+y)WXlDR{|3Dxo2WE~EqaiS|LO}5+3xgrh%ZmTG{aizWogD*Qjr0td z8G%ANppXD%69$g|42&Ey9vc=MY~~QwiaD`i;o)`xWv@9N8y6kzmN3q`b7JG-(a?Xf$*w&q;l5V?Ap>1naI!CUih&MIA9x;AEm z=g~td)!%dOZApIn?Wvdex&sI67Jf=OS-v59ZV#*Vzum?~F-Mr>o^Pp<*qpXNTl)K7 zpU|Z*b}#w5$VS)P^ud%hw}aYbqCUO2IXgSv?ai;XnYULIHvijOz3I`ZUDlt);-t(z zTsspwzsJ`6*Xyh2Q{|WY#_asKYv1>@?d$7g_I$tnl$ZIyoSB<`ew}xBb$Yx-LE)G8 zZ{v?j{Y(A)m-FxQ`N1q=9e2vu)NWj<<1*VJ(jefb@vucCEaPFTMB0jnZ8Bvu1S{os zu_Sfq^m;7vQk&Ni)TK4+NK&`TUXH~cM&~$!dd;d@lKW)do>=T=_pc*xf>V@B%0v;_ z&Lu8hdYpli{oFL4P6;^{5jNE}u2XeFRGwwZ^f)Qbv>Bd#o@$fR=B<1-D`(rwXR`~A zX+ED*a!oSLfdOCi$}{jYs4}>LOF>`}SRo<;itte|8UiCM1UUN1EZ(BoW_WH!6mRF} znR ziLJS~UH;@cQ)}_u*saMo@0IQjcOWU-jy7FJSZW>hE;IxFVdQ&MBb@0L^TgV*mgE literal 0 HcmV?d00001 diff --git a/animations/turn_left/frame_002.png b/animations/turn_left/frame_002.png new file mode 100644 index 0000000000000000000000000000000000000000..ac6cadc2d4770407a298610a0d0cf34eebf51170 GIT binary patch literal 383 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffh7#x;TbZ%z1m`V&-87o`%Gw zC5!wn30g(Dy-$9gjQ{MVP9U2yni{rvFy%3n9i#RWOF7d-qD zeN+0tm-$6pTH6d8j@KVu$FOXFhBw3I`0c6<>uq0`?QJrN*itBbEul3zW8+>%ou=j6 z)-&+RSwD?=R%CGXvDYQJgm=0>n#)cDEh=N^e&BUUttMj5zZJa7rU#Bb7Fx`7mV-h=GJWUHx3vIVCg!09(AHssI20 literal 0 HcmV?d00001 diff --git a/animations/turn_left/frame_003.png b/animations/turn_left/frame_003.png new file mode 100644 index 0000000000000000000000000000000000000000..a79c52d7be83388df23087414b9c5d1415cc0697 GIT binary patch literal 383 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffh7#x;TbZ%z1m`b|$l-fWyVY z0@sx)s!O&^nc#IN=+njx0`}LK+>M(opWlCD6uv3N9jFrme7=2*`^&cT-m3Tq{dt%B zmok~msnZc%usoFMOU%EG9u3%&VKio?-WQ1#iNyzU;FQLw2etEd&KYK z&)5w9F2B>%<;#=svww!@fiLX7oC&`kFJt+Te||?~yrUG)tO|~7gF~iUZrouoI~aVq zyn*ewpJo3|{bf}#o>t6fYB}o`+%4kPnkIWdZO5b%j(oP|_g@|G;N4)YcTvmXtmK8P zBgaqiCGwi(IUdzwzQF=?vB`@6Tv_)P*g1U3+u+iWaVKFaL$0pKg12fB-Sw|wLGd7U Xza*Dd-bLQb1t1|$S3j3^P6MI=f8OQ( zrA#Js>U2aGEDvS+67z4PN5i(u{h~}I^XjIsXW0E+!JF_aa38Y4)N_cs=Fd0j^XtGWlI>A)%zb)oMZO){rTth&t5+MIsfPFFR}@5 z9#>SnDIZf@$ z-ZSv_%`KAK9PjgW$Al8L8NY@8IP88V7NTR_;9H>hQs5qs-~OwO6QvT$V-|%r%rahZ zwWEKk>>;U~J561oY#TTi)v#v-{O8KLx4_QfOWp>ThKxH2QyFq~MHakOi|DR@4GW3~ a_v;v}MYZz0y*5^X#5`U7T-G@yGywnuexTO? literal 0 HcmV?d00001 diff --git a/animations/turn_left/frame_005.png b/animations/turn_left/frame_005.png new file mode 100644 index 0000000000000000000000000000000000000000..6ee6ccde1f59ca6808058d302f81b9d5355e18a1 GIT binary patch literal 369 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffdwpx;TbZ%z1kwG3&4aPeWko zn+4Xl@^<~>V7XSdGSS26#a`|uFE%He3j(!3z{$FOyXzg-_P>+=aC*zj<6(?!e)ikA z3@+<2rs@5^p>p8H%j0~EYX0`On0e;cePJ{Bn{l6U3+skI{I-lf|Gz~3G$^hQlX_6_ zdsV%fU?TgTM`Bmj=ruh39~8)N`M>v3#W{w5H!Zpu-u6W{;cfhB-h^NIJ6TP=c@loE zKf#sot2>Bk#=l)t81{WzbGnK(bA!f5foln^*%_PfFqj>TerfH{oV|V4@j2qbwsInK z8K3QAt-ml2sDCwIg0PK-RSSRjW%<&CDQp(8(`+~H&j5$p} zr%HX<-_&OQf?r^>bdI0`oB0jZ0};}!61zFSJ<67ag~6ZOvXaKeVNxm2R)B;&UHx3v IIVCg!0AsC_#Q*>R literal 0 HcmV?d00001 diff --git a/animations/turn_left/frame_006.png b/animations/turn_left/frame_006.png new file mode 100644 index 0000000000000000000000000000000000000000..43606e7315821147b0ede19ee99b0d7fb096542d GIT binary patch literal 369 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffdwpx;TbZ%z1kwG3&4aPeWko zn+4Xl@^<~@V7XSda-oOOi@n@SUTjV_7X)g7fRlCmcGo+u?SCi#;rN!9$HN%e{Oq@J z8C=$5Ow;>+L*>AYm&f@S)%@*mG4sr?`@&}MH{(9z7S;`a_-z?|{(p)5X;54rBK4r) z_o{j|!9;eO$6{C3=ruh39}>uL`M>{B#Xrx!R6kCQm%LQou(e*-yy4~kCt_E03>%*A zSJG~Hsqe*^@auID(~n!5^R)5k;9Ic#g@B!oU;UNFK&b~Mu}L8f^NbU&bgbVhdq_&=PSdPXwhf$% zYS}X`{O6Lox4_=vOx_0928lZf(;1R;MH1eq-RNFl3JZe|+v2V5jKg9?XT1UmdAjrw*vw`X0}SC9sa5)WYwR=9>1%MD-&-b&v94X)kxJm$QZ z>hWOH8DQ=$_<{D!EvVS;0G8mvrbGC!IQ>xv#?}C*>k^{^)SLmMMtrU85Z2(}7F4V< zfF+3X4bY(eD`Jpeb_sg%Zyf*t00000008{k9bHK?RyB41 Q$N&HU07*qoM6N<$g26SRRR910 literal 0 HcmV?d00001 diff --git a/animations/turn_left/frame_008.png b/animations/turn_left/frame_008.png new file mode 100644 index 0000000000000000000000000000000000000000..d1a4b727284f5d993035f22c57a2ee71c366b5c7 GIT binary patch literal 371 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffdwqx;TbZ%z1kwF^kEOr{Q8m z)djh==4sGW}5xIp>^QE%j02; zX}44loVjjq#%WOYYol|+$;l!{zwtLI?KSzTUL2$s}S*1xNOVL#A6I^BBB81pQ*mD0mn2dB*LdA^p~_ z=?y#c5Attu&vQJxiaDam+O_>dV&SjFd_9*K%%7{evA(cmcI*8Sb6auE!GpRhBGVbX z1>Q<8aQq*B;RD-W#-y@lU8W-s*mko>WG`k&o}QrpZ!I%46dLMxGu4L}hfVt;R00z6 MboFyt=akR{04JWBHUIzs literal 0 HcmV?d00001 diff --git a/animations/turn_left/frame_009.png b/animations/turn_left/frame_009.png new file mode 100644 index 0000000000000000000000000000000000000000..d1a4b727284f5d993035f22c57a2ee71c366b5c7 GIT binary patch literal 371 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffdwqx;TbZ%z1kwF^kEOr{Q8m z)djh==4sGW}5xIp>^QE%j02; zX}44loVjjq#%WOYYol|+$;l!{zwtLI?KSzTUL2$s}S*1xNOVL#A6I^BBB81pQ*mD0mn2dB*LdA^p~_ z=?y#c5Attu&vQJxiaDam+O_>dV&SjFd_9*K%%7{evA(cmcI*8Sb6auE!GpRhBGVbX z1>Q<8aQq*B;RD-W#-y@lU8W-s*mko>WG`k&o}QrpZ!I%46dLMxGu4L}hfVt;R00z6 MboFyt=akR{04JWBHUIzs literal 0 HcmV?d00001 diff --git a/animations/turn_left/frame_010.png b/animations/turn_left/frame_010.png new file mode 100644 index 0000000000000000000000000000000000000000..d1a4b727284f5d993035f22c57a2ee71c366b5c7 GIT binary patch literal 371 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffdwqx;TbZ%z1kwF^kEOr{Q8m z)djh==4sGW}5xIp>^QE%j02; zX}44loVjjq#%WOYYol|+$;l!{zwtLI?KSzTUL2$s}S*1xNOVL#A6I^BBB81pQ*mD0mn2dB*LdA^p~_ z=?y#c5Attu&vQJxiaDam+O_>dV&SjFd_9*K%%7{evA(cmcI*8Sb6auE!GpRhBGVbX z1>Q<8aQq*B;RD-W#-y@lU8W-s*mko>WG`k&o}QrpZ!I%46dLMxGu4L}hfVt;R00z6 MboFyt=akR{04JWBHUIzs literal 0 HcmV?d00001 diff --git a/animations/turn_left/frame_011.png b/animations/turn_left/frame_011.png new file mode 100644 index 0000000000000000000000000000000000000000..d1a4b727284f5d993035f22c57a2ee71c366b5c7 GIT binary patch literal 371 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffdwqx;TbZ%z1kwF^kEOr{Q8m z)djh==4sGW}5xIp>^QE%j02; zX}44loVjjq#%WOYYol|+$;l!{zwtLI?KSzTUL2$s}S*1xNOVL#A6I^BBB81pQ*mD0mn2dB*LdA^p~_ z=?y#c5Attu&vQJxiaDam+O_>dV&SjFd_9*K%%7{evA(cmcI*8Sb6auE!GpRhBGVbX z1>Q<8aQq*B;RD-W#-y@lU8W-s*mko>WG`k&o}QrpZ!I%46dLMxGu4L}hfVt;R00z6 MboFyt=akR{04JWBHUIzs literal 0 HcmV?d00001 diff --git a/animations/turn_left/frame_012.png b/animations/turn_left/frame_012.png new file mode 100644 index 0000000000000000000000000000000000000000..d1a4b727284f5d993035f22c57a2ee71c366b5c7 GIT binary patch literal 371 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffdwqx;TbZ%z1kwF^kEOr{Q8m z)djh==4sGW}5xIp>^QE%j02; zX}44loVjjq#%WOYYol|+$;l!{zwtLI?KSzTUL2$s}S*1xNOVL#A6I^BBB81pQ*mD0mn2dB*LdA^p~_ z=?y#c5Attu&vQJxiaDam+O_>dV&SjFd_9*K%%7{evA(cmcI*8Sb6auE!GpRhBGVbX z1>Q<8aQq*B;RD-W#-y@lU8W-s*mko>WG`k&o}QrpZ!I%46dLMxGu4L}hfVt;R00z6 MboFyt=akR{04JWBHUIzs literal 0 HcmV?d00001 diff --git a/animations/turn_left/frame_013.png b/animations/turn_left/frame_013.png new file mode 100644 index 0000000000000000000000000000000000000000..4104547f19d91bac615f505e1af07e19549026e9 GIT binary patch literal 116 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvaDQiy`$B>FSZx0$W0(plPeD%-e gh+hC?5&{j^873q!Fv|OCTm>ohboFyt=akR{0HmfAQvd(} literal 0 HcmV?d00001 diff --git a/animations/turn_left/frame_014.png b/animations/turn_left/frame_014.png new file mode 100644 index 0000000000000000000000000000000000000000..4104547f19d91bac615f505e1af07e19549026e9 GIT binary patch literal 116 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvaDQiy`$B>FSZx0$W0(plPeD%-e gh+hC?5&{j^873q!Fv|OCTm>ohboFyt=akR{0HmfAQvd(} literal 0 HcmV?d00001 diff --git a/animations/turn_left/frame_015.png b/animations/turn_left/frame_015.png new file mode 100644 index 0000000000000000000000000000000000000000..4104547f19d91bac615f505e1af07e19549026e9 GIT binary patch literal 116 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvaDQiy`$B>FSZx0$W0(plPeD%-e gh+hC?5&{j^873q!Fv|OCTm>ohboFyt=akR{0HmfAQvd(} literal 0 HcmV?d00001 diff --git a/animations/turn_left/frame_016.png b/animations/turn_left/frame_016.png new file mode 100644 index 0000000000000000000000000000000000000000..4104547f19d91bac615f505e1af07e19549026e9 GIT binary patch literal 116 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvaDQiy`$B>FSZx0$W0(plPeD%-e gh+hC?5&{j^873q!Fv|OCTm>ohboFyt=akR{0HmfAQvd(} literal 0 HcmV?d00001 diff --git a/animations/turn_left/turn_left.gif b/animations/turn_left/turn_left.gif new file mode 100644 index 0000000000000000000000000000000000000000..e897f5e999854cde2c20add5f68c3aea35dcd79d GIT binary patch literal 7976 zcmZ?wbhEHbY+y)WXlDR{03(L~3&5;VVl)IsSO_ToWMSX}`dRTmx1VcBu(M-;tC5}o zGb2z)2NV>bY{J0tpMjA>#$&^RgUuYmS}`X!EIiyUpzJlrW8p%Wt`1HLd0V$fn>XW#`FMWY1~ zD8-F}5g7s;f()!EWlW+2-i+golyQL7H!$yvg3%Bdfgu3QILxGE9GB6IGXhh|sFyK9 zfYgj5!yv(+!C(k(s*QFSF@kecV5Ecq$3{qZFySBr8?ZaL!hpf4O+cBi;MI{CB zHYLqaYs8Tfjide?4FS{;Ahkx+AI&(Z0XWJVnIV8HD oGL8n0j05U}xj_41s3wi_Mnhl(g#br9&8Fm*2Q1d(;b5=^0M_r000000 literal 0 HcmV?d00001 diff --git a/animations/turn_right/frame_001.png b/animations/turn_right/frame_001.png new file mode 100644 index 0000000000000000000000000000000000000000..448a59c834c313f5cee6812c16817cc89d0bee6a GIT binary patch literal 385 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffe*}x;TbZ%z1n3q3>Y>frg9B zhJorYIeLz9_#E>3usn#-)VHf-pY!*748Bj+=jALH1nPu<|95_d)Uw;#hTnH+4C7T} z>+s`kV|$UD*Pu2zA+O=Z#e|ZEj0*`>4J+~#99%M)8M`-PtTmIZ>Arj%vO5{PtRFym-vd{(bzl--=G~+?Z&~ z&vIk>Er*6ACYed*oGcbvD;pX3Ph=<@U^bezgh^)V7Da&v6ZX8F!Eh9)u1ZSrK;N6q z3#Q-c@9((xJny@1g<&RJ&ZnpyJ>ip@IX>KewBKb-1;_SFZ}rt5Gu_$#@8E0o7pqck zDj#sYx+oZEhs%_AJ6SaDee~lGsJmxix@h1$jZuV;I8A%xpYVrR&cg z5rR_#nwCa3O}#N`-votYpZO-=lr+Bo-6x^g{`A{-f{Z||VDRC5?76GTJHCh5HZZM~ z^5GGfE5*Zm;rJZ}U$ujG7%nb8_=4f$f`eZe0`EFBbX;O%5)po|Doco?Ao$XQkPkDL z^2I&f{{2behNngA;%ED9H)^PMFl4OTmLtTmA=9^6boGM%>xBn)m2F; z9_V|sdBO8L+xt7r+;i$TJUF;Sa>L2whemRqd`bt(yZ;Mqe57{AYy18=J=`C5e>IP@ zcQjW$EyuWSmDpUMa}^eqoL6=D*jHZF@ac2gMaEO>>wNewJbZQh34<@tr%ztn2X5c2 d01XWWj}M$SueHu4%-#(a@^tlcS?83{1OVTUqND%- literal 0 HcmV?d00001 diff --git a/animations/turn_right/frame_003.png b/animations/turn_right/frame_003.png new file mode 100644 index 0000000000000000000000000000000000000000..7330a8a327e1252102d0d637545c284520c38663 GIT binary patch literal 387 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffe*~x;TbZ%z1n3qA!!9K*Pg> z5rR_#nwCa3O}#N`-vkA>J<3Mb$sUyEL<1W_BrMW>oT$<_Pd<*u2V9;ee}Wv-839X}2n; z-oH2b_(9#}$$xK^?3&7Whq;UM!{*e<4h^%fnM7>l`c?7w@@am3e#xV<`{I7Rc{)LI zgJQKD#|GW4jSNRwZm8x9acl?=VrG0d;i5x>b&8HB>kaKpXN3cLmA4HUyEr%Kel>Aw z;Jumdcz$QTyrAgv%>GRe4la=_n0)+Ds?8)BmxlLZ|5cNY`tF#TS8pjP{-FGI{+_xf zJ+EoDOmjkYtyneG99&+`^KN(~`~C~V)91X4nWx16oguT}@YVj4jI$)97M#3ZzbG%= e5f&a39tfL!(>k|?c>*YK89ZJ6T-G@yGywpF_m|uN literal 0 HcmV?d00001 diff --git a/animations/turn_right/frame_004.png b/animations/turn_right/frame_004.png new file mode 100644 index 0000000000000000000000000000000000000000..dab81aa7162fbd204e6f964fdcedafc610101298 GIT binary patch literal 386 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffe+0x;TbZ%z1n3p)Zr8K*Pm@ z5rR_#nwCa3O}#PcpJJ2S9_7TcV`r*aWv2g)$Sd#X0O|yThWd9UYxXt2pSLQ1fx~Jx zVP==*Y|hMI49y)Tdm5NKe917daxlp-uyqJA7f@KVrIFz%i^b|$EKD&|Oe{od(pJu0 z{O8-e8u>d#R@c`1E{~QxV7y=k!~SS9PL>^+zRjYm7xZ609{>5nrytpMJLP`8c{)LI zgJQKD#|GW4Afs-m<_mFb2oGXrd^h2uLxXjSjwkC4?M!Ed1A3LW4H>&QH|Tyfacbbb zneKRg=k)%LC(WBfxZ`|gF`8HE#vIc=>B#aU^JBbHm`zLc%Wu;s7c&0a_V3_p^%sj$ zZYm#$yt*j3A&JRl%DbH`8uvc>@dwo11N!FYi{noiWZmr5*fWwc8r0(dckY_Y$_Nb( ahbDhrMy+$!`yZ_WiFmsDxvXE|F^EVw9-SIK*cLQpHfIr3Cv%kvLd=08)W{onPA)#PpDj~I? ze<$NCo~E6Qi`<(pGA?p#e#y9KS0jVqQeGAfwF9wN6$BnETyk*fgIP<(=6`ys`&G}P zZ1=VEzRPb*9xz`pgTel`83&8SmgNWgA}?&){&M{?z4`eT)mAAib57J%vsg^O<U)8D*{nWxzQoguT}@a6uKjI)4VJo(x_aQj{bSU7lm;M+IVSTUjF}zm)y9Omn<*6&ws1 zr#<0iVhmF?6?niY$;(pVbZkmUL#QV=6Hr3;ILMlvSMG8!`lY;Q?X{j1^U?6`odSbQ z7MUWQm}3*4C@|G*|M}xZ>FcXfFTPEmT*z3r{r}Ms_i+)@U*Z%J@N5|hi6bvs!! z;y(KE2kg6VVCC@ha{oz2E1SPFWEONTWSq6zz5>N{S{M&hZYZZ(A-cbGp4y)OOnO&B%IWvDT zG01BvSzEWK z@q-E34~^ETunRuee)hWi`{?=C9JasSS;#o=_Wy@p#lHk>dL#H?UDicSpnfH4*fVDPQ`CtPaH4GKCCXkeMYZneqB(8f>=5ZBYy K&t;ucLK6Th)s9#I literal 0 HcmV?d00001 diff --git a/animations/turn_right/frame_008.png b/animations/turn_right/frame_008.png new file mode 100644 index 0000000000000000000000000000000000000000..0b9870c45acb997617c435a64f85f1c9d5a8e125 GIT binary patch literal 371 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;Lv~Ffdwqx;TbZ%z1k=I*-Ya$00Dd zbYZNN^-_C|TdNEn9^N?d{LKR{#hjDfS%6x=;K1zNb5^^5xb6Oxfon^afuTc5mVt?b zd@-}hOqOD1mwvXz%r4DrmziBknHiP5q&Wh78dk6JR5%dp*&KY(*jsns)63znG%DT{ zt&5-Sx81lQ-@%aa-}YP~jt>{+u~~;XzW?OAdu>e}pGCE03Y*M{e_uHYbhb7!9A$}^ zWX{PFG4+Z=gLsOGzynrE?;yr7)m#ps#CBQX1v40q2l*?rSWKuDGkND#bToJ8&WA~t zcq&e8EszYK)XeeW`m@)I&#(2*UU2*CogED4-~Rvbi+h)L={WJ4QlrPJ9o`xWrPNULsR~;Z6+V*bu+I8iFmsD KxvX{+u~~;XzW?OAdu>e}pGCE03Y*M{e_uHYbhb7!9A$}^ zWX{PFG4+Z=gLsOGzynrE?;yr7)m#ps#CBQX1v40q2l*?rSWKuDGkND#bToJ8&WA~t zcq&e8EszYK)XeeW`m@)I&#(2*UU2*CogED4-~Rvbi+h)L={WJ4QlrPJ9o`xWrPNULsR~;Z6+V*bu+I8iFmsD KxvX{+u~~;XzW?OAdu>e}pGCE03Y*M{e_uHYbhb7!9A$}^ zWX{PFG4+Z=gLsOGzynrE?;yr7)m#ps#CBQX1v40q2l*?rSWKuDGkND#bToJ8&WA~t zcq&e8EszYK)XeeW`m@)I&#(2*UU2*CogED4-~Rvbi+h)L={WJ4QlrPJ9o`xWrPNULsR~;Z6+V*bu+I8iFmsD KxvX{+u~~;XzW?OAdu>e}pGCE03Y*M{e_uHYbhb7!9A$}^ zWX{PFG4+Z=gLsOGzynrE?;yr7)m#ps#CBQX1v40q2l*?rSWKuDGkND#bToJ8&WA~t zcq&e8EszYK)XeeW`m@)I&#(2*UU2*CogED4-~Rvbi+h)L={WJ4QlrPJ9o`xWrPNULsR~;Z6+V*bu+I8iFmsD KxvX{+u~~;XzW?OAdu>e}pGCE03Y*M{e_uHYbhb7!9A$}^ zWX{PFG4+Z=gLsOGzynrE?;yr7)m#ps#CBQX1v40q2l*?rSWKuDGkND#bToJ8&WA~t zcq&e8EszYK)XeeW`m@)I&#(2*UU2*CogED4-~Rvbi+h)L={WJ4QlrPJ9o`xWrPNULsR~;Z6+V*bu+I8iFmsD KxvXFSZx0$W0(plPeD%-e gh+hC?5&{j^873q!Fv|OCTm>ohboFyt=akR{0HmfAQvd(} literal 0 HcmV?d00001 diff --git a/animations/turn_right/frame_014.png b/animations/turn_right/frame_014.png new file mode 100644 index 0000000000000000000000000000000000000000..4104547f19d91bac615f505e1af07e19549026e9 GIT binary patch literal 116 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvaDQiy`$B>FSZx0$W0(plPeD%-e gh+hC?5&{j^873q!Fv|OCTm>ohboFyt=akR{0HmfAQvd(} literal 0 HcmV?d00001 diff --git a/animations/turn_right/frame_015.png b/animations/turn_right/frame_015.png new file mode 100644 index 0000000000000000000000000000000000000000..4104547f19d91bac615f505e1af07e19549026e9 GIT binary patch literal 116 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvaDQiy`$B>FSZx0$W0(plPeD%-e gh+hC?5&{j^873q!Fv|OCTm>ohboFyt=akR{0HmfAQvd(} literal 0 HcmV?d00001 diff --git a/animations/turn_right/frame_016.png b/animations/turn_right/frame_016.png new file mode 100644 index 0000000000000000000000000000000000000000..4104547f19d91bac615f505e1af07e19549026e9 GIT binary patch literal 116 zcmeAS@N?(olHy`uVBq!ia0vp^4M3d0!2~3uB;LvaDQiy`$B>FSZx0$W0(plPeD%-e gh+hC?5&{j^873q!Fv|OCTm>ohboFyt=akR{0HmfAQvd(} literal 0 HcmV?d00001 diff --git a/animations/turn_right/turn_right.gif b/animations/turn_right/turn_right.gif new file mode 100644 index 0000000000000000000000000000000000000000..a0ad5ce83ff9569d2334bd53dd4b17f40e70ed74 GIT binary patch literal 7970 zcmZ?wbhEHbY+y)WXlDR{03(L~3&5;VVl)IsSO_ToWMSX}`dRTmx1VcBu(M-;tC5}o zGb2z)2NV>bY{J0tpMjA>#$&^RgUuYmS}`X!EIiyUpzJlrW8EU>9Qvgn^GO;xz679IBHw2>Av38WqPsO z^B>+@I^+B6xXo4nPl@Un89eL`;je!p71HqdI8(+iR<55LpPaPQw%*q>bNRCq#^?Y2 zIkR)K-=&4uzq#lduTMX_)c0|UZ1C5t8!J3g=g*&CB~cJ}A{tg9*b z{Pg@p_wpOpf0VS=uD35)J9pRHcf4<#%+r6={&Bka>@c@~eu3@prfc_;)Aj1>{(kuW z`Stzt`}hC<&%mbfpn*j!<3S^b+KLBFJZ3Kz)G;zL;0s<21}z4523~L}G+G9M65A*k zks-h#$iRwHyd*l{%{cl<83$N%1M|)(7!83D7y`hI!%RxXF&oV|BQTYWdKn`GNXci+1eE1UG&U+ZxAW^}&G9H) z?A{}58^t0Sl;Sc;)z{2rX5dn%X}YmeEt0{{9A=s3K01=IIqB3q-bSx8np+;6UnG;h z=*r2-${x#nSvR#vm99FoG-%_lEm@_nudLH5pS0wc$QsXeQHT4^?z;9mcw7G6X(rl6 zdY6`zPkrX=VUi!e#Ql7iXxC>w-~AF91R>9 kM-kWsbAfijP)!=;jfTJo3IUFInoY(n4_K@R>@isb0BqiqumAu6 literal 0 HcmV?d00001 diff --git a/scripts/generate_animations.py b/scripts/generate_animations.py new file mode 100644 index 0000000..78ee57c --- /dev/null +++ b/scripts/generate_animations.py @@ -0,0 +1,403 @@ +#!/usr/bin/env python3 +"""Generate LED panel animations for Lux robot (128x96 px landscape).""" + +import math +import os +from PIL import Image, ImageDraw +import imageio.v3 as iio + +W, H = 128, 96 +BG = (0, 0, 0) +AMBER = (255, 160, 0) +AMBER_DIM = (80, 50, 0) +WHITE = (255, 255, 255) +CYAN = (0, 200, 255) +RED = (255, 30, 30) +GREEN = (0, 200, 80) +YELLOW = (255, 220, 0) + +OUT = os.path.join(os.path.dirname(__file__), "..", "animations") + + +def ensure_dir(name): + d = os.path.join(OUT, name) + os.makedirs(d, exist_ok=True) + return d + + +def save_anim(name, frames, fps=10): + d = ensure_dir(name) + for i, f in enumerate(frames): + f.save(os.path.join(d, f"frame_{i+1:03d}.png")) + gif_path = os.path.join(d, f"{name}.gif") + iio.imwrite( + gif_path, + [f.copy().convert("RGBA") for f in frames], + duration=int(1000 / fps), + loop=0, + plugin="pillow", + ) + print(f" {name}: {len(frames)} frames, {gif_path}") + + +# ── TURN SIGNALS ────────────────────────────────────────────── + +def make_arrow(direction, sweep_step, total_steps=8): + """Draw a sweeping turn signal arrow.""" + img = Image.new("RGB", (W, H), BG) + draw = ImageDraw.Draw(img) + + # Arrow shape: thick chevron + shaft + cx, cy = W // 2, H // 2 + sign = -1 if direction == "left" else 1 + + # Sweep: segments light up progressively + for seg in range(total_steps): + if seg > sweep_step: + break + alpha = 1.0 if seg <= sweep_step else 0.3 + color = tuple(int(c * alpha) for c in AMBER) + + # Shaft segments + sx = cx + sign * (seg * 7 - 28) + draw.rectangle([sx - 3, cy - 6, sx + 3, cy + 6], fill=color) + + # Arrow head + if sweep_step >= total_steps // 2: + tip_x = cx + sign * 36 + draw.polygon([ + (tip_x, cy), + (tip_x - sign * 20, cy - 24), + (tip_x - sign * 20, cy - 12), + (tip_x - sign * 8, cy - 12), + (tip_x - sign * 8, cy + 12), + (tip_x - sign * 20, cy + 12), + (tip_x - sign * 20, cy + 24), + ], fill=AMBER) + else: + tip_x = cx + sign * 36 + dim = AMBER_DIM + draw.polygon([ + (tip_x, cy), + (tip_x - sign * 20, cy - 24), + (tip_x - sign * 20, cy - 12), + (tip_x - sign * 8, cy - 12), + (tip_x - sign * 8, cy + 12), + (tip_x - sign * 20, cy + 12), + (tip_x - sign * 20, cy + 24), + ], fill=dim) + + return img + + +def gen_turn_signal(direction): + frames = [] + steps = 8 + # Sweep on + for s in range(steps): + frames.append(make_arrow(direction, s, steps)) + # Hold + for _ in range(4): + frames.append(make_arrow(direction, steps - 1, steps)) + # Off + off = Image.new("RGB", (W, H), BG) + for _ in range(4): + frames.append(off) + save_anim(f"turn_{direction}", frames, fps=10) + + +# ── FACES ───────────────────────────────────────────────────── + +def draw_eye(draw, cx, cy, w, h, pupil_dy=0, blink=0.0): + """Draw a rounded robot eye. blink 0=open, 1=closed.""" + eh = max(2, int(h * (1.0 - blink))) + ey = cy - eh // 2 + draw.rounded_rectangle([cx - w // 2, ey, cx + w // 2, ey + eh], radius=min(6, eh // 2), fill=CYAN) + if blink < 0.6: + # Pupil + pw, ph = w // 3, max(2, eh // 3) + draw.rounded_rectangle( + [cx - pw // 2, cy - ph // 2 + pupil_dy, cx + pw // 2, cy + ph // 2 + pupil_dy], + radius=2, fill=WHITE + ) + + +def draw_mouth(draw, cy, style="smile", width=30): + cx = W // 2 + if style == "smile": + draw.arc([cx - width, cy - width // 2, cx + width, cy + width // 2 + 10], + start=10, end=170, fill=CYAN, width=3) + elif style == "neutral": + draw.line([cx - width // 2, cy, cx + width // 2, cy], fill=CYAN, width=2) + elif style == "open": + draw.ellipse([cx - 12, cy - 8, cx + 12, cy + 8], fill=CYAN) + elif style == "focused": + draw.line([cx - width // 2, cy, cx + width // 2, cy], fill=CYAN, width=3) + + +def gen_happy_face(): + frames = [] + eye_w, eye_h = 24, 20 + eye_y = 34 + eye_sep = 22 + mouth_y = 68 + + for i in range(30): + img = Image.new("RGB", (W, H), BG) + draw = ImageDraw.Draw(img) + + # Blink at frame 10-12 + blink = 0.0 + if i == 10: + blink = 0.5 + elif i == 11: + blink = 1.0 + elif i == 12: + blink = 0.5 + + # Slight eye squint for happiness (smaller height) + h = int(eye_h * 0.85) + draw_eye(draw, W // 2 - eye_sep, eye_y, eye_w, h, blink=blink) + draw_eye(draw, W // 2 + eye_sep, eye_y, eye_w, h, blink=blink) + draw_mouth(draw, mouth_y, "smile", width=28) + + # Cheek dots + draw.ellipse([W // 2 - 44, 48, W // 2 - 36, 56], fill=(0, 100, 150)) + draw.ellipse([W // 2 + 36, 48, W // 2 + 44, 56], fill=(0, 100, 150)) + + frames.append(img) + + save_anim("face_happy", frames, fps=10) + + +def gen_idle_face(): + frames = [] + eye_w, eye_h = 22, 18 + eye_y = 36 + eye_sep = 22 + mouth_y = 68 + + for i in range(40): + img = Image.new("RGB", (W, H), BG) + draw = ImageDraw.Draw(img) + + # Gentle breathing: slight eye movement + breath = math.sin(i * 2 * math.pi / 40) * 2 + pupil_dy = int(breath) + + # Blink at frames 15-17, 35-37 + blink = 0.0 + if i in (15, 35): + blink = 0.5 + elif i in (16, 36): + blink = 1.0 + elif i in (17, 37): + blink = 0.5 + + draw_eye(draw, W // 2 - eye_sep, eye_y, eye_w, eye_h, pupil_dy=pupil_dy, blink=blink) + draw_eye(draw, W // 2 + eye_sep, eye_y, eye_w, eye_h, pupil_dy=pupil_dy, blink=blink) + draw_mouth(draw, mouth_y, "neutral") + + frames.append(img) + + save_anim("face_idle", frames, fps=8) + + +def gen_alert_face(): + frames = [] + eye_w, eye_h = 28, 26 + eye_y = 34 + eye_sep = 24 + mouth_y = 70 + + for i in range(20): + img = Image.new("RGB", (W, H), BG) + draw = ImageDraw.Draw(img) + + # Pop-in effect: eyes grow from small to large in first 4 frames + scale = min(1.0, (i + 1) / 4) + ew = int(eye_w * scale) + eh = int(eye_h * scale) + + # Slight shake + shake = 0 + if 4 <= i <= 8: + shake = int(math.sin(i * 5) * 2) + + draw_eye(draw, W // 2 - eye_sep + shake, eye_y, max(4, ew), max(4, eh)) + draw_eye(draw, W // 2 + eye_sep + shake, eye_y, max(4, ew), max(4, eh)) + + if scale >= 1.0: + # Eyebrows raised + draw.line([W // 2 - eye_sep - 14, eye_y - 18, W // 2 - eye_sep + 14, eye_y - 18], + fill=CYAN, width=3) + draw.line([W // 2 + eye_sep - 14, eye_y - 18, W // 2 + eye_sep + 14, eye_y - 18], + fill=CYAN, width=3) + + draw_mouth(draw, mouth_y, "open") + frames.append(img) + + save_anim("face_alert", frames, fps=10) + + +def gen_following_face(): + frames = [] + eye_w, eye_h = 24, 20 + eye_y = 34 + eye_sep = 20 + mouth_y = 68 + + for i in range(24): + img = Image.new("RGB", (W, H), BG) + draw = ImageDraw.Draw(img) + + # Focus: crosshair-like elements, pupils centered and intense + draw_eye(draw, W // 2 - eye_sep, eye_y, eye_w, eye_h) + draw_eye(draw, W // 2 + eye_sep, eye_y, eye_w, eye_h) + draw_mouth(draw, mouth_y, "focused") + + # Scanning line sweeping down + scan_y = 10 + (i * 3) % (H - 20) + draw.line([10, scan_y, W - 10, scan_y], fill=(0, 80, 120), width=1) + + # Corner brackets (targeting reticle) + c = (0, 150, 200) + bw = 3 + # top-left + draw.line([8, 8, 20, 8], fill=c, width=bw) + draw.line([8, 8, 8, 20], fill=c, width=bw) + # top-right + draw.line([W - 8, 8, W - 20, 8], fill=c, width=bw) + draw.line([W - 8, 8, W - 8, 20], fill=c, width=bw) + # bottom-left + draw.line([8, H - 8, 20, H - 8], fill=c, width=bw) + draw.line([8, H - 8, 8, H - 20], fill=c, width=bw) + # bottom-right + draw.line([W - 8, H - 8, W - 20, H - 8], fill=c, width=bw) + draw.line([W - 8, H - 8, W - 8, H - 20], fill=c, width=bw) + + frames.append(img) + + save_anim("face_following", frames, fps=8) + + +# ── STATUS ──────────────────────────────────────────────────── + +def gen_boot(): + frames = [] + total = 30 + + for i in range(total): + img = Image.new("RGB", (W, H), BG) + draw = ImageDraw.Draw(img) + t = i / total + + if t < 0.2: + # Scanline appears + y = int(t / 0.2 * H) + draw.line([0, y, W, y], fill=CYAN, width=2) + elif t < 0.5: + # Grid materializes + alpha = (t - 0.2) / 0.3 + gc = tuple(int(c * alpha) for c in (0, 60, 80)) + for x in range(0, W, 16): + draw.line([x, 0, x, H], fill=gc, width=1) + for y in range(0, H, 16): + draw.line([0, y, W, y], fill=gc, width=1) + # Center circle expanding + r = int(alpha * 30) + cx, cy = W // 2, H // 2 + draw.ellipse([cx - r, cy - r, cx + r, cy + r], outline=CYAN, width=2) + elif t < 0.7: + # Eyes powering on + alpha = (t - 0.5) / 0.2 + gc = tuple(int(c * 0.3) for c in (0, 60, 80)) + for x in range(0, W, 16): + draw.line([x, 0, x, H], fill=gc, width=1) + for y in range(0, H, 16): + draw.line([0, y, W, y], fill=gc, width=1) + + eye_c = tuple(int(c * alpha) for c in CYAN) + ew = int(22 * alpha) + eh = int(18 * alpha) + draw_eye(draw, W // 2 - 22, 36, max(4, ew), max(4, eh)) + draw_eye(draw, W // 2 + 22, 36, max(4, ew), max(4, eh)) + else: + # Full face fades in + alpha = min(1.0, (t - 0.7) / 0.2) + + # Fading grid + ga = max(0, 0.3 - alpha * 0.3) + gc = tuple(int(c * ga) for c in (0, 60, 80)) + for x in range(0, W, 16): + draw.line([x, 0, x, H], fill=gc, width=1) + for y in range(0, H, 16): + draw.line([0, y, W, y], fill=gc, width=1) + + draw_eye(draw, W // 2 - 22, 36, 22, 18) + draw_eye(draw, W // 2 + 22, 36, 22, 18) + if alpha > 0.5: + draw_mouth(draw, 68, "neutral") + + frames.append(img) + + # Hold final frame + for _ in range(10): + frames.append(frames[-1].copy()) + + save_anim("status_boot", frames, fps=12) + + +def gen_low_battery(): + frames = [] + + for i in range(24): + img = Image.new("RGB", (W, H), BG) + draw = ImageDraw.Draw(img) + + cx = W // 2 + blink = (i % 6) < 3 + + # Large centered battery icon + bw, bh = 76, 40 + bx = cx - bw // 2 + by = 10 + draw.rounded_rectangle([bx, by, bx + bw, by + bh], radius=5, outline=WHITE, width=3) + # Battery nub + draw.rectangle([bx + bw, by + 12, bx + bw + 7, by + bh - 12], fill=WHITE) + + # Fill level: critically low (blinking red) + fill_w = 14 + if blink: + draw.rectangle([bx + 5, by + 5, bx + 5 + fill_w, by + bh - 5], fill=RED) + + # Exclamation mark below battery + ey = by + bh + 8 + draw.rectangle([cx - 3, ey, cx + 3, ey + 16], fill=RED if blink else (120, 20, 20)) + draw.rectangle([cx - 3, ey + 20, cx + 3, ey + 26], fill=RED if blink else (120, 20, 20)) + + frames.append(img) + + save_anim("status_low_battery", frames, fps=6) + + +# ── MAIN ────────────────────────────────────────────────────── + +if __name__ == "__main__": + print("Generating LED panel animations (128x96)...") + + print("\nTurn signals:") + gen_turn_signal("left") + gen_turn_signal("right") + + print("\nFaces:") + gen_happy_face() + gen_idle_face() + gen_alert_face() + gen_following_face() + + print("\nStatus:") + gen_boot() + gen_low_battery() + + print("\nDone! All animations in:", os.path.abspath(OUT))